Decouple release branch promotion from dev-base image publishing #564

Closed
opened 2026-07-15 07:14:41 +00:00 by coilyco-ops · 2 comments
Owner

Current release blockage shows that agentic-os release is still operationally gated by dev-base image publishing: promote.yml runs the repo gate, publishes the full draft image family, and only then fast-forwards release. That means registry, buildx, cache, disk, or image-size flakes keep the release branch stale even when the repo gate is green.\n\nChange the flow so main => release is cheap and matches the promote-only contract:\n\n* promote.yml runs the repo gate for the exact main SHA.\n* if the repo gate passes, promote.yml fast-forwards release without waiting for dev-base image publication.\n* dev-base draft publishing moves to a separate workflow keyed by the promoted SHA.\n* release remains the last repo-good ref. Image availability is tracked by workflow status, package tags, or release assets separately.\n* release.yml must keep the no-retest rule.\n\nDo not add a summarize-publish job as part of this issue. Do not make broad diagnostic-message cleanup part of this issue. Keep this scoped to changing the release contract so a transient image publish failure cannot block the release branch from advancing.

Current release blockage shows that agentic-os release is still operationally gated by dev-base image publishing: promote.yml runs the repo gate, publishes the full draft image family, and only then fast-forwards release. That means registry, buildx, cache, disk, or image-size flakes keep the release branch stale even when the repo gate is green.\n\nChange the flow so main => release is cheap and matches the promote-only contract:\n\n* promote.yml runs the repo gate for the exact main SHA.\n* if the repo gate passes, promote.yml fast-forwards release without waiting for dev-base image publication.\n* dev-base draft publishing moves to a separate workflow keyed by the promoted SHA.\n* release remains the last repo-good ref. Image availability is tracked by workflow status, package tags, or release assets separately.\n* release.yml must keep the no-retest rule.\n\nDo not add a summarize-publish job as part of this issue. Do not make broad diagnostic-message cleanup part of this issue. Keep this scoped to changing the release contract so a transient image publish failure cannot block the release branch from advancing.
Author
Owner

WARDED_WORKFLOW: reservation-held

reservation details

Holder: launch intent for container engineer-codex-agentic-os-564 on host kais-macbook-pro-2.local.

Accepted by ward agent --harness codex (reserved 2026-07-15T07:15:28Z). Concurrent ward agent runs are blocked until this intent becomes visible or the intent is released. The stale-intent fallback is still TTL-bounded (3h TTL). --override-reservation overrides.

Do not comment on or edit this issue to steer the run while it is reserved. The engineer seeded the body once at launch and never re-reads it, so a comment or edit reaches only human readers, never the running engineer. A correction goes to a new issue, dispatched fresh. That is the only channel that reaches a run in flight. Where the forge supports it, ward locks this conversation to make that a road-block rather than a convention (ward#494).

run seed context — what this run is carrying (ward#609)
  • Resolved: coilyco-flight-deck/agentic-os#564 · branch issue-564 · harness codex · workflow pull-request-and-merge
  • Run: engineer-codex-agentic-os-564 · ward v0.697.0 · dispatched 2026-07-15T07:15:16Z
  • Comment thread: 0 included in the pre-flight read, 0 stripped (ward's own automated comments).

Static container doctrine and seed boilerplate are identical every run and omitted here (they ride ward v0.697.0).

— Codex, via ward agent

<!-- ward-agent-reservation --> WARDED_WORKFLOW: reservation-held <details><summary>reservation details</summary> Holder: launch intent for container `engineer-codex-agentic-os-564` on host `kais-macbook-pro-2.local`. Accepted by `ward agent --harness codex` (reserved 2026-07-15T07:15:28Z). Concurrent `ward agent` runs are blocked until this intent becomes visible or the intent is released. The stale-intent fallback is still TTL-bounded (3h TTL). `--override-reservation` overrides. **Do not comment on or edit this issue to steer the run while it is reserved.** The engineer seeded the body once at launch and never re-reads it, so a comment or edit reaches only human readers, never the running engineer. A correction goes to a **new issue, dispatched fresh**. That is the only channel that reaches a run in flight. Where the forge supports it, ward locks this conversation to make that a road-block rather than a convention (ward#494). <details><summary>run seed context — what this run is carrying (ward#609)</summary> - **Resolved:** `coilyco-flight-deck/agentic-os#564` · branch `issue-564` · harness `codex` · workflow `pull-request-and-merge` - **Run:** `engineer-codex-agentic-os-564` · ward `v0.697.0` · dispatched `2026-07-15T07:15:16Z` - **Comment thread:** 0 included in the pre-flight read, 0 stripped (ward's own automated comments). Static container doctrine and seed boilerplate are identical every run and omitted here (they ride ward v0.697.0). </details> </details> <!-- ward-agent-signature --> — Codex, via `ward agent`
Author
Owner

WARDED_WORKFLOW: #566

details

workflow: pull-request-and-merge; review summary: skipped because the temporary ward default pending brokered QA
implementation felt like a clean contract split with some doc pruning
confidence: high
surprises: Forgejo merge needed the OpenAPI merge endpoint and the global run id
follow-ups: none

WARDED_WORKFLOW: https://forgejo.coilysiren.me/coilyco-flight-deck/agentic-os/pulls/566 <details><summary>details</summary> workflow: pull-request-and-merge; review summary: skipped because the temporary ward default pending brokered QA implementation felt like a clean contract split with some doc pruning confidence: high surprises: Forgejo merge needed the OpenAPI merge endpoint and the global run id follow-ups: none </details>
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
coilyco-flight-deck/agentic-os#564
No description provided.