generated from erix/meta
[FEATURE] Admit declared tool payloads through four isolated image profiles #4
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#4
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?
Problem and motivation
Self-hosting needs imported development tools while trusted EriX implementation and clean images retain clean-room provenance. Packaging must distinguish the two and reject undeclared transitive runtime payloads.
Proposed behavior and scope
Implement versioned payload manifests, offline source/recipe records, explicit extended-dev and extended-release profiles, a reviewed release subset, and independent closure/contamination tests across all four image profiles. Keep every imported dependency traceable to a required tool.
This issue records planned work; its unchecked criteria are not implementation proof. The normative basis is Phase 6 and AC1–AC24.
Authority, security and reliability
Extended-image selection grants no device, raw-block, key, global-discovery or network access. Place admitted executable/library objects on ext4 with exact manifests and realm policy. Imported libraries cannot become dependencies of trusted clean-room Rust components.
Apply the priority order: security, reliability, then performance. Keep suspected vulnerabilities in the repository’s restricted SECURITY.md reporting channel.
Acceptance criteria
digest, license/notices, target, recipe/patch digests, features, runtime dependency closure,
dynamic dependencies and realm authority policy.
sources/patches separate from EriX-authored ISC implementation and never add imported
libraries to trusted EriX Cargo dependencies.
runtime.extended-dev.tomlandruntime.extended-release.toml,labeled non-clean-room in metadata/output. Preserve existing clean
runtime.dev.tomlandruntime.release.tomlsemantics.aliases, caches, transitive libraries and packaged contents; test intentional imported-payload
contamination fails closed.
generators/test harnesses/debuggers and unneeded dependency libraries.
source/license/recipe record and authority envelope; reject unknown payloads, mismatched
targets, dependency-only orphans and mutable unpinned sources.
dependencies before admission; update normative inventory, manifest schema/records and tests
rather than silently expanding imports.
realm gets no raw block/device/key/global discovery or network capability from extended-image
selection.
independently; extended-tool success never certifies clean-room implementation provenance.
For each implementation slice, retain actual formatting, strict Clippy, unit/doctest and warning-denied build results for all altered Rust repositories and valid configurations. Add relevant runtime VM coverage, monitor older unit/VM regressions in exact-head CI, and update canonical component documents and affected technical-manual/API material. Every authored code file must remain below 1,000 physical lines, with meaningful inline documentation and missing_docs enforcement in Rust crates.
Alternatives and tradeoffs
Unlabeled mixed images obscure both licensing and security boundaries. Preserve clean profile semantics and use a separate manifest-controlled extended closure rather than broad configuration inheritance.
Tracking and rollout
Dependencies: integration#1
Dependencies identify required contracts and closure gates; preparatory inventory/design can proceed in parallel under one owner per edited file. Link bounded implementation issues and their PRs here before claiming acceptance. Use
feature/posix-compat, regular signed commits in the canonical contribution format, and WIP PRs linked to the exact coherent component graph. All cross-repository Cargo/catalog selections and CI helpers use full 40-character lowercase commit hashes, including transitive dependencies; do not substitute branch, tag or implicit HEAD selection.Close criteria only with their own reviewed deliverables and validation evidence. Pending, skipped, cancelled, failed or predecessor-only results remain distinct. Keep main images unchanged until explicit promotion direction; technical completion does not authorize merges, release tags or publication.
[FEATURE] [P13] Admit declared tool payloads through four isolated image profilesto [FEATURE] Admit declared tool payloads through four isolated image profiles