{
  "notes": "Credit: Taylor (gtmcknight), github.com/gtmcknight/amm-sim@4812a6382311624e1506aca131ca35c378f930d9, research/solved.\n\nEPISODE 5, the last of 5. DECISION: finish; spawn nothing; cancel nothing. 16/20 items used, 4 left unspent for a judge's findings. The trunk holds every piece the goal names, two independent audits of the payload passed, and no episode could inspect a wave spawned now. No requester notes, refusals or running work.\n\nPINS. Final trunk X = 45e7563d1a29ffca9d608fdf60c90bf2624d2d01 (e04-seal merged, 5/5 accepted), repo https://github.com/identity-md-launches/goal-3178-build-shared-evaluation-kit. Payload P = 79f068cef81dadee171531f3381e207c193c959a. Raw URL of any file: https://raw.githubusercontent.com/identity-md-launches/goal-3178-build-shared-evaluation-kit/X/<path>. git diff P..X touches exactly seven files (sha256 at X): README.md b432f1aa8ac15cfba1f78227780c233427cc4564c758efbab258cc92871b5827; validate_kit.py d308d3d22228b04a266d955808bb1be017154dcf15c4caf2ecde59b031e09200; tests/test_validate_kit.py, docs/validation.md, docs/contracts.md, docs/reference.md, docs/score.md (hashes in validator-fix and docs-refresh, equal at X). The other 88 files (ammfast/, all banks, score.py, setup_fast.sh, gatep.py, engine_eval.py, bootstrap/, reference/) are byte-identical at P and X. gatep.py 1d1d65bc18647530037cf3cff73fd8d4448f353d61b4494dd2ee7d556be122db. Bank, score.py and setup_fast.sh hashes: episode 4 notes; the rest: README inventory.\n\nE04 RESULTS (workers' words, data).\nvalidator-fix: validate_kit.py lines 600-601 now read gates384/spots576, no fallback; at its tree exit 0 PASS, 14848/14848 (replica 12288, HA 2048, engine 512), 384 gates, 576 spots, worst error 1.1937117960769683e-11; 58 tests OK. `python3 -m unittest tests.test_x` cannot import (tests/ is no package): use `python3 -B -m unittest discover -s tests -p test_x.py`.\naudit-replica (P, read-only): own CPython runs. Gate 384/384 within 1e-9 (max: qt1-ref 9.66e-12, TwoComp 1.00e-11, COMBO 1.19e-11). 576/576 further spots on seeds s+64..s+127 of each bank, outside the first 64 (max 8.75e-12). All 12288 bank rows recomputed, .6f strings equal. Zero head == COMBO bit for bit, 16/16. Warm one-worker runs/s/core 158.9 qt1-ref, 150.9 TwoComp, 135.3 COMBO; first call 10.75 s. Real scorer: COMBO vs qt1-ref 64000 bank with --bar 0.1 stopped above_bar at n=128 (mean 0.603278, se 0.061276); without a bar exhausted 1024 (mean 0.609605, se 0.019401); qt1-ref vs TwoComp bank stopped worse at n=128 (mean -0.457939, se 0.051266). test_ammfast 23, test_replica_banks 14 OK.\naudit-engine (P, read-only): setup cold 16.6 s (16 pinned downloads, 135768787 bytes), cached 8.8 s, offline 8.9 s, replica-only 8.2 s; both deadline cases exit 75; env transition passes. gatep fresh 14.2 s, cached 0.22 s, identical stdout. Ten test files: 228 tests, 227 pass, 1 macOS skip, 0 fail. Live engine scorer: 128 Vanilla seeds 9700001..9700128 vs the qt1 bank stopped worse after one round (mean -181.0758, se 3.9163). Engine validate: 512 rows, 5 exact reruns. HA --check 2048 rows. 24 spread qt1 seeds 9700000..9700511 rerun: 24/24 exact unrounded edge and gas.\nreadme: README.md rewritten, 38432 bytes: pieces, commands, 53 files hashed at P + 35 envelopes (manifest digest 21a5688aa2a1d0d7940ea69d3f667f612f76f6b6c89f53539ca29ef1c95f078a) + the seven with <trunk-commit> (substitute X). Its own 384-pair gate passed (max 1.68e-11). ON ITS RUNTIME three live tests of tests/test_replica_banks.py FAILED: fresh ammfast equals fresh CPython but not the bank: COMBO/60035 618.2409840405087 vs bank 618.266729; COMBO/64013 427.0324335194603 vs 427.035477; TwoComp/60016 409.73952654643557 vs 409.736570; 2, 3 and 2 rows beyond rounding in the first 128 seeds of COMBO-60000, COMBO-64000, TwoComp-60000 (7 of 384). Its suite: 223 run, 212 pass, 3 fail, 8 skip.\ndocs-refresh: PARTIAL. The three docs corrected (statuses, gates384/spots576, uname recipe removed), but on its machine the pinned Linux interpreter would not execute (setup exit 3, child 126), so no live scorer example ran; docs/score.md says so.\n\nMY CHECKS AT X (scratch clone, Linux x86_64; no independent authority). git diff P..X = the seven files; 95 files, no submodule, credit in each. validate_kit.py exit 0 PASS 14848/14848, six parts pass, no findings. README: no 'pending'; its 53 hashes and envelope digest equal the files at X; 11 raw URLs fetched at X equal the clone. Replica-only setup OK. Tests: validate_kit 58, ammfast 23, score 35, ha 15, gatep 24, replica_banks Bank/Validation/LiveScorer 9, all OK (no engine run this episode). gatep fresh then cache hit, exit 0. `baselines/replica/validate.py --recompute 2048` recomputed all 12288 rows, ok. The three disputed seeds here: 618.266728525456, 427.0354769645065, 409.7365704065451 = the bank. COMBO vs qt1-ref 60000 bank --bar 0.1: above_bar, n=128, mean 0.753059478618062 (README prints 0.752858348279358, from its deviating runtime). COMBO vs its own 64000 bank: exhausted, n=1024, mean -5.9e-9, se 9.0e-9.\n\nREPRODUCIBILITY FINDING (new; say it plainly). Per-seed edges are not bit-stable across Linux x86_64 runtimes. The pinned interpreter uses the system C library's math functions; a last-place difference there moves most edges by under 1e-12 and now and then flips a discrete event in a 10000-step run, moving that seed by 5e-4 to 5e-2. My test: same checkout with GLIBC_TUNABLES=glibc.cpu.hwcaps=-FMA: 9 of 12288 rows change at six decimals (COMBO 10697, 10996, 11354, 60344; TwoComp 11590, 60233, 64646; qt1-ref 60475, 60587; largest COMBO/11354 628.304150 -> 628.3585076213824), and on those nine seeds ammfast still equals CPython within 6.1e-12. So the 1e-9 gate holds inside any one runtime, and bank rows reproduce only where the math library agrees with the generator's. Reproduced exactly by: generator, audit-replica, audit-engine (live tests), my runs. Not by: the readme worker (7 of 384); my test shows a mechanism, not that machine's cause, which is unestablished. Use: run `python -B baselines/replica/validate.py --recompute 2048` (about 1 minute) once per machine; if it fails, banks still screen large effects (the readme worker's two failing means moved 1.5e-4 and 1.8e-4, against se 0.02-0.06) but not candidates within about 1e-3 of a baseline: score those against a bank-shaped JSON made on the same machine with ammfast.run_batch and passed as --baseline. The kit has no flag for that (baselines/replica/generate.py writes only the tracked paths): name it as a gap.\n\nREADME AT X, honest limits: every command and result on it was measured at P. It says validate_kit FAILS at P and PASS is 'expected' (PASS at X is observed, above); it reports the three failing tests with cause unknown; its live scorer numbers come from the deviating runtime; the seven changed files carry <trunk-commit>, not a hash. Its rates are the generator's (102.3, 88.4, 77.9); audit-replica measured 158.9, 150.9, 135.3.\n\nWRITE-UP. Follow episode 4's WRITE-UP MUST STATE list, plus: X, P and the seven-file diff; raw URLs at X for every piece (ammfast/*.py, 11 banks, replica validation.json, score.py, setup_fast.sh, gatep.py, engine_eval.py, validate_kit.py, README.md); both audits' counts; the reproducibility finding with the seeds and values above; docs-refresh partial; README limits; e02's ammfast item delivered nothing and e03 replica-kit built it; macOS arm64 never executed; 4 items unspent. Cite the results by batch/item.\n\nIF MORE EPISODES ARE GRANTED: one code wave, one item, scope [README.md]: pin all 94 other files to raw URLs at X with sha256, state the observed PASS at X, add a 'Reproducing the banks on your machine' section from the finding above, and re-run the README's live scorer examples on a runtime where --recompute 2048 passes. Nothing else needs to change.",
  "read": [
    "e04-seal/validator-fix",
    "e04-seal/readme",
    "e04-seal/docs-refresh",
    "e04-seal/audit-replica",
    "e04-seal/audit-engine",
    "e03-recovery/replica-kit",
    "e03-recovery/setup-repair",
    "e03-recovery/score-integration",
    "e03-recovery/kit-validator",
    "e02-evaluation/engine-bank",
    "e02-evaluation/ha-bank",
    "e02-evaluation/score",
    "e02-evaluation/foundation-audit",
    "e01-foundation/reference-gate",
    "e01-foundation/bootstrap"
  ],
  "cancel": [],
  "finish": true
}
