generated from erix/meta
[BUG] Standalone kernel packaging reads an unrelated shell authority catalog #59
Labels
No labels
bug
ci
docs
duplicate
enhancement
help wanted
invalid
performance
phase-6
question
refactor
security
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
erix/integration#59
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
The isolated native invocation diagnostic cannot reach QEMU in a fresh tool checkout. Image manifest preparation resolves a shell authority catalog from the ordinary component catalog, even though the selected diagnostic contains no shell. The same helper also hardcodes the ordinary catalog for other launch catalogs and a newly built registry.
Reproduction
Use Integration
df8147dfa437194cd091747fd7147941bd2793c4with the coherent isolated lifetime/invocation dependency catalog selecting signed Kernela2b13de0d51387e9175035f6e191d3f2961cd70e. Start from a fresh tool checkout without ordinary image component checkouts. Build the six selected shared objects and prepare the native invocation kernel, then runscripts/run-native-kernel-vm.sh invocationwith explicitly selected signing fixtures and installed build tools.The first complete attempt fails deterministically at manifest preparation before QEMU starts. The kernel-only profile has no Exsh artifact or Exsh entry in its selected dependency catalog.
Expected and actual behavior
Expected: a kernel-only image uses its explicit diagnostic catalog and supplied registry without requiring authority catalogs for absent executables. Images containing shell or application artifacts must still require their applicable catalogs from the selected source graph.
Actual:
exsh authority catalog is missingand exit 1.select_deployment_state_policy nonesupplies a nonempty shell capacity policy;dynlink_prepare_image_manifeststreats that policy as a reason to resolve the shell through ordinarycomponents.toml, independent of actual executable membership. Populating unrelated component directories would conceal the dependency rather than repair it.Environment and identity
df8147dfa437194cd091747fd7147941bd2793c4; Kernel:a2b13de0d51387e9175035f6e191d3f2961cd70e; isolated graph: 15 original repository revisions, 16 Cargo manifests.Evidence and prior checks
The original failure and cleanup result are retained. Every selected component checkout was clean and matched its exact commit before the attempt. Native kernel preparation completed; the standard runner reused that checked artifact and then refused the unrelated shell catalog.
Repair should carry the caller-selected component catalog into manifest preparation, select launch catalogs only for present executables, and preserve all validation for present artifacts. Add controls with no ordinary checkout, alternate catalogs, absent programs and missing required catalogs. Repeat actual invocation and lifetime diagnostics only after changed source is validated; preserve all original deadlines and assertions.
Caller-local query checkpoint — 17 September 2026: Repair is signed in Integration
75ebaa21e65542d5b553c1264f6e28c48ede0a44. Seven focused controls, all 165 helper commands, strict Rust matrices and both selected native scenarios pass without warnings. Original automatic CI 1647/1648 is still being classified; the first packaging refusal remains retained.Original Integration regression classification — 17 September 2026: Original runs 1647–1650 are fully classified. Runs 1648, 1649 and 1650 each pass 408 of 486 scenarios and fail the same 78 known shell-layout refusals in issue 57. Run 1647 passes 407 and additionally repeats the existing ext4 quota timeout in issue 18. All twelve complete terminal logs total 52,533,051 bytes and contain no warnings. Rust and Markdown jobs pass. No additional failed scenario is identified; the complete catalogs remain failed. The separate local automatic-KVM preboot observation is tracked in issue 60.
The selected-catalog packaging defect is repaired in signed Integration
75ebaa21e65542d5b553c1264f6e28c48ede0a44; seven focused controls, all helper checks and matching standard-wrapper native images pass. Complete CI classification isolates the remaining failures to the separately tracked baseline. Close issue 59 for this bounded packaging defect only.Tracking
Owning review: #12. Native diagnostic adoption: #1. Caller-local kernel query design: erix/kernel#1. This issue records a build-input regression, not native query acceptance.