flow.yaml is the package contract for a delivery process. Schema version 1
defines metadata, compatibility, nodes, transitions, inputs, outputs, gates,
and bounded rework.
Shape
Authoring rules
- Give every node a stable unique identifier.
- Declare all transition targets.
- Bound every rework loop.
- Keep runner selection explicit or inherit it intentionally.
- Declare required inputs and evidence rather than relying on prompt prose.
- Use setup scripts only in packages whose executable content is trusted.
- Raise
compat.engine_minonly when the Flow needs the newer contract.