5.5 KiB
5.5 KiB
Beta24 Release Review
Verdict: PASS.
Findings
No blocking or non-blocking findings in the reviewed scope.
Scope Reviewed
compiler/src/project.rspackage manifest diagnostics.compiler/tests/package_workspace_discipline_beta24.rs.scripts/release-gate.shbeta24 focused gate entry.compiler/Cargo.tomlandcompiler/Cargo.lockversion bump..llm/BETA_24_PACKAGE_MANIFEST_IDENTITY_AND_DEPENDENCY_DISCIPLINE.md.- README, language package/diagnostic/release/roadmap docs, compiler release/roadmap docs, and post-beta roadmap updates.
Acceptance Checklist
- PASS: Duplicate package manifest keys now use package-scoped diagnostics through
set_manifest_key(..., "PackageManifestInvalid", "package")for package identity keys. Seecompiler/src/project.rs:1505throughcompiler/src/project.rs:1545andcompiler/src/project.rs:1752throughcompiler/src/project.rs:1771. - PASS: Invalid dependency keys are rejected before graph validation with
InvalidPackageDependencyName. Seecompiler/src/project.rs:1556throughcompiler/src/project.rs:1572. - PASS: Duplicate dependency keys are rejected before graph validation with
DuplicatePackageDependencyName, and invalid/duplicate dependency records are not added to the dependency graph. Seecompiler/src/project.rs:1573throughcompiler/src/project.rs:1593. - PASS: Existing local-path-only dependency parsing and later dependency key/name matching remain in place. See
compiler/src/project.rs:1594throughcompiler/src/project.rs:1601,compiler/src/project.rs:1743throughcompiler/src/project.rs:1749, andcompiler/src/project.rs:2970throughcompiler/src/project.rs:3005. - PASS: Focused tests cover duplicate package keys, invalid dependency keys, duplicate dependency keys, and a clean local dependency workspace. See
compiler/tests/package_workspace_discipline_beta24.rs:11throughcompiler/tests/package_workspace_discipline_beta24.rs:109. - PASS:
scripts/release-gate.shruns the beta24 focused test before fullcargo test. Seescripts/release-gate.sh:68throughscripts/release-gate.sh:82. - PASS: The compiler package version is aligned to
1.0.0-beta.24in both Cargo files. Seecompiler/Cargo.toml:3andcompiler/Cargo.lock:7. - PASS: The beta24 contract defines diagnostics-only scope, explicit non-scope, acceptance criteria, and focused gates. See
.llm/BETA_24_PACKAGE_MANIFEST_IDENTITY_AND_DEPENDENCY_DISCIPLINE.md:5through.llm/BETA_24_PACKAGE_MANIFEST_IDENTITY_AND_DEPENDENCY_DISCIPLINE.md:79. - PASS: README identifies
1.0.0-beta.24as current and describes the package manifest/dependency diagnostic hardening scope without claiming package-manager, runtime, language, or stdlib changes. SeeREADME.md:9andREADME.md:27throughREADME.md:50. - PASS:
docs/language/PACKAGES.mddocuments duplicate package manifest keys, invalid dependency keys, and duplicate dependency keys as beta package/workspace diagnostics. Seedocs/language/PACKAGES.md:59throughdocs/language/PACKAGES.md:73anddocs/language/PACKAGES.md:111throughdocs/language/PACKAGES.md:130. - PASS:
docs/language/DIAGNOSTICS.mdincludes the new package/workspace diagnostic codes in the project/workspace catalog. Seedocs/language/DIAGNOSTICS.md:240throughdocs/language/DIAGNOSTICS.md:279. - PASS: Language and compiler release notes describe beta24 as package manifest identity/dependency diagnostic hardening only. See
docs/language/RELEASE_NOTES.md:44throughdocs/language/RELEASE_NOTES.md:68anddocs/compiler/RELEASE_NOTES.md:15throughdocs/compiler/RELEASE_NOTES.md:42. - PASS: Language/compiler roadmaps and post-beta roadmap mark beta24 as the current local package/workspace diagnostics slice with registry, lockfile, semver, publishing, optional/dev/target dependencies, ABI/layout, language, runtime, and stdlib work deferred. See
docs/language/ROADMAP.md:11throughdocs/language/ROADMAP.md:33,docs/compiler/ROADMAP.md:24throughdocs/compiler/ROADMAP.md:38,docs/compiler/ROADMAP.md:722throughdocs/compiler/ROADMAP.md:728, anddocs/POST_BETA_ROADMAP.md:185throughdocs/POST_BETA_ROADMAP.md:191.
Verification Commands
Ran:
git diff --check
cargo fmt --check
cargo test --test package_workspace_discipline_beta24
cargo test --test project_mode workspace_package_boundaries_are_diagnostics
cargo test --test project_mode
rg -n "beta\\.23|beta23|beta\\.24|beta24|1\\.0\\.0-beta\\.2[0-9]|current|Release state|Last updated" README.md docs/language/PACKAGES.md docs/language/DIAGNOSTICS.md docs/language/RELEASE_NOTES.md docs/language/ROADMAP.md docs/compiler/RELEASE_NOTES.md docs/compiler/ROADMAP.md docs/POST_BETA_ROADMAP.md .llm/BETA_24_PACKAGE_MANIFEST_IDENTITY_AND_DEPENDENCY_DISCIPLINE.md compiler/Cargo.toml compiler/Cargo.lock scripts/release-gate.sh
Result: all executed checks passed. The focused beta24 test reported 4 passed tests. The full project_mode suite reported 36 passed tests.
Final Gate Disposition
After this review, the controller ran the full release gate:
./scripts/release-gate.sh
Result: PASS. The gate completed docs/catalog checks, focused beta13-beta24
tests, full cargo test, ignored promotion smoke, ignored binary smoke, and
ignored LLVM smoke.
Residual Risks
- No release-blocking residual risks remain. The release gate regenerated and checked the standard-library API catalog; publication PDFs were not regenerated because this slice does not touch paper sources, and the gate verified that the required PDF artifacts are present.