Repository navigation
fix(research): repin central-factor-packed sources to the integrated tree (batch952 red streak) - #4110
Open
kumagi wants to merge 1 commit into
Open
fix(research): repin central-factor-packed sources to the integrated tree (batch952 red streak)#4110kumagi wants to merge 1 commit into
kumagi wants to merge 1 commit into
Conversation
This was referenced Oct 20, 2026
Draft
Draft
Contributor
|
Independent scoped check of #4110 central-factor-packed SOURCES repin at Scoped pin update only. CLAIM. What passes:
Not covered: re-running the full central-factor-packed certification suite; new κ. James Reed (@rcfc-jreed), with substantial AI assistance (Claude, in Cursor). |
…tree The packed central-factor audit (batch batch952) refuses to start on the current tree: admit_sources() rejects at the first stale pin (reproduced independently; also reported in CrocSwap#1166). Five pinned files legitimately changed in main after the recorded base 47481c8 ("Record publication and merge confirmation for all eighteen PRs"), each via an identical-receipt tooling integration: - certificates/dyadic-central-factor.json (c22e42d, PR CrocSwap#2194 integration regenerated the certificate with current source hashes; the central_factor bytes are unchanged) - scripts/exclusion_circuit.py (d7d8bfc, d8029ee) - scripts/experiments/complex_centers.py (f0c58a2) - scripts/experiments/disjoint_tensor.py (3e917c5) - scripts/shared_point_circuit.py (ff889cc) verify.py compares its regenerated complete receipt byte-for-byte against the current ROOT/certificates/dyadic-central-factor.json, so the full audit could never pass with the stale set regardless of the workflow trigger. After the repin the complete historical audit passes on the unmodified current tree: PASS_CENTRAL_FACTOR_PACKED, receipt_sha256 2aabc7e3..., with adapter pins (packed.py, verify.py) untouched, and test_packed.py passes in both -B and -O -B modes.
kumagi
force-pushed
the
research/central-factor-pin-repair
branch
from
October 20, 2026 19:16
6195cef to
2d5da0e
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Repin the five stale source pins in
research/central-factor-packed/SOURCES.jsonto the current integrated tree, taking the first of the two fixes sketched in petalas's FINDING in #1166 ("stale source pin breakscommunity-batch952.yml…"). No trigger change: the workflow is meant to re-audit the current tree, and the verifier is built for exactly that.Inventory — independently reproduced and extended
admit_sources()rejects at the first stale pin, but the cert is not the only one. Full pin-vs-tree diff on basebb4bccbfshows five stalefilesentries (theadapter_filespins —packed.py,verify.py— are intact):47481c89)certificates/dyadic-central-factor.jsonffae0f0a22…2aabc7e3ed…c22e42de6(PR #2194 integration; regenerated the certificate with current source hashes)scripts/exclusion_circuit.pyb253f9d731…f9fbcd6e85…d7d8bfcb0,d8029ee05(identical-receipt tooling folds)scripts/experiments/complex_centers.py3744396587…39cfcf869d…f0c58a2ca("ship packed verify_factor into production")scripts/experiments/disjoint_tensor.py102dd59bf9…23763a4b60…3e917c5cc("4.80× faster … identical frame receipts")scripts/shared_point_circuit.pyc9bb7a5df9…360d9bffc0…ff889ccd7So the single-cert diagnosis was the first failure, not the whole set — the workflow would have stayed red after any cert-only repin.
Why repin (not just narrow the trigger)
verify.py's complete path requiresaudit.serializable(audit.certificate())to be byte-equal to the currentROOT/certificates/dyadic-central-factor.json— the certificate embeds current source hashes (the base cert keyedb253f9d731…/3744396587…/102dd59bf9…; the regenerated one keys the current hashes). With the recorded set pinned to the old bytes, the complete audit could never pass on the current tree under any trigger shape. The scientific content is unchanged:central_factorbytes are identical between the base and current certificates (certified_complex_saving,retained_kappa,upstream_commit adc7f124…all unchanged; onlysource_sha256of three scripts moved), and the audit re-validates that the current integrated engine still reproduces them.Validation (base
bb4bccbf, CPython 3.12.13)python3 -B research/central-factor-packed/verify.py→ValueError: Source pin mismatch: certificates/dyadic-central-factor.json.PASS_CENTRAL_FACTOR_PACKED,receipt_sha256 2aabc7e3ed…(byte-equality with the current certificate), 0.95 s,source_files 43, no unpinned-module rejection.test_packed.pypasses in both registered modes (-Band-O -B), as the workflow runs them.research/central-factor-packed/SOURCES.jsononly (5 hash values). No verifier, certificate, workflow or shared-script change.Scope
Pin-integrity bookkeeping, not a mathematical claim; nothing about #2194's arithmetic is re-examined beyond the fact that its regenerated certificate reproduces byte-for-byte from the current tree.
CI evidence on this PR (run
39482104398, rebased onto main12fa8c5c8)finitejob now reachesPASS_CENTRAL_FACTOR_PACKEDin theScoped bounds and historical verifierstep — the pin layer is fixed in the real workflow.Selected record and review ledger integritystep:ValueError: Changed hyperplane reviewed source: scripts/verify_hpe_lean_binding.py(see the ledger section above). That step runs after all package steps, so no package change can move it; it is the maintainer's reviewed-source drift decision.