From 862ce9e79e6c7f028b407d4d22ddc609795bdb30 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Tue, 20 Oct 2026 01:32:53 +0000 Subject: [PATCH] Rebind central-factor-packed pins so community-batch952 can admit sources The historical packed audit still pinned five files from before the #2194 and related tooling merges, so admit_sources() rejected current main and failed the shared r439 workflow. Refresh those pins and record that the replay receipt matches the current certificate, whose only change from the original digest is three embedded source hashes. Co-authored-by: unpaidmoon --- research/central-factor-packed/README.md | 30 ++++++++++++++++---- research/central-factor-packed/SOURCES.json | 10 +++---- research/central-factor-packed/VALIDATION.md | 11 ++++++- 3 files changed, 40 insertions(+), 11 deletions(-) diff --git a/research/central-factor-packed/README.md b/research/central-factor-packed/README.md index baac432520..911271a420 100644 --- a/research/central-factor-packed/README.md +++ b/research/central-factor-packed/README.md @@ -34,9 +34,15 @@ python3 -I -B research/central-factor-packed/verify.py Expected: `status` is `PASS_CENTRAL_FACTOR_PACKED`, scope is `complete_historical_audit`, `coefficients_checked` is `6760000`, and `receipt_sha256` is -`ffae0f0a22863718e3134a924592dcf4b05e919223323ba536c587c592bfe6a1`. -The printed duration varies. This receipt is byte-identical to the original -full audit; the benchmark/result wrapper is a new, explicitly separate record. +`2aabc7e3ed38a27902f88244b80bed579e8ec2158c6ad3253f1c654c79b299e0`. +The printed duration varies. This receipt is byte-identical to the current +`certificates/dyadic-central-factor.json`. That file differs from the +package's original receipt +`ffae0f0a22863718e3134a924592dcf4b05e919223323ba536c587c592bfe6a1` +only in three embedded `source_sha256` entries +(`scripts/exclusion_circuit.py`, `scripts/experiments/complex_centers.py`, +`scripts/experiments/disjoint_tensor.py`). `BENCHMARK.json` and +`VALIDATION.json` keep the pre-refresh measurements against `ffae0f0a`. ```sh python3 -I -B research/central-factor-packed/test_packed.py @@ -123,8 +129,22 @@ fresh-process benchmark pairs for each scope. ## Pins, integration and limitations `SOURCES.json` pins 43 inherited source, test, proof, fixture and upstream files -to the exact base, plus the adapter implementation. All inherited pins were -compared with that base's Git blobs. It includes the original upstream commit +plus the adapter implementation. The package base remains +`47481c89fd30a43f8f882eb4b391e89c29273fd0`. On 2026-10-20 five live pins were +refreshed to canonical main `bb4bccbf42844d2801487450727c2f63e10d1d0f`, because +`admit_sources()` otherwise rejects before the audit and turns +`.github/workflows/community-batch952.yml` red for every `research/r439-*` +pull request: + +| Path | Why the bytes moved | +|---|---| +| `certificates/dyadic-central-factor.json` | Embedded source hashes below; no coefficient field changed | +| `scripts/experiments/complex_centers.py` | #2194 packed `verify_factor` (`f0c58a2ca`) | +| `scripts/experiments/disjoint_tensor.py` | #2001 `frame_data` unions (`3e917c5cc`) | +| `scripts/exclusion_circuit.py` | #2001 embedding masks (`d7d8bfcb0`) | +| `scripts/shared_point_circuit.py` | #2054 frame-support cache (`ff889ccd7`); not a certificate source | + +The other 38 file pins are unchanged. It includes the original upstream commit `adc7f1241b42e322a6451854ab7e4b4c146bf78a`. Source admission happens before imports; the replay also rejects an unlisted imported repository script. diff --git a/research/central-factor-packed/SOURCES.json b/research/central-factor-packed/SOURCES.json index 6ec15fd1c9..fc396b23d4 100644 --- a/research/central-factor-packed/SOURCES.json +++ b/research/central-factor-packed/SOURCES.json @@ -6,7 +6,7 @@ "base_commit": "47481c89fd30a43f8f882eb4b391e89c29273fd0", "files": { "LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", - "certificates/dyadic-central-factor.json": "ffae0f0a22863718e3134a924592dcf4b05e919223323ba536c587c592bfe6a1", + "certificates/dyadic-central-factor.json": "2aabc7e3ed38a27902f88244b80bed579e8ec2158c6ad3253f1c654c79b299e0", "docs/research/dyadic-central-factor.md": "e97b1dfe11b5eaebacf3f910131e13bcad586ea5fc1af05db23c00ae0eea5c11", "notes/complex-compression.tex": "10312815290c7bb8ef4db153e30fba13c032bf17ccaf991a34f1aa6340405a0d", "notes/disjoint-tensor-compression.tex": "528cba56872313b8cd63ff11f523a399dfb3c85cae1a764110ae9d26ac9151ac", @@ -15,16 +15,16 @@ "scripts/binary_phase_frames.py": "4148cfa313cf050ed25296e8db36d35871520b8318fd086c7d1facf0c6af67d7", "scripts/certify.py": "2348d95008276c5d5764f7e028c3918e484582cd589bd4d9b82919161745e53e", "scripts/complex_compression.py": "9b6f758a5985ba5d9fdd726fe6556b3d3b4bd9d98aaf8ba06a7bb58093c4c504", - "scripts/exclusion_circuit.py": "b253f9d7318becda1c1f3b24e2287ed44a9c27fcea00cf9d531afb950d0457a0", - "scripts/experiments/complex_centers.py": "3744396587d729253d80980f6310b56e7bf0ea21b165bd178d0d6d4c49faf2e2", - "scripts/experiments/disjoint_tensor.py": "102dd59bf96033f96ba0dab4c2aba77b3a7a73b67b0f96929ff8b20a98b91cd8", + "scripts/exclusion_circuit.py": "f9fbcd6e85e442cbd0926ac0887414e20735b2dc923d2d5822c803ceb46726d3", + "scripts/experiments/complex_centers.py": "39cfcf869dc4a00dd30a1e91efb986074371621dad14b390cf1053f6aeea79bf", + "scripts/experiments/disjoint_tensor.py": "23763a4b6086fb3d19f9282fff5c118f53fa52e7a7f17da1bde990bd4cf8b6ac", "scripts/general_network_guard.py": "790a2064449afdbffd6dbd4adbcf4a28eaf41931ce7134e4a4e8766f3764270c", "scripts/incidence_rectangles.py": "5240fd33dcc3096f5685d10ca360186cad36b355a00d55686a4ea4449417d00e", "scripts/paired_exclusion_circuit.py": "8f05f04cf06217befd6d0ee0f2d7d0c5c5eb32cfab8c9a8ca7917fd6d620b7d2", "scripts/paired_network.py": "991223dc3c1374284c361ed017e42bf732dd971fa0bea2be2282cfb18257b3f7", "scripts/prepare_layers.py": "a6e2adc612f264b1c0e51d18ce6315de9ae5e2ae2420aa22e99a22d8bf304947", "scripts/search_network.py": "3a4faa5037d9b8e7ca5828afac193a96b6966a8b114f14937921795b24ec4f6a", - "scripts/shared_point_circuit.py": "c9bb7a5df92d260a4e3ad532b53e26936730d7c93f7facfb0784957c1e81c8ba", + "scripts/shared_point_circuit.py": "360d9bffc0f55315fe294789b72c71c79e0991524555b3a5f42a2ca504d7da95", "scripts/shared_point_network.py": "a85e7f0d8c42d6a27e3846308571ca324a1824ac5c2d59e4daa5c7673c33c697", "tests/test_complex_centers.py": "cae650330565f0a4465029ab8a645b14e6ed7b9be6442b0db1d0914beeaeb700", "tests/test_complex_compression.py": "e22e0a339fad8ce2f73312eb7e47a762360f8c1c78122cdd8e0dc85c5fbce99f", diff --git a/research/central-factor-packed/VALIDATION.md b/research/central-factor-packed/VALIDATION.md index 4ab5b7570a..bfce414bf4 100644 --- a/research/central-factor-packed/VALIDATION.md +++ b/research/central-factor-packed/VALIDATION.md @@ -19,11 +19,20 @@ are retained in `VALIDATION.json`; benchmark samples are in `BENCHMARK.json`. | `make selected-record-check` | PR890 exact value, original inventory and proof supplements pass | | Source admission | All 43 inherited pins match base Git objects and refreshed main | -Every complete replay's certificate SHA256 is +Every complete replay recorded in this October 13 receipt has certificate SHA256 `ffae0f0a22863718e3134a924592dcf4b05e919223323ba536c587c592bfe6a1`. Timing metadata belongs to the separate wrapper, not that certificate. The three benchmarked implementation hashes still match the submitted code. +A later pin refresh, 2026-10-20 on main `bb4bccbf42844d2801487450727c2f63e10d1d0f`, +rebinds five drifted files so admission matches the tree +`community-batch952.yml` checks. The replay on CPython 3.12.3 then reports +`receipt_sha256` +`2aabc7e3ed38a27902f88244b80bed579e8ec2158c6ad3253f1c654c79b299e0` +(1.901 s, `coefficients_checked` 6760000). That digest is the current +certificate. It differs from `ffae0f0a` only in three embedded source hashes. +`VALIDATION.json` and `BENCHMARK.json` are left as the October 13 record. + Controls cover structural/type violations, wrong signs, missing first/last gather columns, large signed scatter values, equivalent accepted factors, wrong scalar charges despite correct products, a deliberately faulty radix,