sots-re/verify/results
alex d9b06ca447 lane DT: T34 implemented and measured -- 36 closed / 2 regressed on the rich turn, 1 / 0 on the canonical pair
The observed-design list is a MOVE-TO-BACK vector capped at 20 records per
DESIGN OWNER, and that is why lane CV's 55 odes leaves looked unrelated: a turn's
output is a permutation of its input, not an append.

  rich turn   ad-turn27 + BR's deep tcb vs bp-pinB-turn28   1092 -> 1058
              36 closed / 2 regressed vs CV's run; 116 / 8 vs the 1166 baseline
  canonical   turn2-state + CB's tcb vs turn3-state           62 -> 61
              1 closed / 0 regressed, set-differenced by leaf PATH

All five committed predictions held; P5 held in direction and was wrong in
magnitude (9 leaves, not 4 -- I predicted spurious records, not leaves).

CV's "no upstream dependency" is right for the design half and wrong for the
other 24 leaves of the 79, two separate ways, and both are named rather than
attempted: the otch/owep arms need three undecoded design->tech/weapon set
builders (the wire's own DOpts list covers 13 of the 18 tech names the turn
moves), and the design half is itself capped by SHIP CONSTRUCTION -- two designs
get their first ships that turn. Fed the true post-turn ship list the same code
leaves 1 leaf of 55 instead of 21, so the mechanism is not the residual.

Control, run: with the NPC-owner guard compiled out the canonical pair goes
61 -> 70 and the rich turn stays at 1058. The guard is load-bearing on one pair
and inert on the other, which is why both were run.

Coverage, stated as loudly as the divergence: 8 players swept, TWO produce any
record; the canonical pair offers 16 (player, ship) pairs of which the guard
drops 15, leaving one record call on one design. No foreign observation moves on
either pair, so the visibility gate -- a two-bit-per-player word at Ship+0x54
that is not on the wire, stood in for with ownership -- is entirely unexercised
and is labelled a hypothesis.

ghidra/addresses.d/dt.json: 10 entries (the sweep 0x007c2350, the recorder
0x007be340, RecordObservedWeapon, the vector helpers, sizeof(ObservedDesign) =
0x10, the vftable, and ServerPlayer +0x254 / +0xfb). gen_addresses.py merges it
clean at 1320 entries, no duplicate name or address.
2026-09-09 10:18:52 -04:00
..
compare lane CR: our code ran instead of ProcessResearch on a real completion; the oracle missed by 16 leaves, all of them OnTechResearched's 2026-09-09 10:05:48 -04:00
data-catalogs verify: mars data parsers proven 100% on 1595 files; catalogs; tech-tree graph 2026-09-07 15:22:55 -04:00
fpu-cw lane F: x87 precision sensitivity measured; STATE_CHECKSUM 3.5 closed 2026-09-08 05:07:53 -04:00
multiplayer board: lane L1 - hive creation draws in BeginProcessTurn; CDiff edges played forward; SnLv verified; VM140 free 2026-09-08 18:26:51 -04:00
saves lane CR: our code ran instead of ProcessResearch on a real completion; the oracle missed by 16 leaves, all of them OnTechResearched's 2026-09-09 10:05:48 -04:00
shim lane CR: our code ran instead of ProcessResearch on a real completion; the oracle missed by 16 leaves, all of them OnTechResearched's 2026-09-09 10:05:48 -04:00
standalone lane DT: T34 implemented and measured -- 36 closed / 2 regressed on the rich turn, 1 / 0 on the canonical pair 2026-09-09 10:18:52 -04:00
state-checksum AD: the trade-raid roll is per fleet - 2 raiders = 2 entries, 2 words; B returns without drawing; no oracle pair (AI-only variation) 2026-09-08 23:00:23 -04:00
turncommands lane CV: Rung B on a rich turn -- the replay runs, 1092 leaves, ranked worklist 2026-09-09 09:28:50 -04:00
.keep.md scaffold RE campaign: board, backlog, findings template, verify tree 2026-09-07 14:40:44 -04:00