From 696b7dfbfbd6c8d5232a8e6db1afbd5923dc02c9 Mon Sep 17 00:00:00 2001 From: Christopher Williams Date: Thu, 24 Sep 2026 11:24:48 -0400 Subject: [PATCH] =?UTF-8?q?phase11:=20cookbook=20169=20+=20sf3=5Ffamily=20?= =?UTF-8?q?bug=20fix=20=E2=80=94=200.96-0.99=20is=20idiom=20noise,=20CONFI?= =?UTF-8?q?RMED=20by=20raw-word=20diff?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Worker A calibrated sf3_family by checking two 0.97 entries and finding neither shared its sibling's body. I have now confirmed that on eight candidates by raw-word diff, which is the decisive test: 0x8006EBA0 vs 0x80028CE0 differs in 60 of 61 words; 0x800FFFEC vs 0x8007E8B8 in 18 of 19; 0x8005E17C vs 0x800FB54C in 25 of 26. Contrast the genuine sibling 0x800F3DC0 vs 0x800F3E18: 1 of 22 words. So a high cosine with ratio 1.00 is NOT evidence of a shared body -- at 0.96-0.99 the histogram matches common IDIOMS. The useful band is ratio 1.000 AND a near-zero raw-word diff. Tool bug fixed: sf3_family did not exclude already-claimed rows, so its top hit was a row matching ITSELF. The registry is now the authority and claimed rows are skipped. --- docs/MATCHING_COOKBOOK.md | 23 +++++++++++++++++++++++ tools/sf3_family | 11 ++++++++++- 2 files changed, 33 insertions(+), 1 deletion(-) diff --git a/docs/MATCHING_COOKBOOK.md b/docs/MATCHING_COOKBOOK.md index 6427151..d64960f 100644 --- a/docs/MATCHING_COOKBOOK.md +++ b/docs/MATCHING_COOKBOOK.md @@ -2744,3 +2744,26 @@ two `move`s (one in the 2nd call's delay slot, one in the 3rd's) then `addu s0,s Same family as findings 156 and 157: **a chained accumulation is not the same source as three named results summed.** + +### 169. Worker A's family calibration CONFIRMED AT SCALE — 0.96–0.99 is idiom noise (coordinator) + +Worker A calibrated `sf3_family` by checking two 0.97-scoring entries and finding neither shared its +sibling's body. **I have now confirmed that on eight candidates by raw-word diff**, which is the +decisive test: + +| candidate | sibling | words | **differing words** | +|---|---|---|---| +| `0x8006EBA0` | `0x80028CE0` | 61 | **60** | +| `0x800FFFEC` | `0x8007E8B8` | 19 | **18** | +| `0x8005E17C` | `0x800FB54C` | 26 | **25** | + +**A high cosine with a size ratio of 1.00 is not evidence of a shared body** — at 0.96–0.99 the +histogram is matching common **idioms**, exactly as worker A said. Contrast the genuine siblings: +`0x800F3DC0` vs `0x800F3E18` differs in **1 of 22 words** (finding 166). + +> **The useful band is ratio 1.000 AND a near-zero raw-word diff.** Check the words, not the score — +> it is one cheap computation and it is the difference between a copy-and-rename and a full +> derivation. + +**Tool bug fixed:** `sf3_family` did not exclude already-claimed rows, so its top hit was a row +matching **itself**. The registry is now the authority and claimed rows are skipped. diff --git a/tools/sf3_family b/tools/sf3_family index 683b47e..d1c0846 100755 --- a/tools/sf3_family +++ b/tools/sf3_family @@ -119,8 +119,15 @@ def main(argv: list[str]) -> int: payload = EXE.read_bytes() + claimed = read_regions(REGIONS) + claimed_ranges = [(s, e) for s, e, _ in claimed] + claimed_starts = {s for s, _, _ in claimed} + + def is_claimed(addr: int) -> bool: + return addr in claimed_starts or any(s < addr < e for s, e in claimed_ranges) + matched = [] - for start, end, source in read_regions(REGIONS): + for start, end, source in claimed: words = body_words(payload, start, end) matched.append((start, end, source, histogram(words), end - start)) @@ -129,6 +136,8 @@ def main(argv: list[str]) -> int: size = end - start if size < min_size or size > max_size: continue + if is_claimed(start): + continue # already merged -- reporting it is noise (it matched itself) mine = histogram(body_words(payload, start, end)) best = None for m_start, m_end, m_source, m_hist, m_size in matched: