Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
150 changes: 150 additions & 0 deletions research/retained-bit-supplier-binding/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,150 @@
# Bind the retained PR589 supplier identity

**Supplemental source-binding guard and finite audit; no new kappa.**

[PR1277](https://github.com/CrocSwap/integer-mult-bounds/pull/1277) identifies a
remaining question: the PR799 assembly can name a false `bit_supplier` commit
and Git blob while retaining its accepted numerical result. Its primary finding
and suggested ancestry-equality repair belong to Sagar Thakrar. This package
answers the separate supplier-identity question with an opt-in executable guard.
It changes no existing file or production acceptance predicate.

All four committed PR741/PR799/PR1042/PR1094 assemblies and the archived PR589
bit result pass. The guard independently connects the cited source to its
actual word and deficit, rather than treating a successful endpoint comparison
as proof of provenance. Normal verification is read-only.

## Exact boundary and evidence

The trusted historical selection is main
`bce54fb3f895cbe5cd4c0eb477c3afeed100190f`; its reviewed PR589 head is
`a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46`.
[SOURCES.json](SOURCES.json) pins every external input and the governing source
code. The guard imports no supplier, frame checker or moment engine.

1. **Git provenance.** The original source uses `research/e8-bit-p111/`.
Main retains it as `research/e8-bit-p111-tuned/`. The EXPECTED record and
compressed word are byte-identical at the exact PR589 head, the integration
commit `b3eb785ac5b4b1ca2beea0f80db078a505626a90`, and the pinned live inputs.
Git confirms that PR589 is a direct parent of that integration commit and
that the integration precedes this package's base. The original-to-retained
rename is checked explicitly; the assembly's retained path is not assumed to
have existed on the original contributor branch.
2. **Word-to-deficit binding.** Following the source format's D/A frame
assignments up to COPY and performing separately implemented rational row
elimination gives nine ranks `[7,7,7,7,7,7,7,7,7]`, hence decoder constant 63.
With the retained nine-stage, 32-replica layout, `K=4`, `M=64`, `v=111`,
`W=28416`, the full recorded profile has rank mass 1808352. Both sides give
`MW - mass = T(2Kv - L*cst) = 10272`.
3. **Consumer guard.** Every assembly must name that exact source commit,
integration commit, repository, PR, retained path and EXPECTED blob, and the
independently derived word/deficit. Its bit input digest, endpoint, decimal
and bad-residue surcharge must agree with that source. A supplied bit result
must preserve the entire priced profile, inventory and recorded bit budget.

The EXPECTED Git blob is `e293ddc557742637f9f679f083a1a282d87b1b13`; the
compressed word blob is `85a4499bf9e4911a705d50567a2c2ef6cf23739a`.
The decompressed word SHA256 is
`5642fd0e35a1acc11acff8d0c08350c1617e95f310d4d35ad63a651f9eeeba0b`.
These are source pins, not hashes of newly regenerated gzip containers.

[RESULT.json](RESULT.json) is deterministic. Ten test groups include 23
rejection fixtures: six false provenance fields with unchanged endpoint and
kappa; a different real commit containing the identical EXPECTED blob; a
compensating `[6,8]` COPY-rank substitution preserving total rank 63; an actual
COPY-frame change; profile mass/type faults; endpoint/digest/surcharge/deficit
faults; bit-result faults including a rank-mass-preserving histogram change;
the CLI zeroed-source fixture; and corrupted relocated source bytes.

The positive tests cover the four actual assemblies, the actual bit result,
and physically relocated inputs using the same Git object database. Checks run
under `-I -O -B`; this guard does not rely on Python assertions.

## Reproduce and use

Python 3.12 or later, Git, full repository history and no Python dependencies:

```sh
python3 scripts/research_package.py --package research/retained-bit-supplier-binding --check-only
python3.12 scripts/research_package.py --package research/retained-bit-supplier-binding
```

Expected: `PASS_RETAINED_PR589_SUPPLIER_BINDING assemblies=4 deficit=10272`,
ten passing tests, and `PASS_REGISTERED_RESEARCH_PACKAGE`.

After a replay that retains **this exact PR589 supplier**, additionally guard
its actual outputs:

```sh
python3 -I -O -B research/retained-bit-supplier-binding/verify.py \
--assembly /absolute/replay/global/ASSEMBLY.json \
--bit-result /absolute/replay/ancestor/bit/RESULT9.json
```

Paths are explicit; the guard never follows a receipt's machine-local ancestor
path. A different word or source version requires a new contract and pins.
`--write /absolute/receipt.json` explicitly writes a freshly checked receipt;
otherwise the default fixture run also compares against committed RESULT.json.

## What this establishes, and what remains

This adds the executable supplier-identity check requested in PR1277; it does
not replace PR1277's broader equality-to-the-recorded-ancestry repair. The
earlier finding that a zeroed supplier passes `check_selected` is credited to
PR1277 and was not freshly replayed here. This package freshly tests rejection
by the new guard, including its real CLI. It does not claim that the unchanged
production pipeline now rejects the fixture.

The frame trace is used only to measure COPY ranks, not to establish frame
legality, scalar restoration or H1-H5. The recorded global profile and bit
budget remain inputs. No native/scalar/phase/emitted-controller replay,
orthogonal-chart proof, cold supplier rebuild, certified moment endpoint,
complex-side verification, all-size/compiler, hosting, precision/tape,
exact-recovery or analytic-transfer proof is performed. No full multiplication
theorem, runtime improvement, selected-frontier change or execution
authentication is claimed.

## Task and overlap

Card `supplier-boundary-audit`, refined to the PR589 identity boundary; chooser
nonce `78116c731f9a59be32e8cd1544265921`, adversarial-audit track, priority
revision 2. [TASK.json](TASK.json) records the scope, method, domain and stop rule.
The card's historical owner audit and current `research_baseline.py` both pass
as orientation controls; they are not new results.

An entry snapshot covered 806 open PRs including drafts, with complete PR
pagination. The repository overlap helper searched their titles/bodies and
local top-level package notes/ledger. Discussions' start-here, listing and live
handoff thread were read, but complete Discussion pagination was unavailable.
The browser was signed out and the GitHub connector exposes no Discussion-write
tool, so the claim is local. No absence-of-overlap or novelty proof is asserted.
Final refresh details are recorded in TASK.json and the PR.

Nearest work: PR1277 at `02d279515ff1fc468ab99a19d89461f1b6391507` owns the
finding and supplies the explicit next question. PR1307 audits the selected
bit allocation's physical projectors; PR1312 audits complex-owner X2 coverage.
Neither is an input here. This package adds source-to-Git and word-to-deficit
enforcement, not another owner-window or projector census.

## Open next questions

Should a future unpinned replay wrapper require both this guard and PR1277's
ancestry equality? This would protect the cited supplier identity as well as
the particular retained ancestry receipt. The smallest useful step is to apply
both in a successor wrapper, check PR1277's false-supplier/timing variants and
then run a complete cold replay. Maintainer acceptance and versioned source and
coverage pins block adoption; changing frozen supplements is outside this
contribution. The structured question is in TASK.json.

## Credit

Sagar Thakrar / PR1277 for the finding and next question; DreamingOfClouds /
PR589 and eumemic / PR555 for the word and retained checker/hosting lineage;
PR545's rank-mass identity; Douglas Colkitt for the integration and composition
bindings; Rohan Arun, Jeremy Kothe, Hao Yan and the selected complex lineage;
nightangelflowerwin-ops / PR865 and Lucas Steinmetz / PR838 for the replay
coverage lineage. Existing source notices and licenses are retained.

Prepared by Arham Tahir with substantial OpenAI Codex assistance in research,
implementation, verification and writing. No subagents or independent human
peer review. New material is Apache-2.0.
47 changes: 47 additions & 0 deletions research/retained-bit-supplier-binding/RESULT.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
{
"status": "PASS_RETAINED_PR589_SUPPLIER_BINDING",
"base_commit": "bce54fb3f895cbe5cd4c0eb477c3afeed100190f",
"supplier": {
"pr": 589,
"repository": "CrocSwap/integer-mult-bounds",
"commit": "a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46",
"merged_as": "b3eb785ac5b4b1ca2beea0f80db078a505626a90",
"path": "research/e8-bit-p111-tuned/tune/EXPECTED.json",
"git_blob_sha1": "e293ddc557742637f9f679f083a1a282d87b1b13",
"word": {
"v": 111,
"decoder_constant": 63,
"copy_ranks": [
7,
7,
7,
7,
7,
7,
7,
7,
7
]
},
"derived_deficit": 10272,
"deficit_formula": "T(2Kv-L*cst), L=9 T=32 K=4 M=64"
},
"git_objects": {
"tune/EXPECTED.json": "e293ddc557742637f9f679f083a1a282d87b1b13",
"tune/bitE8mut-p111-tuned.json.gz": "85a4499bf9e4911a705d50567a2c2ef6cf23739a"
},
"record_sha256": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4",
"word_content_sha256": "5642fd0e35a1acc11acff8d0c08350c1617e95f310d4d35ad63a651f9eeeba0b",
"assemblies_checked": 4,
"bit_results_checked": 1,
"assembly_sha256": [
"21e2df9286542c9e2786f3720d0f13de0d0a7a982761ebe2184f8f7f811c774d",
"65c7648a8edaeaf4e0b8de3e21eeda94fba124d0935010d45ac9f76375b72cec",
"093f35445812ea96fe1bfe6a3af7d769cb7f274e08f4fb30f71a17ed1161e54e",
"1122cb3a575f8c788345fc1bf4c108ac7c3250fb81a5988671f5eb04b3ab3045"
],
"bit_result_sha256": "28795393651ef4fbbc6232eb2b32f7b39b91fbd5ea6d2315583f350714698055",
"live": 28416,
"rank_mass": 1808352,
"scope": "Pinned PR589 source identity, COPY-frame ranks and profile deficit; no scalar/phase/native replay, certified moment or all-size theorem."
}
84 changes: 84 additions & 0 deletions research/retained-bit-supplier-binding/SOURCES.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
{
"schema_version": 1,
"base_commit": "bce54fb3f895cbe5cd4c0eb477c3afeed100190f",
"files": [
{
"path": "certificates/selected-result.json",
"usage": "provenance",
"git_blob": "ae6a99f28aa468649eb66a361e764d769363bf11",
"sha256": "10b9e340fd8e354a37a0c4813c90e5de1dd42044b5f6aca4a3fc5a42b685fa32"
},
{
"path": "docs/research/agent-task-catalog.json",
"usage": "provenance",
"git_blob": "c05fafaa25ba95b2d5af86b1800427198e3d20eb",
"sha256": "89b5928bc92c81e2647b6d702a7ad85a6795b8f44e2eb267b2ff3145d8f2b2ce"
},
{
"path": "research/community-frontier1042-audit/ASSEMBLY.json",
"usage": "input",
"git_blob": "4e308dc23da97373d66e5d8d4a68b0661caea8e9",
"sha256": "093f35445812ea96fe1bfe6a3af7d769cb7f274e08f4fb30f71a17ed1161e54e"
},
{
"path": "research/community-frontier1094-audit/ASSEMBLY.json",
"usage": "input",
"git_blob": "5fd676df060f3b450782fdf5ff5f6beb63a5eeb0",
"sha256": "1122cb3a575f8c788345fc1bf4c108ac7c3250fb81a5988671f5eb04b3ab3045"
},
{
"path": "research/community-frontier741-audit/ASSEMBLY.json",
"usage": "input",
"git_blob": "d2a594a6fdb33907f8e6760aa00fd4650535930f",
"sha256": "21e2df9286542c9e2786f3720d0f13de0d0a7a982761ebe2184f8f7f811c774d"
},
{
"path": "research/community-frontier741-audit/bit/RESULT9.json",
"usage": "input",
"git_blob": "d9f15563217bce0d348a63d46e930d0ae997e211",
"sha256": "28795393651ef4fbbc6232eb2b32f7b39b91fbd5ea6d2315583f350714698055"
},
{
"path": "research/community-frontier799-audit/ASSEMBLY.json",
"usage": "input",
"git_blob": "a04bfd932a15196fe8e2418eae912ea745152593",
"sha256": "65c7648a8edaeaf4e0b8de3e21eeda94fba124d0935010d45ac9f76375b72cec"
},
{
"path": "research/e8-bit-p111-tuned/code/xcheck_p.py",
"usage": "input",
"git_blob": "184f5dcf94a486cc7db91ca4db5865916bf26009",
"sha256": "af3decc877e27c00001cf56f50c6c09566e8e101297ab34c7860aed96a06d80e"
},
{
"path": "research/e8-bit-p111-tuned/tune/EXPECTED.json",
"usage": "input",
"git_blob": "e293ddc557742637f9f679f083a1a282d87b1b13",
"sha256": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4"
},
{
"path": "research/e8-bit-p111-tuned/tune/bitE8mut-p111-tuned.json.gz",
"usage": "input",
"git_blob": "85a4499bf9e4911a705d50567a2c2ef6cf23739a",
"sha256": "e3e301e62bc2b41dbf1ceac0acf3d35824ebeab1848c5a2142d4577b109da52f"
},
{
"path": "research/gauge44-frames-x/code/assemble.py",
"usage": "input",
"git_blob": "8cee90b50e238bd1519a7aeb7395f62d277b8ae4",
"sha256": "4c270a996b380ab712f72b81173ab24f1c73203a33578f261bfbaa7e67d75aec"
},
{
"path": "scripts/verify_frontier741_bindings.py",
"usage": "input",
"git_blob": "dcb4029aeaafe60f4d852a1975b01e02438595fc",
"sha256": "eff455167e2fd0bc9a67d35241d0e69d8edc58f3a23e776dcfe8f500ca8e8d67"
},
{
"path": "scripts/verify_frontier799_bindings.py",
"usage": "input",
"git_blob": "ff902406c7acc760cb3ab5c9cf732768bdde1620",
"sha256": "43897b3c99212d6134870898a1840f32898aa1b3679b299e654901568ad7e19b"
}
]
}
Loading