Skip to content

spec(port): gen_w388_lean as .t27 - #6251

Merged
dmitrii-f-t27 merged 1 commit into
masterfrom
spec/port-gen-w388-lean-6211
Oct 4, 2026
Merged

dmitrii-f-t27 merged 1 commit into
masterfrom
spec/port-gen-w388-lean-6211

Conversation

@dmitrii-f-t27

Copy link
Copy Markdown
Collaborator

Closes #6211

Adds specs/port/scripts/gen_w388_lean.t27, the port of scripts/gen_w388_lean.py. One file, nothing else.

str + str does not compile in t27, so the Lean text assembly is not ported. What is ported are the decisions that shape the text, as pure integer functions: the variable-name sequence with its keyword skips (var_names, names packed as ASCII codes), chain lengths (nest_mac, plus_chain, minus_chain), the weight at each step (cancellation_weight, zero_chain_weight), the depth parity of cancellation_chain, zero_weight_closure size and the first/last reorder. theorem_block and main keep their names with undefined; bodies (string formatting, file read/write), and no test calls them.

Checks from this branch with t27c built from the same tree and Zig 0.16.0:

  • t27c typecheck: OK
  • t27c spec-status: IMPLEMENTED
  • t27c gen: 157 lines, 0 x not yet implemented
  • t27c test-report: 11 tests, 11 pass, 0 BLOCKED
  • all 8 listed functions declared; 11 test blocks
  • name codes at positions 25, 26, 44 and 45 compared with the original var_names

Not checked: CI result is pending. The signatures differ from the Python (integers instead of strings and lists), which is the point of the port.

🤖 Generated with Claude Code

…loses #6211)

Ports the decisions behind the generated Lean text as pure integer functions:
the variable-name sequence with its keyword skips, the plus/minus/zero weight at
each chain step, chain lengths, depth parity of the cancellation chain, and the
first/last swap of the zero-weight chain. The text assembly (theorem_block,
main) stays an undefined body because str + str does not compile in t27.

Checked with t27c from this tree and Zig 0.16.0: typecheck OK, spec-status
IMPLEMENTED, gen 157 lines with no "not yet implemented", test-report 11/11.
Name codes were cross-checked against the original var_names for 66 names.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Oct 4, 2026

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-10-04 19:55:08 UTC

Summary

Status Count
Total Open PRs 47
PRs with Failing Checks 31
PRs with All Checks Green 16
READY 12
FAILING 31
PENDING 0
NO CHECKS YET 0

These columns do not partition: 12 + 31 + 0 + 0 = 43, and there are 47 open PRs. A PR is being counted twice or not at all.

Seal Status

  • ⚠️ STALE -- sha256(compiler.rs)=8597b6ded596 != manifest seal=87e5cbd3ad94.
    The committed NMSE numbers were certified against an older compiler.rs.
    Run scripts/reseal-check.sh locally for the two-step reseal command (advisory; not a merge gate).

@dmitrii-f-t27
dmitrii-f-t27 merged commit 82d8795 into master Oct 4, 2026
23 of 25 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Port scripts/gen_w388_lean.py (Python, 8 functions) to specs/port/scripts/gen_w388_lean.t27

1 participant