Appearance
Debug runs
Faimulus supports stepwise debug execution for asynchronous runs.
Start a debug run
Send debug: true with POST /api/runs/async (or webhook async routes where supported):
json
{
"flowPath": "book-document/flow.yaml",
"input": { "document": "hello" },
"debug": true
}The server returns 202 with run metadata and a status URL.
Pause and continue lifecycle
Debug runs transition between running and paused:
- The run starts and executes until the next debug boundary.
- The run enters
paused. - The client calls
POST /api/runs/:id/continue. - The run resumes and may pause again until terminal status.
Other terminal states remain success, failure, or cancelled.
Continue endpoint
POST /api/runs/:id/continue advances exactly one paused debug step. Calling it on non-paused runs returns an error.
Observability
Use these endpoints during debugging:
GET /api/runs/:idfor durable status and node state snapshots.GET /api/runs/:id/eventsfor a WebSocket snapshot of the current run followed by live ordered events. Per-run streams do not replay missed events; reconnect and refresh the snapshot after a disconnect.GET /api/interaction-requestswhen a run is suspended waiting for user input.
Debug control is part of the server control plane and is not delegated to remote runners.