Each run: tools/ledgerfit.js fits the base (every step switch off) and fits again with the run's switches on, by the same procedure: the seven weights and lands fitted, everything else hibernated at tools/ledger-benchmarks/2026-10-03-step6-baseline.json; ridge λ 0.01 toward the base benchmark's values; the same seeds. Lists: tyr.auspex, tyr.hivemind, tyr.second, tyr.maelstrom, tyr.astrategas, sm.auspexFull, sm.tobias. Yardstick through compute() at each fit (ρ; pairwise on the tiers S to D, as the step log). Leave one list out: each list scored by the fit on the other 6. Noise: each army's SD of mean ρ over the scrambled fits (10 per ledger, the base's and the run's pooled: 20). Hint by the keep rule: KEEP only when the mean ρ and mean pairwise both rise and neither army's mean ρ falls past its noise. A hint; the supervisor decides.
| Run | Mean ρ (base → on) | Mean pairwise | Tyranids ρ | Space Marines ρ | Left out: mean ρ | Left out: mean pairwise | Hint | Left out agrees |
|---|---|---|---|---|---|---|---|---|
| base re-fit (against the step-6 weights) | 0.472 → 0.464 (−0.008) | 70.1% → 69.7% (−0.4) | 0.564 → 0.554 (−0.011) | 0.241 → 0.238 (−0.003) | 0.472 → 0.460 (−0.012) | 70.1% → 69.6% (−0.5) | – | – |
| scarceAnswers | 0.464 → 0.377 (−0.087) | 69.7% → 65.9% (−3.8) | 0.554 → 0.431 (−0.123) | 0.238 → 0.242 (+0.005) | 0.460 → 0.373 (−0.088) | 69.6% → 65.7% (−3.9) | REVERT: mean ρ −0.087; mean pairwise −3.8 points; Tyranids ρ −0.123, past noise 0.040 | yes (REVERT) |
The base row compares the step-6 baseline as it stands (its weights, unfitted; left out is in sample there) with the base re-fitted on the 7 lists. Noise (SD of mean ρ, scrambled fits): Tyranids 0.040, Space Marines 0.097, all lists 0.037 (first run's pool).
Per list (ρ / pairwise, S to D)
| List | Step 6 | Base re-fit | scarceAnswers |
|---|---|---|---|
| tyr.auspex | 0.662 / 79.8% | 0.656 / 79.4% | 0.570 / 75.9% |
| tyr.hivemind | 0.622 / 78.6% | 0.616 / 78.5% | 0.540 / 75.2% |
| tyr.second | 0.587 / 76.7% | 0.568 / 75.7% | 0.427 / 68.9% |
| tyr.maelstrom | 0.571 / 71.4% | 0.554 / 71.0% | 0.425 / 65.2% |
| tyr.astrategas | 0.381 / 65.9% | 0.376 / 65.5% | 0.191 / 58.2% |
| sm.auspexFull | 0.284 / 63.4% | 0.281 / 63.2% | 0.287 / 63.4% |
| sm.tobias | 0.197 / 54.9% | 0.195 / 54.7% | 0.198 / 54.8% |
Left out (each list by the fit on the others), ρ / pairwise:
| List | Base re-fit | scarceAnswers |
|---|---|---|
| tyr.auspex | 0.649 / 79.0% | 0.560 / 75.2% |
| tyr.hivemind | 0.608 / 78.2% | 0.532 / 74.8% |
| tyr.second | 0.556 / 75.2% | 0.427 / 68.9% |
| tyr.maelstrom | 0.556 / 71.0% | 0.420 / 64.7% |
| tyr.astrategas | 0.381 / 65.9% | 0.187 / 57.8% |
| sm.auspexFull | 0.272 / 62.9% | 0.283 / 63.3% |
| sm.tobias | 0.199 / 55.0% | 0.198 / 54.9% |
The fitted knobs
| Knob | Step 6 | Base re-fit | scarceAnswers |
|---|---|---|---|
| lands | 1.500 | 1.451 | 1.491 |
| wKill | 498.2 | 411.4 | 436.9 |
| wSoak | 14.97 | 14.71 | 15.35 |
| wScore | 9.652 | 10.02 | 9.675 |
| wActions | 1.306 | 1.292 | 1.289 |
| wHold | 18.89 | 19.87 | 19.73 |
| wPresence | 2.515 | 2.739 | 2.670 |
| wSpawn | 15.65 | 15.34 | 15.34 |
Movers (ranks between the base re-fit and the run's re-fit; letters per list)
scarceAnswers. Tyranids: Barbgaunts 40 → 23 (–/C/B/C/D), Exocrine 20 → 36 (A/A/A/S/S), Parasite of Mortrex 43 → 28 (B/B/C/C/D), Tyrannofex 25 → 40 (S/A/A/A/S), Trygon 24 → 37 (B/C/–/B/A), Psychophage 28 → 41 (B/B/A/B/C), Winged Tyranid Prime 31 → 20 (–/B/B/C/B), Venomthropes 45 → 34 (B/D/B/C/D). Space Marines: Redemptor Dreadnought 42 → 39 (A/C), Techmarine 15 → 13 (A/B), Intercessor Squad 13 → 15 (S/A), Hellblaster Squad 19 → 17 (A/C), Tactical Squad 16 → 18 (B/D), Captain 26 → 24 (A/B), Chaplain with Jump Pack 29 → 31 (A/D), Lieutenant 34 → 32 (S/C).
Base re-fit against step 6: Tyranids: Neurogaunts 29 → 22 (B/C/C/C/C), Harpy 33 → 27 (D/–/–/F/D), Haruspex 24 → 30 (B/B/A/A/B), Biovores 5 → 1 (S/S/S/S/S), Hive Tyrant 3 → 6 (S/A/S/A/A), Hormagaunts 26 → 23 (S/A/B/A/S), Toxicrene 23 → 26 (–/–/–/D/D), Von Ryan's Leapers 6 → 4 (S/B/A/B/C). Space Marines: Tactical Squad 21 → 16 (B/D), Land Raider 57 → 53 (A/C), Land Raider Crusader 68 → 64 (B/D), Outrider Squad 7 → 4 (A/C), Scout Squad 23 → 20 (S/S), Eradicator Squad with Heavy Bolters 18 → 21 (A/B), Invictor Tactical Warsuit 19 → 22 (B/D), Lieutenant 31 → 34 (S/C).
Checks and run times
- Each fit's latents (every unit's ranking row) matched compute() at the fitted setting, the largest relative difference 4.6e-16; every form's basis matched valueForm() (6.6e-16).
- Ranking rows: base solo/solo; scarceAnswers solo/solo.
- Run times (the main fit; with folds and scrambles on 3 threads): base 4.57 s (23.2 s); scarceAnswers 14.48 s (131.6 s). Total 156.1 s.