Assign packaged binaries to one Cargo package
This commit is contained in:
parent
fe6bf006d3
commit
9b8df0b487
6 changed files with 50 additions and 11 deletions
|
|
@ -87,6 +87,10 @@ path = "epiphany-core/src/bin/epiphany-daemon-supervisor.rs"
|
|||
name = "epiphany-release"
|
||||
path = "epiphany-core/src/bin/epiphany-release.rs"
|
||||
|
||||
[[bin]]
|
||||
name = "epiphany-state"
|
||||
path = "epiphany-core/src/bin/epiphany-state.rs"
|
||||
|
||||
[[bin]]
|
||||
name = "epiphany-memory-semantic-projector"
|
||||
path = "epiphany-core/src/bin/epiphany-memory-semantic-projector.rs"
|
||||
|
|
|
|||
|
|
@ -514,8 +514,6 @@ fn release_build_command(
|
|||
.arg("--locked")
|
||||
.arg("--package")
|
||||
.arg("epiphany-release-bundle")
|
||||
.arg("--package")
|
||||
.arg("epiphany-core")
|
||||
.arg("--features")
|
||||
.arg("epiphany-release-bundle/coordinator-runtime");
|
||||
for (_, file_name) in required {
|
||||
|
|
@ -1157,15 +1155,12 @@ mod tests {
|
|||
|
||||
assert_eq!(envs.get("CARGO_INCREMENTAL"), Some(&Some("0".to_string())));
|
||||
assert_eq!(args.iter().filter(|arg| *arg == "--bin").count(), 23);
|
||||
assert_eq!(args.iter().filter(|arg| *arg == "--package").count(), 2);
|
||||
assert_eq!(args.iter().filter(|arg| *arg == "--package").count(), 1);
|
||||
assert!(
|
||||
args.windows(2)
|
||||
.any(|pair| pair == ["--package", "epiphany-release-bundle"])
|
||||
);
|
||||
assert!(
|
||||
args.windows(2)
|
||||
.any(|pair| pair == ["--package", "epiphany-core"])
|
||||
);
|
||||
assert!(!args.iter().any(|arg| arg == "epiphany-core"));
|
||||
assert!(
|
||||
args.windows(2)
|
||||
.any(|pair| pair == ["--features", "epiphany-release-bundle/coordinator-runtime"])
|
||||
|
|
|
|||
|
|
@ -1945,3 +1945,21 @@ 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.
|
||||
|
||||
### Sole packaged executable owner
|
||||
|
||||
The first single-process proof exposed a deeper split. Selecting
|
||||
`epiphany-release-bundle` and `epiphany-core` together compiled overlapping bin
|
||||
names into the same output paths. Cargo warned that this collision may become a
|
||||
hard error. The cold run took 36m55s and the identical warm run took 11.05s
|
||||
(Cargo 1.26s), so graph warming was fixed, but four output files changed and the
|
||||
witness did not reproduce.
|
||||
|
||||
Packaged executable selection now belongs only to `epiphany-release-bundle`.
|
||||
It declares all 23 targets, including `epiphany-state`, from their owning source
|
||||
paths and selects the core library as a dependency. `epiphany-core` binary
|
||||
targets remain developer entry points; the core package is not selected as a
|
||||
release writer. The forbidden state is two selected packages writing one
|
||||
release filename. Nineteen focused tests prove the command contains one package
|
||||
selector and no `epiphany-core` package argument. Exact warning-free Linux and
|
||||
byte-identical warm witness proof remain open.
|
||||
|
|
|
|||
|
|
@ -1,5 +1,27 @@
|
|||
# Fresh workspace handoff
|
||||
|
||||
## Sole packaged executable owner — 2026-08-09
|
||||
|
||||
Exact `fe6bf006` cold packaging proved the single-process graph and produced
|
||||
native-inspected 23-binary release
|
||||
`sha256-7e579b3d78e7de4a8bf161125908ac41d2b9582aba24b5f5be6922d6a4940db0`
|
||||
with witness
|
||||
`sha256-45215f5d27d8edb5be877aad769ccd7ac971952d343dc516dea744ee4f82533a`.
|
||||
The cold conversion took 36m55s. Its identical warm rerun took 11.05s total,
|
||||
with Cargo completing in 1.26s, but produced a different valid release and
|
||||
witness. Cargo reported output filename collisions between the selected
|
||||
`epiphany-release-bundle` and `epiphany-core` packages. Four binaries differed:
|
||||
`epiphany-hands-action`, `epiphany-persona-mouth-identity`,
|
||||
`epiphany-repository-body`, and `epiphany-workspace-coverage-projector`.
|
||||
|
||||
The live authority correction makes `epiphany-release-bundle` the only package
|
||||
selected for witnessed binaries. It now declares `epiphany-state` alongside the
|
||||
other 22 release targets, still using the core-owned source and library. The
|
||||
core package remains a developer binary surface but is no longer a packaged
|
||||
executable writer. All 19 focused tests pass. Commit and push this cut, rebuild
|
||||
the exact packager, then require a warning-free exact package and byte-identical
|
||||
warm replay before publication.
|
||||
|
||||
## Deterministic single release graph — 2026-08-09
|
||||
|
||||
Exact pushed source `e9465c11208d648440999903770cbde245c1da3b`
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -36,9 +36,9 @@ invariants:
|
|||
|
||||
current_status:
|
||||
summary: Epiphany is a supervised engineering alpha on Starfire, not deployment-ready. The persistent c005 Linux body proves heartbeat, Self coordination, governed Eyes-to-Modeling cognition, causal routing, native Imagination, dedicated Mind adoption, and typed Hands relinquishment without external consequence. Self causally demotes pre-relinquishment CRRC history while preserving raw operator sight. One root Cargo workspace and lock own all first-party dependency resolution, and an authenticated exact-source release now contains all 23 required binaries including the core-owned state steward. Deterministic warm packaging, resident crash/restart, long-duration plateau, log ownership, and stable Starfire firewall ownership remain open. Yggdrasil is the small public crossing body, never the release forge.
|
||||
latest_phase: Exact pushed source e9465c11208d648440999903770cbde245c1da3b produced authenticated release sha256-5f90294fb037ff777ca99f345e0f4b1e082b176c35bd6e16a60b46d5a687c0 with witness sha256-403a4dd4705772d8d588f3abedb336436b9f1b4ebc037b86efbc5995f5d6a291 and 23 inspected binaries. Its nominally warm identical rerun was slower and produced a different valid release: the old three-command packager oscillated Cargo feature graphs, while release incremental codegen changed the two epiphany-openai-runtime binaries. Source now assigns all 23 binaries across both first-party packages to one Cargo command with coordinator-runtime selected once and CARGO_INCREMENTAL=0. All 19 focused packaged-release tests pass; corrected exact Linux packaging and byte-identical warm proof remain open.
|
||||
latest_phase: Exact fe6bf006 packaging proved one Cargo process and one graph: the cold conversion produced inspected 23-binary release sha256-7e579b3d78e7de4a8bf161125908ac41d2b9582aba24b5f5be6922d6a4940db0 in 36m55s. Its identical warm rerun completed in 11.05s with Cargo at 1.26s, proving the speed cut, but produced a different valid witness. Cargo diagnosed duplicate output filenames because the command selected both epiphany-release-bundle and epiphany-core, which declare overlapping binary targets; four packaged binaries differed. Source now makes the release bundle the sole packaged executable owner, adds epiphany-state to its target set, and removes epiphany-core package selection. All 19 focused packaged-release tests pass; corrected exact Linux packaging and byte-identical warm proof remain open.
|
||||
operational_state:
|
||||
local_worktree: single_release_graph_and_deterministic_codegen_proven_pending_commit
|
||||
local_worktree: sole_release_bundle_executable_owner_proven_pending_commit
|
||||
operator_wireguard: restored
|
||||
yggdrasil: canonical_small_public_crossing_body
|
||||
starfire: temporary_epiphany_cognition_body
|
||||
|
|
@ -68,8 +68,8 @@ current_status:
|
|||
starfire_linux_modeling_peak: 109887488_bytes_resident_body_plus_modeling_circuit
|
||||
yggdrasil_epiphany_service_contract: repaired_in_gamecult_ops_812b427_not_installed
|
||||
resident_physiology: c005_swarm_with_217dd_and_bd96305e_worker_helpers_running
|
||||
unresolved_authority: The e9465c11 release proves exact-source 23-binary inventory and witness inspection, but its identical cached rerun falsified deterministic warm packaging. The single-command, non-incremental authority cut is source- and test-proven but not yet exact-package-proven. The Docker contract still depends on explicit target and Cargo-home bindings, though the native release packager owns them correctly. Repository Body observation still performs two authenticated full-tree Git index/manifest passes; exact 217dd packaged observer evidence improved the same unchanged Body boundary to 94.521 seconds. Execute-mode workers require a persistent process body. Keyed storage has not earned live migration. One Discord consequence remains blocked by the absent Yggdrasil credential. Resident stdout/stderr logs remain an unbounded supervisor-owned surface.
|
||||
next_action: Commit and push the deterministic single-graph packaging cut, package its exact source, then rerun identically warm and require both materially improved warm time and exact release/witness equality before publication. Resume resident crash/restart, retention, and endurance work from awaitFrontierProposal without recreating relinquished route 817bf422 only after that proof.
|
||||
unresolved_authority: Exact fe6bf006 proved a materially fast warm package but falsified reproducibility because two selected packages owned overlapping output names. The sole release-bundle owner cut is source- and test-proven but not yet exact-package-proven. The Docker contract still depends on explicit target and Cargo-home bindings, though the native release packager owns them correctly. Repository Body observation still performs two authenticated full-tree Git index/manifest passes; exact 217dd packaged observer evidence improved the same unchanged Body boundary to 94.521 seconds. Execute-mode workers require a persistent process body. Keyed storage has not earned live migration. One Discord consequence remains blocked by the absent Yggdrasil credential. Resident stdout/stderr logs remain an unbounded supervisor-owned surface.
|
||||
next_action: Commit and push the sole packaged-executable-owner cut, package its exact source, then rerun identically warm and require exact release/witness equality without Cargo output-collision warnings before publication. Resume resident crash/restart, retention, and endurance work from awaitFrontierProposal without recreating relinquished route 817bf422 only after that proof.
|
||||
|
||||
active_subgoals:
|
||||
- Prove Persona, Self, Eyes, Modeling, Imagination, Hands, Soul, Mind, Continuity, and nervous-system behavior individually.
|
||||
|
|
|
|||
Reference in a new issue