Skip to content

Phase 0: Stabilize the foundation #48

@hyperpolymath

Description

@hyperpolymath

Tracking issue for Phase 0 of the production path. See docs/PRODUCTION-PATH.adoc §Phase 0 for the full statement.

Theme

Close the engineering-surface fragility around the proofs. PRs were merging with red CI; the verifier job we added to catch wasmparser breaks was itself silently broken; the ROADMAP claimed things that weren't real. Phase 0 fixes that gap so all subsequent phases have a load-bearing foundation.

Deliverables

  • All CI jobs on main either green or explicitly removed (PR CI triage: fix 4 of 6 persistent red jobs on main #46 is the first round)
  • Track A — Codegen pipeline kicked off
    • tree-sitter-twasm grammar derived from spec/grammar.ebnf, in-tree at tools/tree-sitter-twasm/
    • Idris2 parser at parity with ReScript parser (188-test corpus)
    • ReScript cut (single PR removing all .res + rescript.json + npm deps + workflow steps)
    • Codegen v0 for examples/01-single-module.twasm end-to-end
  • Track B — AffineScript verifier migration
    • Cross-repo PR swapping affinescript/lib/{tw_verify,tw_interface}.ml for subprocess call to typed-wasm-verify binary
    • Retire ~491 LOC of OCaml verifier logic
  • Track C — Audit-floor cleanup
    • cargo audit job on GitHub CI
    • Build real tests/property/property_test.mjs (the TEST-NEEDS ghost)
    • Add Security aspect-test dimension to tests/aspect/
    • Add proof-level regression tests so an Idris2 toolchain bump can't silently break a theorem
  • ROADMAP truthfulness audit: every "DONE" claim verified against a green CI run

Gate to Phase 1

  1. Every commit on main exits CI green (or the gate is explicitly removed from the merge requirement set, with reason recorded in PRODUCTION-PATH.adoc)
  2. Codegen v0 emits valid wasm for examples/01-single-module.twasm, verifiable end-to-end by typed-wasm-verify
  3. ROADMAP.adoc reflects reality

In-flight PRs

Status when this issue closes

The project is defensibly engineered — still a research prototype but one that builds, tests, and ships without hand-holding. Not yet a working compile target; that's Phase 1.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions