Skip to content

evidence(§A.42, landing 2 of 3): copy the branch-only sources that records on main rely on - #1099

Merged
amaybaum merged 45 commits into
mainfrom
evidence/a42-sources-20261104
Nov 4, 2026
Merged

amaybaum merged 45 commits into
mainfrom
evidence/a42-sources-20261104

Conversation

@amaybaum

@amaybaum amaybaum commented Nov 4, 2026 •

Copy link
Copy Markdown
Owner

Landing 2 of 3 in the owner-approved plan (amaybaum, Claude Code session chat, 2026-11-04: "Land the missing sources", then "Approve all three"). It was cut from main 9d022a65 and is now updated with main e9cd64be (after #1097 and #1098). Its files are disjoint from #1100's.

Head 6e86b022: three commits and one merge of main. Net diff against main: 257 files added and 1 modified, byte-identical to the reviewed net diff at c7d9a635.

Commit What it does
86cd47e5 Copies 239 files byte-identically, at the same paths and with the same modes
98ca32ad Ordinary merge of PE-01's run head 549641460b. It adds that commit's 18 files not yet on main: the thread README.md, review/REVIEW.md, and pe01_bounded_tests_v1/review/plan/ (16 files). It makes the PE-01 plan, pin and code commits reachable from main
c7d9a635 In-place correction of PE-01's mutable REPLAY.json to match the landed files
6e86b022 Ordinary merge of main e9cd64be, for the up-to-date rule. It brings in only #1097's AGENTS.md change and #1098's history merges, with no conflict

What the copies support.

Source Files Records on main that rely on them
#912 composition-access-20261024/ at 2af1d5d5 5: README.md, REPORT.md, RESULT.json, SHA256SUMS, checks.py MR-1 Proposition B2 (preregistration.md:307–319, "proved on paper from #912's proof"); its equation (1) test definition (T5, §5.6, B-T5); N6; part of the "sources read"
#923 PE-01 at cd406481 169: results/ (README, SHA256SUMS, measurements, verdict, 114 shards), verdict.py, pe01/, run.py, review/code/, review/literature/ The classification, the m=3 and m=4 sweep negatives, the 26 combinations that fail only on (f), the PROVED horizons, and the code review and literature tags in REPORT.md and REVIEW.md
#1009 continuous-substates/ at 8af2d904 65, unchanged at d4a80fc8 MR-1's N5 (LA-EQUAL) and its "sources read", including the eight unnamed notes; PC-1's Q10; SUBSTATE-2 README.md:50 and ANALYSIS.md:176–178; the dependency audit's solenoid row and the "source failure" half of its gauge-action row; F2-1's C2 "infinite XOR" (infinite-xor-counterexample.md)

Why the merge (review finding F1). PE-01's verdict is VOID unless every control passes. Its PIN and TH controls are git checks (pe01/params.py:216–255):

  • the plan commit af38dc2d and the A1 pin 1e025b67 are ancestors of the run commit;
  • the A1 and A2 blobs are unchanged;
  • the code commits descend from the plan.

REPORT.md:9–17 states the same order. After this lands, 549641460b, af38dc2d, 1e025b67, 826bd9ba, 07f3c127, 25e77a3c and 54964146 are all reachable from main. The merge is ordinary: it brings exactly those commits' content, and the merge resolved no conflict.

Why the REPLAY.json correction (review finding F2). REPLAY.json is #1094's mutable landing pin (§A.42 item 6). It listed the run, results/, the shards, verdict.py, pe01/, review/code/ and review/literature/ as provenance only, "not in this directory". The correction:

  • keeps only CI run 40271434371 under provenance_only;
  • adds a landed_with_the_run section listing the statements those files now support, with the four sha256 prefixes REVIEW.md states (f17109f1, eeebc219, 3b8f5924, 3f6121e8), which all match the landed files;
  • moves the seven reachable PE-01 commits to cited_commits_on_main;
  • leaves cd406481, the copy source, as off main.

No record among the 16 is edited.

Notes.

Checks (local).

  • Copies: byte identity and modes match by construction.
  • Merge: adds 18 files and conflicts with nothing.
  • Repository checks, all passing: artifact placement, migration manifest, duplicate, claims, voice, staleness, coverage, dependency labels, mirror, citation, architecture, toolchain, CI-gate presence, the Lean–manuscript census, and legacy records (303 intact).
  • Secret scan: no tokens, keys, e-mail addresses, IP addresses or local paths. The only ghp_ matches are the identifiers aghp_check and aghp_goldreich.
  • Closing keywords: none in the commit messages or this description.

Review.

  • First review, at 86cd47e5: the copy is correct; F1 and F2 were blocking.

  • 98ca32ad and c7d9a635 address F1 and F2. Nits N1–N3 are corrected in this description.

  • Delta review at c7d9a635: CONFIRMED WITH NITS, nothing blocking. Its nit N1 is known and open: REPLAY.json does not say that re-checking PIN and TH needs HEAD at 549641460b, since PIN fails by design at a main head. It is listed for the follow-up correction of mutable records, with nit N2 (a key named unresolved_relative_paths now says the paths resolve).

  • The owner approved c7d9a635 (amaybaum, session chat, 2026-11-04). For updated heads: "the previous exact-head approvals remain applicable only to those heads and their original gates. Updated heads require their own integration checks."

  • Delta review of the update at 6e86b022: CONFIRMED WITH NITS, nothing blocking. It confirmed that:

    • the parents are c7d9a635 and e9cd64be;
    • the net diff against main is byte-identical to 9d022a65..c7d9a635;
    • the merge equals the automatic merge, and adds only main's change;
    • the PE-01 ancestry chain is reachable.

    Its nits are applied in this description:

    • N1: §A.46, which entered with main, wants an accountable Issue for each open item;
    • N2: a trace for each reference;
    • N3: the head and base were out of date.

Gates.

  • Independent delta review of the exact head: done at 6e86b022.
  • Green CI at the exact head.
  • Owner approval naming the exact head SHA.
  • Merge commit only.

🤖 Generated with Claude Code

https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb

claude added 30 commits October 25, 2026 15:37
…rver access)

Opens the OI-PE-1 research thread from main c37700a. One file: the
thread's question, its corpus anchors (book ch18:104-114 and FULL mirror,
Main:78, :82, :172), three notions kept distinct (Shannon entropy,
computational pseudoentropy in the HILL/metric/Yao sense, OI observational
indistinguishability for a stated protocol class), stages PE-01 to PE-04
(PE-03/PE-04 prospective), decision rules stated before any computation,
the literature to read before any closure claim, and authority limits.
No computation, manuscript change or premise.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
Addresses all eleven findings of the independent plan review of 80e4465
and the owner's two points:
- HILL stated with Shannon entropy (min-entropy form BSW), metric with
  reversed quantifiers, Yao from Yao 1982; distinguisher model named.
- Anchors restated in the corpus's own terms (Main:82 layers, Main:172
  per-horizon fair coin, C3 on I*), and the baseline the corpus already
  settles added: Structure:1256 zero entropy rate, Main:476, :496-500,
  :536-538, :544-560, :576; related statements ch18:56-58, :110,
  appendix-c:58-62, Computation:15-17, Main:708.
- OI advantage defined against a named reference law, with runs,
  settings, measurement independence and the observer's knowledge of
  phi stated; that knowledge is the first assumption-watch item.
- Shannon bound given with its conditions; exact bound vs computational
  unpredictability (a PRG past the seed length) kept apart.
- PE-01 tests three observer classes on one fixed generator, with a
  non-vacuous positive control and a negative control tied to its reason.
- ch18:114 is a claim to test, refutable but not establishable by finite
  classes; the milestone is a question with an outcome rule.
