Skip to main content

Module flows

Module flows 

Source
Expand description

keel flows and keel trace <flow> — the Tier 2 durable-flow inspectors (dx-spec §6; architecture spec §4.3–4.4).

Both read only .keel/journal.db (the frozen contracts/journal.sql schema), so they are pure queries any SQLite tool could reproduce:

  • keel flows lists each flow — id, entrypoint, status, steps done/total, age — with --dead narrowing to the poison flows a resume gave up on.
  • keel trace <flow> walks one flow’s steps in order with their outcome, attempts, and duration.

Internal control rows never surface: the reserved seq-0 attempt counter and any flow:* replay-branch markers (kind = 'marker') are excluded from both the step counts and the trace, so the user sees only real work.

Determinism (dx-spec §5): the --json twin carries only values read from the DB (ids, statuses, created_at/updated_at in ms) — never a wall-clock “age”, which lives in the human view alone. age is computed against an injected now, so the human output is reproducible under test.

Functions§

flows
keel flows [--dead] for project, dating ages against now_ms.
trace
keel trace <flow> for project. flow is an exact flow_id, or a substring of an id/entrypoint that resolves to exactly one flow.