WIP: Validate filesystem media and explicit build inputs #3
No reviewers
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/e2fsd!3
Loading…
Reference in a new issue
No description provided.
Delete branch "feature/posix-compat"
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 and rationale
Make standalone filesystem validation use the service's linker and explicitly selected fixture inputs. Missing or invalid generator configuration now fails before fixture execution instead of discovering another checkout. CI selects and hashes its generator and read-only checker.
The host quota fixture exercises nested directory/file creation, write, reopen, read, stat, enumeration, unlink and directory removal. It checks the inherited quota identifier and validates the final media, retaining initial/final bytes and checker evidence on failure.
Tracking and scope
da51754b1c871dfdee81c20920a8074ac105a4cbonfeature/posix-compat.e2b1cf5995bcf6334839cda9a013e90fa97787d5. Existing Cargo dependencies now select the signed shared runtime graph.Architecture, authority and failure behavior
The host caller supplies absolute regular files through
ERIX_GENERATE_BLOCK_TEST_DISKandERIX_E2FSCK, prepares the original generator checkout and records tool/source identities. The obsolete directory selector and implicit generator discovery are removed. Refusal tests do not mutate the process environment. No guest capability or runtime fallback is added.Checker failure or signal remains primary when evidence retention also fails. A successful checker whose evidence cannot be retained does not pass validation. CI retains its pinned process owner, 1,800-second hard deadline, 180-second output-stall deadline and 32 MiB output budget. Its child receives selected compiler, source, fixture, locale, temporary-directory and resource inputs; unrelated runner credentials and loader injection settings are excluded.
The standalone link selects the existing entry and state-arena definitions with fatal linker warnings. Deployment capacities, dynamic packaging and product VM acceptance remain separate requirements. README, ARCHITECTURE and ROADMAP describe the actual test inputs; the Rust helper and its regressions are documented inline.
Validation evidence
Original coherent realm source CI acceptance — 18 September 2026: Signed
4d8dda85e3c24daecc2b854289a923ec70485c3apasses CI 179 and CI 178. All four terminal logs are complete (235,822 bytes), with zero final warnings. This closes the original CI observation recorded above. Coherent catalog publication, actual consumer VMs and full guest-build acceptance remain separate open requirements.Coherent realm image service prerequisites — 18 September 2026: Signed
4d8dda85e3c24daecc2b854289a923ec70485c3aselects the original shared wire/startup dependency graph. Direct Rust implementation bytes are unchanged. All 6 default, all-feature and separate production development/release configurations pass 264 unit tests per configuration, strict host/native Clippy and freestanding linking with fatal linker warnings. Formatting, private-item rustdoc and Markdown pass, with zero warnings. Original push/PR CI is under observation. Matching catalog adoption and real consumer VMs remain requirements; complete realm and full in-guest build acceptance remain open.Rust/Cargo 1.97.1 passes 264 tests in each default/all-feature and production development/release configuration, formatting, strict host/native Clippy, six native builds and private rustdoc without warnings. The three added tests cover missing/relative inputs, unavailable files/directories beside an existing generator, and preservation of an explicitly selected file without a basename restriction. Canonical documentation and source-size checks pass.
The original resolver probe returned another script for an unavailable explicit selection. The corrected actual resolver rejects that input with status 101 and preserves the valid selected path. Neither probe executed a generator. The original local dependency-test failure caused by an omitted checker input is retained separately; all corrected test configurations pass with the checker and original generator selected and hashed.
Both current production development/release ELFs have entry 0x64000000, matching
e2fsd_entry, and the required state-arena symbol. Earlier failing-link and quota media evidence remains retained. These host checks do not establish the cause or correction of the separate guest timeout or a build inside EriX.Push/review CI 176/177 passes with complete classified logs and no final warnings.
Review checklist
Coherent dependency checkpoint — 20 September 2026: signed/pushed commit 6157f1c31d1612b8795af5bd7e64291d28e88eae aligns original shared dependency pins with the explicit installer-rights contract. Only the manifest and roadmap change; local implementation, APIs and authority policy are unchanged. Four strict 264-unit configurations, four native builds with the maintained linker layout, host/native Clippy, formatting, private rustdoc and dependency checks pass without warnings. Original CI 180/181 passes with four complete hashed logs (229,094 bytes), zero warning candidates.
Full catalog equality and actual consumer-image validation remain required under Integration regression 68. The broader work remains tracked by phase completion, including native external Rust/LLVM/runtime rebuilding and both complete EriX-in-EriX generations. This dependency checkpoint does not close full lifecycle, frame or self-hosting acceptance.
Acknowledged terminal service dependencies — 21 September 2026: signed 5365be1aa6a486986525c236640f48eae4faaf8c selects the original shared libraries for repeated terminal observation, exact acknowledgement and final CPU measurements under Kernel design 20. All 4 strict 264-test selected development/release feature configurations, warning-denied host/native builds with the maintained linker layout, host/native Clippy, private rustdoc, applicable doctests, formatting and dependency/Markdown checks pass. All authored code remains below 1,000 lines. Original CI 182, 183 passes; complete hashed logs total 233,753 bytes with zero warning candidates. Full service CPU/profiler VM acceptance and guest builds remain open in Phase 6 completion.
WIP: Validate quota media and correct standalone service linkingto WIP: Validate filesystem media and explicit build inputsView command line instructions
Checkout
From your project repository, check out a new branch and test the changes.Merge
Merge the changes and update on Forgejo.Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.