3.5 KiB
3.5 KiB
Beta22 Release Review
Verdict: PASS with notes.
Findings
No blocking or non-blocking findings in the reviewed scope.
Scope Reviewed
compiler/src/main.rsrun manifest rendering and exit behavior.compiler/tests/run_manifest_beta22.rsfocused coverage..llm/BETA_22_RUN_MANIFEST_AND_EXECUTION_REPORT_HARDENING.mdbeta22 contract and suggested gates.README.md,docs/compiler/RELEASE_NOTES.md,docs/compiler/ROADMAP.md,docs/language/RELEASE_NOTES.md,docs/language/ROADMAP.md, anddocs/language/SPEC-v1.mdrelease claims.scripts/release-gate.shinclusion.
Acceptance Checklist
- PASS:
glagol run --manifest <path>writes additive run execution evidence after a supported program executes. The run path captures child stdout/stderr/status before manifest rendering and exits with the child status incompiler/src/main.rs:892throughcompiler/src/main.rs:918; rendering emits(run-report ...)incompiler/src/main.rs:2162throughcompiler/src/main.rs:2188. - PASS: Run-report records exit status, captured stdout, captured stderr, and forwarded args. Tests cover success stdout and args in
compiler/tests/run_manifest_beta22.rs:10throughcompiler/tests/run_manifest_beta22.rs:60, and nonzero exit plus stderr preservation incompiler/tests/run_manifest_beta22.rs:62throughcompiler/tests/run_manifest_beta22.rs:128. - PASS: Existing manifest fields and schema/version markers remain compatible. The new path passes
Some(run_report)only through the run-specific wrapper incompiler/src/main.rs:2019throughcompiler/src/main.rs:2043; the renderer still emitsslovo.artifact-manifestversion1incompiler/src/main.rs:2067throughcompiler/src/main.rs:2069. - PASS: Source failures do not receive fake run evidence. The focused test asserts no run-report for a type failure in
compiler/tests/run_manifest_beta22.rs:130throughcompiler/tests/run_manifest_beta22.rs:161. - PASS: Non-run modes are outside the run-report requirement. Existing foreign-import/project manifest wrappers pass
Nonefor the run-report slot incompiler/src/main.rs:1992throughcompiler/src/main.rs:2017; beta22 docs state this explicitly in.llm/BETA_22_RUN_MANIFEST_AND_EXECUTION_REPORT_HARDENING.md:58anddocs/compiler/RELEASE_NOTES.md:35. - PASS: Documentation does not overclaim language, stdlib, runtime, package, ABI, or stable manifest-schema changes. Representative deferrals are present in
README.md:172throughREADME.md:178,docs/compiler/ROADMAP.md:118throughdocs/compiler/ROADMAP.md:124,docs/language/RELEASE_NOTES.md:52throughdocs/language/RELEASE_NOTES.md:62,docs/language/ROADMAP.md:99throughdocs/language/ROADMAP.md:106, anddocs/language/SPEC-v1.md:260throughdocs/language/SPEC-v1.md:267. - PASS: The beta22 contract suggested gate names match the implemented focused test and release gate.
.llm/BETA_22_RUN_MANIFEST_AND_EXECUTION_REPORT_HARDENING.md:63through.llm/BETA_22_RUN_MANIFEST_AND_EXECUTION_REPORT_HARDENING.md:71listscargo test --test run_manifest_beta22;scripts/release-gate.sh:75includes the same focused test.
Verification
Ran:
cargo test --test run_manifest_beta22
Result: passed, 3 tests passed.
Recommended before release tag:
cargo fmt --check
./scripts/release-gate.sh
git diff --check
Note: the focused hosted-run tests depend on Clang discovery, matching existing project patterns. In this local run they executed and passed rather than skipping.