{"id":1363,"job_id":2743,"problem_id":1,"lane_id":4,"type":"explore","user_id":34,"model":"deepseek-v4-flash","provider":"deepseek","report_md":"# Job #2743 — budget-scaled exact-recovery test: 25x the ladder slot, still one hole short\n\nRung: `measured`. Every search number is measured at its stated budget and seed; every closure\nnumber at K <= 4 is a **complete enumeration** (exhaustion proved, each file says so in its own\n`proof_of_negative`); the K >= 5 numbers are **bounded runs**, not proofs, and are labelled as\nsuch everywhere they appear.\n\n## 1. What was scaled, and what was not\n\nReturn #1360 asked: *given a real budget instead of an 18 s ladder slot, can the producing\ninstrument recover a PUBLISHED exact value at a level >= 18, and if so at what cost?*\n\nThe instrument under test is the one whose state the route's n = 25 record is built from\n(`check-2043.py`, served with the sibling run's evidence for return #1098). It is imported\n**read-only by path** — never edited, so this is the instrument's own strength, not a repaired\nversion of it. Each level was given **450 s = 25x** its calibration slot, warm-started from\n*that level's own plateau state* as recorded in its served output\n(`levels.calibration[19].residues`, `levels.calibration[22].residues`) — so the test asks what\n25x buys on the state it already had, not what a fresh random start does.\n\nNothing else changed: same objective (holes in the best window of the fixed target length R),\nsame code, same seeds are quoted so the protocol is reproducible (a time-boxed randomized run\nis not expected to repeat byte for byte; the *artifact* is the state, and the state is checked\nindependently below).\n\n## 2. The search result: 3 holes → **1 hole**, at both published levels\n\n| level | published target R | its own 18 s slot | **450 s (25x)**, warm from its own plateau | steps | its own tracked best run | longest run of the final state (this run's scan) |\n| --- | --- | --- | --- | --- | --- | --- |\n| 19 | 1283 | 3 holes | **1 hole — not covered** | 315,321 | 1079 (verified here, start 18) | **821** (start 159) |\n| 22 | 1709 | 3 holes | **1 hole — not covered** | 231,858 | 1565 (verified here, start 274) | **1565** (start 274) |\n\nIndependent measurement of both final states with this run's own instruments (`window.py` over\n20,000 offsets, `cover90scan.py` over 2,000,000, level-pinned and gated 7/7 against the route's\nown published geometry in #1356):\n\n* n = 19: best 1283-window has **1 hole**, window start 159; state's longest covered run **821**;\n* n = 22: best 1709-window has **1 hole**, window start 112; state's longest covered run **1565**.\n\nTwo things worth reading off that table. **(a) The 25x budget buys 2 of the 3 missing holes and\nthen stops, at both levels** — the residual is exactly one hole, and it does not close. **(b)\nThe proxy/object divergence reappears**: at n = 19 the state the fixed-window objective settles\non has a longest run of **821** (64 % of the published 1283), while the search's own *tracked*\nbest run — a different state, saved in the artifact — is **1079** (84 %). Reading the final\nstate's run as \"what the search achieved\" understates it by 24 %; reading the tracked number as\nthe artifact's run overstates the state that was optimised. Both readings are in the artifact and\nneither is the object. This is the #1356 misalignment, one level further out.\n\n## 3. The exact repair of the last hole: proved impossible to 4 moves, and priced beyond that\n\nClosure is the route's own residual-hole mechanism, run here with complete enumeration\n(`--monotone 0`, moves = one prime reassigned, at most one move per prime, every candidate set\nenumerated; exhaustion for a given K is a proof for that K).\n\n| level (1-hole window) | K = 1 | K = 2 | K = 3 | K = 4 | K = 5 | K = 6 |\n| --- | --- | --- | --- | --- | --- | --- |\n| 19 (window start 159) | 36 nodes, no solution | 1,184, no solution | 38,829, no solution | **1,272,896, no solution (26.2 s)** | capped: 8,000,071 nodes / 172.8 s, no solution; **uncapped run killed by the enforced 30-min wall limit at > 83M nodes** | capped: 4,000,120 nodes / 90.3 s, no solution |\n| 22 (window start 112) | 42 nodes, no solution | 1,669, no solution | 66,356, no solution | **2,635,417, no solution (58.9 s)** | capped: 8,000,148 nodes / 174.1 s, no solution | not run (out of budget) |\n\nIn every one of those runs `best_holes_seen` stayed at **1**: no single reassignment of any prime\neven reduces the count, which is why the trees are as large as they are. Measured node rate:\n**46,300 / 44,300 nodes per second** (n = 19 / n = 22), stable across depths.\n\nSo the honest split: **K <= 4 is proved impossible at both levels**; **K = 5 and 6 are not\nestablished either way.** What is measured is the price: the K = 5 tree exceeds **83 million\nnodes** (> 30 min at the measured rate — it was killed by the job object's 1800 s wall limit\nbefore it could exhaust), and the K = 4 → K = 5 growth is **at least 65x** on the n = 19 tree,\nwhich puts K = 6 at **>= 5 billion nodes ≈ >= 30 hours** (an extrapolation, labelled as one).\nFor scale: the route's whole budget cap is **2 CPU-hours**, and the bar at n = 25 needs a run of\n**2454**, not 1283.\n\nNone of that is a solution attempt that failed to find something: the K = 5 runs explored 8M\nnodes each with no solution and no improvement, and the one run given a free hand was stopped by\nthe enforced limit rather than by an exhausted tree.\n\n## 4. Verdict against the pre-registered branch\n\nThe registered failure condition was: *\"No exact coverage at n = 19 and n = 22 with >= 20x budget\n**and** no closure at K <= 6.\"*\n\n* **First half: established.** With 25x the slot, neither published level is covered (1 hole each).\n* **Second half: not established.** K <= 4 is *proved* impossible, and K = 5/6 are measured as\n  expensive with no solution found in the explored portion, but \"no closure at K <= 6\" is a claim\n  this job cannot make.\n\nSo this is **progress with a scoped obstacle**, not the full failure branch: the class's\ndemonstrated exact-recovery boundary (n <= 17, from #1360) is not moved by 25x the budget, and\nclosing the single remaining hole is priced *outside the route's cap for one published level* —\nbefore any consideration of the n = 25 bar. What the route can now say with measurement behind\nit: at n = 19 and n = 22 the fixed-target search reaches 1 hole in minutes and then stops, and\nthe repair step that was supposed to finish the job costs > 30 minutes per level at K = 5 and\n~30 hours at K = 6, against a 2 CPU-hour cap.\n\n## 5. What this does NOT claim\n\nNo witness, at any level: no run longer than 1565 at n = 22 or 1079 at n = 19 is produced here,\nboth far below the published 1709 and 1283, and nothing here bears on the n = 25 bar (2454).\n**No claim that no closure exists at K = 5 or 6** — only that the explored portion of those trees\nfound none and that the full trees are priced beyond the cap. No claim that a different seed, a\ndifferent warm start or a longer budget would not cover the target: the panel is 2 levels x 1\nbudget x 1 seed each, and the next step is exactly the seed question. The producer's own numbers\n(1079, 1565) are *verified here independently*, and its 3-hole 18 s rows are unchanged.\n\n## 6. Execution control and my own defects, disclosed\n\n1. **The uncapped K = 5 run left no artifact.** It was launched without `--log`, so when the job\n   object killed it at the 1800 s wall limit there was no node count and no progress file — only\n   the fact of the kill. Cost: 30 minutes of budget bought a *lower bound* (> 83M nodes) instead\n   of a measurement. Every later long run carries `--log` and an explicit `--node-cap`. Recorded\n   as a framework lesson, not as a result.\n2. **The enforcement worked and is observable**: the job object enforces wall and CPU limits\n   (`JOB_OBJECT_LIMIT_JOB_TIME`, `WaitForSingleObject`), and the killed run is the evidence that\n   a 30-minute wall limit is *reachable* by this closure, which is itself the cost finding.\n3. **The `best_run` reading trap** (§2b) is the third instance in this run's history of a number\n   in an artifact meaning something other than what a reader would assume; it is disclosed in the\n   report and in the artifact itself (`producer_best_run` is tracked over time,\n   `producer_best_run_state` carries the state, and both are verified here).\n\n## 7. The cheapest credible check of this return\n\n`python window.py --residues results/n19-450s.json --level 19 --R 1283 --X 20000 --out win.json`\nreports `window_holes: 1, window_start: 159, longest_run: 821` in 0.02 s, and\n`python closer.py --residues results/n19-450s.json --start 159 --R 1283 --K 4 --monotone 0\n--level 19 --out close.json` re-derives the 1,272,896-node exhaustion in 26 s. Either one fails\nloudly if the state or the level in this return is wrong.\n","patch":null,"cpu_hours":0.9,"hashes":{"window.py":"3570bb918324b2aac658eb596838d8edaaf6a46fbf31df5ab7751a01dbdf878b","warm-n19.json":"1a3c154fb9efeda09eee5f2932d3dbc9f046decc9881836f1c9da292551deac4","warm-n22.json":"3635f6b9133379549ad8d481c8183323f1a3f822e8882eac2db218bbd25624ba","budget_scale.py":"f30a2185a792953057d70a4b7000fce6fc250c786ade6e5fc45c1e53ac3df637","results/win-n19.json":"de0d79e73a62962048400c363e6b8ce4f99239a7d95cb38dbe551b3b28859699","results/win-n22.json":"f27d2e9ec0f9546e5693a1f759d9c5c989722b04d44e1cb0dbb7407a0c91d4bb","results/n19-450s.json":"dd665c6f29de3b5e07ae725301b3d7d5114c9e74f560bfbb72a3a7ff111a7929","results/n22-450s.json":"9bc617b79541a1ffcbbbd06c160b0969db32f0da6308ea15024c6100c5ba6922","results/scan-n19.json":"871bcdeb07f15c94e26a0a126fa0b099e05cfae84b3fd1b1cbe91862a48c845b","results/scan-n22.json":"84b933f227ba9c8bf4761ebf4c038309d69c32555ce3ce4f342a63c10d2086d5","logs/close-n19-K5cap.log":"5a32c6adc1071343b2ccac847a4e6c40e7833ce83ac2e891fb93ecb99dbacc7b","logs/close-n19-K6cap.log":"68c2ac8a9b3b4ad5130bba8b46a6ac8c55c38d1139b28bffb180dc067bf94393","logs/close-n22-K5cap.log":"2a734b26886aa281006aa5301559e0cd4e754e3164166bff7ec6cf5cffd83d10","results/close-n19-K1.json":"de6c64e12e983a91327fe0be7cca2fd9a716b7d5d38784d1ea1362fd80f2696d","results/close-n19-K2.json":"b6838ebbc634db9ebeb0cbac4589e59417e25743b64257fb4b424f4f9fa8233b","results/close-n19-K3.json":"3174705efb23fc01cfefe7ef730386b49613b85886750e812ecb50994490ae94","results/close-n19-K4.json":"d9969f89052706f2778cd0d9bae930c252e7693ed837e19d12c78d8faab94885","results/close-n22-K1.json":"2617f198b62a2e8131a39cbdde0d600b07fcafc2809491ad55b787d532b940bc","results/close-n22-K2.json":"f6cf19d3fb695ab3f98fa98104bf3f55617a397ebf1ba50b2a9c0171dbf1ee44","results/close-n22-K3.json":"4432e4b885c84b7d33e488873423f6d1bc0697ab9abbdfc6277a39507310e388","results/close-n22-K4.json":"3a8014e7d67d79c7ac32820f53d7ebf07e04cfb27c2f4c09960338e9bdc4afe3","results/runstate-n19.json":"252738cc3e2725149594d30c96bb00886883fdf0a31248707abb1e160fe2f96b","results/runstate-n22.json":"eb0ce685972543f6ac00c85ef3e579f966f7b8ab7d038dbd7df1889e5e1687ca","results/close-n19-K5cap.json":"614314f78a910edcda1fcdbf4347d77127688912d454d6d0107a7b700d8a285b","results/close-n19-K6cap.json":"b79dee0935192ccefb987987ce38d094e2871611b930a3e437f1381f6bdf670d","results/close-n22-K5cap.json":"5831d806b56372b7ce9c095cd68bbd97af9164ea027864c1b447cea238a04138","results/scan-runstate-n19.json":"e0e0ff2087060d006d3f723e7ba5b46b4ba9daa4e6a64a548d9e1460a7c8ce48","results/scan-runstate-n22.json":"f6b7017b72d8ca4879044a27c330ca277158ce653f590a9f112f528662771389","1a3c154fb9efeda09eee5f2932d3dbc9f046decc9881836f1c9da292551deac4":"warm-n19.json","252738cc3e2725149594d30c96bb00886883fdf0a31248707abb1e160fe2f96b":"runstate-n19.json","2617f198b62a2e8131a39cbdde0d600b07fcafc2809491ad55b787d532b940bc":"close-n22-K1.json","2a734b26886aa281006aa5301559e0cd4e754e3164166bff7ec6cf5cffd83d10":"close-n22-K5cap.log","3174705efb23fc01cfefe7ef730386b49613b85886750e812ecb50994490ae94":"close-n19-K3.json","3570bb918324b2aac658eb596838d8edaaf6a46fbf31df5ab7751a01dbdf878b":"window.py","3635f6b9133379549ad8d481c8183323f1a3f822e8882eac2db218bbd25624ba":"warm-n22.json","3a8014e7d67d79c7ac32820f53d7ebf07e04cfb27c2f4c09960338e9bdc4afe3":"close-n22-K4.json","4432e4b885c84b7d33e488873423f6d1bc0697ab9abbdfc6277a39507310e388":"close-n22-K3.json","5831d806b56372b7ce9c095cd68bbd97af9164ea027864c1b447cea238a04138":"close-n22-K5cap.json","5a32c6adc1071343b2ccac847a4e6c40e7833ce83ac2e891fb93ecb99dbacc7b":"close-n19-K5cap.log","614314f78a910edcda1fcdbf4347d77127688912d454d6d0107a7b700d8a285b":"close-n19-K5cap.json","68c2ac8a9b3b4ad5130bba8b46a6ac8c55c38d1139b28bffb180dc067bf94393":"close-n19-K6cap.log","84b933f227ba9c8bf4761ebf4c038309d69c32555ce3ce4f342a63c10d2086d5":"scan-n22.json","871bcdeb07f15c94e26a0a126fa0b099e05cfae84b3fd1b1cbe91862a48c845b":"scan-n19.json","9bc617b79541a1ffcbbbd06c160b0969db32f0da6308ea15024c6100c5ba6922":"n22-450s.json","b6838ebbc634db9ebeb0cbac4589e59417e25743b64257fb4b424f4f9fa8233b":"close-n19-K2.json","b79dee0935192ccefb987987ce38d094e2871611b930a3e437f1381f6bdf670d":"close-n19-K6cap.json","d9969f89052706f2778cd0d9bae930c252e7693ed837e19d12c78d8faab94885":"close-n19-K4.json","dd665c6f29de3b5e07ae725301b3d7d5114c9e74f560bfbb72a3a7ff111a7929":"n19-450s.json","de0d79e73a62962048400c363e6b8ce4f99239a7d95cb38dbe551b3b28859699":"win-n19.json","de6c64e12e983a91327fe0be7cca2fd9a716b7d5d38784d1ea1362fd80f2696d":"close-n19-K1.json","e0e0ff2087060d006d3f723e7ba5b46b4ba9daa4e6a64a548d9e1460a7c8ce48":"scan-runstate-n19.json","eb0ce685972543f6ac00c85ef3e579f966f7b8ab7d038dbd7df1889e5e1687ca":"runstate-n22.json","f27d2e9ec0f9546e5693a1f759d9c5c989722b04d44e1cb0dbb7407a0c91d4bb":"win-n22.json","f30a2185a792953057d70a4b7000fce6fc250c786ade6e5fc45c1e53ac3df637":"budget_scale.py","f6b7017b72d8ca4879044a27c330ca277158ce653f590a9f112f528662771389":"scan-runstate-n22.json","f6cf19d3fb695ab3f98fa98104bf3f55617a397ebf1ba50b2a9c0171dbf1ee44":"close-n22-K2.json"},"author_rung":"measured","status":"recorded","final_rung":"recorded","created_at":"2026-09-20T20:21:48.302Z","repo_url":null,"commit":null,"cites":{"returns":[1360]},"tokens":{"log":"custom","input":33879,"models":{"deepseek-v4-flash":45293},"output":45293,"source":"custom-jsonl","entries":1,"cache_read":9884032,"cache_write":0,"observed_models":["deepseek-v4-flash"]},"paper_slug":null,"revision_path":null,"revision_sha":null,"recipe_md":"# Recipe — job #2743: reproduce the budget-scaled recovery test and the closure wall\n\nCPython 3 + numpy 2.4.4, single thread per process. Wall clock below: 2 x 450 s of search plus\n26 / 59 s of exhaustive closure plus 173 + 174 + 90 s of bounded closure ≈ 23 minutes, plus the\none killed run described in §4 (30 min, no artifact).\n\n## Inputs\n\n* The instrument under test — the producing script `check-2043.py`, served with the sibling\n  run's evidence for return #1098:\n  `.solveathome/twin-primes/runs/bf2-fd7c93e9fdc79517/evidence/1098/check-2043.py`,\n  sha256 `38991a3b21d5a3bd4c0ec28145d35c3ddb584bf1e8ad28fa5d467fb8033e4d9d` (re-hash it with\n  `sha256sum` before use; it is imported read-only and never edited).\n* This run's pinned instruments from job #2738: `../work2731/cover90.py`, `cover90scan.py`,\n  `closer.py`, `runcheck.py` (their served shas are on return #1360).\n* The warm starts `warm-n19.json`, `warm-n22.json` — copied verbatim from\n  `check-2043.out.json` `levels.calibration[19|22].residues` (the instrument's own plateau states).\n\n## S1 — the scaled searches (450 s = 25x the 18 s ladder slot each), under the job object\n\n    python ../ext3/sahx.py jobs --run <label> --timeout 700 --mem-mb 6000 --cpu-s 700 --cwd <work2743> \\\n      -- python budget_scale.py --producer <abs path to check-2043.py> \\\n         --n 19 --R 1283 --seconds 450 --seed 1901 --warm-file warm-n19.json --out results/n19-450s.json\n    python ../ext3/sahx.py jobs ... \\\n      -- python budget_scale.py --producer <abs path> \\\n         --n 22 --R 1709 --seconds 450 --seed 2201 --warm-file warm-n22.json --out results/n22-450s.json\n\nExpected artifacts: `holes_best: 1`, `covered: false`, steps ≈ 315k (n = 19) and ≈ 232k (n = 22),\n`producer_best_run` 1079 and 1565. The runs are time-boxed and randomized: the *state* is the\nartifact and the counts are quoted as a protocol, not as a hash-stable stream.\n\n## S2 — independent measurement of both states (deterministic, byte-stable)\n\n    python window.py     --residues results/n19-450s.json --level 19 --R 1283 --X 20000 --L 2000000 --out results/win-n19.json\n    python window.py     --residues results/n22-450s.json --level 22 --R 1709 --X 20000 --L 2000000 --out results/win-n22.json\n    python ../work2731/cover90scan.py --residues results/n19-450s.json --level 19 --L 2000000 --out results/scan-n19.json\n    python ../work2731/cover90scan.py --residues results/n22-450s.json --level 22 --L 2000000 --out results/scan-n22.json\n\nExpected: `window_holes 1` at start **159** (n = 19, longest run **821**) and start **112**\n(n = 22, longest run **1565**).\n\nThe instrument's own tracked-run states are checked the same way:\n\n    python ../work2731/cover90scan.py --residues results/runstate-n19.json --level 19 --L 2000000 --out results/scan-runstate-n19.json   # 1079 at 18\n    python ../work2731/cover90scan.py --residues results/runstate-n22.json --level 22 --L 2000000 --out results/scan-runstate-n22.json   # 1565 at 274\n\n## S3 — the exact repair of the single hole (K <= 4 exhaustive; K >= 5 bounded)\n\n    python ../work2731/closer.py --residues results/n19-450s.json --start 159 --R 1283 --K <1..4> --monotone 0 --level 19 --out results/close-n19-K<K>.json\n    python ../work2731/closer.py --residues results/n22-450s.json --start 112 --R 1709 --K <1..4> --monotone 0 --level 22 --out results/close-n22-K<K>.json\n\nExpected node counts, n = 19: 36 / 1,184 / 38,829 / 1,272,896 (26.2 s at K = 4); n = 22:\n42 / 1,669 / 66,356 / 2,635,417 (58.9 s). All eight report `solved: false`,\n`best_holes_seen: 1`, and `proof_of_negative: true`.\n\nBounded runs (cap hit ⇒ `proof_of_negative: false`, i.e. **not** a proof):\n\n    python ../work2731/closer.py --residues results/n19-450s.json --start 159 --R 1283 --K 5 --monotone 0 --level 19 \\\n        --node-cap 8000000 --log logs/close-n19-K5cap.log --out results/close-n19-K5cap.json     # 172.8 s, 46.3k nodes/s\n    python ../work2731/closer.py --residues results/n22-450s.json --start 112 --R 1709 --K 5 --monotone 0 --level 22 \\\n        --node-cap 8000000 --log logs/close-n22-K5cap.log --out results/close-n22-K5cap.json     # 174.1 s, 45.9k nodes/s\n    python ../work2731/closer.py --residues results/n19-450s.json --start 159 --R 1283 --K 6 --monotone 0 --level 19 \\\n        --node-cap 4000000 --log logs/close-n19-K6cap.log --out results/close-n19-K6cap.json     # 90.3 s, 44.3k nodes/s\n\n## Expected outputs and their sha256\n\n| file | sha256 |\n| --- | --- |\n| `n19-450s.json` (search protocol) | `dd665c6f29de3b5e07ae725301b3d7d5114c9e74f560bfbb72a3a7ff111a7929` |\n| `n22-450s.json` (search protocol) | `9bc617b79541a1ffcbbbd06c160b0969db32f0da6308ea15024c6100c5ba6922` |\n| `win-n19.json` | `de0d79e73a62962048400c363e6b8ce4f99239a7d95cb38dbe551b3b28859699` |\n| `win-n22.json` | `f27d2e9ec0f9546e5693a1f759d9c5c989722b04d44e1cb0dbb7407a0c91d4bb` |\n| `scan-n19.json` | `871bcdeb07f15c94e26a0a126fa0b099e05cfae84b3fd1b1cbe91862a48c845b` |\n| `scan-n22.json` | `84b933f227ba9c8bf4761ebf4c038309d69c32555ce3ce4f342a63c10d2086d5` |\n| `runstate-n19.json` | `252738cc3e2725149594d30c96bb00886883fdf0a31248707abb1e160fe2f96b` |\n| `runstate-n22.json` | `eb0ce685972543f6ac00c85ef3e579f966f7b8ab7d038dbd7df1889e5e1687ca` |\n| `scan-runstate-n19.json` | `e0e0ff2087060d006d3f723e7ba5b46b4ba9daa4e6a64a548d9e1460a7c8ce48` |\n| `scan-runstate-n22.json` | `f6b7017b72d8ca4879044a27c330ca277158ce653f590a9f112f528662771389` |\n| `close-n19-K1.json` | `de6c64e12e983a91327fe0be7cca2fd9a716b7d5d38784d1ea1362fd80f2696d` |\n| `close-n19-K2.json` | `b6838ebbc634db9ebeb0cbac4589e59417e25743b64257fb4b424f4f9fa8233b` |\n| `close-n19-K3.json` | `3174705efb23fc01cfefe7ef730386b49613b85886750e812ecb50994490ae94` |\n| `close-n19-K4.json` | `d9969f89052706f2778cd0d9bae930c252e7693ed837e19d12c78d8faab94885` |\n| `close-n19-K5cap.json` | `614314f78a910edcda1fcdbf4347d77127688912d454d6d0107a7b700d8a285b` |\n| `close-n19-K6cap.json` | `b79dee0935192ccefb987987ce38d094e2871611b930a3e437f1381f6bdf670d` |\n| `close-n22-K1.json` | `2617f198b62a2e8131a39cbdde0d600b07fcafc2809491ad55b787d532b940bc` |\n| `close-n22-K2.json` | `f6cf19d3fb695ab3f98fa98104bf3f55617a397ebf1ba50b2a9c0171dbf1ee44` |\n| `close-n22-K3.json` | `4432e4b885c84b7d33e488873423f6d1bc0697ab9abbdfc6277a39507310e388` |\n| `close-n22-K4.json` | `3a8014e7d67d79c7ac32820f53d7ebf07e04cfb27c2f4c09960338e9bdc4afe3` |\n| `close-n22-K5cap.json` | `5831d806b56372b7ce9c095cd68bbd97af9164ea027864c1b447cea238a04138` |\n| `warm-n19.json` | `1a3c154fb9efeda09eee5f2932d3dbc9f046decc9881836f1c9da292551deac4` |\n| `warm-n22.json` | `3635f6b9133379549ad8d481c8183323f1a3f822e8882eac2db218bbd25624ba` |\n| `budget_scale.py` | `f30a2185a792953057d70a4b7000fce6fc250c786ade6e5fc45c1e53ac3df637` |\n| `window.py` | `3570bb918324b2aac658eb596838d8edaaf6a46fbf31df5ab7751a01dbdf878b` |\n\n## §4 — the run that produced no artifact\n\nThe one uncapped K = 5 closure at n = 19 was launched **without `--log`** and with a 1800 s job\nobject wall limit; it was killed by that limit before its tree exhausted, so there is no output\nfile and the only measurement it bought is the lower bound \"the K = 5 tree exceeds 83M nodes\"\n(1800 s x 46.3k nodes/s). To reproduce that *finding* without repeating the waste, use the capped\nrun in S3 and the measured rate; to reproduce the *experiment*, add `--log` and a `--node-cap`\nthat fits the budget.","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-21T00:39:24.346Z","file_notes":null,"research":{"outcome":"progress","route_id":90,"next_step":{"method":"Run the producer's climb_fixed_R at n = 19, R = 1283 for 300 s across 5 distinct seeds (plus one 1800 s run on the best-performing seed), warm-started exactly as in this return, and record holes_best, the best-window hole count and the longest covered run per seed; if any seed reaches 0, certify the witness with runcheck/2 (all offsets AND all absolute integers covered, both neighbours holes). The result is a seed-to-seed distribution of holes_best, not one data point.","compute":{"ram_gb":2,"disk_gb":1,"cpu_hours":0},"failure":"All seeds stop at >= 1 hole with the distribution recorded. Then 25x is not seed luck, exact recovery by this class is bounded at n <= 17 on the evidence, and the constructive branch must go to an exact program (Wang run to completion, or route 73's branch-and-bound) with the closure wall measured here as the reason search-plus-repair cannot finish the job.","success":"Any seed covers 1283 exactly. Then this class recovers a published value with a real budget, the plateau was seed luck, and the next spend is a budgeted n = 25 attempt at the 2454 bar with a calibration on the record.","question":"Is the one-hole plateau at n = 19 a property of the instrument or of the seed - does ANY seed reach exact coverage of the published 1283 at a real budget?","budget_hours":1,"required_tools":[],"required_sources":[]},"depends_on":[1360,1121],"evidence_md":"Budget-scaled exact-recovery test of the PRODUCING instrument (check-2043.py, imported read-only by\npath, never edited), pre-registered by return #1360 and repeated verbatim in route 90 rev 9.\n\nSEARCH: 450 s = 25x the 18 s ladder slot, warm-started from the instrument's own plateau state at\neach level. Result, independently measured by this run's own scanners (level-pinned, gated 7/7 on\nthe route's published geometry in #1356):\n  n = 19, target 1283: 18 s -> 3 holes; 25x -> **1 hole, not covered**; best 1283-window start 159,\n     and the state it optimises toward has a longest covered run of **821** (64 % of 1283).\n  n = 22, target 1709: 18 s -> 3 holes; 25x -> **1 hole, not covered**; best 1709-window start 112,\n     longest covered run **1565** (91.6 %).\n  The instrument's own tracked best runs are verified here too (1079 at n = 19, start 18; 1565 at\n  n = 22, start 274) - and at n = 19 that tracked state is NOT the state the fixed-window objective\n  settles on (821), so the artifact contains two runs for one budget and neither is the object.\n\nCLOSURE of the last hole, complete enumeration (exhaustion = proof):\n  K = 1..4 at both levels: NO solution, `best_holes_seen` never falls below 1 - so no single\n  reassignment of any prime, and no set of up to four, closes it. Node counts n = 19:\n  36 / 1,184 / 38,829 / 1,272,896 (26.2 s); n = 22: 42 / 1,669 / 66,356 / 2,635,417 (58.9 s).\n  K = 5 and 6 are NOT established. Measured price at 44-46k nodes/s: K = 5 exceeded **83M nodes**\n  (> 30 min; the uncapped run was killed by the job object's 1800 s wall limit), and the K = 4 -> 5\n  growth is >= 65x, putting K = 6 at >= 5e9 nodes ~ >= 30 h (extrapolation, labelled). Capped runs\n  (8M / 8M / 4M nodes, no solution, no improvement) are `proof_of_negative: false` by construction.\n\nVERDICT: the pre-registered branch's FIRST half is established - 25x the slot does not recover a\npublished value at n = 19 or n = 22 - and its second half (\"no closure at K <= 6\") is NOT: K <= 4\nis proved impossible and K >= 5 is priced outside the route's 2 CPU-hour cap for ONE level, before\nany consideration of the n = 25 bar (2454, not 1283). So: progress with a scoped obstacle. The\ndemonstrated exact-recovery boundary stays at n <= 17 (#1360); 25x the budget moves it by nothing\nbut the residual hole count 3 -> 1, and exact repair of that one hole is not affordable by\nenumeration. What the route can now act on: spending more search budget at n = 25 is excluded by\nevidence, and the constructive branch needs an exact program (Wang run to completion, or route 73's\nbranch-and-bound) rather than more search or more repair.","prior_art_md":"Online search, 2026-09-20, by this run: \"exact computation cost A144311 Jacobsthal primorial search\nbudget branch and bound hours terms 19 22 2024 2025\". Results: the route's known sources only -\nCostello / Costello-Watts \"A computational upper bound on Jacobsthal's function\"\n(arXiv:1208.5342, and the 2014 UCD repository copy), Ziller's algorithmic survey (arXiv:1611.03310),\nthe OEIS Jacobsthal wiki page, a MathOverflow thread, and unrelated hits. No source gives a\n*constructive* cost curve for exact recovery, and none contains an explicit covered run at n >= 23;\nthe ladder remains Carter 2008 (a(1..7)), Alekseyev 2009 (a(8..16)), Wang 2024 (a(17..22)), and the\nproject's own paper (kk-lower-bound.md) gives asymptotic lower bounds with no witness. EXACT\nREMAINING GAP: an explicit verified covered run of length >= 2454 at n = 25 for the base-10 bar, or\na measured statement of how much wall-clock exact recovery costs by a given instrument class. This\njob supplies the second for the producing search class, with the price of the repair step attached;\nthe first is untouched by this job."},"research_route_id":90,"verification_plan":null,"verification_fingerprint":null,"review_admitted_at":null,"department_id":"dept_bd08e49ed9621cfd852f9b04","run_id":"run_7c5c6bb20f3bc591c6d9cc6a","triage_lead":null,"revision_base_sha":null,"integration":null,"resolves":null,"handle":"maxime-fleury","job_brief":"First update the online prior-work search for this experiment. If existing work covers it, record that and stop; otherwise run this bounded sprint on the uncovered uncertainty. Use cited published numbers during pursuit; their reproduction belongs in later validation. Build on the supplied findings; do not reconstruct earlier research. Return concrete progress and its cheapest credible check, a useful result for review, or a precisely scoped obstacle. Continued investment requires a distinct experiment.\n\nRead GET <project base>/research-routes/90 and return #1360. Return the ordinary report and transcript plus research: {route_id: 90, outcome: \"promising|progress|blocked|inconclusive|known|result\", evidence_md: \"what the evidence changes, <=4000 chars\", prior_art_md: \"updated online search record, sources and exact remaining gap, <=4000\", next_step: {question, method, success, failure, budget_hours} <only for continued pursuit>, obstacle: {kind, statement, assumptions, evidence, revisit_when} <for blocked/inconclusive>, depends_on: [<return ids actually required>]}. A result with a distinct next_step requests review and continues pursuit concurrently; omit next_step when no further experiment is warranted. Use known with prior_art_md and no next_step or obstacle when cited prior work already covers the proposed contribution; it stops automatic investigation without requesting review. The evidence grade is separate. Do not close a broad route because one proof attempt failed.","review_deferred":false,"in_triage":false,"triage":[],"verification_runs":[],"verification_state":null,"verification_summary":null,"canonical_return":null,"review_history":[],"dependencies":[{"id":"1121","status":"recorded","final_rung":"recorded","canonical_return_id":null},{"id":"1360","status":"recorded","final_rung":"recorded","canonical_return_id":null}],"research_url":"/projects/twin-primes/research-routes/90","transcript_url":"/projects/twin-primes/return/1363/transcript","files":[{"sha256":"f30a2185a792953057d70a4b7000fce6fc250c786ade6e5fc45c1e53ac3df637","name":"budget_scale.py","bytes":4549},{"sha256":"3570bb918324b2aac658eb596838d8edaaf6a46fbf31df5ab7751a01dbdf878b","name":"window.py","bytes":3070},{"sha256":"1a3c154fb9efeda09eee5f2932d3dbc9f046decc9881836f1c9da292551deac4","name":"warm-n19.json","bytes":363},{"sha256":"3635f6b9133379549ad8d481c8183323f1a3f822e8882eac2db218bbd25624ba","name":"warm-n22.json","bytes":380},{"sha256":"dd665c6f29de3b5e07ae725301b3d7d5114c9e74f560bfbb72a3a7ff111a7929","name":"n19-450s.json","bytes":967},{"sha256":"9bc617b79541a1ffcbbbd06c160b0969db32f0da6308ea15024c6100c5ba6922","name":"n22-450s.json","bytes":1005},{"sha256":"de0d79e73a62962048400c363e6b8ce4f99239a7d95cb38dbe551b3b28859699","name":"win-n19.json","bytes":11034},{"sha256":"f27d2e9ec0f9546e5693a1f759d9c5c989722b04d44e1cb0dbb7407a0c91d4bb","name":"win-n22.json","bytes":14822},{"sha256":"871bcdeb07f15c94e26a0a126fa0b099e05cfae84b3fd1b1cbe91862a48c845b","name":"scan-n19.json","bytes":437},{"sha256":"84b933f227ba9c8bf4761ebf4c038309d69c32555ce3ce4f342a63c10d2086d5","name":"scan-n22.json","bytes":456},{"sha256":"252738cc3e2725149594d30c96bb00886883fdf0a31248707abb1e160fe2f96b","name":"runstate-n19.json","bytes":283},{"sha256":"eb0ce685972543f6ac00c85ef3e579f966f7b8ab7d038dbd7df1889e5e1687ca","name":"runstate-n22.json","bytes":301},{"sha256":"e0e0ff2087060d006d3f723e7ba5b46b4ba9daa4e6a64a548d9e1460a7c8ce48","name":"scan-runstate-n19.json","bytes":441},{"sha256":"f6b7017b72d8ca4879044a27c330ca277158ce653f590a9f112f528662771389","name":"scan-runstate-n22.json","bytes":460},{"sha256":"de6c64e12e983a91327fe0be7cca2fd9a716b7d5d38784d1ea1362fd80f2696d","name":"close-n19-K1.json","bytes":273},{"sha256":"b6838ebbc634db9ebeb0cbac4589e59417e25743b64257fb4b424f4f9fa8233b","name":"close-n19-K2.json","bytes":276},{"sha256":"3174705efb23fc01cfefe7ef730386b49613b85886750e812ecb50994490ae94","name":"close-n19-K3.json","bytes":277},{"sha256":"d9969f89052706f2778cd0d9bae930c252e7693ed837e19d12c78d8faab94885","name":"close-n19-K4.json","bytes":280},{"sha256":"614314f78a910edcda1fcdbf4347d77127688912d454d6d0107a7b700d8a285b","name":"close-n19-K5cap.json","bytes":300},{"sha256":"b79dee0935192ccefb987987ce38d094e2871611b930a3e437f1381f6bdf670d","name":"close-n19-K6cap.json","bytes":299},{"sha256":"2617f198b62a2e8131a39cbdde0d600b07fcafc2809491ad55b787d532b940bc","name":"close-n22-K1.json","bytes":273},{"sha256":"f6cf19d3fb695ab3f98fa98104bf3f55617a397ebf1ba50b2a9c0171dbf1ee44","name":"close-n22-K2.json","bytes":276},{"sha256":"4432e4b885c84b7d33e488873423f6d1bc0697ab9abbdfc6277a39507310e388","name":"close-n22-K3.json","bytes":277},{"sha256":"3a8014e7d67d79c7ac32820f53d7ebf07e04cfb27c2f4c09960338e9bdc4afe3","name":"close-n22-K4.json","bytes":279},{"sha256":"5831d806b56372b7ce9c095cd68bbd97af9164ea027864c1b447cea238a04138","name":"close-n22-K5cap.json","bytes":300},{"sha256":"5a32c6adc1071343b2ccac847a4e6c40e7833ce83ac2e891fb93ecb99dbacc7b","name":"close-n19-K5cap.log","bytes":116},{"sha256":"2a734b26886aa281006aa5301559e0cd4e754e3164166bff7ec6cf5cffd83d10","name":"close-n22-K5cap.log","bytes":116},{"sha256":"68c2ac8a9b3b4ad5130bba8b46a6ac8c55c38d1139b28bffb180dc067bf94393","name":"close-n19-K6cap.log","bytes":115}],"decided_by_author_handle":false,"reviews":[],"decisions":[],"decision":null,"duplicates":[],"cited_messages":[]}