Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
6ed4b82
Prepare independent EPAC packaging and exact artifact verification
erinepshovel-code Sep 12, 2026
feef35a
Bind graduation preparation report to package implementation
erinepshovel-code Sep 12, 2026
6b39248
Preserve continued forge research in the independent EPAC package
erinepshovel-code Sep 12, 2026
9e36242
Record preserved research and current graduation evidence
erinepshovel-code Sep 12, 2026
340b8e4
Retain uv source-build metadata in installed inventories
erinepshovel-code Sep 12, 2026
259b5b9
Repair preserved research claims and exact artifact receipts
erinepshovel-code Sep 12, 2026
57b2bd3
Bind replay evidence to archived verifier and input bytes
erinepshovel-code Sep 12, 2026
7b55cba
Bind accepted UCNS evidence source and retain private package replay …
erinepshovel-code Sep 12, 2026
6443982
Report accepted UCNS pin and remaining EPAC release gates
erinepshovel-code Sep 12, 2026
e81120d
Close structural evidence and transitive runtime provenance gaps
erinepshovel-code Sep 12, 2026
f311eb3
Report repaired evidence gates and expanded artifact checks
erinepshovel-code Sep 12, 2026
208d067
Preserve unresolved semantics and propagate failed audit prerequisites
erinepshovel-code Sep 12, 2026
6f71595
Report aggregate evidence repairs and remaining graduation gates
erinepshovel-code Sep 12, 2026
b158996
Reject missing evidence and preserve direct receipt spiral data
erinepshovel-code Sep 12, 2026
ff88d3d
Record complete-population repair evidence
erinepshovel-code Sep 12, 2026
c495f31
Separate closure status and complete the operation inventory
erinepshovel-code Sep 12, 2026
82ab9e5
Record independent closure and complete-inventory evidence
erinepshovel-code Sep 12, 2026
688e1b8
Make transition predictions independent and preserve constituent evid…
erinepshovel-code Sep 12, 2026
fbee027
Record source-only prediction repair evidence
erinepshovel-code Sep 12, 2026
4d03a5d
Expect rejection for undeclared attachment-count inputs
erinepshovel-code Sep 12, 2026
0fde031
Record molecular validation of fail-closed input handling
erinepshovel-code Sep 12, 2026
75e5afd
Inventory public re-exports and preserve element compatibility status
erinepshovel-code Sep 12, 2026
73fa812
Record public inventory and compatibility review evidence
erinepshovel-code Sep 12, 2026
5845bfd
Keep recurrence, closure, and cached comparison evidence bounded
erinepshovel-code Sep 12, 2026
7d5ff41
Record recurrence and comparison evidence review repairs
erinepshovel-code Sep 12, 2026
e90d1b5
Isolate cached construction and audit evidence from callers
erinepshovel-code Sep 12, 2026
50b6e8b
Record independent cached-evidence verification
erinepshovel-code Sep 12, 2026
f20a478
Bind replay inputs to Git and keep quantified evidence in scope
erinepshovel-code Sep 12, 2026
ce03cde
Record replay input binding and evidence scope repairs
erinepshovel-code Sep 12, 2026
fabbbb6
Align current receipts and constrain replay installer metadata
erinepshovel-code Sep 12, 2026
00afff0
Record receipt synchronization and installer metadata checks
erinepshovel-code Sep 12, 2026
d7b8f81
Derive complete release contracts and preserve unmapped operation unc…
erinepshovel-code Sep 12, 2026
caadc10
Record complete release contract and bounded operation audit evidence
erinepshovel-code Sep 12, 2026
5e29ccb
Preserve unmeasured operation effects and verify complete release che…
erinepshovel-code Sep 12, 2026
625e537
Record scoped audit and release-gate repair evidence
erinepshovel-code Sep 12, 2026
914fc6b
License EPAC under MPL-2.0 and qualify normalized candidate bytes
erinepshovel-code Sep 12, 2026
8d865fd
Record MPL-2.0 selection and licensed qualification boundary
erinepshovel-code Sep 12, 2026
c8d51a7
Reconcile the tree-equivalent squashed preparation baseline
erinepshovel-code Sep 12, 2026
949cb1c
Build CI release candidates outside the source tree
erinepshovel-code Sep 12, 2026
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
15 changes: 8 additions & 7 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,18 +27,19 @@ jobs:
run: |
python -m pip install uv==0.11.18
uv sync --locked --python python --extra test --extra build
- name: Build package candidates
- name: Build normalized licensed release candidate
env:
EXPECTED_SOURCE_COMMIT: ${{ github.event.pull_request.head.sha || github.sha }}
run: |
test -z "$(git status --porcelain --untracked-files=all)"
test "$(git rev-parse HEAD)" = "$EXPECTED_SOURCE_COMMIT"
mkdir /tmp/epac-build-source
git archive "$EXPECTED_SOURCE_COMMIT" | tar -x -C /tmp/epac-build-source
.venv/bin/python -m build --outdir "$PWD/dist" /tmp/epac-build-source
.venv/bin/python -m twine check dist/*
uv python install 3.11.15
uv venv --python 3.11.15 /tmp/epac-release-builder
uv pip install --python /tmp/epac-release-builder/bin/python -r requirements-build.txt
/tmp/epac-release-builder/bin/python tools/build_release.py /tmp/epac-release-candidate
.venv/bin/python -m twine check /tmp/epac-release-candidate/*.whl /tmp/epac-release-candidate/*.tar.gz
- name: Replay installed wheel and source artifact
run: bash tools/replay_distributions.sh . dist /tmp/epac-replay python
run: bash tools/replay_distributions.sh . /tmp/epac-release-candidate /tmp/epac-replay python
- name: Verify work-graph identity
run: |
python - <<'PY'
Expand Down Expand Up @@ -72,7 +73,7 @@ jobs:
raise SystemExit('source identity changed during qualification')
output = Path('/tmp/epac-ci-evidence')
output.mkdir()
shutil.copytree('dist', output / 'artifacts')
shutil.copytree('/tmp/epac-release-candidate', output / 'artifacts')
replay = output / 'replay'
replay.mkdir()
for path in Path('/tmp/epac-replay').iterdir():
Expand Down
2 changes: 1 addition & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,4 @@ Before work:
7. include runnable usage guidance in code and research artifacts;
8. unknown authority, mapping, or evidence remains `hmmm`.

Current graduation boundary: this repository is extracted and its package is being qualified. Clean packaging, owner-selected licensing, exact candidate stack verification, stable release, and reconsumption remain separate evidence requirements.
Current graduation boundary: this repository is extracted and its package is being qualified. MPL-2.0 licensing is recorded from the owner’s weak-copyleft instruction. Exact licensed candidate qualification, stack verification, stable release, and reconsumption remain separate evidence requirements.
373 changes: 373 additions & 0 deletions LICENSE

Large diffs are not rendered by default.

9 changes: 0 additions & 9 deletions LICENSE_STATUS.md

This file was deleted.

2 changes: 1 addition & 1 deletion MANIFEST.in
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
include AGENTS.md LICENSE LICENSE_STATUS.md uv.lock
include AGENTS.md LICENSE uv.lock
include .gitignore
recursive-include .github *
recursive-include tools *.py *.sh
Expand Down
19 changes: 14 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,23 +83,23 @@ receipt = construct_public_gonol(source_id="example:oxygen",
assert replay_public_gonol(receipt).receipt_digest == receipt.receipt_digest
```

GitHub release assets are the selected distribution surface. Once the owner
records the license, install `requirements-build.txt` and run
GitHub release assets are the selected distribution surface. EPAC is licensed
under MPL-2.0. Install `requirements-build.txt` and run
`python tools/build_release.py /tmp/epac-candidate` from a clean commit using
uv-managed CPython 3.11.15 and `requirements-build.txt`. The builder enforces that Python implementation/version plus
zlib 1.3.1 at compile time and runtime and records both identities. Test
those exact hashes in both the clean installation and stack before publishing.
Download the published assets and verify `SHA256SUMS` before reconsumption.
`LICENSE_STATUS.md` retains the current license gate; package builds alone do
not grant redistribution rights or complete graduation.
The release includes the MPL-2.0 license and the complete source distribution.
Source is also available from https://github.com/The-Interdependency/epac at the
commit bound by the release manifest. Package tests do not complete graduation.

Do not treat successful execution as empirical validation. Constructors establish reproducible declared structures; comparison tests determine the standing of the claims they actually test.

## hmmm

- exact candidate/forge verification receipt
- distribution surface and first immutable release artifact
- license/distribution-rights selection for this independent repository
- clean package/install dependency contract for UCNS
- downstream forge reconsumption and authority-transition receipt
- whether standing-wave language earns a stronger domain claim after explicit external-physics comparison
Expand Down Expand Up @@ -128,3 +128,12 @@ python -m epac_viz --help
```

Release qualification requires an owner-selected `LICENSE`, its explicit SPDX expression and `license-files = ["LICENSE"]` in `pyproject.toml`, and removal of the unresolved `LICENSE_STATUS.md` (its history remains in Git). Adding license text alongside a status that still prohibits publication does not pass the gate. The replay shell bootstraps the hash-pinned Python 3.10 TOML parser from `requirements-replay.txt`, then validates all source-derived core metadata and every optional release-manifest field before archived code runs. To call `tools/verify_replay_inputs.py` directly on Python 3.10, first install that requirements file with `uv pip install --python /path/to/python --no-deps --require-hashes -r requirements-replay.txt`.

## License

EPAC source code is subject to the Mozilla Public License, version 2.0
(SPDX: `MPL-2.0`); see [LICENSE](LICENSE). Changes to MPL-covered files remain
subject to that license when distributed. Dependencies retain their own rights
and licensing status; this selection grants no rights to UCNS or other upstream
projects. [License provenance](docs/license-selection.json) records the owner
instruction and its resolution using the organization’s weak-copyleft convention.
12 changes: 11 additions & 1 deletion docs/PROVENANCE.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ subatomic coverage, and spiral visualization remain research with their original
scoped standing. Existing immutable input checks and installed resource loading
are retained. This source handoff does not complete graduation or transfer
scientific, theorem, proof, measurement, or empirical validity. Final clean-package
qualification and license selection remain pending.
qualification remained pending at that checkpoint. The subsequent MPL-2.0 selection is recorded below.

The carried binding-energy commensurability prose overstated its own recorded outcomes. Its current receipt now describes a tested hypothesis and explicitly retains the failures from O-16 through Ca-40; the prior prose-bound receipt is preserved under `subatomic/receipts/history/`. No numerical outcome or empirical standing was promoted. Standing partitions now compare the same frozen preregistered formulas on both sides; later experimental additions do not make the SURVIVED branch unreachable.

Expand Down Expand Up @@ -87,3 +87,13 @@ The private replay input gate permits only the declared pure-Python wheel metada
Full core metadata is derived from the bound `pyproject.toml`, including dependency and extra declarations, Python requirements and description. Complete release manifests are checked against source, commit time, the pinned builder runtime/compressor/toolchain, license and UCNS lock bytes, artifact hashes and fixed candidate/non-transfer dispositions. The builder and replay gate execute the Git-bound release-contract helper bytes directly, avoiding cached helper bytecode. Final license qualification also removes the unresolved status and records an explicit SPDX expression and sole LICENSE file. Ten formerly proxied argument-dependent operation effects are now unknown; only the three actually called structural readouts contribute measured omitted-operation effects.

Release manifests reject duplicate JSON keys at every object depth. Licensed replay requires exactly the wheel, sdist, manifest and canonical SHA256SUMS bytes; private replay accepts exactly the wheel and sdist. The checksum file is recomputed during both input and final checks. Known structural observers remain boundary-relevant omissions even when their individual quotient effects have no measured mapping. The minimal-refinement search uses only the three actually invoked readouts and finds two singleton refinements; full declared-surface coverage remains hmmm.

The owner instructed “epac is weak copyleft”. This is resolved as MPL-2.0 using
the organization’s existing skill-lib/metapat/edcm convention, with the
interpretation disclosed before execution. `docs/license-selection.json` binds
the unmodified official license text. EPAC grants no upstream license rights
and no scientific standing through this selection. Licensed CI uses managed
CPython 3.11.15 and the pinned release builder for all matrix jobs; each runtime
replays the resulting normalized wheel/sdist and preserves all four release
assets. Independent acceptance compares every matrix asset to the same locally
reproduced candidate before publication.
4 changes: 2 additions & 2 deletions docs/forge-handoff-20260912.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"files": [
{
"forge_sha256": "f1a4639327828f6bc5ca39a3a1c441d5fc3f3b60823e646d149920e225554c11",
"handoff_sha256": "a2e8393466d9330166422492eab20f91d6dd7cb9b0deddd35b7544d23704a359",
"handoff_sha256": "3f383f6edca1a8fce5033e4165405122a2c17b2110d37e4a2999f900904ccbdc",
"source_path": "research/epac/README.md",
"target_path": "README.md"
},
Expand Down Expand Up @@ -329,7 +329,7 @@
"status": "passed",
"version": 1
},
"final_dependency_pin_and_clean_package_matrix": "The four caadc review findings are repaired. Known structural observers remain boundary-relevant omissions; only their unmapped quotient effects are unknown. The inventory has 136 callable addresses, 39 ambiguous, 58 known boundary-relevant, 14 known omissions and 3 measured distinguishing readouts. Eleven unmeasured effects are excluded from the three-candidate minimal-refinement search, which finds two singleton refinements of the 21-class partition. Dependent tests, capstone prose and result documents now agree. Duplicate manifest keys reject recursively. Release replay requires exactly four assets and byte-exact canonical SHA256SUMS for wheel, sdist and manifest; private replay requires exactly two package assets. Twenty-one targeted tests pass in 77.51 seconds, including 17 mismatched-input scenarios and 23 invalid manifest/license/checksum cases. Four gate tests also pass on Python 3.10.20 in 37.77 seconds. Real private build/Twine/source and independent gates pass at 5e29ccbf6f483fb6029219edbda8ead8b7c8fd36 (189 Git/196 archived/64 wheel files). Synthetic license fixture builds byte-identically across umasks022/077; it grants no actual license or release qualification. The complete 209-test matrix and exact-head review remain pending. Owner license choice is unanswered; stable publication and authority transfer remain incomplete.",
"final_dependency_pin_and_clean_package_matrix": "MPL-2.0 is recorded from the owner\u2019s instruction that EPAC is weak copyleft, resolved using the existing organization convention and disclosed before execution. The unmodified official license, explicit project SPDX/license-files metadata, and source-selection provenance replace the unresolved license status. CI now builds normalized four-asset candidates with managed CPython3.11.15 and the exact release toolchain before wheel/sdist replay on Python3.10/3.11/3.12. Every matrix asset must match the independently reproduced local candidate before publication. Preceding625e537 passed exact review, six private209-test installs with no skips and private Stack consumption of all nine molecules and14 FALSIFIED standings; acceptance SHA2566e60f2bb969a331ba70f295fbd66c25146b0922ed9fe075629d48dae5f132b88. That evidence is historical after license/build-pipeline changes. Licensed exact-head review, reproducibility, all six same-candidate installs, prepublication Stack verification, immutable publication, public reconsumption and the authority transition remain pending. No upstream license or scientific authority transfers.",
"post_review_comparison": {
"elapsed_seconds": 420.43129057303304,
"report_sha256": "7b4f8d3ebec78210086a346b3198bba191b36a94306796bf5cdd4b694388a0f6",
Expand Down
18 changes: 10 additions & 8 deletions docs/graduation.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@
"mode": "execution",
"authorization": {
"external_mutation": "authorized",
"authority_transfer": "authorized; not-yet-complete"
"authority_transfer": "authorized; not-yet-complete",
"license_instruction": "weak copyleft; resolved as MPL-2.0 using organization convention"
},
"forge": {
"repository": "The-Interdependency/stack",
Expand Down Expand Up @@ -50,7 +51,7 @@
"public_api": "pass",
"independent_tests": "pass",
"clean_build_install": "hmmm",
"license_distribution_rights": "fail",
"license_distribution_rights": "pass",
"release_ownership_authority": "pass",
"provenance_preserved": "pass",
"exact_candidate_forge_verification": "hmmm",
Expand All @@ -59,7 +60,6 @@
},
"transition_receipt": "hmmm",
"hmmm": [
"repository license not selected by owner",
"final exact candidate build/install matrix remains pending",
"stack has not reconsumed a released immutable EPAC artifact",
"final pinned package artifacts require a fresh clean installation matrix"
Expand All @@ -72,21 +72,23 @@
"final_pinned_artifact_matrix": "hmmm",
"note": "Historical 180-test source suite; the subsequent 181-test wheel/sdist suite passed all three runtimes before the final UCNS dependency update.",
"preceding_private_artifact_matrix": {
"source_commit": "625e537701292179cdd8027c95ab87bf54aefa37",
"tests_per_artifact": 209,
"artifact_kinds": [
"wheel",
"sdist"
],
"ci_url": "https://github.com/The-Interdependency/epac/actions/runs/34689026423",
"python_versions": [
"3.10",
"3.11",
"3.12"
],
"scope": "Preceding source before final accepted UCNS dependency update; not release qualification.",
"skips": 0,
"source_commit": "57b2bd3396e1b1bc19445701a762ec8cd33d198b",
"status": "passed",
"tests_per_artifact": 181
"ci_url": "https://github.com/The-Interdependency/epac/actions/runs/34706109670",
"acceptance_sha256": "6e60f2bb969a331ba70f295fbd66c25146b0922ed9fe075629d48dae5f132b88",
"scope": "Preceding private matrix before MPL-2.0 license bytes and normalized release CI. Final licensed candidate qualification remains pending."
}
}
},
"license_selection": "docs/license-selection.json"
}
24 changes: 24 additions & 0 deletions docs/license-selection.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
{
"authority_transfer": false,
"empirical_status_transfer": false,
"license_expression": "MPL-2.0",
"license_sha256": "3f3d9e0024b1921b067d6f7f88deb4a60cbe7a78e76c64e3f1d7fc3b779b9d04",
"license_source": "https://www.mozilla.org/media/MPL/2.0/index.txt",
"organization_convention": {
"path": "STACK_MANIFEST.md",
"repository": "The-Interdependency/stack",
"rows": [
"skill-lib",
"metapat",
"edcm"
],
"skill_lib_description": "MPL-2.0; weak/file-level copyleft",
"source_commit": "0e8384bbb60e4c2189016a212bdd0030d04aed7d"
},
"owner_instruction": "epac is weak copyleft",
"resolution": "MPL-2.0 applies the owner-requested weak-copyleft family using the existing skill-lib, metapat and edcm convention; the exact interpretation was disclosed before execution.",
"schema": "epac.license-selection",
"scope": "EPAC-owned source; upstream rights and scientific standing do not transfer",
"upstream_license_transfer": false,
"version": 1
}
4 changes: 2 additions & 2 deletions docs/work-graph.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"schema": "the-interdependency.stack-manifest",
"version": "1.0.0",
"work_graph_sha256": "d4ebcf8aecfb7ad6c2b51d8b91e4ef4ab573df582240e02ce684b909f8f3bd1c",
"work_graph_sha256": "e0da233c6a7f51bfc56a1ef8c2e02e3a1096a8518e2acd712eed82ce8004b049",
"repositories": [
{
"repository": "The-Interdependency/stack",
Expand Down Expand Up @@ -36,7 +36,7 @@
"agent_scope": "cross-repository-work-graph",
"hmmm": [
"EPAC stable release and stack reconsumption are not complete",
"license/distribution rights gate remains unresolved"
"EPAC MPL-2.0 recorded; immutable candidate, release and authority transition remain pending"
]
}
}
Loading