Skip to content

Commit 925bcf0

Browse files
committed
docs(issue-84): add validated conversion bundle for maa submodule swap
Dry-ran convert-to-submodule.sh against a fresh maa-framework clone (exit 0): absolute-zero/ subtree -> submodule gitlink pinned at upstream 7da92b3; 232 files changed, 4 insertions, 36046 deletions. Ship the proven result as a ready-to-apply git bundle so a maa-framework- scoped session can land #84 via fast-forward without re-running the script: - issue-84-submodule.bundle (683B thin pack; git fetch + ff-merge), test-applied onto a pristine clone -> correct gitlink + .gitmodules - ARTIFACTS.md manifest; .gitattributes keeps the bundle byte-exact - HANDOFF + script updated with the proven diffstat and apply steps Rebased onto main (334c0ac) so the branch carries only this net delta, not the files already landed via the #135 squash-merge.
1 parent 334c0ac commit 925bcf0

5 files changed

Lines changed: 72 additions & 1 deletion

File tree

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Conversion artifact must be stored byte-exact (no EOL/encoding normalization).
2+
*.bundle binary
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
<!-- SPDX-License-Identifier: MPL-2.0 -->
2+
<!-- Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) <j.d.a.jewell@open.ac.uk> -->
3+
4+
# Prebuilt conversion artifacts — maa-framework #84
5+
6+
This was generated from a **dry-run of `convert-to-submodule.sh` against a fresh
7+
`hyperpolymath/maa-framework` clone** (base `main @ 9dbf56b`) and **test-applied onto a pristine
8+
clone** before being committed here. It lets a maa-framework-scoped session land the #84 submodule
9+
conversion without re-running the script.
10+
11+
## What the conversion commit does
12+
13+
`refactor(absolute-zero): convert vendored subtree to submodule pinned upstream (#84)`
14+
15+
- replaces the vendored `absolute-zero/` subtree (230 files) with a **submodule gitlink**
16+
`160000 commit 7da92b360deacb31d6fc8a2121da57ed6f47f4f9` (upstream `absolute-zero` main HEAD at audit)
17+
- adds `.gitmodules``https://github.com/hyperpolymath/absolute-zero.git`
18+
- net diffstat: **232 files changed, 4 insertions(+), 36046 deletions(-)**
19+
20+
## File
21+
22+
| Artifact | Size | Apply with | Tested |
23+
|---|---|---|---|
24+
| `issue-84-submodule.bundle` | 683 B | `git fetch <bundle> refs/heads/claude/issue-84-submodule-dryrun && git merge --ff-only FETCH_HEAD` | ✓ applied onto fresh `main @ 9dbf56b`; gitlink + `.gitmodules` verified |
25+
26+
It's a 683-byte thin pack (the deletions need no new objects) and applies as a fast-forward onto maa
27+
`main @ 9dbf56b` (the ref it `requires`). A full `git am` patch was deliberately omitted to keep this
28+
docs folder free of large blobs; if you prefer `git am`, regenerate it in the maa checkout with
29+
`git format-patch -1 <tip>` after fetching the bundle, or just re-run `convert-to-submodule.sh`.
30+
31+
## After applying (still required — needs write access to maa-framework)
32+
33+
1. `git submodule update --init --recursive`
34+
2. Wire `git submodule update --init --recursive` into CI/checkout; fix any `Justfile`/CI/build paths
35+
that referenced `absolute-zero/…`.
36+
3. Keep maa-framework's repo-root `docs/proof-debt.md` (PR #82); note the 150 markers' canonical home
37+
is now the submodule.
38+
4. If branch protection requires signed commits, re-commit with your signer (the artifact commit is
39+
unsigned — the dry-run's signing server rejected an out-of-scope `/tmp` repo with a 400).
40+
5. Open a **draft PR**; post the §5 comment from `ISSUE-84-RESOLUTION.md` on #84 and close it.
41+
42+
## Provenance / re-verify
43+
44+
- Base: `maa-framework` main `9dbf56b53cbbd600b9de589a85521645eca18c2f`
45+
- Submodule pin: `absolute-zero` `7da92b360deacb31d6fc8a2121da57ed6f47f4f9`
46+
- Verify the bundle before trusting it: `git bundle verify issue-84-submodule.bundle`

docs/investigations/maa-framework-issue-84/HANDOFF-maa-framework-session.md

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,24 @@ Authoritative findings — maa@9dbf56b subtree vs upstream `absolute-zero`@7da92
2121
(EchoBridge*.agda, ECHIDNA_*, examples/go, proofs/coq/quantum/) are now byte-identical to upstream
2222
(sha256-verified). maa is simply behind.
2323

24-
DO THIS:
24+
DRY-RUN ALREADY PROVEN (2026-05-30): the conversion was executed against a fresh maa clone and the
25+
guarded script exited 0. Result commit: `absolute-zero` becomes a gitlink `160000 commit 7da92b3…`,
26+
`.gitmodules` added, **232 files changed, 4 insertions(+), 36046 deletions(-)**. The safety guard
27+
confirmed `jekyll-gh-pages.yml` is the ONLY maa-only path before deleting anything. All proof files
28+
(incl. the two new `common/` modules + EchoBridge/quantum) are restored via the submodule. So you can
29+
trust the mechanics; this handoff just needs the WRITE access this analysis session lacked.
30+
31+
FASTEST PATH — apply the prebuilt, pre-tested bundle (recommended), then do steps 4–5 only.
32+
From a maa checkout on a fresh branch (bundle is 683 B, proven to fast-forward onto main @ 9dbf56b):
33+
git fetch docs/investigations/maa-framework-issue-84/issue-84-submodule.bundle \
34+
refs/heads/claude/issue-84-submodule-dryrun
35+
git merge --ff-only FETCH_HEAD
36+
git submodule update --init --recursive
37+
NOTE: if your environment signs commits, the bundle's commit is unsigned — re-commit with your signer
38+
if branch protection requires it (the dry-run hit a signing-server 400 in /tmp; --no-gpg-sign was used
39+
there only). Then jump to step 4.
40+
41+
DO THIS (from scratch — equivalent to the artifact above):
2542
1. Re-verify (gates everything):
2643
git clone https://github.com/hyperpolymath/absolute-zero /tmp/az
2744
git -C /tmp/az checkout 7da92b360deacb31d6fc8a2121da57ed6f47f4f9

docs/investigations/maa-framework-issue-84/convert-to-submodule.sh

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,12 @@
1010
# * 15 differing files: 6 proof files (ALL upstream-ahead: 0 maa-only theorems/proofs, 0 sorry)
1111
# + 9 stale vendored-infra files
1212
# * 2 files only upstream: proofs/coq/common/{PhysicsConstants,StatMechBasis}.v (refactor maa predates)
13+
#
14+
# DRY-RUN VERIFIED 2026-05-30: this script ran exit-0 against a fresh maa clone; result =
15+
# 232 files changed, 4 insertions(+), 36046 deletions(-); absolute-zero -> gitlink 160000 7da92b3.
16+
# A prebuilt, pre-tested artifact of that result lives alongside this script (see ARTIFACTS.md):
17+
# issue-84-submodule.bundle (683 B; git fetch + git merge --ff-only).
18+
# You can apply that directly instead of running this script; this remains the from-scratch path.
1319
# => no maa-only proof work anywhere; the swap loses nothing but the inert CI file.
1420
set -euo pipefail
1521

Binary file not shown.

0 commit comments

Comments
 (0)