mirror of
https://github.com/fabro-sh/fabro.git
synced 2026-10-01 02:04:24 +00:00
`run events` on a Petri run prints the run stream: raw, the envelope as one JSON line per item; `--pretty`, Petri's events by `<subject>.<verb>` with the stage's label (a visit's start and end with its elapsed time, the route both ends of the edge, a fork's branches, a question with its options and its answer, log lines, the agent's messages and tool calls, the engine's finish) and the platform records by kind (the run's creation, its lifecycle, a checkpoint's commit, a pull request, a notice, who answered). `--follow` attaches from the last `stream_seq` printed and reconnects from its cursor when the server ends the stream before the run's terminal record. `run attach` on a Petri run replays the stream through the progress renderer (a new mapping from stream items onto the progress events the renderer draws, sharing the coding-agent mapping with the legacy envelope), follows it live from its cursor with the same reconnect, asks a question the stream carries at the terminal, and exits with the status the engine's finish or the terminal lifecycle record decides. `wait` and `inspect` read the projection unchanged. The CLI never names a Petri type: `PetriItem` reads the item as JSON where Petri's contract keeps the event name, the subject and the parsed progress payloads. The CLI's Petri scenarios read the stream instead of the legacy events (the lifecycle records, the question and who answered it, the expiry), and three new ones cover a finished run through `events` (raw, tail, and a `--pretty` snapshot), `attach`, `wait` and `inspect`; `attach` answering a gate from the terminal; and `events --follow` to the run's end. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| fabro-cli | ||
| fabro-mcp-server | ||
| fabro-server | ||
| fabro-spa | ||