slovo/.llm/reviews/BETA_17_RELEASE_REVIEW.md

3.9 KiB

1.0.0-beta.17 Release Review

Scope: 1.0.0-beta.17 JSON Primitive Scalar Parsing Foundation

Verdict

Ready after controller follow-up. The source facade, runtime lowering, test-runner behavior, examples, generated API catalog, focused gates, full cargo test, and release diagnostics are coherent for the beta17 scope.

Findings

P2 - Resolved: unsupported standard-library diagnostics omitted the beta17 promoted JSON names

compiler/src/std_runtime.rs:259 through compiler/src/std_runtime.rs:299 register the six promoted beta17 helpers:

  • std.json.parse_bool_value_result
  • std.json.parse_i32_value_result
  • std.json.parse_u32_value_result
  • std.json.parse_i64_value_result
  • std.json.parse_u64_value_result
  • std.json.parse_f64_value_result

compiler/src/std_runtime.rs:875 hard-coded the UnsupportedStandardLibraryCall.expected text with only std.json.quote_string in the JSON family. A user who called an unsupported std.* name would receive stale guidance that omitted the newly supported beta17 helpers.

Controller resolution: the six beta17 std.json.parse_*_value_result names are now present in the expected supported-call list, and compiler/tests/standard_json_scalar_parsing_beta17.rs includes unsupported_json_diagnostics_list_beta17_promoted_scalar_parsers to fail if that user-facing guidance drifts again.

No P0/P1/P2 runtime, source-facade, grammar, lowering, diagnostics, or release-gate wiring findings remain open.

Verification

Inspected:

  • lib/std/json.slo and both JSON example fixtures.
  • compiler/src/std_runtime.rs, compiler/src/llvm.rs, and compiler/src/test_runner.rs.
  • runtime/runtime.c.
  • compiler/tests/standard_json_scalar_parsing_beta17.rs, compiler/tests/standard_json_source_facade_alpha.rs, and compiler/tests/promotion_gate.rs.
  • scripts/release-gate.sh, version bump, release notes, roadmaps, spec, standard-runtime docs, and generated docs/language/STDLIB_API.md.

Ran:

  • git -C slovo diff --check - passed.
  • cargo fmt --check - passed.
  • cargo test --test standard_json_scalar_parsing_beta17 - passed, 5/5.
  • cargo test --test standard_json_source_facade_alpha - passed, 2/2.
  • cargo test --test standard_json - passed, 4/4.
  • cargo test --test diagnostics_contract - passed, 1/1.
  • cargo test --test promotion_gate - passed, 1/1 with 2 ignored.
  • cargo test --test promotion_gate -- --ignored - passed, 2/2.
  • cargo test - passed.
  • Controller follow-up cargo test --test standard_json_scalar_parsing_beta17
    • passed after the diagnostic inventory fix.

Not run:

  • Full ./scripts/release-gate.sh; run it after final controller cleanup. Its core cargo test, fmt, promotion, and beta17-focused components were covered above, but the full script also runs documentation/private-text checks and ignored binary/LLVM smoke gates.

Residual Risks And Non-Scope Confirmation

Confirmed in-scope behavior:

  • std.json.parse_bool_value_result, numeric concrete parse_*_value_result helpers, and source-only parse_null_value_result are present in lib/std/json.slo and mirrored by the local JSON fixture.
  • Promoted bool/numeric helpers lower to private runtime symbols and have matching test-runner and hosted-runtime behavior.
  • Primitive JSON token checks reject whitespace, leading +, leading-zero forms such as 01/01.0, negative unsigned integers, overflow, and non-finite f64 results. Exponent f64 is accepted. -0 is accepted consistently as a JSON-valid number token, not treated as a leading-zero form.
  • parse_null_value_result remains source-only; no compiler-known null parser was introduced.

Confirmed non-scope:

  • No JSON string parser, object parser, array parser, recursive JsonValue, tokenizer, schema validator, stream parser, Unicode escape parser, map/set surface, stable ABI/layout claim, stable API freeze, or performance claim is introduced by this candidate.