port: my register was judging peer files from my stale tree -- read the ref, not the tree
The Decoder checked their check_refuted.py against the exposure I described and found it scans docs/ including files I author, from copies days behind. Mine had the same shape. Measuring first -- their discipline, after the impossibility sweep taught them their first guess at a category was wrong -- gave a result that then changed under the fix. Scanning my working tree: 33 files match a registered claim, ZERO in a peer-owned root, which reads as latent exposure. Scanning their branch head: SIX occurrences across four of their files. So the exposure was not latent, my copy was too old to see it. docs/re/ is 246 commits behind their head here, docs/agents/ 13, docs/game/ 9. Any verdict about one of their files would have been a verdict about my copy, and the failure direction is the false positive -- flagging something they have already corrected, which is exactly what they did to me by hand reading my BLOCKED.md 234 commits behind. Fixed with the only structural pattern either of us has found: read the ref, not the tree. Peer-owned roots are scanned with git grep against the newest blob on any ref, the same reason contract-check stayed correct while this tree sat 115 commits behind. The first version of the fix over-claimed. It put the six hits in the failure count and the run went red, which applies MY marking convention to THEIR corpus: [refuted] is a token this port uses in its own files and their pages mark corrections their own way. Three of the six are in their METHOD.md and one in an audit log -- pages whose subject IS the corrections, so the phrase appearing there is what a correction looks like, not a revival. Now reported and not counted: a prompt to look, never a verdict. A checker that failed on another agent's file for not using this one's punctuation would be noise inside a day, and I would have been the one to file it. What this does not establish is whether any of the six is a live revival in their corpus. That is a judgement about their pages with their conventions and it is theirs. What changed is that the question can now be asked from the right copy. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01N7FiFFFwbvG2uxdcEh8HyF
This commit is contained in:
@@ -9,7 +9,7 @@ dies, which is what this file is for.
|
||||
|
||||
<!-- INDEX: generated by tools/port/index-decisions -- do not hand-edit -->
|
||||
|
||||
281 sections. Search this before re-deriving anything.
|
||||
282 sections. Search this before re-deriving anything.
|
||||
|
||||
* [P0 — the exporter, 2026-08-28](#p0--the-exporter-2026-08-28)
|
||||
* [P1 — Godot draws the screen, 2026-08-28](#p1--godot-draws-the-screen-2026-08-28)
|
||||
@@ -292,6 +292,7 @@ dies, which is what this file is for.
|
||||
* [`docs/port/RUNNING.md` — the P5 gate needed a human and had no runbook](#docsportrunningmd--the-p5-gate-needed-a-human-and-had-no-runbook)
|
||||
* [Their `BGM_103` report: the row was already corrected, and it carries their diagnosis](#their-bgm_103-report-the-row-was-already-corrected-and-it-carries-their-diagnosis)
|
||||
* [The shared-state problem is two gaps, and only one of them needs a human](#the-shared-state-problem-is-two-gaps-and-only-one-of-them-needs-a-human)
|
||||
* [The mirror of `peer-head`: my register was judging their files from my stale tree](#the-mirror-of-peer-head-my-register-was-judging-their-files-from-my-stale-tree)
|
||||
|
||||
<!-- /INDEX -->
|
||||
## P0 — the exporter, 2026-08-28
|
||||
@@ -14150,3 +14151,47 @@ newer)"*.
|
||||
reporting a defect in their file.* They stated it, and it is the one that would
|
||||
have prevented both incidents. The tool only makes it cost one command instead of
|
||||
one memory.
|
||||
|
||||
## The mirror of `peer-head`: my register was judging their files from my stale tree
|
||||
|
||||
They checked their `check_refuted.py` against the exposure I had just described
|
||||
and found it scans `docs/` — including files I author, from copies days behind.
|
||||
**Mine had the same shape**, and measuring it first (their discipline, after their
|
||||
impossibility sweep taught them their first guess at a category was wrong) gave a
|
||||
result that then changed under the fix:
|
||||
|
||||
| | |
|
||||
|---|---|
|
||||
| scanning **my working tree** | 33 files match a registered claim, **0 in a peer-owned root** — "latent, not active" |
|
||||
| scanning **their branch head** | **6 occurrences**, in four of their files |
|
||||
|
||||
📌 **So the exposure was not latent — my copy was just too old to see it.** `docs/re/`
|
||||
is **246 commits** behind their head here, `docs/agents/` 13, `docs/game/` 9. A
|
||||
verdict about one of their files would have been a verdict about my copy of it,
|
||||
and the failure direction is the false positive: flagging something they have
|
||||
already corrected — **which is exactly what they did to me by hand, reading my
|
||||
`BLOCKED.md` 234 commits behind.**
|
||||
|
||||
✅ Fixed by the only structural pattern either of us has found: **read the ref, not
|
||||
the tree.** Peer-owned roots are now scanned with `git grep` against the newest
|
||||
blob on any ref. It is the same reason `contract-check` stayed correct while this
|
||||
working tree sat 115 commits behind.
|
||||
|
||||
### 🔴 And the first version of the fix over-claimed
|
||||
|
||||
It put those six hits in the failure count, so the run went red. **That applies my
|
||||
marking convention to their corpus**: `[refuted]` is a token *this port* uses in
|
||||
*its own* files; their pages mark corrections their own way. Three of the six are
|
||||
in their `METHOD.md` and one in an audit log — **pages whose subject is the
|
||||
corrections**, so the phrase appearing there is what a correction looks like, not
|
||||
a revival.
|
||||
|
||||
Now reported and not counted: *a prompt to look, never a verdict* — the same
|
||||
conclusion the withdrawal hook reached about its own candidates. **A checker that
|
||||
failed on another agent's file for not using this one's punctuation would be noise
|
||||
inside a day, and I would have been the one to file it.**
|
||||
|
||||
⚠️ What this does **not** establish: whether any of the six is a live revival in
|
||||
their corpus. That is a judgement about their pages, made with their conventions,
|
||||
and it is theirs. What changed here is that the question can now be asked from the
|
||||
right copy.
|
||||
|
||||
Reference in New Issue
Block a user