feat(deployer): terminate only a proven-stale Argo CD operation (v7) #171
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/argocd-deployer-proven-stale"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Why
builder-images
binjovi-argocd-deployerv6 (ef1d828, live in Binjovi) terminates every Running Argo CD operation whose revision is not the released one. Binjovi supersedes an older deployment request when a newer one starts, but the older deployer pod keeps polling until its timeout (no Workflow deletion on supersede). So the v6 observer of release N can terminate the operation of release N+1. Argo CD never retries a terminated revision, so release N+1 then fails and rolls back. The registry v0.1.8 -> v0.1.9 sequence on 2026-09-02 had exactly this shape (two releases minutes apart).What (v7)
superseded_revision: an operation is stale only when its revision is a proven ancestor of the released revision in the deployer's clone ofmain(git merge-base --is-ancestor). A symbolic ref, an unknown commit, and a descendant of the release are left alone.terminate_operation: the merge patch carries the snapshotresourceVersion. A 409 Conflict is logged and repeated on the next poll; Forbidden stays fatal.syncResult.revisionORoperationState.operation.sync.revision.Supersedes PR 170 (closed; it predates v6 on trunk).
After release
Bump
manifests/workload.yamlin binjovi toregistry.sean.farm/build/binjovi-argocd-deployer:v7@sha256:<digest>and release binjovi.https://claude.ai/code/session_01LeVatedQ4sCA1u6LHjo7B5