- #911 result pinned at bafb38d and scoped; references completed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
Owner review of 47d4f2b:
- Knowing the law is not knowing the seed. Observer knowledge is now one
  of K0 (neither phi nor mu), K1 (phi and mu, not the initial state;
  prediction set by the posterior, computed rather than assumed; perfect
  from 2L symbols on by Fine-Wilf, L the maximal orbit length) or K2
  (the initial state, i.e. reading h, outside the thread's classes).
  The unrestricted PE-01 observer is tested at K0 and K1.
- The first milestone closes with one of three admissible outcomes: a new
  bounded theorem, a counterexample to the universal form of ch18:114, or
  a documented finding that the distinction is already covered by
  Structure:1256 and Main section 3.4.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
Re-check of bd69acf (narrow block) resolved:
- R2: Main:476/:536 say no fixed representation hosts generic combs;
  Main:538 is the fixed N-state realization obstruction for the qubit.
- R3: a ranging reference class states its quantifier order (HILL-like
  min-max, metric-like max-min).
- R4: K0 defined (test class fixed independently of phi, advantage over
  a named generator family); TV and the cryptographic notions are K1 by
  default.
- R5: milestone closes with one or more of three outcomes, or OPEN, or
  VOID; a counterexample to ch18:114 needs an embedded-realizable
  observer (record memory and computation within C_V, measurement-
  independent settings); that memory bound is the first assumption-watch
  item; a bounded theorem needs a named class.
- Nits: Main:498 removes the rationality restriction; TV 0 for the
  passive law, interventions for fixed finite families (Main:460, :536);
  record length n = K+1; HILL stated asymptotically in its source; Yao
  Shannon-type; exact all-circuit advantage only at tiny parameters;
  periodicity for the passive record only; K1 may infer the initial
  state, K2 excludes a priori knowledge; retained-seed escape when
  granted the target cuts.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
- N8: K0 chooses one test for a named generator family; worst-case
  (max_D min_phi) and average-case (max_D E_phi) forms stated; per-phi
  choice over all tests would collapse K0 into K1; average case is not
  folding phi into the seed.
- N9: the embedded-realizability sentence is conditional on 2L log2|A|
  exceeding the observer's share of visible memory; L depends on phi.
- N10: a failed control makes the milestone VOID regardless of other
  outcomes; otherwise OPEN if no outcome is reached.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
Adds review/REVIEW.md, byte-identical to the separate-agent internal
review of the plan (sha256
be943f7d5b5cce0cbfe3ee6e40d5cdc7785cb63e51ea56ea18dd5321da4e348d): the
first review of 80e4465 (BLOCK, eleven findings), the re-check of
47d4f2b with its update for bd69acf (BLOCK, narrow: R1-R5), Addendum 2
on e49c3b0 (ACCEPT WITH NITS: N8-N10) and Addendum 3 on 66578f4
(ACCEPT). Every reviewed commit is on this branch. Line numbers in the
review refer to README.md at the commit each part reviews.

Scanned before commit: no tokens, keys, signed URLs, e-mail or IP
addresses, and no local paths; nothing redacted. The accepted plan
(README.md) is unchanged. The review is internal review, not a
research result, external validation or owner adoption.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
Fixes the PE-01 objects (skew-product generators G_lin / G_filt / G_clk
over primitive LFSR maps, with control generators G_dec, G_tape and a
reciprocal-polynomial sibling), the inline definition of adv_D(phi), the
reference law, knowledge levels, the three observer classes (unrestricted
calibration, structured bounded classes B1-B4, embedded reversible
observers P^emb(m)), positive/negative/exactness controls, the A.41
invariant-to-checkpoint table, and the decision rule with the
COUNTEREXAMPLE criterion for the universal form of ch18:114. No code,
no results. Local draft only.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
Applies the independent review of aa667c1 (narrow BLOCK) before any code:
- R1 a counterexample witness may be K1, and its K0 status is reported;
- R2 the readout clock is charged in a witness's footprint, and the
  prediction advantage must hold on a fixed window w = 3;
- R3 G_tape(K) with N = K, x_0 uniform, fully enumerated for
  K <= K_tape = 20;
- R4 new checkpoint EX8 (no hidden-sector access), and EX7 rests on it;
- R5 K0 is fixed per subclass, the deterministic worst case is labelled a
  lower bound, and T3 uses the average-case or exact randomized LP form;
- N1-N14: G_filt specificity, the B4 counting horizon, an independent DP
  check of the LC count, the B4 weight method and K0, the U average-case
  K0, IM6, the Main:560 scope and table size, realization conditions in
  the verdict, workflow_dispatch-only CI with JSON shards, literature
  before candidate-NEW tags, the stage-outcome label, vectorisation, and
  K_delta = null;
- section 10 lists the seven owner decisions, with the review's
  recommendations.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
Applies the re-check of 6e5db44 (narrow BLOCK) and the owner's decisions,
before any code:
- S1 EX8 checks each observer map (rho-step, a-step, clock tick, readout)
  for identity on h and independence from h, and checks that phi is the
  identity on (v, clk, out);
- S2 the G_filt specificity rule is <= at every injective K, and < at
  some such K, for each n;
- S3 new CX checkpoint: the JSON-only evaluation of (a)-(f), with three
  mutant witnesses each refused on its own condition;
- S4 footprint = m + ceil(log2(K+1)) + 1 everywhere; new FP checkpoint;
  curves labelled "evaluation time uncharged"; the table size includes
  the trigger constant; the overcharge is noted as conservative toward
  the claim;
- S5 the resource-model limitation sentence and the admissible-region
  tables (theta = n and n+1, per generator) in section 7 and in the
  verdict text;
- A4: a candidate covered by a section 9 paper is tagged
  COVERED-literature;
- dual-form randomized LP with K_LP(n) = 2^(n-1) - 1, plus a section 8
  row; the B1 K0 nit;
- section 10 records owner decisions 1-7 as decided. The admissibility
  threshold theta is the one open decision, and no run starts before it
  is fixed. The plan's own purpose statement is added.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
…tribution)

Applies the re-check of 67a5cbe (narrow BLOCK), before any code:
- defines the universal zero horizon Z(phi) and states why it holds for
  every observer, adaptive included; the window floor is now
  K >= Z(phi) + 4 for all three generators. The section 7 tables are
  rebuilt per generator for theta = n and n+1, with Z values
  independently recomputed at drafting, and the consequences restated
  in sections 7 and 10. "Design-checked" is removed.
- new checkpoints: AR (Z computed exhaustively, Z(G_lin) = n
  cross-checked against PC, the region recomputed and equal to the
  tables, and printed recomputed by the verdict) and TH (theta, K_LP and
  the fixing amendment recorded in the JSON and checked like PIN);
- attribution rule: unpredictability is attributed to resources iff some
  witness meets (a)-(e) but fails (f); otherwise the verdict says "no
  witness within the enumerated scope at any footprint";
- CX also reads the EX1/EX7/EX8/IM3 flags and the global control flag;
  VG's self-test checks the limitation sentence; runs are gated on both
  theta and K_LP.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
Nits only, from the re-check of fee9879 (accept with nits). No code.
- N1: the readout clock starts at 0.
- N2: AR also checks that mu factorises with uniform h and that every
  observer register starts at a fixed value.
- N3: the linear-filter sweep runs n = 3..8.
- N4: the attribution rule is applied per (generator, n, observer
  subclass); the section 7 consequences heading is reworded.
- N5: the scope of the passive m = 3 sweep is a new open owner decision
  in section 10: (i) n <= 6 as comparison data only, or (ii) extend to
  n = 7, 8, capped at the admissible region, with its own section 8 row.
  Runs are gated on this decision as well as on theta and K_LP (TH).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
- N6: section 6 item 4 now says that theta and the m = 3 scope are the
  open owner decisions, and that K_LP awaits confirmation. No other "one
  open owner decision" phrasing remains.
- Cosmetic: rewraps the over-width section 6.4 lines, and fixes the lazy
  continuation line at the end of the attribution bullet.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
… only)

Adds pe01_bounded_tests_v1/review/plan/: the independent review of the
stage plan from aa667c1 to revision 4, with its addenda (REVIEW.md,
RECHECK-67a5cbe1.md, RECHECK-fee98794.md), byte-identical to the
reviewer's records, and the reviewer's design-check scripts with their
outputs. Every script was replayed and reproduces its retained output
byte for byte. README.md indexes the verdicts and maps the working paths;
SHA256SUMS covers the directory. No plan text changes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
…eeze)

Adds pe01_bounded_tests_v1/amendments/A1-owner-decisions.md, fixing the
values PLAN.md (revision 5, af38dc2) leaves open, as decided by the
owner on 2026-10-25:
- theta = n + 1;
- K_LP(n) = 2^(n-1) - 1, with no post-result adjustment;
- the passive m = 3 sweep under option (ii), extended to n = 7 and 8
  with K <= 15 and K <= 31.

The plan's text, conditions (a)-(f), thresholds and controls are
unchanged. The extended sweep adds observers only, is reported as its
own cells and runs in separate CI shards. Results are stated under
theta = n + 1 only. A machine-readable parameter block is read and
recorded by the TH checkpoint. This commit is the frozen
preregistration; code commits follow it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
Applies the pre-freeze check of ced675c:
- P1: records the owner's clarification of the "separate" safeguard,
  reading (a): one decision rule for all observers, with the m = 3 sweep
  reported as its own cells in its own CI jobs.
- P2: a shard never started is "not run"; a started, unfinished shard is
  "incomplete", with its completed cells and its partial output kept;
  neither status is a verdict; a checkpoint failure in an m = 3 shard
  voids the whole stage.
- Nits: per-n values in the parameter block, checked against the
  formulas; K_LP applies at n <= 6 only; the review README now covers
  up to revision 4 and points to the A1 check.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
… (nit N-d)

The checker compares each formula with its explicit values only where
the block gives them: theta at n = 3..8, K_LP at n = 3..6.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
…(evidence only)

Adds review/plan/PRECHECK-A1.md, the independent check of revision 5 and
of A1 (ced675c: BLOCK narrowly, P1-P2; 7b8ca72: ACCEPT WITH NITS),
byte-identical to the reviewer's record, and indexes it in README.md and
SHA256SUMS. Its nit N-d is applied in 1e025b6; N-e is this commit.
Touches review/plan/ only.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
…U, B1-B4)

PLAN.md §1-§3 as written, in exact arithmetic (Python ints and Fraction;
numpy on integer arrays only):
- gf2: polynomials, primitivity by the order of z, packed GF(2) elimination.
- generators: phi = tau_f o kappa_sigma for G_lin, G_filt, G_clk, G_dec, the
  K0 families over all primitive p, and the mutant G_tape(N) with its prior.
- laws: record laws by full enumeration through the bijection; U at K1 (TV,
  Bayes predictor) and K0 (the D_union / min-TV and mixture / mean-TV
  intervals); complement invariance (SY).
- lc: Berlekamp-Massey, the length-count closed form, the independent DP and
  its Markov premise by enumeration (IM1, IM2).
- bclasses: B1 by integer WHT (K <= 23) and the affine-hull tests beyond;
  B2; B3 k-wise (K <= 127) and windows (w <= 16); B4 by exact elimination,
  binary search for the least K, Dickson reduction (d <= 2) and enumeration
  (d = 3, K+1 <= 24) over annihilator spaces of dimension <= 20.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
… registry

- params: the run parameters and the TH and PIN checkpoints. TH parses A1's
  pe01-parameters block, evaluates each formula at every n with an explicit
  value (theta: 3..8; K_LP: 3..6), compares the block with the parameters the
  code runs with, records A1's blob and requires 1e025b6 to be an ancestor
  of the run commit with A1's blob unchanged. PIN records PLAN.md's blob,
  requires it unchanged since af38dc2, that commit an ancestor of the run
  commit and of every commit touching the code. Either failing refuses the run.
