Public source distribution boundary — 2026-10-11
ECHO-5 5.0.0 is officially green within its declared, validated scope. The 12 October checkpoint supersedes the earlier calibration failure. The r3 closure and subsequent efficiency audits have separate frozen-source identities; publication checks validate this adapted source tree rather than retroactively changing those identities.
This export contains the current implementation, scripts, tests, contracts,
lockfile and historical reports. It excludes agent instructions, environments,
caches and live artifacts. Historical reports and docs/inventory/ retain their
original content and scope. The publication checklist clarifies that the 24
transfer controls are 12 ambiguous rotations and 12 unsupported-color cases,
and points to the current project checkpoint. Its private paths and hashes describe
that history; they are not claims about the public source distribution.
The published bytes differ from the original audited source hashes. Import, layout and distribution adaptations also change newly generated source receipts. Passing the publication checks establishes bounded software portability only. It does not reproduce or extend the historical scientific audits. No live or sealed campaign, S6 experiment, simulator or flight is part of this validation.
Adaptation boundary
The full flattened echoAI repository is required. ECHO-5 is still a source workspace, not an independently installable package; no build backend is added.
src/echo5/distribution.pydeclares the sixcore/*.pydependencies and their package initializer. It contains layout information only.legacy.pyloads the localechoaipackage from its explicit path, keeps existing short and qualified import identities together, and admitscore. It exposes only the repository root, never its parent. Shared imports disable bytecode writes so imported sources remain read-only. Nonavi10_*fallback, compatibility files, second bus or cognitive engine is introduced.neural_observer.pyimportsechoai.core.qnandechoai.core.spokethrough that boundary and reports the actual qualified module name. Its measured Layer256 diagnostic remains outside the acting policy.cli.py,audit.py,closure.py,control.pyandrelease.pyresolve the existinghostreceipt group against the repository'score/files. The archive labelhost/remains for schema continuity; it no longer denotes files in the checkout's parent. Empty or incomplete core receipts are not accepted as a substitute for the declared core coverage. Do not replay a historical private-layout receipt against this adapted checkout.sitl.pystages the actualechoai/core/package and helpers needed by the transformed inherited runner. Receipts hash these staged files under their public paths. The availability report looks for PX4 on PATH instead of a developer's absolute home directory. Simulator configuration and gates stay unchanged. The local image digest remains pinned; the image is not shipped.scripts/inventory.pyscans the flattenedcore/tree instead of discovering arbitrary Python files in the parent checkout. It writes new results toartifacts/inventory-publication/, preserving the historical catalogue.pyproject.tomlrequires exactly CPython 3.12.13, matching.python-versionand runtime checks.scripts/setup_sandbox.py --wheel-dirsupports an offline, hash-checked wheel directory and disables pip's shared cache writes. The sandbox dependency pins and lockfile hashes are unchanged.
Other inherited algorithms, scientific thresholds, held-out seed intervals and failure classifications are retained. The source layout adaptations are not an assertion of bit-for-bit or experimental equivalence.
Local checks
From the public repository's ECHO-5/ directory, with CPython 3.12.13 already
installed:
mkdir -p artifacts/publication-checks/tmp
export TMPDIR="$PWD/artifacts/publication-checks/tmp"
make setup
make check
nice -n 10 make test
node --check src/echo5/web/app.js
Setup creates a new local .venv without pip or global packages. It never
uses the original experiment's environment. Temporary test files stay under
ECHO-5 through TMPDIR; the integration boundary avoids caches in shared code.
The optional MiniGrid/BabyAI profile uses a separate .venv-sandbox:
# wheel-dir must contain the seven wheels covered by requirements-sandbox.lock.
python3.12 -I scripts/setup_sandbox.py --wheel-dir /path/to/locked-wheels
python3.12 -I scripts/setup_sandbox.py --check
nice -n 10 .venv-sandbox/bin/python -I -B scripts/closure.py test-external
With --wheel-dir, pip uses --no-index, wheels only and --require-hashes.
The export validation can reuse cached wheel bytes read-only, after checking
the lock hashes; it does not reuse an installed or frozen environment. Without
that option, make setup-sandbox explicitly installs the optional locked profile
from the configured package index. No training framework is required.
test_distribution.py checks core namespace identity, agreement of custody
readers and imports of staged runner helpers in a fresh -I -B -S subprocess.
Staging writes a new temporary fixture and launches no container. The ordinary
suite uses small synthetic fixtures; it does not open old experiment artifacts.
The publication checks completed under CPython 3.12.13: 338 stdlib tests
reported OK (skipped=12), and all 32 sandbox tests passed, including those
12 native tests. These overlapping suites must not be added as distinct tests.
Environment/syntax checks covered 67 Python files; JavaScript syntax passed.
The three new distribution regressions passed. Static inventory parsed 987
published files without errors. Source custody stayed unchanged across the
required checks (81 own files, 714 inherited files and seven core files).
Local logs and receipts are in artifacts/publication-checks/required/; these
validation artifacts and managed environments are excluded from Git.
Remaining limits
- Browser automation needs a separately managed Playwright/browser environment; JavaScript syntax and HTTP unit checks do not establish a browser UI pass.
- Gazebo/PX4, Podman and the pinned local image are separate requirements. Helper import checks do not establish SITL readiness or validation. No image build, simulator launch, calibration replay or flight is performed for this export.
- Kaggle scripts are retained as historical optional tooling, including their original private notebook/account and artifact defaults. They are not portable cloud deployment instructions and were not invoked during publication checks.
- Historical documents may refer to unpublished local artifacts or private checkout locations. They remain historical evidence, not executable paths for the public source tree. S6 and the ECHO-5 research closure remain open.