Prelude leaf reexports
Platform spec ADR
Prelude leaf reexports
Spec standingStandard
- Contracts and edge cases Corelib injection guarantees and edge cases.
- Design model How the compiler injects and resolves the corelib package into host compilations.
- Examples Observable corelib injection scenarios.
- FAQ and troubleshooting Corelib injection and resolution FAQ.
- Flow and algorithm End-to-end flow for corelib injection during project graph resolution.
- Verification and traceability Tests and traceability for corelib injection and resolution.
0 revisions (git unavailable at build; counts may be empty)
No commits recorded for this path.
| Section id | Required | Found |
|---|---|---|
what-this-feature-specifies | yes | yes |
implementation-anchors | yes | yes |
Full tree: run pnpm verify:platform-spec-layout (writes src/generated/platform-spec-layout-report.json).
Context
Section titled “Context”Shard preludes partially overlap the aggregate beskid_corelib prelude. Loader-side denylists (for example skipping Console) papered over units that were not valid standalone compilation files.
Decision
Section titled “Decision”- Aggregate and shard
Prelude.bdfiles must list leaf public API surfaces viapub mod(for exampleAnsi,Consolesubmodules re-exported as documented paths—not opaque marker comments). - Every
pub modline in a prelude must resolve to a.bdunit that parses and lowers as a standalone module (fix packaging when closure seeding pulls a file). - The compiler must not maintain loader-side module denylists to compensate for prelude or packaging mistakes.
Consequences
Section titled “Consequences”Corelib packaging changes precede assembly union seeding (D-COMP-BUILD-0022). Console and other terminal modules ship as valid standalone units or are removed from prelude pub mod lists.
Verification anchors
Section titled “Verification anchors”compiler/corelib/beskid_corelib/src/Prelude.bdcompiler/corelib/packages/console/src/Console/compiler/crates/beskid_tests/src/projects/corelib/compile.rs