Stabilize packaged release build graph

This commit is contained in:
Meta Vens 2026-08-09 05:46:51 +01:00
commit fe6bf006d3
5 changed files with 138 additions and 47 deletions

View file

@ -1923,3 +1923,25 @@ vendored Starlark's older `hashbrown` integration; Rust rejected the missing
release-target check traversing Starlark through Codex login and
`epiphany-openai-auth-spine` completed successfully in 3m16s. This is lockfile
compatibility authority, not a source patch or relaxed gate.
### Single deterministic packaged build authority
The original packaged-release path invoked Cargo three times against one target
directory: the broad root binary graph, the coordinator feature graph, and the
core-owned state steward. Cargo correctly rebuilt when each command changed the
selected feature set, so the cache oscillated instead of warming. Exact source
`e9465c11` took 24m22s cold (17m03s root plus 6m38s state) and 28m30s on an
identical cached rerun (21m04s root, 34.62s coordinator, 6m42s state).
The two runs also yielded different valid authenticated releases. Twenty-one of
23 binaries were byte-identical; only the two `epiphany-openai-runtime`
binaries differed, including different ELF build IDs and code bytes. Release
incremental codegen is therefore not an admissible input to witnessed output.
`build_required_release_siblings` now has one process owner. It selects
`epiphany-release-bundle` and `epiphany-core`, selects
`epiphany-release-bundle/coordinator-runtime` once, names all 23 required
binaries explicitly, and sets `CARGO_INCREMENTAL=0`. Follow-up coordinator and
state-steward Cargo commands are forbidden writers and have been deleted. All
19 focused packaged-release tests pass. Exact Linux packaging plus a
byte-identical warm rerun remain the verification boundary.

View file

@ -1,5 +1,37 @@
# Fresh workspace handoff
## Deterministic single release graph — 2026-08-09
Exact pushed source `e9465c11208d648440999903770cbde245c1da3b`
produced authenticated release
`sha256-5f90294fb037ff777ca99f345e0f4b1e082b176c35bd6e16a60b46d5a687c0cb`
with witness
`sha256-403a4dd4705772d8d588f3abedb336436b9f1b4ebc037b86efbc5995f5d6a291`.
Native inspection accepted the exact source and all 23 required binaries. The
packaged `epiphany-state` hash is
`8e5e0edd3af59a9f8710d4b6b3a7fbe8243f1002acd6e1d4c415e8053d0cd7c2`.
The cold package took 24m22s: 17m03s for the root graph and 6m38s for the
separate state-steward graph. The identical cached rerun was worse at 28m30s:
21m04s for the root graph, 34.62s for the coordinator graph, and 6m42s for the
state-steward graph. It also produced a different authenticated release,
`sha256-4700e984410e0c8e735d1fcecec282235ed5d096d20b6dbbdb206a83636228fa`,
with witness
`sha256-f71519f7a27a9588715daf9f11d33031b2680659aa405c29807a39efcfcce373`.
Twenty-one binaries were byte-identical; only `epiphany-model-runtime` and
`epiphany-persona-service`, both from `epiphany-openai-runtime`, changed. The
old packager was oscillating one target cache through three feature graphs,
and incremental release codegen made the authenticated output nondeterministic.
The source cut now uses one Cargo command for both first-party packages, the
coordinator feature, and all 23 explicit binaries, with `CARGO_INCREMENTAL=0`.
The separate coordinator and state-steward build authorities are deleted. All
19 focused packaged-release tests pass. The cold Windows harness took 3m38s;
the final source rerun compiled in 47.87s and executed in 0.83s. Commit and push
this cut, then require an exact Linux package and an identical warm rerun with
both materially improved time and exact release/witness equality before
publication.
## Unified Cargo authority and shipped state steward — 2026-08-09
The first exact `6808f3f5` package attempt failed before release construction: