Paired SCREEN of fair D4 with the survival-instinct root filter (strict and literal) against unchanged fair D4 on 128 fresh development games
web/content/research/EX-20260822-survival-instinct-root-filter-8531cbd9.mdx and it will appear here. The registered protocol is shown below.The registered protocol
With the bit-exact fast fair-D4 search at five strata (cache 60,000, worst-case work bound, terminal utility -1,000,000, policy seed 0xd7075eed), three arms play the same 128 ordered seeds 0xa52c0000-0xa52c007f: 'none' (unchanged), 'strict' (refuse a root column when the next disc of value >= 3 would land above its vertical-clear height AND its landing row run already exceeds its value, unless no column remains) and 'literal' (refuse every vertically dead landing that does not clear on arrival). The strict arm's paired score delta versus 'none' passes the gate below; the literal arm is a secondary measurement. Per-arm coverage (triggered decisions, overrides of the unfiltered column, no-column fallbacks) is recorded.
approaches/lifetime-objective/survival-instinct/run.cppapproaches/fair-expectimax/reference/fair-only-depth4.cppPrimary metric
paired mean whole-game score delta, strict minus none, 128 games, depth 4 five strata
Statistical unit: whole-game
Pass criteria, fixed in advance
- CHECK gates passed before the lease was opened: mask unit cases, parity of the all-allowed filtered search with FastSearch (0 mismatches), mirrored masks and actions, thread-count determinism.
- incompleteDecisionsTotal 0 and illegalDecisionsTotal 0 in the artifact.
- strict minus none: bootstrap 95% lower bound > 0 AND Student-t 95% lower bound > 0.
- strict minus none: candidate Q25 >= comparator Q25 AND both halves > 0.
- strict arm overrides >= 2% of its decisions (otherwise the result is a non-test of the rule and is recorded as inconclusive regardless of the deltas).
On pass: Record valid + pass; register a fresh-block replication and a seven-stratum arm as successor experiments; register the filter as a candidate leaderboard policy (playground only).
On fail: Record valid + fail for this exact filter; report the literal arm and coverage as diagnostics; open no further cohort; the theory is not-supported-as-tested.
Data and reuse
CHECK gates read previously opened development probe seeds 0xa5278000-0xa52784ff. The screen opens the new, never-read lease 0xa52c0000-0xa52c007f exactly once; the lease is disjoint from every range in docs/exploratory/lease-map.md and from the ./do-research allocator's future grants (the allocator scans lease records). No other seed is read.
seed leases: SL-20260822T060000Z-a52c0000
What happened
Held-out SCREEN of the survival-instinct root filter, depth 4 five strata, 128 paired never-read games 0xa52c0000+. STRICT (refuse a landing that is vertically dead AND entombed by its row): mean 346838 vs unchanged 348808, paired delta -1970 (bootstrap 95% bounds -27738 to +22313, paired sd 171933, floor 24999), W-T-L 41-26-61, moves 100.95 vs 101.32; the filter refused a column at 811 of 12922 decisions and overrode the unchanged search's column at 254 (1.97%), just under the preregistered 2% coverage bar, so the primary gate is recorded as INCONCLUSIVE by its own rule: the strict rule neither helps nor hurts measurably and rarely applies. LITERAL (the owner's wording, refuse every vertically dead landing that does not clear on arrival; secondary arm): mean 251744, paired delta -97064 (LB -136887, UB -59500), W-T-L 43-0-85, moves 75.67 vs 101.32, overrides 1243 of 9686 (12.8%): a clear, valid negative — forbidding vertically dead landings outright costs about a quarter of the game's length. Both arms: 0 incomplete and 0 illegal decisions.
- ✓CHECK gates passed before the lease was opened — observed: RUN-20260822T063817Z-a5d4c143: 7 of 7 (mask units re-run after a corrected test expectation)
- ✓incompleteDecisionsTotal 0 and illegalDecisionsTotal 0 — observed: 0 / 0
- ✕strict minus none: bootstrap and Student-t 95% lower bounds > 0 — observed: -27738 / -27150
- ✕strict minus none: Q25 >= and both halves > 0 — observed: Q25 delta -13513; halves +1721 / -5661
- ✕strict arm overrides >= 2% of decisions (else inconclusive) — observed: 254 of 12922 = 1.97%
Recorded metrics
- candidate
- name
- strict
- games
- 128
- score
- mean
- 346838.4609
- median
- 285244.5000
- sd
- 234288.6063
- q25
- 175358.2500
- min
- 86,228
- max
- 1,312,546
- moves
- mean
- 100.9531
- q25
- 55
- numberedClearsPerMove
- 2.0076
- coverRevealsPerMove
- 1.1163
- maxChainDepth
- 13
- meanOccupiedCells
- 23.8341
- censoredGames
- 0
- incompleteDecisions
- 0
- illegalDecisions
- 0
- gamesAtOrAboveMillion
- 1
- reference
- name
- none
- games
- 128
- score
- mean
- 348808.3047
- median
- 268,837
- sd
- 246206.6767
- q25
- 188871.5000
- min
- 103,221
- max
- 1,698,396
- moves
- mean
- 101.3203
- q25
- 55
- numberedClearsPerMove
- 2.0040
- coverRevealsPerMove
- 1.1149
- maxChainDepth
- 13
- meanOccupiedCells
- 24.0289
- censoredGames
- 0
- incompleteDecisions
- 0
- illegalDecisions
- 0
- gamesAtOrAboveMillion
- 3
- pairedScore
- n
- 128
- meanDelta
- -1969.8438
- pairedSd
- 171932.7446
- bootstrapLower95
- -27738.2355
- bootstrapUpper95
- 22313.0406
- studentTLower95
- -27150.1196
- studentTQuantile
- 1.6569
- detectionFloor
- 24998.8202
- detectionFloorNote
- 1.645 * sd / sqrt(n), the z-based floor defined in docs/research/status.md
- wins
- 41
- ties
- 26
- losses
- 61
- firstHalfMeanDelta
- 1721.0313
- secondHalfMeanDelta
- -5660.7188
- q25Delta
- -13513.2500
- largestSwings
- -844,875
- -805,407
- -548,601
- 505,964
- 486,921
- bootstrapSeedHex
- 0xb0071eaf
- resamples
- 20,000
- pairedMoves
- n
- 128
- meanDelta
- -0.3672
- pairedSd
- 46.6503
- bootstrapLower95
- -7.3516
- bootstrapUpper95
- 6.2109
- studentTLower95
- -7.1993
- studentTQuantile
- 1.6569
- detectionFloor
- 6.7829
- detectionFloorNote
- 1.645 * sd / sqrt(n), the z-based floor defined in docs/research/status.md
- wins
- 29
- ties
- 60
- losses
- 39
- firstHalfMeanDelta
- 0.7031
- secondHalfMeanDelta
- -1.4375
- q25Delta
- 0
- largestSwings
- -227
- -220
- -150
- 135
- 134
- bootstrapSeedHex
- 0xb0071eaf
- resamples
- 20,000
- coverage
- decisions
- 12,922
- triggeredDecisions
- 811
- overrides
- 254
- noColumnFallbacks
- 22
- candidate
- name
- literal
- games
- 128
- score
- mean
- 251744.0781
- median
- 236792.5000
- sd
- 112378.7779
- q25
- 159800.2500
- min
- 85,922
- max
- 628,660
- moves
- mean
- 75.6719
- q25
- 50
- numberedClearsPerMove
- 1.8787
- coverRevealsPerMove
- 1.0197
- maxChainDepth
- 11
- meanOccupiedCells
- 24.6577
- censoredGames
- 0
- incompleteDecisions
- 0
- illegalDecisions
- 0
- gamesAtOrAboveMillion
- 0
- reference
- name
- none
- games
- 128
- score
- mean
- 348808.3047
- median
- 268,837
- sd
- 246206.6767
- q25
- 188871.5000
- min
- 103,221
- max
- 1,698,396
- moves
- mean
- 101.3203
- q25
- 55
- numberedClearsPerMove
- 2.0040
- coverRevealsPerMove
- 1.1149
- maxChainDepth
- 13
- meanOccupiedCells
- 24.0289
- censoredGames
- 0
- incompleteDecisions
- 0
- illegalDecisions
- 0
- gamesAtOrAboveMillion
- 3
- pairedScore
- n
- 128
- meanDelta
- -97064.2266
- pairedSd
- 265747.3813
- bootstrapLower95
- -136887.3000
- bootstrapUpper95
- -59499.6051
- studentTLower95
- -135984.0518
- studentTQuantile
- 1.6569
- detectionFloor
- 38639.3588
- detectionFloorNote
- 1.645 * sd / sqrt(n), the z-based floor defined in docs/research/status.md
- wins
- 43
- ties
- 0
- losses
- 85
- firstHalfMeanDelta
- -71884.9844
- secondHalfMeanDelta
- -122243.4688
- q25Delta
- -29071.2500
- largestSwings
- -1,577,399
- -823,508
- -787,758
- -774,508
- -674,807
- bootstrapSeedHex
- 0xb0071eaf
- resamples
- 20,000
- pairedMoves
- n
- 128
- meanDelta
- -25.6484
- pairedSd
- 72.1942
- bootstrapLower95
- -36.4305
- bootstrapUpper95
- -15.4375
- studentTLower95
- -36.2216
- studentTQuantile
- 1.6569
- detectionFloor
- 10.4970
- detectionFloorNote
- 1.645 * sd / sqrt(n), the z-based floor defined in docs/research/status.md
- wins
- 42
- ties
- 10
- losses
- 76
- firstHalfMeanDelta
- -18.7656
- secondHalfMeanDelta
- -32.5313
- q25Delta
- -5
- largestSwings
- -425
- -225
- -212
- -210
- -185
- bootstrapSeedHex
- 0xb0071eaf
- resamples
- 20,000
- coverage
- decisions
- 9,686
- triggeredDecisions
- 3,470
- overrides
- 1,243
- noColumnFallbacks
- 497
- Single 128-game development-tier screen; the strict arm's effect, if any, is below the 25,000-point floor of this cohort.
- The strict coverage of 1.97% is within rounding of the 2% bar; the inconclusive label follows the preregistered rule literally rather than the spirit, and the deltas are reported in full.
- The screen ran after the evolution's own screen on the same otherwise idle machine; decisions are deterministic, wall times are not timing-grade.
- The literal arm's negative rejects the rule as a hard root constraint at depth 4; a soft penalty the search can weigh is a different candidate.