{"id":1400,"job_id":2789,"problem_id":1,"lane_id":null,"type":"explore","user_id":34,"model":"deepseek-v4-flash","provider":"deepseek","report_md":"# Job #2789 — rescue of return #305: the obstruction is real, and it is larger than the review recorded\n\n## What the refutation closes, and what it does not\n\nReview #154 (trusted, `refuted`) is right about the attempt: #305's patch copied ledger versions that\nare no longer the served versions, so applying it would revert the served files. The reviewer's own\ndiagnosis is the sharper result — the maintainer's **2026-09-16 mirror cut** (private `d0cef20`,\ndeclared in `MIRROR.md`) replaced served content that the record had already **accepted and\nverified**. The attempt is closed; the obstruction is not, and it is not confined to the three\ndocuments the review's `also_fix` names.\n\n## The changed ingredient\n\n#305 compared the registry to the **served** ledger, so it could not see that the ledger it read had\nitself been reverted — its audit was consistent with the served state by construction. A trusted\nreviewer saw it only where #305 *proposed a change*, because there the stored version and the served\nversion could be compared. Nothing in either pass read the **version list**, where the event is a\nfirst-class observable:\n\n> the served content sha occurs **twice** in a document's version list, and a version between the two\n> occurrences carries `verified_by` or a `return_id`.\n\nThat is a reversion *past a verified revision*, detectable from `GET /history/<path>` alone, with no\nmathematics asserted anywhere.\n\n## The sweep (pre-registered before it ran; `prereg-reversion-305.md`)\n\n141 served `research/*.md` documents, one `GET /history/research/<name>` each, 38 s, listing order.\nPositive control: the three documents the review names must fire. Negative control: a served sha\nappearing once in its version list must not.\n\n**Result: 6 documents have more than one version; all 6 qualify.** Two controls hold, and the verdict\nis `F3` of the pre-registration: the qualified set is **strictly larger** than the review's list.\n\n| document | reverted | accepted revision thrown away by the cut |\n|---|---|---|\n| `research/QUESTIONS.md` | v3 → v1 content | #80 *(named by review #154)* |\n| `research/fixed-endpoint-discrepancy.md` | v3 → v1 content | #151 *(named)* |\n| `research/global-factor-signs.md` | v3 → v1 content | #153 *(named)* |\n| `research/centered-discrepancy-estimate.md` | v3 → v1 content | **#83 — not named** |\n| `research/corner-correlation.md` | v3 → v1 content | **#92 — not named** |\n| `research/fold-arithmetic-bridge.md` | v3 → v1 content | **#101 — not named** |\n\n`reversion-sweep.json` carries every document's row; the other 135 are single-version.\n\n## The reversions are substantive, not mirror filtering\n\n`MIRROR.md` says the edition is *filtered*, so text differences are expected and a plain diff cannot\nseparate filtering from reversion — the version-list signature can. Inspected v2→v3 diffs:\n\n* `QUESTIONS.md`: `Q-shadow-prereg` **ANSWERED → OPEN** in *both* registry layouts (levels 3-4 and\n  738-741) — #80's own summary is exactly \"both QUESTIONS.md rows still say OPEN; this is a stale\n  registry status\", so the cut restored the staleness #80 removed.\n* `centered-discrepancy-estimate.md`: ledger `status: ANSWERED → PARTIAL` (return #83).\n* `fold-arithmetic-bridge.md`: \"Proposition 6 supplies a later directed certificate for the missing\n  interval\" reverts to \"On (4.8,8] the stronger sub-2 observation remains measured, not proved\"\n  (return #101) — a proved range demoted to measured.\n* `fixed-endpoint-discrepancy.md` and `global-factor-signs.md` carry the same signature the review\n  already judged for #151/#153.\n\nSo the public record currently serves, for six documents, a state the platform had already verified\nand replaced, and the registry built from those ledgers reads those six as older than they are.\n\n## Scope, and what is not claimed\n\nThis is a document-state statistic: no twin-prime claim, bound or estimate is asserted, and no\nmathematics is re-derived. Only the three newly-found reversions were diffed; whether `#92`'s\nreversion is substantive or mirror filtering is **not settled here** (its first hunk is link\nstripping, which a filtered edition explains). The route below makes that classification its first\nstep. The sweep covers top-level `research/*.md` only: `history/`, `paper/`, `bench/` and the other\ndirectories were not swept, so 6 is a lower bound on the cut's blast radius, not a count of it.\n112 of this handle's returns wait for a verdict.\n","patch":null,"cpu_hours":0.05,"hashes":{"03c8dd2ddf97250e9b5a3dd61a59b7b250519c7d94481a4cd1384f20f8c2a155":"job2789-diff-corner-correlation.md","04126b75fe92afa03accfaaafb457d781351e9c1d36b72e04a4974459f2da2a5":"job2789-reversion-sweep.py","2be0067dfad313cca7aaae666e1396460770a5bdac8f7922bc43a17f07aaae8b":"job2789-reversion-sweep.json","41d7d5710c901116f3ea06a142726db31c292144364bda888c3c12f6af10fb11":"job2789-diff-questions.md","5be76940f3666cb41abbc9049b058a95c57aacd4692fe860a4985d79526cc1c5":"job2789-diff-centered-discrepancy-estimate.md","c7495562eda2b0d0f56f531e51eb51f89891d49674e270412c0e5761c91f1e1e":"job2789-reversion-prereg.md","c90cfe17c72d72963cf0a45a5eaba0d938b1ac361ca27b966d33cc517f0c328a":"job2789-diff-fold-arithmetic-bridge.md"},"author_rung":"measured","status":"recorded","final_rung":"recorded","created_at":"2026-09-22T20:55:21.210Z","repo_url":null,"commit":null,"cites":{"files":[],"handles":[],"returns":[305,80,83,92,101,151,153],"messages":[]},"tokens":{"log":"custom","input":38105,"models":{"deepseek-v4-flash":41988},"output":41988,"source":"custom-jsonl","entries":1,"cache_read":14619008,"cache_write":0,"observed_models":["deepseek-v4-flash"]},"paper_slug":null,"revision_path":null,"revision_sha":null,"recipe_md":null,"verification":null,"target":null,"finding":null,"human_md":null,"provisional":false,"effects_applied_at":null,"effort":"max","also_fix":null,"transcript_omitted":{"share":0,"omitted":0,"outputs":0},"patch_hash":null,"superseded_by":null,"duplicate_of":null,"transcript_resubmitted_at":"2026-09-22T21:00:52.666Z","file_notes":[{"sha":"04126b75fe92afa03accfaaafb457d781351e9c1d36b72e04a4974459f2da2a5","name":"job2789-reversion-sweep.py","notes":["prints what looks like progress or timing to stdout on line 114 (\"% (len(rows), time.time() - t0, result[\"multi_version_documents\"], len(reverted)\"), inside the statement that starts on line 113: stdout is the artifact and must reproduce byte for byte elsewhere; send progress, timing and rates to stderr. This one is a guess from the text, not a measurement: if the output is already identical from run to run, say so in your return and leave the file alone."],"fixed_by":"fa69cadf3a4765ff64a22f51b2ab4463702d79c86ab10f00c8e529a23cd9fe8a"}],"research":{"outcome":"proposed","proposal":{"title":"Mirror-cut reversion audit: which accepted, verified revisions is the public edition not serving?","prior_art_md":"**Search date 2026-09-22** (this run), queries and what they returned.\n\n* \"content-addressed storage same hash reverted file indistinguishable from unchanged revision\n  history\" — Wikipedia *Content-addressable storage*; techtarget CAS; llvm::cas docs. These establish\n  the ingredient: a CAS object is identified by content, so a *reverted* file is the **same object**\n  as its earlier self and no content hash can flag it. Lineage must be recorded separately. That is\n  the gap this route exploits — the served `/history/<path>` records lineage, so the reversion *is*\n  observable, but only there.\n* \"detect silent regression in mirrored documentation snapshot reverted to older revision / drift\n  detection\" — Flyway snapshot drift detection (red-gate), Scalr drift detector, restic snapshot\n  checks, Mintlify documentation-drift note. All compare a target against a recorded snapshot and\n  flag **any** difference; none weights a difference by whether the intervening revision was\n  *verified*, and none separates an intentional filtered re-publish from a reversion.\n* **Project sources inspected:** `docs/MIRROR.md` (the edition is a *filtered* public edition\n  prepared from private commit `d0cef20` on 2026-09-16 — so text differences are expected and a diff\n  cannot discriminate); `GET /history/research/<name>` for 141 documents (version lists, the\n  instrument); `docs/research/history/CHANGELOG.md` (the project's own ledger of what changed).\n* **Earlier attempts inspected:** return #305 and review #154 (`also_fix`: three documents), and the\n  duplicate registry refresh #220 the review identifies as byte-identical.\n* **Uncovered step:** no inspected tool or text distinguishes \"filtered re-publish\" from \"verified\n  revision reverted\". The discriminating signal found here is a **repeat of an earlier content sha in\n  the version list, weighted by the verification carried by the versions in between**. A no-match\n  search is evidence about the search, not novelty; this is a record-integrity instrument, not a\n  mathematical one.","uncertainty_md":"Whether each flagged reversion is **substantive** (a ledger status/verdict or proved range changed)\nor ordinary mirror filtering. Three of six were inspected at diff level here (two substantive, one\n— `corner-correlation` — with a link-stripping first hunk that filtering explains and its later\nhunks uninspected). The weakest unproved assumption is therefore that the remaining flags matter;\nthe route's first step exists to break that assumption.","contribution_md":"This route contributes to the project's **record**, not to its frontier: it makes the served\npremise chain honest. Every downstream route cites ledger blocks and registry rows; where the\n2026-09-16 mirror cut reverted a verified revision, those citations currently read the older state,\nand a registry regenerated from the ledgers inherits that state. Concrete consequence measured here:\nthe served `QUESTIONS.md` reads `Q-shadow-prereg` as **OPEN** in both layouts, undoing return #80,\nwhich is exactly the staleness #80 was accepted to remove.\n\nThe link to twin-prime progress is indirect and is labelled as such: no route's conclusion is shown\nto change here, only the state of the documents that routes cite. The direct contribution is a\n**countable** deficit (6 documents, lower bound) with a named instrument, so a maintainer can decide\nre-apply-or-record rather than re-discover the event."},"next_step":{"method":"Endpoints only; no compute. (1) For each of the six documents in `reversion-sweep.json`, fetch the\nverified revision's content (`versions[i].content_url`) and the served version, and diff **the ledger\nblock and the verdict text only** — classify substantive vs filtering. (2) For the substantive ones,\nlist every registry row in the served `QUESTIONS.md` whose owning ledger is that document, and list\nthe returns that cited the reverted content (`cites`/`depends_on` walk one level). (3) Re-run\n`reversion-sweep.py` with the listing extended to `history/`, `paper/` and `bench/` to turn the lower\nbound of 6 into a count. The pre-registered detector is already implemented and was exercised on 141\ndocuments in 38 s; the positive control (the review's three) and the negative control (single-version\ndocuments) both hold.","compute":{"ram_gb":2,"disk_gb":1,"cpu_hours":0},"failure":"Every flagged diff is confined to mirror filtering (link stripping, source removal) with no ledger status, verdict or proved range changed. Then the cut discarded nothing substantive, the reversions are cosmetic, the served state is already the intended edition, and this route dies without a second attempt.","success":"At least one flagged document whose served ledger differs substantively from its verified revision, with the affected registry rows named — then the reverted set is a live deficit to re-apply or to record as superseded (the maintainer's choice, exactly as review #154's `also_fix` frames it), and the registry is regenerated once.","question":"For each of the six reverted documents, does the cut's served version differ substantively from the verified revision it replaced (a ledger status, verdict or proved range), or only by mirror filtering — and which registry rows and downstream citations currently inherit the older state?","budget_hours":1.5,"required_tools":["http-get"],"required_sources":["project-history-api"]},"depends_on":[305],"evidence_md":"(pre-registered before it ran; `prereg-reversion-305.md`)\n\n141 served `research/*.md` documents, one `GET /history/research/<name>` each, 38 s, listing order.\nPositive control: the three documents the review names must fire. Negative control: a served sha\nappearing once in its version list must not.\n\n**Result: 6 documents have more than one version; all 6 qualify.** Two controls hold, and the verdict\nis `F3` of the pre-registration: the qualified set is **strictly larger** than the review's list.\n\n| document | reverted | accepted revision thrown away by the cut |\n|---|---|---|\n| `research/QUESTIONS.md` | v3 → v1 content | #80 *(named by review #154)* |\n| `research/fixed-endpoint-discrepancy.md` | v3 → v1 content | #151 *(named)* |\n| `research/global-factor-signs.md` | v3 → v1 content | #153 *(named)* |\n| `research/centered-discrepancy-estimate.md` | v3 → v1 content | **#83 — not named** |\n| `research/corner-correlation.md` | v3 → v1 content | **#92 — not named** |\n| `research/fold-arithmetic-bridge.md` | v3 → v1 content | **#101 — not named** |\n\n`reversion-sweep.json` carries every document's row; the other 135 are single-version."},"research_route_id":128,"verification_plan":null,"verification_fingerprint":null,"review_admitted_at":null,"department_id":"dept_bd08e49ed9621cfd852f9b04","run_id":"run_0fa8abb7f369e05f5b496aac","triage_lead":null,"revision_base_sha":null,"integration":null,"resolves":null,"handle":"maxime-fleury","job_brief":"Read return #305 and its search record, then search online for the method and changed alternatives before testing them. Check whether its negative conclusion closes only a statement or attempt. Use published numerical results with citations, reserving reproduction for later validation. Inspect the decisive evidence, then seek a concrete alternative. Preserve valid refutations. A promising alternative should return research.proposal with parent evidence in cites.returns, a prior-art comparison and the cheapest next experiment. If nothing changes, record the scoped obstacle and stop. This is a bounded sample; do not reproduce the whole investigation.","review_deferred":false,"in_triage":false,"triage":[],"verification_runs":[],"verification_state":null,"verification_summary":null,"canonical_return":null,"review_history":[],"dependencies":[{"id":"305","status":"rejected","final_rung":null,"canonical_return_id":"220"}],"research_url":"/projects/twin-primes/research-routes/128","transcript_url":"/projects/twin-primes/return/1400/transcript","files":[{"sha256":"c7495562eda2b0d0f56f531e51eb51f89891d49674e270412c0e5761c91f1e1e","name":"job2789-reversion-prereg.md","bytes":2758},{"sha256":"04126b75fe92afa03accfaaafb457d781351e9c1d36b72e04a4974459f2da2a5","name":"job2789-reversion-sweep.py","bytes":5654},{"sha256":"2be0067dfad313cca7aaae666e1396460770a5bdac8f7922bc43a17f07aaae8b","name":"job2789-reversion-sweep.json","bytes":37919},{"sha256":"41d7d5710c901116f3ea06a142726db31c292144364bda888c3c12f6af10fb11","name":"job2789-diff-questions.md","bytes":13588},{"sha256":"5be76940f3666cb41abbc9049b058a95c57aacd4692fe860a4985d79526cc1c5","name":"job2789-diff-centered-discrepancy-estimate.md","bytes":4129},{"sha256":"c90cfe17c72d72963cf0a45a5eaba0d938b1ac361ca27b966d33cc517f0c328a","name":"job2789-diff-fold-arithmetic-bridge.md","bytes":5481},{"sha256":"03c8dd2ddf97250e9b5a3dd61a59b7b250519c7d94481a4cd1384f20f8c2a155","name":"job2789-diff-corner-correlation.md","bytes":3554},{"sha256":"fa69cadf3a4765ff64a22f51b2ab4463702d79c86ab10f00c8e529a23cd9fe8a","name":"job2789-reversion-sweep.py","bytes":5929}],"decided_by_author_handle":false,"reviews":[],"decisions":[],"decision":null,"duplicates":[],"cited_messages":[]}