What is not yet asserted
Many promote behaviors are emission-only today: force-continue past a failed deploy, the downgrade block, matrix and passthrough inputs reaching the callee, generation-time state-ref resolution, external deploy jobs, the publish callback firing, and promote concurrency serialization. The runtime effects are live-assertable but unasserted.
Features closed (13)
wf.promote.force-continue, wf.promote.downgrade-gate, wf.promote.matrix-deploy-inputs, wf.promote.passthrough-inputs, wf.promote.state-ref-resolution, wf.promote.external-deploy-jobs, wf.promote.publish-callback, wf.promote.concurrency, schema.trunk.publish, schema.trunk.concurrency, cli.promote.preflight.force, cli.promote.preflight.allow-downgrade, life.downgrade-guard
Closing approach
Layer: live-fleet. Extend the four-env and primary example suites with steps that force-continue past an injected deploy failure, attempt a blocked downgrade (and an allowed one with the flag), pass matrix and passthrough inputs and assert they reach the callee, run an external deploy job, fire the publish callback and assert its old and new version inputs, and serialize two promote runs via the concurrency group. Register each and assert the outcome.
Acceptance
- Each runtime effect registered and asserted live.
- Suite green.
What is not yet asserted
Many promote behaviors are emission-only today: force-continue past a failed deploy, the downgrade block, matrix and passthrough inputs reaching the callee, generation-time state-ref resolution, external deploy jobs, the publish callback firing, and promote concurrency serialization. The runtime effects are live-assertable but unasserted.
Features closed (13)
wf.promote.force-continue, wf.promote.downgrade-gate, wf.promote.matrix-deploy-inputs, wf.promote.passthrough-inputs, wf.promote.state-ref-resolution, wf.promote.external-deploy-jobs, wf.promote.publish-callback, wf.promote.concurrency, schema.trunk.publish, schema.trunk.concurrency, cli.promote.preflight.force, cli.promote.preflight.allow-downgrade, life.downgrade-guard
Closing approach
Layer: live-fleet. Extend the four-env and primary example suites with steps that force-continue past an injected deploy failure, attempt a blocked downgrade (and an allowed one with the flag), pass matrix and passthrough inputs and assert they reach the callee, run an external deploy job, fire the publish callback and assert its old and new version inputs, and serialize two promote runs via the concurrency group. Register each and assert the outcome.
Acceptance