- ar: Z(phi) by exhaustive equidistribution over all control sequences,
  K_cx from the orbit census (median uniqueness checked), the admissible
  region recomputed from Z, K_cx and theta, compared cell for cell with the
  §7 tables parsed from PLAN.md.
- pending: the points where the plan as written does not determine the
  computation (B3 window K0; the setting map of linear-filter observers).
  A run in result mode refuses to start while any is open.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
…dual LP

- observers: all observers with m <= 2 (16 and 9216); passive m = 3 in the
  canonical BFS labelling of the component reachable from v_0 (306432 forms,
  equal to Hall's subgroup counts of F_2 for k = 1..8); linear filters
  rho_x(v) = A v + x b, every (A, b) and their behavioural classes (the
  minimal polynomial of b under A).
- composite: the composite bijection on C_V' x C_H from register-level maps
  (readout gated by the clock, rho, a, phi, clock tick); EX1, EX7, EX8, FP;
  the full-state path of IM3; the clocked witness composite.
- embedded: the aggregated transfer sweep. Q_p exactly as integers
  Q_K = 2^K q_K per (rho_0, rho_1); every maximum (K1 optimal F, K1
  prediction, K0 worst and average over all tests, K0 over prediction tests)
  is decided by integer bounds and exact Python-int evaluation; windows of
  the same O and chi at K-3..K are tracked for the primary and the family.
- lp: the randomized K0 worst case for m <= 2 in its dual form, by cutting
  planes over an exact simplex, with both certificates checked.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
…t.py

- cx: conditions (a)-(f) of §6 item 4 evaluated from a witness record's
  fields alone; the self-test's three mutants (one window value at
  1/8 - 2^(-K-2), footprint theta+1, K = K_cx + 1) must each be refused on
  exactly its own condition, and the base record accepted.
- collect: merges shard outputs into measurements.json; a shard is
  complete, incomplete (started, not finished; A1) or not run. Cross-shard
  controls: EX3 over every shard, TH and PIN consistency, NC-2 specificity
  (G_filt against G_lin at every K where both records are injective), CX,
  RP from the replay records. A checkpoint is green only if evaluated and
  passing; a missing primary shard leaves its checkpoints unevaluated.
- verdict.py: generates the verdict text from measurements.json alone,
  VOID first and naming the failed checkpoints; per (generator, n,
  subclass) witness classification and attribution; the resource-model
  limitation sentence and the recomputed admissible region. VG self-test:
  regeneration identical, every control flag flipped yields VOID naming it,
  and the text check rejects a text without the limitation sentence.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
… job

- shard: the computation split by (n, family), with the passive m = 3 sweep
  in its own (n, family) shards (A1), plus the controls and G_tape shards.
  Every §5 checkpoint is evaluated where its data are: EX1-EX8, IM1-IM6, PC,
  NC, SY, MO, FP, K0, AR, and the per-witness CX fields (full-state
  simulation of the clocked composite, its aggregated twin, K_cx, FP, EX6,
  EX1/EX7/EX8/IM3, K0 status). Smoke mode is the §8 local row: n <= 5,
  U, B1-B4, passive m <= 2, and the controls.
- run.py: shard / replay / collect / list. TH and PIN run before any work;
  result mode also refuses while an open plan item has no amendment. A
  shard writes a deterministic <id>.json (commit, recipe, preflight,
  controls, measurements) and a separate <id>.provenance.json (run id,
  timings), so a replay can be compared byte for byte (RP).
- .github/workflows/pe01-bounded-tests.yml: workflow_dispatch only (no push
  or pull_request trigger); plan, primary and m3 matrices from run.py list,
  a replay job per shard, collect and the verdict; shard and result JSON
  uploaded as artifacts for commit after review. Dispatch needs owner
  approval (AGENTS.md §A.43 item 4).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
The VG flip test now flips only passing controls to failing (an already
failing control leaves the verdict VOID and named), the limitation-sentence
check is exercised on a probe text when the verdict itself is VOID, and a
VG failure keeps the original failed checkpoints in the VOID line. Found by
running collect and verdict on a copy with one control flag injected false.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
… (review R9)

- pending: each open item lists the readings the code implements (B3W-K0,
  LF-A, WIT-A, TAG-L, D-SIGN); open_items() returns the items A2's block does
  not resolve with a listed reading.
- params: amendment A2 carries a machine-readable pe01-resolutions block.
  TH pins it as it pins A1: A2_COMMIT (unset until A2 lands), its blob
  unchanged at the run commit and in the tree, A2_COMMIT an ancestor of the
  run commit, A1's commit an ancestor of it. TH records the A2 blob and the
  resolutions. Result mode refuses while any item is open. A test mode reads
  an unpinned local stub (PE01_TEST_A2) and is never a result.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
…coding

- ar (review R3): K_cx is checked against independent values: the closed
  form 2^(n-1) - 1 for G_lin and G_filt (two fixed points (x, 0); every other
  state on a cycle of length 2^n - 1), and a separately coded scalar orbit
  census for G_clk. l_med is recorded. The unused theta argument is removed.
