Archived
A container may be marked `run-once: true` — a step the host runs to completion, gating whatever the declaration places after it. The control plane's part is small: the field is carried to the host unchanged (containers pass through as maps), and the step keeps its author-order position ahead of the container it gates, because the gate is declaration order, not a resolved dependency (ADR 0005). The manifest parser refuses a run-once that is not a boolean and the pair run-once + restart-on (contradictory lifecycles) — near the manifest rather than far away on the machine, the same lesson the action ban records. Three unit tests; go build ./... and go test ./... green. Claude-Session: https://claude.ai/code/session_01LrgweAeERJYBg88c5cKDzF