event-streaming-three-event-types

Status: IN

FTL2's event streaming system has three event types: `progress` (percent/bytes tracking), `log` (leveled messages: info/warning/error), and `data` (raw stdout/stderr streams).

Source: entries/2026/05/11/examples-05-event-streaming-README.md

Example

async for event in ftl.stream():
    if event.type == "progress":
        print(f"{event.percent}% ({event.bytes} bytes)")
    elif event.type == "log":
        print(f"[{event.level}] {event.message}")
    elif event.type == "data":
        print(event.stdout)

JSON