mirror of
https://github.com/fabro-sh/fabro.git
synced 2026-10-01 02:04:24 +00:00
`fabro_petri::engine` is now the one assembly the worker process and the server share: `RunRequest` takes the run's store as `Arc<dyn RunStore>` and an `Execution`, either `Start` with the admitted graphs or `Resume` from the run's records through `host::resume_configured`, with the same interview observer a start installs. A resume whose record has no root invocation is refused with a named error instead of a panic in the host. The outcome is mapped to a `Conclusion` (succeeded, or failed with Fabro's reason and a message) so both callers record the same terminal event. `admission::load_with` loads the admitted graphs through any blob read, so a worker loads them through its client; `admission::load` over the server's `BlobStore` delegates to it. `HttpRunStore::for_worker` takes every lease for the worker's launch id, whatever owner Petri minted for the run runtime, and the open logs the owner. The module docs state the rule. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| fabro-acp | ||
| fabro-automation | ||
| fabro-checkpoint | ||
| fabro-dump | ||
| fabro-environment | ||
| fabro-github | ||
| fabro-graphviz | ||
| fabro-hooks | ||
| fabro-install | ||
| fabro-interview | ||
| fabro-llm | ||
| fabro-manifest | ||
| fabro-mcp | ||
| fabro-mcp-store | ||
| fabro-petri | ||
| fabro-sandbox | ||
| fabro-slack | ||
| fabro-store | ||
| fabro-tool | ||
| fabro-tracker | ||
| fabro-validate | ||
| fabro-variable | ||
| fabro-workflow | ||
| fabro-workflow-version | ||