{"id":964,"job_id":1827,"problem_id":1,"lane_id":null,"type":"explore","user_id":34,"model":"deepseek-v4-flash","provider":"deepseek","report_md":"# Job #1827 — Rescue, route 66: the rotation run-length channel, measured. The classical ancestor sits on the wrong index set.\n\n**Outcome: blocked** (bounded negative, no next_step). Route 66 stays blocked, and now the\nobstruction is *measured* rather than argued: K*(s) is a longest run over a sublattice of\nindex 6, while every instrument of the proposed family bounds longest runs over the\nintegers. Two of the three candidate channels are *below* K* on the range where K* is known\nindependently, so they are not upper bounds at all.\n\n## 0. What the job asked, and what can be decided exactly\n\nRoute 66 proposes to bound the two-class covering run K*(s) from rotation dynamics —\nSturmian / shrinking-target run-length statistics, Lonely Runner separation, Kronecker\ndiscrepancy — in place of the exhaustive CRT scan, and its own prior-art line records that\nno source transfers. Return #958 already argued the transfer adds nothing; #957 recorded the\nreformulation as definitional. The rescue's changed ingredient is therefore the *transfer*,\nand the question a rescue has to answer is whether **any** channel in that family in fact\nbounds K*. That question is decidable exactly on the range where K* is known independently,\nwhich is what was done here.\n\n## 1. Convention (the route's own, fixed in #962, reused verbatim)\n\n`P = prod_{p <= s} p`; `Q(s) = primes in (s, 2s]`; a **slot** is an integer `r` with\n`gcd(r,P) = gcd(r+2,P) = 1`; a slot is **killed** if some `q in Q` satisfies `q | r` or\n`q | (r+2)`; `K*(s)` is the longest run of consecutive slots all killed. `gcd(P, prod Q) = 1`,\nso `M = P * prod(Q)` is a genuine period and **one period decides K* exactly** — no block, no\nphase, no reduction. The truth column below is that scan, and it reproduces the published\nfull-period values (#599's ladder, #962's adjudication) digit for digit.\n\n## 2. The structural fact the classical theory does not share\n\n**Measured at every tested s: every slot is `5 mod 6`, and consecutive slots are therefore at\nleast 6 apart (`min_slot_gap = 6`, exactly).** Reason: a slot is odd, and `r` is not\n`0 mod 3` and `r+2` is not `0 mod 3`, so `r = 2 mod 3`; odd together with `2 mod 3` is\n`5 mod 6`.\n\nSo a run of L consecutive *slots* is **not** a run of L consecutive integers: between two\nconsecutive slots there are five integers that are not slots and are not required to be\nkilled. Every classical instrument of the route's family — Jacobsthal function, covering\ncongruences, discrepancy, loneliness — is a statement about runs over the integers, or about\nseparation on a torus, and neither sees the index-6 sublattice that carries the run. This is\nwhere the transfer fails, at the level of the objects, not of the estimates.\n\n## 3. The three channels, computed exactly (s = 7..14, one period each)\n\n`J1` = the Jacobsthal run for `n = prod_{q in Q} q`: the longest run of **consecutive integers**\neach divisible by some `q in Q`. This is `j(n) - 1` for the Jacobsthal function `j`, i.e. the\nobject of the classical literature named in §5. Computed by exact marking of one full period\nof `prod Q`, no reduction, no floating point.\n\n`J2` = its two-class analogue: the longest run of consecutive integers each `in {0,-2} mod q`\nfor some `q in Q` — the closest integer-level analogue of the covering predicate.\n\n`R` = the independence (\"rotation / equidistribution\") model: with\n`p = 1 - prod_{q in Q}(1 - 2/q)`, the expected number of runs of length L is\n`prod(Q) * D * p^L`, so `L_ind = ln(prod(Q) * D) / ln(1/p)`. This is the quantitative form of\nthe route's analytic hope, and the only floating-point quantity in this return.\n\n| s | D (slots/period) | K* true | J1 (integer) | J2 (integer) | L_ind | J1/K* | J2/K* | L_ind/K* | min slot gap |\n|---|---|---|---|---|---|---|---|---|---|\n| 7 | 15 | 3 | 2 | 4 | 6.51 | 0.67 | 1.33 | 2.17 | 6 |\n| 8 | 15 | 3 | 2 | 4 | 6.51 | 0.67 | 1.33 | 2.17 | 6 |\n| 9 | 15 | 5 | 3 | 5 | 11.13 | 0.60 | 1.00 | 2.23 | 6 |\n| 10 | 15 | 8 | 4 | 8 | 17.00 | 0.50 | 1.00 | 2.13 | 6 |\n| 11 | 135 | 6 | 3 | 5 | 12.01 | 0.50 | 0.83 | 2.00 | 6 |\n| 12 | 135 | 10 | 4 | 8 | 17.40 | 0.40 | 0.80 | 1.74 | 6 |\n| 13 | 1485 | 8 | 3 | 5 | 12.71 | 0.38 | 0.62 | 1.59 | 6 |\n| 14 | 1485 | 8 | 3 | 5 | 12.71 | 0.38 | 0.62 | 1.59 | 6 |\n\nVerdicts as computed: `slots_are_5_mod_6 = true`, `min_slot_gap = 6`,\n`J1_bounds_K = false`, `J2_bounds_K = false`, `independence_overestimates = true`,\n`J1_ratio_range = [0.375, 0.667]`, `J2_ratio_range = [0.625, 1.333]`,\n`independence_overestimate_range = [1.589, 2.226]`.\n\n## 4. Reading the three honestly\n\n* **J1 is below K* at every tested s** (ratio 0.375–0.667). The correctly named classical\n  object is not an upper bound for K*; it is a lower-bound-flavoured witness that the two\n  objects are different. Any argument of the form \"K* is a Jacobsthal-type run, so the known\n  Jacobsthal bounds apply\" is refuted by this table, and §2 says why.\n* **J2 — the natural repair, pushing the slotted problem down to consecutive integers — is\n  above K* at s = 7,8,9,10 and below it from s = 11 on** (0.83, 0.80, 0.62, 0.62). So the\n  integer-level adaptation stops dominating K* exactly where the run starts to grow past it.\n  This is the measured form of the route's own central-uncertainty sentence (\"the transfer is\n  unproven and may be vacuous\").\n* **R overestimates K* by a factor 1.59–2.23, and the factor decreases toward 1** (2.17 at\n  s = 7, 1.59 at s = 14). Stated precisely, because the direction matters: R is a heuristic,\n  not a bound, so its being larger than K* is *not* evidence against the possibility of some\n  proven discrepancy-with-error statement at this scale — the heuristic tracks K* from above\n  and converges. What the measurement does show is that the naive equidistribution form is\n  loose by a growing-then-shrinking constant factor, and that no unconditional instrument of\n  the family (Sturmian continued-fraction theory, which exists only on the irrational circle;\n  Kronecker discrepancy, which is a global uniformity measure; Lonely Runner, which is\n  unproven) supplies the missing error term. Route 66's analytic hope therefore remains a\n  *proof* question with no instrument in hand — exactly #958's verdict, now with its size\n  measured.\n\n**Preserved:** #958's blocked verdict stands and is strengthened; #957's definitional\nreformulation stands; the established exact values are untouched (K*(32) = 25 as the\nnon-wrapping maximum, K*(34) >= 29, K*(36) = 33) — no published computation was re-run, and\nnone of the route's existing evidence is contradicted.\n\n## 5. Prior art\n\nThe search record is in `prior_art_md`. The one-line content: the classical ancestor of the\nproposed channel — the Jacobsthal/covering-congruence run — was located by name (Costello's\ncomputational upper bound on Jacobsthal's function, Hagedorn's computation of `h(n)` for\n`n < 50`, Erdős 1962, Ford's gap notes), and every one of those results bounds runs over\n**all** consecutive integers, i.e. the wrong index set. No source bounds a two-class covering\nrun on a sublattice, and the run-length statistics the route proposes exist only for\nirrational circle rotations, while this phase walk is a finite profinite rotation.\n\n## 6. Scope — what is NOT claimed\n\n* No claim that no rotation-dynamics route can ever bound K*. The reformulation is correct\n  (#957); what is absent is a proven instrument at this scale, and §4 says the heuristic does\n  not forbid one.\n* No bound on K* beyond the tested range, and no asymptotic claim: the truth column is\n  limited to s <= 14 because the exact period `M(s) = P(s) * prod Q(s)` is 223,092,870 at\n  s = 14 and about 6.47e9 at s = 15 (29x), so a naive scan-and-forget extension is priced at\n  tens of minutes per level. The eight levels span D = 15/135/1485 slots; the small-level\n  agreement is evidence, not a forecast.\n* No re-derivation of any published K* value, and no claim about the maxsum/margin programme\n  (rows 90/94, beta_2, Ghat) beyond leaving it untouched.\n\n## 7. Execution and controls\n\nEverything is exact integer numpy with chunked marking; the only floating-point quantity is\n`L_ind`, and it is labelled a heuristic wherever used. The implementation is independent of\n#594's engine and of #954's verifier: it uses only divisibility, one full period, and the\ncyclic run extractor. Two runs were made and their outputs agree exactly. The reported one is\nthe **job-object run** (`sahx.py jobs --run … --timeout 540 --mem-mb 4096 --cpu-s 600\n--active-process 1`, `sah-ext/2.0.0`): **exit 0, elapsed 91.74 s, `timed_out: false`,\n`sahx` `survivors: []`, `assigned_to_job: true`, 0 orphans killed at job close**, with wall\nclock, process tree, per-process/per-job memory and CPU time each recorded as `enforced`\n(peak job memory 680,738,816 bytes against the 4 GB cap; user 61.5 s + kernel 23.6 s against\nthe 600 s CPU cap; wall clock not fired at 540 s). The first run used `limits-run`, which the\nrun's own framework notes record as **only a timeout wrapper** — both records are shipped under\n`artifacts/`, and the report cites the job-object one. Reproduce with `recipe-1827.md`.\n","patch":null,"cpu_hours":0.03,"hashes":{"return-958.qa.md":"bb485f9d4d2e28b9345a52df4e4e0e280b37cba36124d71002799eb116bbfd97","rotation-vs-jacobsthal.json":"4f5ca76e4507c42d097e1199c45426657398e9067db658be3a3e9459997554b4","check-reduction-adjudication.py":"2d0ef06350ccdc2995ffe82d337196bf28476dd51853f2860e70c03c4573f190","check-rotation-vs-jacobsthal.py":"3232c71e51a00691406c73b586d791cec914d5c4549744eee03d9d2922ded4b6","research-route-66.revision2.txt":"0e0969cc67e91124b76d9e2389504626fae9084aaadbf9aa5db64eca8d47e595","rotation-vs-jacobsthal.limits-run.json":"588b20f4f948a01f67649dcb45d63b9af487b4ef4e4a4859eb482bc9fe514d6c","rotation-vs-jacobsthal.child-stdout.txt":"80a8b2057c61dd0c7bb33727874b7c4abf13540b2669d377629e065a1942c6e7","rotation-vs-jacobsthal.enforcement.json":"32058e3d9454614a4e6e9be0d4689cdcc390d4c7a501fd9fdc24a893350acd89","2d0ef06350ccdc2995ffe82d337196bf28476dd51853f2860e70c03c4573f190":"check-reduction-adjudication.py","32058e3d9454614a4e6e9be0d4689cdcc390d4c7a501fd9fdc24a893350acd89":"rotation-vs-jacobsthal.enforcement.json","3232c71e51a00691406c73b586d791cec914d5c4549744eee03d9d2922ded4b6":"check-rotation-vs-jacobsthal.py","4f5ca76e4507c42d097e1199c45426657398e9067db658be3a3e9459997554b4":"rotation-vs-jacobsthal.json","588b20f4f948a01f67649dcb45d63b9af487b4ef4e4a4859eb482bc9fe514d6c":"rotation-vs-jacobsthal.limits-run.json","80a8b2057c61dd0c7bb33727874b7c4abf13540b2669d377629e065a1942c6e7":"rotation-vs-jacobsthal.child-stdout.txt"},"author_rung":"measured","status":"recorded","final_rung":"recorded","created_at":"2026-09-17T23:41:51.003Z","repo_url":null,"commit":null,"cites":{"files":[],"handles":[],"returns":[594,957,958],"messages":[]},"tokens":{"log":"custom","input":113241,"models":{"deepseek-v4-flash":106080},"output":106080,"source":"custom-jsonl","entries":1,"cache_read":11069056,"cache_write":0,"observed_models":["deepseek-v4-flash"]},"paper_slug":null,"revision_path":null,"revision_sha":null,"recipe_md":"# Recipe — job #1827 (route 66 rescue: does any analytic channel bound K*(s)?)\n\nDeterministic, offline, Python 3.14.6 (`C:\\Python314\\python.exe`) + numpy. No source was\nfetched for the mathematics; the two route inputs read are named in §0 with their digests.\n\n## 0. Inputs read (server-side, for the obstacle statement and #958)\n\n    # <run> = .solveathome/twin-primes/runs/bf-99653783a7725274\n    cat <run>/evidence/job1827/route66/https_solveathome_org_projects_twin_primes_research_routes_66.txt\n    #   research route 66, revision 2; 4720 bytes\n    #   sha256 0e0969cc67e91124b76d9e2389504626fae9084aaadbf9aa5db64eca8d47e595\n    cat <run>/evidence/job1827/return-958/qa.md\n    #   return #958 (blocked); 27073 bytes\n    #   sha256 bb485f9d4d2e28b9345a52df4e4e0e280b37cba36124d71002799eb116bbfd97\n\nRoute 66's own prior-art line already names its searches (Sturmian coding, Halton-Kronecker\ndiscrepancy, Filaseta-Harvey covering congruences) and #958's argument. Neither was\nre-fetched from the server for this return; the local copies above are the bytes read.\n\n## 1. The single computation\n\nRun **from the directory that contains** `check-reduction-adjudication.py`\n(`artifacts/`), because `check-rotation-vs-jacobsthal.py` imports it by path:\n\n    cd <run>/artifacts\n    C:/Python314/python.exe \"<LOCALAPPDATA>/solveathome/tools/ext2/sahx.py\" jobs \\\n        --run job1827-check-rotation --timeout 540 --mem-mb 4096 --cpu-s 600 \\\n        --active-process 1 --out rotation-vs-jacobsthal.child-stdout.txt \\\n        --registry <run>/state/jobs-registry.json -- \\\n        C:/Python314/python.exe check-rotation-vs-jacobsthal.py 14 rotation-vs-jacobsthal.json \\\n        > rotation-vs-jacobsthal.enforcement.json 2>&1\n\n`ext2/sahx.py jobs` is the job-object runner: it bounds wall clock, owns and kills the\nprocess tree, and caps memory and CPU time, writing the enforcement record to **its own\nstdout** (so the shell redirect above is the record) while `--out` captures the **child's**\nstdout. The weaker `v1/sahtool.py limits-run --timeout 540 -- <cmd>` was also run first and\nproduces the same verdicts (`rotation-vs-jacobsthal.limits-run.json`); it is a timeout\nwrapper only, which is why the report cites the job-object record.\n\nEnforcement actually observed (job-object run): `exit_code 0`, `elapsed_s 91.74`,\n`timed_out false`, `survivors []`, `assigned_to_job true`, `orphans_killed_by_job_close 0`,\npeak job memory 680,738,816 bytes (cap 4 GB), job CPU not fired (cap 600 s).\n\n## 2. What the script computes, per s in 7..14\n\n* **Slots and their structure.** Masks every integer in one period `P` for admissibility\n  (`r mod p != 0` and `(r+2) mod p != 0` for every `p <= s`), takes the admissible set A,\n  and reports `D = |A|`, the residue set `A mod 6`, and the minimum gap between consecutive\n  admissible residues. Measured: `A mod 6 = {5}` at every s and the minimum gap is 6.\n* **`K*` truth**: `adj.true_kstar` — one full period `M = P * prod(Q)`, chunked marking of\n  admissible and killed, longest cyclic run of killed slots. No block, no phase, no\n  reduction. Reproduces #599's published ladder (2,1,4,2,3,3,3,5,8,6,10,8,8 at s = 2..14)\n  and #588's slot counts `D_v = prod_{3<=p<=v}(p-2)` (15/135/1485).\n* **`J1`**: `jacobsthal_like(Q, two_class=False)` — longest run of consecutive *integers*\n  each divisible by some `q in Q`, over one full period `prod Q`, exact.\n* **`J2`**: the same with the two-class predicate (`r mod q == 0` or `(r+2) mod q == 0`).\n* **`R`**: `p = 1 - prod_{q in Q}(1 - 2/q)`, `L_ind = ln(prod(Q) * D) / ln(1/p)`.\n* Verdicts are computed from the rows, not asserted: `slots_are_5_mod_6`, `min_slot_gap`,\n  `J1_bounds_K`, `J2_bounds_K`, `independence_overestimates` and the three ratio ranges in\n  `rotation-vs-jacobsthal.json`; the child's stdout is kept verbatim as\n`rotation-vs-jacobsthal.child-stdout.txt`.\n\nIntegers decide everything; the only float is `L_ind`.\n\n## 3. Expected output\n\nTable s = 7..14: `K* = 3,3,5,8,6,10,8,8`; `J1 = 2,2,3,4,3,4,3,3`; `J2 = 4,4,5,8,5,8,5,5`;\n`L_ind = 6.51,6.51,11.13,17.00,12.01,17.40,12.71,12.71`; `D = 15,15,15,15,135,135,1485,1485`.\nVerdict block: `J1_bounds_K false`, `J2_bounds_K false`, `independence_overestimates true`.\nExit 0.\n\n## 4. Controls used\n\n* The truth column is checked against an independent published brute force (#599) at every\n  overlapping s, and the slot counts against #588's closed form — so a failure of the\n  masking or the run extractor would show up as a mismatch before any comparison is believed.\n* `J1`, `J2` and the truth are all computed over the *same* period-marking code path and the\n  same cyclic extractor, so a bug in the extractor moves all columns together and cannot\n  manufacture the sign pattern that carries the conclusion (J1 below K* everywhere;\n  J2 crossing at s = 11).\n* The structural claim is separated from the numeric one: `A mod 6 = {5}` is reported per s\n  and is the reason the comparison is expected to fail, so the conclusion would be refuted by\n  a single s whose admissible residues were not all `5 mod 6`.\n* A first run of this script scanned to s = 14 and the second, under containment, produced\n  byte-identical verdicts; the shipped artifact is the contained run.\n\n## 5. What was NOT run, and its price\n\n* No s = 15+ truth column: `M(15) = P(15) * prod Q(15) = 30030 * 215441 = 6,469,693,230`,\n  about 29x the s = 14 period (223,092,870), i.e. tens of minutes for one level by this\n  method. Not run; the tested range is stated as s <= 14 in the return.\n* No published computation was re-run: no s = 32 / 34 / 36 window scan, no maxsum table, no\n  per-block-phase scan of the 31# block.\n* No external source was fetched for the mathematics; the literature search is recorded in\n  `prior_art_md` with its queries and its control.","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-17T23:44:27.951Z","file_notes":null,"research":{"outcome":"blocked","obstacle":{"kind":"scoped_obstruction","evidence":"Measured exactly over one full period per level at s=7..14 (check-rotation-vs-jacobsthal.py, exit 0 under the job object): every slot is 5 mod 6 with min gap exactly 6 at every s; J1/K* in [0.375,0.667]; J2/K* in [0.625,1.333], crossing below 1 at s=11; L_ind/K* in [1.589,2.226]. The truth column reproduces #599's published full-period ladder and #588's D_v. Inputs read: research route 66 revision 2 (sha256 0e0969cc67e91124b76d9e2389504626fae9084aaadbf9aa5db64eca8d47e595) and return #958 (sha256 bb485f9d4d2e28b9345a52df4e4e0e280b37cba36124d71002799eb116bbfd97); #958's argument is confirmed and given a size rather than replaced.","statement":"No channel in the family route 66 proposes bounds K*(s). The covering-congruence / Jacobsthal channel is on the wrong index set: K* is a longest run over the slots, which are exactly the integers 5 mod 6 and therefore at least 6 apart, while j(n) and its two-class analogue are longest runs over ALL consecutive integers, so their values lie BELOW K* over the whole independently-known range (J1/K* in [0.375,0.667], J2/K* crossing below 1 at s=11) and cannot serve as upper bounds. The rotation/discrepancy channel has no unconditional instrument: Sturmian run-length theory exists on the irrational circle only, Kronecker discrepancy is a global uniformity measure and not a local run bound, and Lonely Runner is unproven -- while the independence heuristic that stands in for such a bound is a heuristic at 1.59-2.23 times K*, converging toward 1 rather than giving an error term.","assumptions":"That a finite profinite rotation on prod_{q in Q} Z/qZ admits the run-length and discrepancy machinery of irrational circle rotations; or that a bound on runs over all consecutive integers (Jacobsthal / covering congruences) transfers to a run over the index-6 sublattice of slots; or that a heuristic equidistribution prediction can stand in for a proven error term.","revisit_when":"A run-length or discrepancy theorem is PROVEN for hitting runs of a finite or profinite rotation on a sublattice -- equivalently, an unconditional error term for the local hitting-run statistic of the phase walk -- or a source is found that bounds a two-class covering run over a lattice of index greater than 1. A numerical agreement between an equidistribution heuristic and K* is not sufficient, since that heuristic is already measured here to sit 1.6-2.2x above K*."},"route_id":66,"depends_on":[594,957,958],"evidence_md":"EXACT COMPUTATION, no source fetched for the mathematics, no routing through #594's engine or #954's verifier. The route's changed ingredient is the TRANSFER of rotation-dynamics run-length machinery to K*(s); this return measures, exactly, the three channels that exist. Convention (the route's own, as fixed in #962): P = prod_{p<=s} p, Q = primes in (s,2s], slot r with gcd(r,P)=gcd(r+2,P)=1, killed iff some q in Q divides r or r+2, K* = longest run of consecutive killed slots; gcd(P,prod Q)=1 so M=P*prod Q is a genuine period and ONE PERIOD DECIDES K* -- no block, no phase, no reduction. STRUCTURAL FACT, measured at every s: every slot is 5 mod 6 (a slot is odd, and r and r+2 are both nonzero mod 3, so r = 2 mod 3), hence consecutive slots are at least 6 apart (min gap exactly 6 at every tested s). A run of L consecutive slots is therefore NOT a run of L consecutive integers: five integers between consecutive slots are neither slots nor required to be killed. Every instrument of the route's family bounds runs over the integers, or separation on a torus, and none of them sees this index-6 sublattice. TABLE s=7..14, one period each (D = slots; J1 = longest run of consecutive integers each divisible by some q in Q, i.e. j(prod Q)-1 for the Jacobsthal function; J2 = the two-class integer analogue; R = independence/equidistribution L_ind): K* = 3,3,5,8,6,10,8,8; J1 = 2,2,3,4,3,4,3,3; J2 = 4,4,5,8,5,8,5,5; R = 6.51,6.51,11.13,17.00,12.01,17.40,12.71,12.71; D = 15,15,15,15,135,135,1485,1485. VERDICTS: J1_bounds_K false, J1/K* in [0.375,0.667] -- the correctly named classical object is BELOW K* at every tested s, so it is not an upper bound and the classical covering-congruence channel does not transfer; J2_bounds_K false, J2/K* in [0.625,1.333] -- the natural integer-level repair dominates only at s=7..10 (1.33,1.33,1.00,1.00) and is BELOW K* from s=11 (0.83,0.80,0.62,0.62), exactly where K* starts to exceed it; independence_overestimates true, R/K* in [1.589,2.226] falling from 2.17 at s=7 to 1.59 at s=14. R is a heuristic and not a bound, so its excess is NOT evidence against a proven discrepancy-with-error statement at this scale: the honest reading is that the naive equidistribution form is loose by a factor that converges toward 1, and that no UNCONDITIONAL instrument of the family supplies the error term (Sturmian run-length theory exists on the irrational circle only; Kronecker discrepancy is a global uniformity measure; Lonely Runner is unproven). WHAT THIS CHANGES: the route's own central uncertainty ('the transfer is unproven and may be vacuous') is now measured rather than argued, and its mechanism is named -- the index set, not the quality of the estimates; #958's blocked verdict stands and is sharpened; #957's definitional reformulation stands; the exact values K*(32)=25 (non-wrapping maximum), K*(34)>=29 and K*(36)=33 are untouched and no published computation was re-run. CONTROLS: the truth column reproduces #599's published full-period ladder and #588's closed form D_v = prod_{3<=p<=v}(p-2); truth, J1 and J2 share one period-marking code path and one cyclic run extractor, so an extractor bug moves all columns together and cannot manufacture the sign pattern that carries the conclusion; the structural claim is reported per s and a single s whose admissible residues were not all 5 mod 6 would refute it. LIMITS: the truth column stops at s=14 because M(14)=223,092,870 and M(15)=6,469,693,230 (29x), i.e. tens of minutes per further level by this method; two runs (a timeout-wrapper run and the job-object run) give identical verdicts, and the cited one is the job-object run: exit 0, elapsed 91.74 s, timed_out false, survivors [], peak job memory 680,738,816 bytes against a 4 GB cap, CPU 85.1 s against 600 s. NOT CLAIMED: any bound on K* beyond s<=14, any asymptotic statement, any claim that no rotation-dynamics route can ever bound K*, and any change to the maxsum/margin programme (rows 90/94, beta_2, Ghat).","prior_art_md":"Search date 2026-09-17. CHANNEL STATE: the platform search channel is LIVE from this session -- the control query 'twin prime conjecture' returned ten results, while the object-specific queries return only non-mathematical hits, so the absence below is a checked absence. QUERIES RUN FOR THE CHANGED INGREDIENT (rotation run-length / covering-congruence transfer to the two-class covering run): 'Jacobsthal function longest run of consecutive integers each divisible by a prime from a set bound'; 'Jacobsthal function j(n) upper bound Costello 2014 Hagedorn asymptotic'; 'longest run of consecutive hits of a rotation against a target set'; 'Sturmian word run length continued fraction'; 'Kronecker sequence discrepancy run length'; 'primes such that p and p+2 covering congruences consecutive integers each with a prime factor from an interval power saving'. LOCATED AND READ: the classical ancestor of the proposed channel, by name -- F. Costello, 'A computational upper bound on Jacobsthal's function' (arXiv:1208.5342; h(k) = least m such that every m consecutive integers contain an integer coprime to P_k); Hagedorn, 'Computation of Jacobsthal's function h(n) for n<50'; Erdos 1962, 'On the integers relatively prime to n and on a conjecture of Jacobsthal'; Ford, 'Large gaps in sets of primes' (J(x) the largest gap in a set of primes, G(2Qx) >= J(x)). Plus the reads route 66 already recorded and this return did not need to repeat: Chaika-Constantine arXiv:1802.01370 (Sturmian coding of an IRRATIONAL circle rotation), Halton-Kronecker discrepancy, Filaseta-Harvey covering congruences. THE EXACT REMAINING GAP, now measured rather than asserted: every located result bounds a longest run over ALL consecutive integers (or a gap between integers coprime to a fixed n, or the uniformity of a sequence), whereas K*(s) is a longest run over the slots, which are exactly the integers 5 mod 6 -- an index-6 sublattice. This is why J1 = j(prod_{q in Q} q) - 1 sits BELOW K* at every s in 7..14 (0.375-0.667 of it) and why its two-class analogue J2 is below K* from s=11 on: the classical objects are on the wrong index set, so no cited bound transfers, and no located source bounds a two-class covering run over a lattice of index greater than 1. There is no citation-shaped gap left to close for this route: what is missing is a proof, not a reference -- an unconditional error term for a local hitting-run statistic of a finite profinite rotation. Stated so that it is not overclaimed: because the independence heuristic tracks K* from above and converges toward it (2.17x at s=7 to 1.59x at s=14), this measurement does NOT exclude such a proof; it shows the naive form is loose and that no instrument in the family currently supplies it. No novelty claim and no absence claim about the literature as a whole is made."},"research_route_id":66,"verification_plan":null,"verification_fingerprint":null,"review_admitted_at":null,"department_id":"dept_bd08e49ed9621cfd852f9b04","run_id":"run_d4fd7140b6d3b75ee8d8a620","triage_lead":null,"revision_base_sha":null,"integration":null,"resolves":null,"handle":"maxime-fleury","job_brief":"Inspect the decisive obstruction with a fresh perspective. Distinguish an unresolved task, failed attempt, refuted statement and scoped obstruction. Seek a repair, weaker requirement, new ingredient or alternate method. Preserve valid counterexamples and their exact scope. A successful rescue needs a distinct next experiment and evidence that the alternative avoids the obstruction. Reuse the prior search and search online for the changed ingredient, including failures in the source field. Do not rerun published computations here. Your findings start a new investment basis; explicitly list any earlier return still required in depends_on.\n\nRead GET <project base>/research-routes/66 and return #958. Return the ordinary report and transcript plus research: {route_id: 66, 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":"594","status":"accepted","final_rung":"measured","canonical_return_id":null},{"id":"957","status":"recorded","final_rung":"recorded","canonical_return_id":null},{"id":"958","status":"recorded","final_rung":"recorded","canonical_return_id":null}],"research_url":"/projects/twin-primes/research-routes/66","transcript_url":"/projects/twin-primes/return/964/transcript","files":[{"sha256":"3232c71e51a00691406c73b586d791cec914d5c4549744eee03d9d2922ded4b6","name":"check-rotation-vs-jacobsthal.py","bytes":6226},{"sha256":"4f5ca76e4507c42d097e1199c45426657398e9067db658be3a3e9459997554b4","name":"rotation-vs-jacobsthal.json","bytes":3242},{"sha256":"32058e3d9454614a4e6e9be0d4689cdcc390d4c7a501fd9fdc24a893350acd89","name":"rotation-vs-jacobsthal.enforcement.json","bytes":2665},{"sha256":"80a8b2057c61dd0c7bb33727874b7c4abf13540b2669d377629e065a1942c6e7","name":"rotation-vs-jacobsthal.child-stdout.txt","bytes":973},{"sha256":"588b20f4f948a01f67649dcb45d63b9af487b4ef4e4a4859eb482bc9fe514d6c","name":"rotation-vs-jacobsthal.limits-run.json","bytes":1331},{"sha256":"2d0ef06350ccdc2995ffe82d337196bf28476dd51853f2860e70c03c4573f190","name":"check-reduction-adjudication.py","bytes":9680}],"decided_by_author_handle":false,"reviews":[],"decisions":[],"decision":null,"duplicates":[],"cited_messages":[]}