From 4e76ec24bb582957dc49a51060c26aac5eda02dc Mon Sep 17 00:00:00 2001 From: alex Date: Tue, 8 Sep 2026 19:37:31 -0400 Subject: [PATCH] PAR: reconcile the turn1-state outcome set with lane CB's concurrent pinned runs CB pinned the seeds and got d59bb9f2 three times; this lane left the seeds free, watched client 512's single research tie-break draw resolve with a different number of rejections in each process (1, 3, 1 words), and still got d59bb9f2 three times. Different experiments, agreeing in a way that constrains the mechanism: whatever maps that drawn word onto a research target is NOT a uniform index into a six-member shortlist, or three unpinned runs agreeing would be 1-in-36 on top of CB's 1-in-36. One line resolves it -- log the chosen tech id beside the draw in a probe on 0x006a8390, whose cl_RandRange bound IS the shortlist size the k question is about. --- findings/subsystems/roll-parity.md | 33 ++++++++++++++++++++---------- 1 file changed, 22 insertions(+), 11 deletions(-) diff --git a/findings/subsystems/roll-parity.md b/findings/subsystems/roll-parity.md index c645967..cefb0b1 100644 --- a/findings/subsystems/roll-parity.md +++ b/findings/subsystems/roll-parity.md @@ -231,19 +231,30 @@ It is also the sharpest available warning against the wrong conclusion: **"the c when the seed changed" is not evidence for roll parity.** The count is stable here because the *path* was stable. §3.2 holds the path fixed and moves the seed, and the count moves. -### 3.5 An observation this lane could not resolve +### 3.5 The `turn1-state` outcome set is not being sampled the way the campaign assumes -All three `turn1-state` runs produced the same post-turn autosave, `d59bb9f2fd0eb535`, even though -client 512's stream demonstrably differed between them (1 word, 3 words, 1 word). Lane L5 reports -**three different files** from three runs of this pair on VM146, and `campaign/board.md` records -`turn1-state → turn2` as non-deterministic on that basis. +All three `turn1-state` runs produced the same post-turn autosave, `d59bb9f2fd0eb535` — **and they +were unpinned**, each process drawing its own AI seeds, with client 512's stream demonstrably +different between them (1 word, 3 words, 1 word: the same single `cl_RandRange` call resolving with +different numbers of rejections, so different generator values reached the decision). -Both cannot be a complete description. Three identical outcomes from a k = 6 tie set (lane L4) is a -1-in-36 coincidence, so "it is deterministic after all" is not supported either. The honest -statement is that **the draw differs and the outcome did not**, on this guest, three times — and -that whatever maps the drawn word onto the chosen tech is not a plain uniform index into the -shortlist. Flagged, not resolved; it wants the tech id logged next to the draw, which is one line in -a probe on `0x006a8390`. +Lane CB, concurrently and on a different guest, reports the same file from **three pinned** runs, +and notes that lane L5's own `hooks=off` run produced it too. So the tally on that workload now +stands at roughly **seven observations of `d59bb9f2` against lane L5's report of three different +files**, and `campaign/board.md`'s "`turn1-state → turn2` is non-deterministic" is true but much +narrower than it reads. + +The new thing this lane can add is that **the draw differed and the outcome did not**. Lane CB +pinned the seed and removed the variation; this lane left the seed free, watched the variation +happen *inside* the generator, and still got one file. Those are different experiments and they +agree in a way that constrains the mechanism: whatever maps client 512's drawn word onto a research +target is **not a uniform index into a six-member shortlist**. If it were, three unpinned runs +agreeing would be a 1-in-36 coincidence on top of lane CB's 1-in-36. + +Not resolved, and it is one line to resolve: log the chosen tech id beside the draw in a probe on +`0x006a8390`, whose `cl_RandRange(0, n-1)` bound `n` is the shortlist size the whole `k` question is +about. Lane CB's own honest note — that player 512's target `282` is outside the named set and +"k = 6, all six nameable" is not closed — is the same open item seen from the outcome side. ---