slovo/.llm/reviews/BETA_8_RELEASE_REVIEW.md

53 lines
2.2 KiB
Markdown

# 1.0.0-beta.8 Release Review
Date: 2026-05-22
Scope: concrete type alias foundation.
## Verdict
The Slovo documentation and source-fixture side is coherent for a beta.8
concrete-alias slice. The contract is intentionally transparent: top-level
`(type Alias TargetType)` declarations name existing supported concrete target
types, normalize before backend/ABI decisions, and do not create runtime types,
hosted symbols, generic alias machinery, maps/sets, or cross-module alias
visibility.
## Review Notes
- The language spec defines syntax, resolution, formatter shape, diagnostics,
and explicit deferrals for concrete aliases.
- The public roadmap and stable-readiness notes place beta.8 between JSON data
interchange and generics/collection unification.
- `std/json.slo` uses `JsonText` and `JsonField` as local aliases only. The
helper export list remains unchanged.
- The explicit std-import and local JSON fixtures exercise local alias use
without importing, exporting, or re-exporting aliases.
- Glagol parser, checker, formatter, project import resolution, lowering
inspectors, diagnostics fixtures, and promotion inventory now carry the
matching implementation side.
- Reviewer findings were integrated: JSON fixtures use canonical alias spacing,
unsupported alias targets are rejected, alias/value name conflicts are
diagnosed, and alias export/import attempts produce explicit visibility
diagnostics.
## Verification
- `cargo fmt --check`
- `cargo test --test diagnostics_contract current_negative_cases_match_machine_diagnostic_snapshots`
- `cargo test --test concrete_type_aliases_beta`
- `cargo test --test project_mode type_aliases_are_local_across_project_visibility`
- `cargo test --test lowering_inspector`
- `cargo test --test promotion_gate promotion_gate_artifacts_are_aligned`
- `cargo test --test standard_json_source_facade_alpha`
- `cargo test`
- `git diff --check`
## Remaining Deferred Work
- Generated documentation may still display source alias spelling. Runtime
behavior, checked lowering, backend layout, and cross-module typing use the
resolved concrete target.
- Any future generic alias, cross-module alias import/export, or re-export
design.