A workflow used as a node cannot build its own contract forever
Workflows compose, so a contract build can walk into itself. The guard is per path, not per build, so an honest diamond still resolves.
The rule
Normative: this is the rule
- When a workflow is used as a node inside another workflow, the contract build descends into it.
- Re-entering a workflow already on the current path is refused: the entry resolves to an empty object schema and a warning is logged, rather than recursing.
- Encountering the same workflow again as a sibling, not an ancestor, is allowed and builds normally.
Rule identifiers are permanent and are never renumbered. Each implementation publishes its own standing against these rules; this specification does not.spec 1.0-draft · MAN-9 · changed in spec 1.0