fix(release): delete a retryably-Failed provenance signer so the retry can actually happen #2046
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/release-signer-retry"
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?
The bug behind today's four-release stall being un-self-healable: on a retryable signer failure the operator cleared the run ref and said retrying, but the Failed workflow kept its deterministic name, so every resubmission adopted the same Failed workflow. attempts stayed frozen for hours; the unwedge was a manual kubectl delete of the four signers.
Fix: record the stall, then after signerRetryBackoff (5m since finishedAt, read via argoengine.Times — engine-boundary clean) delete the Failed workflow and release the name; the next pass submits fresh. Crash-safe via the existing signer-is-gone branch.
envtest: asserts the Failed signer is GONE after a retryable failure (the old test hand-flipped the same workflow to Succeeded — live Argo never does that, which is how the adoption bug hid), plus a pacing episode: fresh finishedAt stays latched, aged finishedAt is deleted and resubmitted. 130/130 guards, full controller suite green.