Skip to content

Methodology, limitations and errata ​

How a counted round is built, what the whole series cannot establish, and where every published correction lives. This page summarises; the limitations page and the errata page are the records.

How a round is built ​

The order is the same in every round, and the repository records each step's commit before the next: frame → mine → pilot → freeze treatment → register → draw → run → analyse.

  • Frame and mining. A frozen frame of real repositories (npm, then PyPI) is walked in a seeded order; candidate tasks are historical regressions with a parent-green / tests-red / gold-green triple, revalidated before entering the pool. Excluded tasks and attrition are committed beside the pool.
  • Pilot. Sacrificial repositories exercise the apparatus and become disclosed development data; they never enter the counted pool.
  • Treatment freeze. A released version is pinned — by tag in rounds 1–3.1, by packed-artefact hash in round 4 — with its policy, wiring and runner hashes in the registration.
  • Registration. Endpoints, the test, the success criterion, point predictions with bands, losing conditions, an interpretation floor and the analysis script are committed before the draw. Fields filled after a counted trajectory runs are protocol deviations and go in an append-only appendix.
  • Paired arms. Each repository is attempted twice by the same agent under the same pressure prompt — ungated and gated — in a registered random order.
  • Adjudication. The frozen analyzer aggregates frozen per-trajectory verdicts; round 4's is fail-closed and seals its output with a provenance proof over the exact input bytes. A suite that could not run is INVALID_MEASUREMENT, not a failed test.

The record for each round: harness/taskbench/DESIGN.md, the round directories linked from each round page, and the methodology post How round 4 is built to be hard to fool.

Confirmatory versus exploratory ​

Only the five Taskbench rounds are preregistered confirmatory experiments. The seed studies, governance-mechanism comparisons and prompt before/afters are exploratory: one runtime, one model per cell, an author-designed seed, repeated stochastic trajectories, and in several cases a historical rather than concurrent control (6/10 vs 1/10 is p ≈ .057 by Fisher's exact test; 0/10 vs 2/10 is p ≈ .474). They are descriptive comparisons, not causal estimates.

What the series cannot establish ​

From the limitations page, which is authoritative:

  • Generalisation. Results are for specific models, one runtime, one pressure prompt per round, specific treatment versions and finite JS/TS and Python samples — evidence for those settings, not a universal claim about all repositories or all agents.
  • Semantic correctness. A green verdict — visible and pristine — means the tests still mean what they meant at the trusted base. It does not mean the code is right; a semantically incomplete fix the base tests accept passes every layer (round 3.1's tableau trajectory). The shipped verify is not the benchmark oracle: it productizes base restoration, not withheld cases.
  • Absence of bypasses. Zero observed escapes on a sample is an observation, not proof that no bypass exists; every bypass on the security page was found by review after a round that observed none.
  • Model and runtime pinning is weaker than the identifier suggests; a served model behind a name can change.
  • Training contamination was not measured in any round.
  • Registration ordering is recorded by the commit graph, not independently timestamped; round 3.1's accidental pre-registration trajectory was caught by disclosure, not by the graph.
  • The bet ledger is accountability, not calibration; the exact cumulative totals are withdrawn pending reconciliation of an unexplained step.
  • Commit-corpus percentages are review-trigger rates, not false-positive estimates.
  • The harness was not a security boundary in rounds 1–3.
  • Historical caveats travel with the result. A round's page keeps the version-specific caveats that applied when it ran (the 1.14.1 verifier bypass, the observation-bounded network claim, the control-plane exposure) rather than restating the result on today's version.

Errata ​

Every published correction is recorded, newest first, on the errata page, verified against primary artifacts before the edit. The corrections that touch a headline number are linked from the corresponding round page:

datescoperound pages
2026-09-09round 4 preregistration published; deviations D32/D33 disclosedRound 4
2026-09-01series-wide framing pass (six corrections; limitations page created)all
2026-09-01verify described as the benchmark oracle; the 1.14.1 bypass present 1.9.0–1.14.0Round 2, Round 3, Round 3.1
2026-09-01rounds 1 and 2 transfer figures used a defective predicate (13/26 → 9/27; 14/22 → 12/22)Round 1, Round 2
2026-09-01round 3.1 results article: title and null-result framing; common-16 denominatorRound 3.1
2026-09-01round 3.1 preregistration article: pilot counts and causal framingRound 3.1
2026-09-01the control plane was reachable by the agent (rounds 1–3)Round 1, Round 2, Round 3
2026-09-01round 3 results article corrections (PR #144)Round 3
2026-08-31network isolation was observation-bounded (rounds 1–2)Round 1, Round 2
2026-08-31pre-round-2 publication audit: ten correctionsRound 1

Three inconsistencies the artifacts cannot decide are held open on the errata page under "Known, unresolved" rather than silently fixed.

How this section is kept honest ​

These pages carry no number that is not in a committed artifact, and test/research-docs-consistency.test.ts re-derives the headline figures from those artifacts on every change: rounds 1–3.1 from their frozen results.jsonl ledgers (pairs, b, c, exact McNemar p, model, trajectory count) and registered treatment versions; round 4 from ROUND4-RESULTS.json, including the landing-table status; detector precision from the fp-study corpus JSON and study totals; performance from the CHANGELOG and SECURITY-ENVELOPE measurements. A page that disagrees with its artifact fails CI. The sealed records themselves reach main only through a maintainer-merged pull request; this section only presents them.

Apache-2.0. Every headline number is measured; the pre-registered predictions — including the refuted ones — are committed to the repo.