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
{{ message }}
Repository navigation
t27b ratchet: specs/policy/own_language.t27 regressed to ExprCall(@intCast) with #7399 #7478
Since #7399 (3df7065), specs/policy/own_language.t27 contains @as(u32, @intCast(c - '0')) at line 411, in the code that parses git diff --numstat for check_budget. t27b refuses @intCast, so this spec, which the ledger lists as pass, now stops at ExprCall(@intCast).
Every PR's t27b-native-ratchet therefore reports UNEXPECTED FAILURE 1. Two runs show it:
Lane 5 found this while running the corpus for #7448. It is not a lane 5 blocker: @intCast belongs to lane 4, and a ledger move belongs to lane 2. So lane 5 does not touch the row.
Two ways out:
t27b gains @intCast (lane 4).
The spec avoids it, e.g. a u32 digit from c - '0' where c is already a u8. That is a spec change, which must keep t27c test-report and gen-c output identical for check_budget.
Boundary
specs/policy/own_language.t27
User Scenarios
Given specs/policy/own_language.t27 contains @as(u32, @intCast(c - '0')) at line 411, when t27b-native-ratchet runs on this spec, then it stops at ExprCall(@intCast) and reports UNEXPECTED FAILURE 1.
Given the spec is changed to avoid @intCast while preserving the u32 digit computation from c - '0' where c is a u8, when t27b-native-ratchet runs, then the spec passes without ExprCall(@intCast) errors.
Given the modified spec is compiled with t27c test-report and the generated C output for check_budget is produced, then both are identical to the current outputs before the change.
Requirements
FR-001: The spec specs/policy/own_language.t27 MUST replace @as(u32, @intCast(c - '0')) with an equivalent expression that does not use @intCast.
FR-002: The replacement expression MUST compute a u32 digit value from c - '0' where c is a u8.
FR-003: The change MUST keep t27c test-report output identical for check_budget.
FR-004: The change MUST keep gen-c output for check_budget identical.
Success Criteria
t27b-native-ratchet runs on specs/policy/own_language.t27 and exits with exit 0 (no UNEXPECTED FAILURE).
t27c test-report specs/policy/own_language.t27 produces identical output to the pre-change baseline (verified by diff, 0 differences).
gen/c/policy/own_language.c for the check_budget function is byte-for-byte identical to the pre-change baseline (verified by diff, 0 differences).
Reopened 2026-10-07: the bulk close of issues without a ## Boundary section was reverted by the owner. Nothing to do here; this comment replaces the earlier close notice.
Activity
gHashTag commentedon Oct 7, 2026
Reopened 2026-10-07: the bulk close of issues without a
## Boundarysection was reverted by the owner. Nothing to do here; this comment replaces the earlier close notice.