mirror of
https://github.com/fabro-sh/fabro.git
synced 2026-08-28 05:27:41 +00:00
Workflows that run the same ACP agent on several nodes had to repeat the process attribute on every node. `acp.command` and `acp.config` were read only from the node (`Node::acp_command_attr`), with no graph-level fallback. Add `AcpDefaultsTransform`, which materializes the graph-level value onto nodes before validation. The handler's `resolve_acp_process_spec` takes only a `Node`, so reading the graph at the use site (as `retry_target` does) would mean threading a `Graph` through the handler. As a transform, neither the handler nor `backend_valid` changes, and `fabro validate` and `fabro run` stay in agreement because both go through `pipeline::transform`. The two attributes are mutually exclusive, so they inherit as a pair: a node setting either one keeps its own and inherits neither. Only nodes with `backend="acp"` inherit, keeping the attributes off `start`/`exit` and API nodes. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| brainstorms | ||
| ideation | ||
| internal | ||
| plans | ||
| public | ||
| superpowers | ||