mirror of
https://github.com/fabro-sh/fabro.git
synced 2026-09-24 00:51:19 +00:00
Introduce `fabro_workflows::pipeline` module defining typed phases: PARSE → TRANSFORM → VALIDATE → INITIALIZE → EXECUTE → RETRO → FINALIZE. Each phase is a standalone function with `#[non_exhaustive]` input/output types so the compiler enforces ordering. `Validated` uses private fields with read-only accessors to guarantee immutability post-validation. Split `engine.run_with_lifecycle()` into `prepare_sandbox()` + `execute_graph()` (backward-compatible wrapper preserved). Rewrite `WorkflowBuilder::prepare_inner()` and CLI `prepare_workflow()` to use pipeline functions. `PreparedWorkflow` now carries a `Validated` with accessor methods instead of raw `graph`/`source` fields. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| src | ||
| tests | ||
| build.rs | ||
| Cargo.toml | ||