Skip to content

srv1 deploy plan: record Phase A delivered, activation unverified, defect open - #8040

Merged
briansrls merged 2 commits into
mainfrom
winddown/srv1-deploy-plan-status
Aug 8, 2026
Merged

briansrls merged 2 commits into
mainfrom
winddown/srv1-deploy-plan-status

Conversation

@gunbai-bot

@gunbai-bot gunbai-bot Bot commented Aug 8, 2026

Copy link
Copy Markdown
Contributor

Docs-only. Updates the registered home for this lane so the wind-down state is durable without replaying a transcript.

The header read Status: DIAGNOSIS, no fix landed. Two PRs have merged out of this diagnosis since, so that line was actively misleading — a reader would conclude nothing was addressed and re-derive existing work.

Delivered (merge SHAs verified as ancestors of main):

Not delivered, stated at the same volume — the gap between merged and live is where this lane's false greens came from. Phase A is in main but not established live on srv1: deploy_dashboard_srv1 declares needs: [ci] and fires only on a main push, so a failing main ci skips it and workflow_dispatch cannot activate it. The activation receipt is enumerated field by field, including the count of older queued deploys still eligible to run — one successful identity-capable deploy is not durable activation while a pre-Phase-A job can still reinstall the old unit. Until then ReleaseRevisionAbsent is the honest reading of the live process.

Original defect recorded as open. Phase A makes deployed identity observable; it does not serialize deployment, retain candidates, prevent rollback, or converge on the tip.

Phase B written as a quarry map, not a rebase plan — #7802's exact head, what survives (flock, lease, coordination, the witness matrix), what must dissolve rather than transplant (the receipt-authoritative revision model), the required production ordering, the wet acceptance gates, and the resume trigger.

Deliberately does not touch ROADMAP.md or DESIGN.md: both are generated artifacts, neither carries this lane, and regenerating costs a full graph run. The HandAuthoredDocBind dissolution trigger stays unmet — two of its four findings (host-side lease, diagnostic substitution) remain open.

🤖 Generated with Claude Code

…e resume trigger

The header said "DIAGNOSIS, no fix landed". Two PRs have since merged out of
this diagnosis, so the header was actively misleading: a reader would conclude
none of it was addressed, and a future agent would re-derive work that exists.

Delivered, with merge SHAs verified as ancestors of main: Phase A (#7909,
d409b75) binds one release revision at process launch, publishes revision
and surface identity separately on /healthz, admits the candidate checkout
before any host mutation, and compares readiness against the admitted candidate
rather than a re-rendered expectation. #7990 (36dbd71) removed the
ensure_is_converged declaration homonym and is namespace hygiene, not deploy
correctness — recorded as such so it is not later miscounted as progress on
this defect.

What is NOT delivered is stated at the same volume, because the gap between
"merged" and "live" is exactly where this lane's false greens came from. Phase A
is in main but not established as live on srv1: deploy_dashboard_srv1 declares
needs:[ci] and fires only on a main push, so a failing main ci skips it and a
workflow_dispatch cannot activate it at all. The activation receipt is
enumerated field by field, including the count of older queued deployments
still eligible to run — because one successful identity-capable deploy is not
durable activation while a pre-Phase-A job can still reinstall the old unit.
Until that receipt exists, ReleaseRevisionAbsent is the honest reading of the
live process.

The original defect is recorded as still open. Phase A makes deployed identity
observable; it does not serialize deployment, retain candidates, prevent
rollback, or converge on the tip.

Phase B is written as a quarry map rather than a rebase plan, naming #7802's
exact head, the modules that survive (flock, lease, coordination, the witness
matrix), the pieces that must dissolve rather than transplant (the
receipt-authoritative revision model), the required production ordering, the wet
acceptance gates, and the resume trigger. That is what a future agent needs to
restart without replaying a transcript.

Nothing here regenerates ROADMAP.md or DESIGN.md: both are generated artifacts
and neither carries this lane. This doc is its registered home, bound through
doc_graph_roots HandAuthoredDocBind to gunbc.ci_spec gunbc_ci_deploy_srv1_stage,
and that bind's dissolution trigger correctly stays unmet — two of its four
findings (the host-side lease, the diagnostic substitution) are still open.
…shes skipped, 0 ran

The activation section assumed Phase A was waiting on a pre-Phase-A deploy
queue to drain. Measurement says otherwise: across the last 40 main-push runs
deploy_dashboard_srv1 was skipped 38 times and ran zero times, with no
successes and no failures in the sample. The skipped records carry 0 steps and
started_at == completed_at, which is a job-level if: evaluating false rather
than a queued or cancelled job.

Two candidate causes are eliminated by execution rather than by reading. A
failing main ci is not it — two push runs on main with ci: success still
skipped the deploy. The event and ref are not it either — the API reports
event=push and head_branch=main for those runs, and the job condition is
byte-identical at three separate commits and true on its face.

The cause is deliberately NOT named. Guessing a root cause is the failure this
document exists to prevent, and an eliminated candidate is worth more than a
plausible story. What is recorded is the observation, the two eliminations, and
the consequence: Phase A cannot activate by waiting, so diagnosing this skip is
the first Phase B prerequisite, ahead of any code work.
@briansrls
briansrls merged commit 4cdcd57 into main Aug 8, 2026
5 checks passed
@briansrls
briansrls deleted the winddown/srv1-deploy-plan-status branch August 8, 2026 04:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant