Skip to content

Stage 12 launch: life.vera example + ROADMAP rework + HISTORY trim#612

Merged
aallan merged 1 commit into
mainfrom
claude/stage12-launch-life-example
May 7, 2026
Merged

Stage 12 launch: life.vera example + ROADMAP rework + HISTORY trim#612
aallan merged 1 commit into
mainfrom
claude/stage12-launch-life-example

Conversation

@aallan

@aallan aallan commented May 7, 2026

Copy link
Copy Markdown
Owner

Summary

Open Stage 12 — After the Game of Life — and bundle the campaign-launch artefacts into one PR:

  • examples/life.vera — first agent-written Conway Game of Life that runs cleanly end-to-end on Vera (80x22 grid, three classic patterns interacting). Carries the formal Conway B3/S23 transition rule on next_cell's ensures, so any future edit that breaks the rule fails Tier 1 verification before running. All 32 contracts discharge at Tier 1.
  • HISTORY.md — opens Stage 12 with framing covering the four campaign-residue patterns (scale-only bugs / walker-completeness / browser runtime / codegen silent feature gaps). Trims the verbose v0.0.135–v0.0.138 entries back to the Stage 1/5/9 single-sentence house style.
  • ROADMAP.md — adds String-returning function call in string interpolation produces invalid WASM (i64/i32 mismatch) #602 (String-interp WASM i64/i32 mismatch) and Five prelude combinators silently skipped from every WASM compile (option_map / option_and_then / result_map + two _unwrap_or variants) #604 (five prelude combinators silently skipped from WASM compile) at the top of the stabilisation tier as the codegen residue from the life.vera campaign. Renumbers existing items; agent-integration tier deferred behind seven stabilisation items rather than five. Reframes the recap as four patterns instead of three.
  • Doc-count drift cleanup: 3,761 → 3,766 tests and 33 → 34 examples across TESTING.md, CLAUDE.md, AGENTS.md, docs/index.html, ROADMAP.md. Site assets (llms.txt / llms-full.txt / index.md) regenerated.

Test plan

  • pytest tests/ -q — 3,752 passed, 14 skipped (life.vera roundtrips through every pipeline stage; tier-counts test bumped 222 → 254 T1 / 248 → 280 total)
  • mypy vera/ — clean
  • python scripts/check_conformance.py — 86 programs pass
  • python scripts/check_examples.py — all 34 examples pass check + verify
  • python scripts/check_examples_readme.py — 30 vera-run commands valid
  • python scripts/check_examples_doc.py — EXAMPLES.md code blocks parse
  • python scripts/check_doc_counts.py — consistent
  • python scripts/check_limitations_sync.py — consistent
  • python scripts/check_site_assets.py — up to date
  • vera run examples/life.vera — 200+ generations, zero corruption

Summary by CodeRabbit

  • New Examples

    • Added Conway's Game of Life example programme featuring recursive loops, ANSI cursor control, and formal rule verification.
  • Documentation

    • Updated example inventory to 34 programmes and revised test metrics.
    • Expanded development roadmap with stabilisation priorities and near-term implementation order.
    • Introduced Stage 12 development history documenting recent compiler improvements.

The bug-killing campaign that ran from v0.0.120 through v0.0.138 closed
sixteen runtime/codegen bugs; the first agent-written Conway Game of
Life now runs cleanly end-to-end. Open Stage 12 in HISTORY ("After the
Game of Life"), rework the ROADMAP stabilisation tier to incorporate
the new bugs surfaced by the campaign, and add the canonical life.vera
as example #34.

Specifically:

* examples/life.vera -- 80x22 Conway Life with Gosper Glider Gun,
  R-pentomino, and Pentadecathlon. Carries the formal B3/S23 rule on
  next_cell ensures, so any future edit that breaks the rule fails
  Tier 1 verification before running. All 32 contracts discharge at
  Tier 1; updates EXAMPLES.md and examples/README.md.
* HISTORY.md -- opens Stage 12 with framing covering the four
  campaign-residue patterns (scale-only bugs, walker-completeness
  gaps, browser-runtime gaps, codegen-side silent feature gaps);
  trims the v0.0.135-v0.0.138 entries to the Stage 1/5/9
  single-sentence style.
* ROADMAP.md -- adds #602 (String-interp WASM i64/i32 mismatch) and
  #604 (five prelude combinators silently skipped from WASM compile)
  at the top of the stabilisation tier as the codegen residue from
  the life.vera campaign; renumbers existing items. Reframes the
  campaign recap as four patterns instead of three.
* tests/test_verifier.py -- bumps the all-examples tier-counts test
  trajectory entry for life.vera (+32 T1 / +32 contracts).
* Doc-count drift fixes: bumps test count 3761 to 3766 and example
  count 33 to 34 across TESTING.md, CLAUDE.md, AGENTS.md,
  docs/index.html, ROADMAP.md. Regenerates llms.txt / llms-full.txt /
  index.md from updated source.

Co-Authored-By: Claude <noreply@anthropic.invalid>
@coderabbitai

coderabbitai Bot commented May 7, 2026

Copy link
Copy Markdown

Review Change Stack
No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 713d03f8-0a9a-45d0-be48-ad6da64d142b

📥 Commits

Reviewing files that changed from the base of the PR and between 15ebb17 and 225407b.

⛔ Files ignored due to path filters (5)
  • docs/index.html is excluded by !docs/**
  • docs/index.md is excluded by !docs/**
  • docs/llms-full.txt is excluded by !docs/**
  • docs/llms.txt is excluded by !docs/**
  • examples/life.vera is excluded by !**/*.vera
📒 Files selected for processing (9)
  • AGENTS.md
  • CHANGELOG.md
  • CLAUDE.md
  • EXAMPLES.md
  • HISTORY.md
  • ROADMAP.md
  • TESTING.md
  • examples/README.md
  • tests/test_verifier.py

📝 Walkthrough

Walkthrough

This PR documents the addition of the 34th example program (examples/life.vera, Conway's Game of Life) and updates all dependent documentation, metrics, test counts, and development roadmap priorities to reflect the new exemplar and Stage 12 campaign closure. All changes are factual documentation updates.

Changes

Conway's Game of Life Example & Documentation Updates

Layer / File(s) Summary
Example Documentation
EXAMPLES.md, examples/README.md
New "Conway's Game of Life" section added to EXAMPLES.md with formal B3/S23 rule specification in ensures clause and recursive rendering via ANSI cursor control; life.vera entry added to Advanced examples index with runnable command.
Development History
HISTORY.md, CHANGELOG.md
Stage 12 ("After the Game of Life") introduced with narrative closure of GC-rooting and WASM/runtime correctness campaign; v0.0.135–v0.0.138 version entries document codegen, host-runtime hygiene, closure free-variable walking, and GC shadow push/pop imbalance fixes tied to life.vera; CHANGELOG documents example addition and roadmap/history reordering.
Roadmap Priorities
ROADMAP.md
Roadmap status figures updated to 34 examples; stabilization narrative expanded with identified closure patterns; implementation-order tables reordered to prioritize specific codegen/browser issues (#602, #604, #609, #610); agent-integration tier renumbered with Inference config (#370) earlier; "Completed phases" section mentions Stage 12 now open.
Metrics & Counts
AGENTS.md, CLAUDE.md, TESTING.md
Example count updated from 33→34 throughout: compiler-testing invariants, example-check command descriptions, project layout documentation, validation script descriptions, language feature coverage mappings, round-trip testing paragraphs, and pre-commit hook documentation all reflect new baseline.
Test Assertions
tests/test_verifier.py
Expected aggregate verification totals updated in test_overall_tier_counts: tier1_verified 222→254, total 248→280; tier3_runtime unchanged at 26; narrative documentation for "All examples together" adjusted.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Possibly related PRs

  • aallan/vera#405: Modifies ROADMAP.md and HISTORY.md documentation structure and content updates.
  • aallan/vera#601: Adds browser-target stabilization items and example-count updates to ROADMAP.md and CHANGELOG.md.
  • aallan/vera#423: Updates AGENTS.md example-count validation and extends scripts/check_doc_counts.py to validate count consistency.

Suggested labels

docs, tests

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately and concisely summarises the three primary changes: the new life.vera example, the ROADMAP restructure, and the HISTORY trim. It is specific, clear, and directly reflects the main objectives of the changeset.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch claude/stage12-launch-life-example

Comment @coderabbitai help to get the list of available commands and usage tips.

@codecov

codecov Bot commented May 7, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 90.92%. Comparing base (15ebb17) to head (225407b).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #612   +/-   ##
=======================================
  Coverage   90.92%   90.92%           
=======================================
  Files          59       59           
  Lines       22997    22997           
  Branches      259      259           
=======================================
  Hits        20910    20910           
  Misses       2080     2080           
  Partials        7        7           
Flag Coverage Δ
javascript 57.36% <ø> (ø)
python 94.74% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@aallan aallan merged commit ec46cf8 into main May 7, 2026
19 checks passed
@aallan aallan deleted the claude/stage12-launch-life-example branch May 7, 2026 18:46
aallan added a commit that referenced this pull request May 8, 2026
Line 3 said "through Stage 11, across 55 active development days"
while line 327 footer (just bumped to 56 in commit 431584d) said
"56 active development days".

Ground truth: `git log --pretty=format:'%ad' --date=short | sort -u
| wc -l` returns 56 — so 56 is correct.

Line 3 also had a stale "through Stage 11" scope qualifier — Stage
12 has been open since v0.0.138 (PR #612) but that PR's bump didn't
touch line 3.  Fixed both at once: "through Stage 12, across 56
active development days".

Co-Authored-By: Claude <noreply@anthropic.invalid>
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.

1 participant