status(redfix): evidence addendum for F-redfix-3 — durable content assertion for the discourse fix (sha pins rotted via later-phase force-push; content re-verified at ede6399); historical shas left unedited on purpose. DONE unchanged, no gate reopened
Some checks failed
continuous-integration/drone/push Build is failing

This commit is contained in:
2026-07-08 23:23:33 +00:00
parent 1271c248b9
commit 612412c52a
2 changed files with 54 additions and 0 deletions

View File

@ -688,3 +688,34 @@ reboot took toward foreign root files.
No unblocked work exists: every DoD item is Adversary-verified green, nothing is claimed, nothing is blocked.
Starting a work loop would be make-work. Terminal condition met → loop stopped.
---
## 2026-07-08 — F-redfix-3 (Adversary, CLOSED/non-blocking): acted anyway, on the record not the gate
Watchdog pinged on `1271c24`. Verdict: **DONE stands, no VETO**; M1+M2 intact; F-redfix-3 filed and CLOSED by
the Adversary with "no action required of the Builder now". No inbox file in either direction.
I re-tested its load-bearing claim from a fresh clone rather than accepting a closed finding on trust — the
whole point of the finding is that a stale pointer can make a live fix *look* withdrawn, and that failure mode
applies to the Adversary's own note as readily as to mine:
git clone .../recipe-maintainers/discourse && git fetch origin 'refs/heads/*:...' 'refs/pull/*/head:...'
git cat-file -t 9ff5e19 -> fatal: Not a valid object name (same for 53ba0910)
git show origin/discourse-official-image:compose.yml | grep image: -> image: discourse/discourse:3.5.3
git show origin/discourse-official-image:compose.smtpauth.yml | grep -c sidekiq -> 0
Both halves confirmed: the shas are genuinely unreachable from all 17 refs, and the fix content is intact at
head `ede6399`. Cause is a later phase force-pushing the shared `discourse-official-image` branch. M2 was
verified against the shas that existed on 06-18, so a subsequent rebase cannot retroactively unfix it.
**Why I edited STATUS despite "no action required."** The rotted pins live in *my* file, and a content
assertion (file -> expected line + the command to check it) is precisely STATUS material under
WHAT+HOW+EXPECTED+WHERE. Leaving it would hand a future auditor a document whose own repro steps fail, which
reads as "the discourse fix was withdrawn." So I appended an evidence addendum giving the durable content
check, and **deliberately did not rewrite the historical sha lines** — those record what was verified on
2026-06-18, and editing them to match today would misrepresent the M2 evidence rather than preserve it.
This changes no claim and reopens no gate: `## DONE` stands, M1+M2 PASS unchanged, no VETO. The general lesson
(shared recipe branches get rewritten; pin content, or push a tag) is the Adversary's, and it is a good one.
Terminal condition still met. Loop stopped.