- bclasses (open item B3W-K0): window marginals are checked stationary for
  every window used; the K0 average is exact by sign-pattern decomposition
  over the union of supports (checked against all tests for w <= 4); the
  deterministic worst case is exact for w <= 4 and the D_union / min-TV
  interval for 5 <= w <= 16. B1's lower bound beyond K = 23 is monotone in K
  (review N4).
- exact (review R6): run-length encoding and a lossless complement form
  1-p/2^e for dyadic values near 1.
- composite: a map leaving the declared state space fails EX1 and FP
  cleanly instead of crashing; FP's reference clock width is written
  independently (review N1); the window-reading note (N12).
- lc: the tautological length-rule sub-check is removed (review N2).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
…IM3 (review R1, R4, R5)

- embedded: prediction windows are tracked under both readings of (d)
  (open item D-SIGN): 'abs' |Pr - 1/2| >= 1/8 and 'signed' Pr - 1/2 >= 1/8
  with the same chi at every K' in K-3..K; per K the subclass count, the
  family-wide count and the count per family member.
- shard, R1: embedded_bruteforce compares the window counts (both readings,
  primary and family-wide) with an independent scalar Fraction path;
  pred_bruteforce does the same for the 'pred' path (K1 prediction, the K0
  worst and average maxima, windows) on passive linear filters and a
  passive m = 3 sample. The '>=' -> '>' window mutant is now caught.
- R4: the m = 3 shard checks m = 3 <= U, prediction <= distinguishing and
  its K0 records; K0 <= K1 is checked pointwise for every K0 class against
  the named generators' K1 curves (where K1 is exact); randomized K0 lies
  between the deterministic worst case and the average.
- R5: the passive-linear sweep carries the full-state IM3 path at n <= 4,
  and the class reduction is checked per (A, b) by the multiset of cells
  (C[v,0], C[v,1], Q_K(v)) and of linear-prediction hit counts.
- Open items: B4 at degree d takes the lower-degree values where only the
  2^-d bound is known, with MO d <= d+1; the B3 window K0; passive linear
  filters named so (plin_m*); witnesses per reading, plus the first
  family-wide window (N6); mechanical L1-L4 tag inputs (TAG-L).
- N3: PC firing also asserted on the sweep's m = 1 curves on G_dec at K = 1.
  N9: the canonical m = 3 forms are pairwise distinct and fixed by an
  independent BFS relabelling. Curves and per-K lists are run-length encoded
  losslessly (R6); progress is reported after every block for partial
  outputs (R8).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
…rements (review R2, R6-R8)

- verdict.py, R2: horizons are printed from the shards' exact and
  determined flags. Only exact, determined statements stand under PROVED
  (exhaustive finite); lower bounds print as "K_delta <= K" or
  "undetermined", intervals as ranges, in their own section. INCOMPLETE (no
  verdict) when a checkpoint or primary shard was not evaluated; VOID only
  for a failed checkpoint. Condition (d) under the reading A2 selects, or
  both when none is selected. Mechanical tags L1-L4 with COVERED-corpus
  first (N5); theta from the measurements (N8); per-combination region cells
  (N10); family-wide window counts (N6); the conservative reading of (a).
- cx: (d) under a named reading; a malformed value refuses (d) instead of
  crashing (N7); the self-test covers both readings, a sign-alternating
  window and a malformed value.
- collect, R6-R8: measurements.json holds only verdict inputs and each
  shard file's sha256, with run id, attempt and job per shard and for the
  run; incomplete shards keep their completed cells and controls; a missing
  replay record is unevaluated, a differing one fails RP; cross-shard MO for
  m = 3; witness K_cx checked against AR; a 20 MB budget per file.
  verdict.json records the sha256 of measurements.json and the run id.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
…ed actions (review R8, N11)

- run.py: modes smoke, test (unpinned local A2 stub; never a result) and
  result; the shard keeps <id>.partial.json current after every completed
  block, and `run.py incomplete` turns it into <id>.incomplete.json with
  its reason, so an unfinished shard keeps its completed cells and controls.
- workflow: the incomplete step uses it; preflight goes through
  params.preflight (TH with A1 and A2, PIN, open items); actions pinned by
  commit; a concurrency group; the final marker also fails on INCOMPLETE.
  Still workflow_dispatch only.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
…indow average (review R11)

On the real families the in-shard check of the B3 window average compares
0 with 0 (n >= 5: windows with w <= 4 are uniform) or exercises a single
sign flip with no off-support term (n <= 4: two members), so a wrong Gray
update or a dropped off-support term passed every control. The controls
shard now runs b3w_selftest: 48 deterministically seeded synthetic families
with 3-6 members and 4-8 seeds (small supports, several flips), w = 1..4,
against an all-tests brute force written independently in integer form.
Both mutants are caught. Also: shard_m3 reports progress after its
exhaustive composites, its sweep and its witnesses (review N14), so an
unfinished m = 3 shard keeps its controls.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
…iew N13-N16)

