ZZeroResp
Deep dive · v5.4.x cycle PRE-REGISTERED

RESEARCHv5.4.x

From v5.3 to a hybrid: ZDB validation, full-library tournaments, loss analysis, and two new contours — v5.4.3 (noise switch) and v5.4.4 (cycler contour). Every claim paired, every negative result recorded.

■ Iterated Prisoner's Dilemmahundreds of thousands of paired matches
Full library · 5% noise · 230 players
2rank
v5.4.4 · best of ours
Gap to #1 (Evolved ANN 5 Noise 05)
−17.1 pts
Next of ours (v5.4.3)
#3
v5.3 baseline
#4–#6
Spin-out fix · TTFT · 5% noise
+0.3718SPT
reproduced in Match harness, 2 seeding conventions
Gradual
+0.2622
Calculator
+0.4068
Random cost
−0.0472
Results

Full-library round-robin with our versions inside the pool

200 turns · 1 rep · paired seeds
Noisev5.4.4v5.4.2v5.4.1v5.3leader SPT
0%#9#10#16#6664.2
5%#2#8#4#5592.2
10%#3#8#5#4553.9

Ranks inside our tight cluster (0.3–2 SPT) shuffle across seeds — the family reliably sits top-10 at every noise level; per-version stars need reps ≥ 3. The 0% leader is Evolved FSM 6; at 5–10% it is Evolved ANN 5 Noise 05 — a strategy literally evolved against this library.

What each new version is

v5.4.2
responsiveness-gated apology: ΔPresp = P(C|our C) − P(C|our D) ≥ 0.35. Keeps the spin-out fix, halves the Random cost of v5.4.1 (−0.093 → −0.047).
v5.4.3
noise-level contour switch (quiet → static gate, noisy → responsiveness gate). Honest negative result: under channel noise it converges to v5.4.2 — the responsiveness gate already is the right switch.
v5.4.4
cycler contour: fixed-period detection (periods 2–6, window 18, noise-tolerant, mirror-guarded) blocks the apology — the aggressive base contour keeps exploiting. Best of ours at 5% noise.
Loss analysis

Why we were not top-5

per-opponent gap decomposition
Opponent category0%5%10%
Cyclers (8)+0.19+0.58+0.44
Exploiters (26)−0.06+0.02+0.08
Stochastic (5)+0.12+0.06+0.05
Reciprocators (26)−0.03−0.28−0.18
Trained (13)−0.13−0.27−0.25

Mean SPT gap, rivals above us minus ours (negative = we out-earn the leaders). The leak is not the hard opponents — it is the Cycler family, and it is our own regression: under channel noise the periodic D's of a cycler read as unprovoked, the apology fires and resets the exploitation (CyclerCCD at 5%: v5.3 3.369 vs v5.4.2 2.207).

Cycler contour recovery · CyclerCCD · 5%
+0.36SPT vs v5.4.2 (fresh seeds)
2.73v5.4.4 score (v5.3: 3.30)

Replicates out-of-sample (fresh seeds 1000–1029). AntiCycler needs the forbearance ratchet from the AOM line — next mechanism on the list.

Stability

Rank stability across independent draws

full library · 5% · seeds 42 / 43 / 44
Versionseed 42seed 43seed 44
v5.4.4#2#5#11
v5.4.2#8#3#7
v5.3#6#6#4
v5.2—#2#5

The ZeroResp family holds top-10 of 230 at 5% noise on every draw; the ordering inside the family is draw-dependent (mean SPT within hundredths). Out-of-sample targeted replication on seeds 1000–1029: TTFT +0.23, Gradual +0.23, HardProber +0.20, cycler fix +0.36; Calculator lost significance, Random −0.08.

Methodology (ZDB)

Pre-registration
criteria committed before runs
Unit of analysis
per-seed means, Wilcoxon + Holm
Pairing
identical seeds & opponents per version
Bit-level checks
full move-history comparison
Artifact hunts
rank 4/225 exposed as measurement artifact
Negative results
published in-repo (v5.4.3, gray jitter, layer 3)

Every headline number on this page traces to a JSON artifact and a runner script in the repository.

Honesty audit

Does the model know its opponents?

overfitting audit

No opponent names appear in the decision logic — zero branches of the form "if it is X, do Y". All behavior is inferred from the current match: noise estimation, responsiveness gate, period detection, evidence ladder, tactical classifier.

Profile memory
learned stats keyed by opponent name across rematches; inactive in single matches; declared via manipulates_state; switchable off
Tuned constants
thresholds tuned on the reporting pool; external holdout showed −0.03 (recorded honestly)
Meta-lessons
some fixes motivated by specific dev seeds; mechanisms stay generic and replicate on fresh seeds
Context
the strategies above us (Evolved ANN 5 Noise 05 et al.) were literally evolved against this library — our rules are readable and auditable instead

Attribution / Use of AI tools

Basis
Production through v5.3 is the human-directed ZeroResp line (noise ladder).
v5.4.x
Built on that v5.3 basis with AI coding agents under human direction: the human set hypotheses, review criteria, and every release decision; agents implemented runners, ran batteries, and drafted reports.
Tools
Primary coding agent for the v5.4.x cycle: GLM (Z.ai). Site updates, GitHub packaging, CI/monitoring and publication support: Grok Bot. Autocomplete and spelling fixes do not count.
Responsibility
The maintainer of this repo is responsible for the contribution and can explain the strategy decisions. v5.4.4 is current on the main site; this page keeps the research notebook for the cycle that produced it.

Full provenance lives in the repository: pre-registration files are committed before their test runs, and the git history separates the research branches from the release line. One disclosure block is enough — no per-line AI markers.

■ Honest by designcheck the commits