You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Use the reviewed phase 1 inventory as the only input to the transitional baseline. This phase creates the boundary and enforcement but does not migrate a capability.
Scope
Raise every fbuild-owned build/MSRV pin from Rust 1.94.1 to one selected 1.95.x release, with drift tests; preserve intentional arbitrary-toolchain fixtures.
Add fbuild_core::platform with exactly one std::cfg_select! selector for Windows, Linux, and macOS and no fallback.
Add neutral facade indexes and private concrete roots with required READMEs; do not add a workspace crate.
Add a pre-expansion enforce_platform_boundary Dylint and an independent whole-tree/manifest checker.
Freeze the reconciled exact-occurrence ledger. New, stale, duplicate, malformed, or growing entries and scanner/Dylint disagreement must fail CI.
Add forbidden and allowed fixtures, including private/inactive/test code and a second identical occurrence in a grandfathered file.
Wire all checks into existing Dylint and normal CI entrypoints and document the boundary.
Acceptance criteria
RED evidence for missing selector/toolchain/enforcement is recorded.
Rust 1.95.x declarations and drift coverage are complete.
The single selector and six neutral namespaces compile on all supported hosts.
Exact-occurrence baseline is frozen from phase 1 and cannot silently grow.
Dylint, scanner, manifest checker, targeted tests, workspace check/clippy, and repo tests are GREEN.
Activity