- N13: with no complete shard there is no theta; the CX self-test is then
  not evaluated (INCOMPLETE), not failed. limitation() is guarded, and
  verdict.py always writes verdict.json, as INCOMPLETE with the error if
  generation itself fails.
- N14: in result mode a complete m = 3 shard with no replay record makes
  only its own cells incomplete (A1), not the stage; the workflow records
  "incomplete" only if the shard step started, so a job that fails before
  it leaves the shard "not run", and the artifact upload no longer errors
  on an empty directory.
- N15: TAG-L's text states that L2, as computed, is the conservative form
  (K1 horizons, maximum over lambda, against the closed form at
  lambda = n+1) and names the exact comparison, for A2 to state.
- N16: one witness line per K and reading, labelled with the readings it
  was found under; every candidate at that K still enters the
  COUNTEREXAMPLE test and the attribution rule.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
claude added 12 commits October 26, 2026 04:01
Records the owner's decisions of 2026-10-26 on the five points the
implementation found the plan does not determine:
- B3W-K0: exact average, worst case interval-valued beyond w = 4;
- LF-A: passive linear filters; the owner's "not part of the deciding
  criterion" was put back to the owner, who answered "No preference", so
  the frozen plan's rule is kept and the criterion is not narrowed;
- WIT-A: the three fixed generators;
- TAG-L: mechanical L1-L4, conservative L2;
- D-SIGN: the literal |adv| reading governs; signed is a separately
  reported sensitivity analysis on the same data.

The pe01-resolutions block is read by TH. A later commit pins this one
in params.A2_COMMIT.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
…der A2

Under A2, D-SIGN = abs governs condition (d). verdict.py now computes
sections 1-4 and the verdict class from the governing reading alone: only
candidates selected under it (found_under), its window rows and its keyed
fields, with |Pr - 1/2| printed as the value (d) tests. The signed reading is
printed after the governing text as section 5, "Sensitivity analysis (does
not govern)", ending in one classification line. The header states the
governing rule and the sensitivity reading.

The VG self-test gains a sensitivity case: removing, or changing in either
direction, every sensitivity row, on the measurements and on a copy read as
a green result, leaves the governing class and governing text byte-identical;
a synthetic candidate meeting (a)-(f), selected only under the sensitivity
reading, is printed as a sensitivity COUNTEREXAMPLE and changes neither.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
…evidence only)

review/code/ keeps the reviewer's REVIEW.md with both addenda, the
independent scripts in mine/ that its findings cite, and the B3 window
check output, with a README mapping the working paths and the verdict
chain (0f1391c BLOCK, df28044 BLOCK, 07f3c12 ACCEPT WITH NITS) and
SHA256SUMS.

Three redactions, each the absolute path of the reviewer's session scratch
directory replaced by <scratch>: REVIEW.md line 384, mine/mutants.py line 3,
mine/mutants2.py line 3. The README records both digests of each; every
other file is byte-identical to the reviewer's copy.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
… D-SIGN

Quotes the owner's clarification of 2026-10-26 verbatim: passive linear
filters are fully eligible to produce deciding counterexamples, and the
|adv| rule is the primary deciding rule with the signed rule reported
separately as a sensitivity analysis. The pe01-resolutions block is
unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
Sets params.A2_COMMIT to bda7752, the commit that carries A2's final
blob 7274c93. No other change.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
…COMPLETE input

On measurements whose class is VOID or INCOMPLETE the verdict prints no
witness section, so the sensitivity case of VG has nothing to check and is
recorded as not applicable. Before this, a single-shard test-mode collect
(INCOMPLETE) failed VG for the missing section and was reported as VOID.
A2_COMMIT and A2's blob are unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
… test

Reverts the governing-candidate filter of bda2c07. The governing
COUNTEREXAMPLE test and the attribution classify every candidate of a cell
under abs, whichever reading selected it, as in the reviewed code: every
signed window is an abs window, so a signed-selected candidate is a valid
abs candidate. The governing text keeps one line per K and says whether the
shown candidate was selected under abs. The sensitivity section is unchanged.

VG: the sensitivity rows are now the signed window rows, the signed tag in
found_under, the signed-keyed fields and the signed value list; removing or
changing them leaves the governing class and text byte-identical, and two
synthetic signed-only candidates differing only in the signed values give the
same governing output. A new inclusion check requires every signed
COUNTEREXAMPLE to be a governing COUNTEREXAMPLE, on the measurements and on a
green copy, with a positive synthetic case (a signed-only candidate meeting
(a)-(f) under both readings is a COUNTEREXAMPLE in both) and a negative one
(an inconsistent record meeting (d) under signed only is reported).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
…ed table entry

Item 2 now presents "Passive, not part of the deciding criterion" as the
owner's table entry, superseded by the clarification quoted below it. The
pe01-resolutions block is unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
Sets params.A2_COMMIT to 826bd9b, the commit that carries A2's final blob
94d2fa2, and corrects the comment above it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
…T checkpoint

