fabro/lib/components
Bryan Helmkamp 2f8ee2ff36
Name the fold's repeated shapes once: completion, model usage, pause, conclusion
Four small duplications in the projection fold: a StageCompletion
literal built three times from an attempt's status, a StageModelUsage
literal built three times with no request controls, the pause and
unpause status arithmetic written four times across the coordinator and
lifecycle folds, and a bare Conclusion built beside the full one. Each is
now one function: completion() in the engine fold, StageModelUsage::new,
RunStatus::paused and RunStatus::unpaused beside blocked_reason (with
settle_control for the pending control they clear), and
Conclusion::outcome_only.

One case reads differently: a coordinator RunPaused that lands on a run
already paused behind a block now keeps that block for the unpause, as
the lifecycle Paused already did, instead of dropping it.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-20 15:01:14 -04:00
..
fabro-automation Open sandbox provider identity to plugin kinds 2026-09-09 15:17:32 -06:00
fabro-checkpoint Merge remote-tracking branch 'origin/main' into remove/run-metadata-branches 2026-09-12 16:28:01 -06:00
fabro-dot Read workflow graphs through Petri's DOT parser 2026-09-19 12:23:57 -04:00
fabro-dump Build the run's display graph from Petri's admission 2026-09-19 11:41:58 -04:00
fabro-environment Open sandbox provider identity to plugin kinds 2026-09-09 15:17:32 -06:00
fabro-github Resolve one Git identity per run and inject it everywhere 2026-09-12 11:35:46 -06:00
fabro-graphviz Read workflow graphs through Petri's DOT parser 2026-09-19 12:23:57 -04:00
fabro-install Drop the dependency edges with no production use 2026-09-19 09:33:31 -04:00
fabro-interview Delete the interviewers the Petri cutover left unused 2026-09-19 09:05:52 -04:00
fabro-llm Drop the dependency edges with no production use 2026-09-19 09:33:31 -04:00
fabro-manifest Read workflow graphs through Petri's DOT parser 2026-09-19 12:23:57 -04:00
fabro-mcp-store refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
fabro-pebble-sandbox Fix the gate findings in the sandbox tests 2026-09-19 14:07:52 -04:00
fabro-petri Name the fold's repeated shapes once: completion, model usage, pause, conclusion 2026-09-20 15:01:14 -04:00
fabro-slack Delete fabro-core and the engine half of fabro-workflow 2026-09-18 10:44:41 -04:00
fabro-store Build the run's display graph from Petri's admission 2026-09-19 11:41:58 -04:00
fabro-tool Answer steer and interrupt with the worker's acknowledgement 2026-09-18 23:54:11 -04:00
fabro-tracker refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
fabro-variable refactor: organize crates into three layers 2026-07-23 17:59:34 -04:00
fabro-workflow Serve the sandbox tab, Run Files, and deletion on the driver handle 2026-09-19 13:56:13 -04:00
fabro-workflow-version Read workflow graphs through Petri's DOT parser 2026-09-19 12:23:57 -04:00