Skip to content

Commit 412b633

Browse files
JuliaEdomclaude
andcommitted
docs(ops): record the corrected rollback pair PASS (rev5 probe, rev6 rollback)
Runtime execution on the kind stand: rev4 failed safe on a transient operator-webhook timeout (no CR patch, history kept); successor packet rev5 applied metadata-only probe with generation/UID/JID/checkpoint invariance, and helm rollback to rev3 restored a byte-identical stored manifest as rev6 with zero job restarts. Closes the corrected-rollback mechanics gate; F-02 and production.status unchanged. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
1 parent 3f6ddf9 commit 412b633

1 file changed

Lines changed: 95 additions & 0 deletions

File tree

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
# Corrected rollback pair — runtime record (2026-08-23)
2+
3+
**Record ID:** `CORRECTED_ROLLBACK_PAIR_RUNTIME_20260823_01`.
4+
**Result:** **PASS** — the metadata-only probe revision and the corrected
5+
rollback to revision 3 both executed with every protected invariant held.
6+
**Authorization:** owner delegation of 2026-08-23 ("сделай все сам");
7+
context `kind-agentflow-reverify-ed03fc47`, release `agentflow`, namespace
8+
`agentflow`; rollback target 3; revisions 1/2/4 forbidden.
9+
10+
## Preflight (all PASS, read-only)
11+
12+
- Packet `corrected-rollback-pair-20260803-01` file and dependency hashes
13+
intact; tracked chart inputs match frozen source commit `78742d0`
14+
(the live-repo copies have drifted since — renders must come from the
15+
frozen commit, which is what happened).
16+
- Renders reproduced bit-for-bit on BOTH hosts with helm
17+
`v3.16.3+gcfd0749` (Windows native; on the iMac a staged binary with
18+
the official checksum `495d75b4…`, system helm 3.15.4 untouched):
19+
baseline `c281ce6cab5478a8222877dc4361d702aded67db47b96b5a645b03bd9fd2e9e7`,
20+
probe `c09170d03f838454c6be8ea2502c252bf7270ed56f55e5d4dbb2c62c1bf34044`.
21+
- Live helm revision was exactly 3; the stored rev-3 manifest is
22+
structurally identical to the frozen baseline (byte hash differs only
23+
by helm storage formatting; structural three-object comparison equal).
24+
- Zero-failure hold exceeded: job `80e6e2be68fde261e281b847f1a0ae44`
25+
RUNNING since 13:58:51Z (the post-recovery fresh submit), 854/854
26+
checkpoints, 0 failed at preflight.
27+
- Identity freeze: CR UID `031f8387-3436-4408-bc99-7fbcd58ccfbc`,
28+
generation 23; SA `agentflow-soak-rv` UID
29+
`4bb01109-8257-4670-9a24-c7e081df32f5`; image
30+
`agentflow-flink-local:78742d0-minpause0-groupoffsets-20260803-01`.
31+
- iMac DNS was down (AdGuard, known pattern) — all artifacts moved via
32+
`ssh 'cat > file' < local` with hash comparison at both ends; staging
33+
root `~/agentflow-rollback-pair-20260823-01/`.
34+
35+
## Attempt ledger
36+
37+
### Attempt 1 — probe revision 4: FAILED SAFE (webhook timeout)
38+
39+
Server-side dry-run PASS (manifest ≡ probe, normalized). The real apply
40+
at 17:39:08 MSK failed: flink-operator mutating webhook
41+
`mutationwebhook.flink.apache.org` timed out (10 s) under VM load — the
42+
same webhook had served the dry-run 54 s earlier. The FlinkDeployment was
43+
NOT patched (gen 23, no probe key), revision 3 stayed deployed, and helm
44+
recorded revision 4 as `failed` (left in history as evidence). Per the
45+
packet's no-raw-retry rule the attempt ended there.
46+
47+
### Successor packet
48+
49+
`.codex-grok-tasks/corrected-rollback-pair-20260823-02/` — identical
50+
renders, dependencies, and probe annotation value; `source_revision: 5`;
51+
`forbidden_target_revisions: [1, 2, 4]`; supersession reason recorded in
52+
the contract. Mirrored to the staging root with matching hashes.
53+
54+
### Attempt 2 — probe revision 5 → rollback revision 6: PASS
55+
56+
Dry-run re-verified (manifest ≡ probe) and the apply followed in the same
57+
session window: revision **5** deployed 18:12:26 MSK. Verified at rev 5:
58+
CR UID and generation unchanged (gen 23 — metadata-only, no spec
59+
reconcile), SA UID unchanged, probe annotation
60+
`agentflow.dev/rollback-probe: corrected-rev4-to-rev3-20260803-01`
61+
present, all namespace pods 1/1, job RUNNING with the SAME start-time
62+
`1787493531399` (zero job restarts), checkpoints 1970 completed / 0
63+
failed and growing.
64+
65+
`helm rollback agentflow 3` then recorded revision **6**
66+
("Rollback to 3", deployed 18:13:36 MSK). Verified at rev 6: probe
67+
annotation gone, CR UID `031f8387…` and generation 23 unchanged, all pods
68+
1/1, job RUNNING with the same start-time and 0 failures, checkpoints
69+
1990/0 and growing, and the stored rev-6 manifest **byte-identical** to
70+
the stored rev-3 manifest (`9d555a8351aec0ec5bd2562b91076bf135b12588f6ea4fbce4ad46b33fafdf63`
71+
both).
72+
73+
## Consumed and retained
74+
75+
- Consumed: probe revision numbers 4 (failed) and 5 (superseded), packet
76+
`corrected-rollback-pair-20260803-01` (superseded) and
77+
`corrected-rollback-pair-20260823-02` (executed), rollback revision 6.
78+
Helm history now ends `... 4 failed / 5 superseded / 6 deployed
79+
Rollback to 3`; never target 1/2/4/5.
80+
- Retained evidence: staging root `~/agentflow-rollback-pair-20260823-01/`
81+
on the iMac (dry-run outputs, rendered baseline/probe, staged helm) and
82+
the failed-rev-4 history row. The API `/data` capture
83+
`~/agentflow-api-data-capture-20260823-01/` is unrelated to this gate
84+
and stays per its own note.
85+
86+
## Claim boundary
87+
88+
This closes the corrected-rollback mechanics gate: a real Helm revision
89+
pair on the live stand with UID/generation/JID/spec/checkpoint/offset
90+
invariance and a byte-identical restored manifest. It does NOT close the
91+
full-soak gate (F-02 stays `BLOCKED_HOST_CAPACITY` per
92+
`ci-soak-f02-capacity-decision-20260823-01.md`), does not elevate
93+
`production.status` (stays `candidate`), and ran no traffic. The
94+
rollback-after-soak variant on a capable host would need a fresh packet
95+
under the same discipline.

0 commit comments

Comments
 (0)