Implements the owner's rule. Every eligible candidate counts, whichever
search found it: the governing verdict classifies the complete candidate set
under abs, and the signed sensitivity analysis classifies the same complete
set under signed, reported separately.

SUBSET: under governing abs every signed window is an abs window, so every
signed COUNTEREXAMPLE must be a governing COUNTEREXAMPLE. If one is not, the
verdict is VOID naming SUBSET, with the offending keys.

VG adds two coverage regressions, both required: a candidate found only by
the signed search that meets (a)-(f) is a governing COUNTEREXAMPLE, and a
candidate found only by the abs search that meets (a)-(f) under signed is a
sensitivity COUNTEREXAMPLE. A record that breaks SUBSET must give VOID naming
SUBSET. The independence cases (removing or changing every sensitivity row)
are kept. The display tolerates a removed sensitivity field, and void_names
reads the first line only.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
…review N20)

The fallback attribution line said "no witness meeting (a)-(f) ... at any
footprint", which contradicts itself, since (f) is the footprint condition.
It reads "(a)-(e)" again, as in the reviewed code. No other change.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
…cords on main rely on

Byte-identical copies at the same paths, no other change (239 files):

- 5 files of #912's composition-access-20261024/ at 2af1d5d:
  README.md, REPORT.md, RESULT.json, SHA256SUMS, checks.py. MR-1's
  Proposition B2 proof, its equation (1) test definition and the N6
  controls rest on REPORT.md. SHA256SUMS lists exactly these files.
- 169 PE-01 run files from #923 at cd40648: results/ (with 114 shards),
  verdict.py, pe01/, run.py, review/code/ and review/literature/. The
  classification and sweep statements in REPORT.md and REVIEW.md rest on
  them.
- 65 files of #1009's continuous-substates/ at 8af2d90, unchanged at the
  branch head d4a80fc. MR-1's N5 and "sources read", PC-1's Q10, the
  SUBSTATE-2 README and ANALYSIS statements and the dependency audit's
  solenoid row rest on them. #1009 stays open; this retains evidence and
  adopts nothing.

No Lean module, import or census entry (landing 3). No record is edited and
no scientific status changes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
…stry

PE-01's verdict requires its PIN and TH controls, which check that the plan
commit af38dc2 and the A1 pin 1e025b6 are ancestors of the run commit
5496414 and that the code commits descend from the plan (pe01/params.py);
REPORT.md:9-17 states the same order. This ordinary merge makes those
commits reachable from main. It adds the 18 files of the run head that are
not yet on main: the thread README.md, review/REVIEW.md and
pe01_bounded_tests_v1/review/plan/ (16 files), the plan review that the
code review names as read.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
REPLAY.json is the mutable landing pin of #1094 (AGENTS.md §A.42 item 6).
It listed the run, results/, the shards, verdict.py, pe01/, review/code/
and review/literature/ as provenance only, not in this directory. They are
now on main, and the run head is in main's ancestry, so:

- provenance_only.statements keeps only CI run 40271434371;
- a new landed_with_the_run section lists the statements those files now
  support, with the four sha256 prefixes REVIEW.md states (all match);
- the seven PE-01 commits reachable through the run head move from
  cited_commits_off_main to cited_commits_on_main; cd40648, the copy
  source, stays off main;
- unresolved_relative_paths and two historical-readings entries now say
  the cited paths resolve on main.

No record of the 16 is edited, and no command was run.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
Brings in #1097 (AGENTS.md) and #1098 (history merges) so the branch
is up to date for the required checks. No file of this branch changes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb
@amaybaum
amaybaum marked this pull request as ready for review November 4, 2026 16:38
@amaybaum
amaybaum merged commit 5425dd0 into main Nov 4, 2026
26 checks passed
@amaybaum
amaybaum deleted the evidence/a42-sources-20261104 branch November 4, 2026 16:39
amaybaum pushed a commit that referenced this pull request Nov 4, 2026
Brings in #1097 (AGENTS.md), #1098 (history merges) and #1099 (the
missing sources) so the branch is up to date for the required checks.
No file of this branch changes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013T6pfKuv5mi3MXtKjH2tZb

amaybaum commented Nov 4, 2026

Copy link
Copy Markdown
Owner Author

Merged. Merge commit 5425dd02d3062260a599353708ae9443935abfcb, pinned to head 6e86b0220d8f80b231764948c6807a174d285ef5.

Owner approval (amaybaum, Claude Code session chat, 2026-11-04): "I approve the normal merge of PR #1099 at exact SHA: 6e86b0220d8f80b231764948c6807a174d285ef5".

Immediately before the merge: the remote head was 6e86b022, the base was main e9cd64be, and GitHub reported it mergeable and clean. CI at the head had 25 checks succeed and 1 skipped by design, including all three required checks. No administrative bypass was used.

After the merge:

This landing preserves evidence and promotes no conclusion. The open items listed in the description remain with #1088.


Generated by Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants