ce2e: dual-origin CLI + occupancy + library contract
Closed
CJ
2mo ago+2191+2191+0123456789012345678901234567890123456789-7-7-0123456789
Summary
- Dual-origin CLI runtime (
devtools/jext-cli/run.sh+configs/complete-e2eadapter) socli:jext-clireconciles static+runtime. - Occupancy prove scripts (
repository.py/entity.py/ fault scripts) with identity-bound named receipts. - PHPUnit CompleteE2e library contract (export / invalid-input / error-semantics).
- Root
run.shfail-closed gate (JEXT_CLI_ALLOWED) for missing-env occupancy.
Test plan
-
bash scripts/complete-e2e/prove.sh -
php vendor/bin/phpunit -c phpunit.xml - complete-e2e exhaustive → CERTIFIED → squash-merge
Summary by cubic
Introduces a dual-origin CLI runtime with a fail-closed root gate, occupancy prove scripts, and a PHPUnit library contract so the project can be machine-proven for the complete-e2e certification ladder.
New Features
- Adds
devtools/jext-cli/run.shwithstatus,config,validate, andversioncommands that check CLI surfaces and identify required files. - Adds
scripts/complete-e2e/prove.sh,repository.py, andentity.pyoccupancy provers that emit named receipts into.hurc-harness. - Adds a runtime adapter (
configs/complete-e2e/runtime.jsonandlist-runtime-clis.sh) to reconcile static and runtime CLI origins. - Adds
tests/CompleteE2e/CompleteE2eLibraryContractTest.phpcovering public type loading, empty-input rejection, and documented error semantics.
Migration
- Root
run.shnow exits unlessJEXT_CLI_ALLOWED=yes. - Requires PHPUnit and its dependencies via
composer install; thetestscript runsphpunit --no-coverage.