- Phase 0: Scaffold (COMPLETE)
- Phase 2b: BoJ-server cartridge skeleton (COMPLETE — 2026-05-20)
- ABI verification harness (standards#92 Phase 1 + 1b — COMPLETE — 2026-05-20)
- Phase 1: Language Model Parser
- Phase 2: Template Engine
- Phase 3: Bespoke Codegen Generation
- Phase 4: Self-Hosting
- Phase 5: Idris2 Proofs of Template Correctness
- Phase 6: Ecosystem Integration
-
✓ RSR template with full CI/CD (17 workflows)
-
✓ Rust CLI with init/validate/generate/build/run/info subcommands
-
✓ Manifest parser (
iseriser.tomlvia TOML + serde) -
✓ Codegen stubs (generate_all, build, run placeholders)
-
✓ ABI module stubs (Rust-side type mirrors)
-
✓ Idris2 ABI template files (Types.idr, Layout.idr, Foreign.idr)
-
✓ Zig FFI template files (build.zig, main.zig, integration_test.zig)
-
✓ README with architecture, use cases, and -iser family table
-
✓ Machine-readable governance (STATE, META, ECOSYSTEM, contractiles)
-
✓
iseriser cartridgesubcommand — scaffolds a complete boj-server cartridge for an -iser -
✓ Emits 13 files:
cartridge.json,mod.js,panels/manifest.json, top-levelREADME.adoc -
✓ Idris2 ABI:
<iser>-mcp.ipkg+<Iser>Mcp/Safe<Iser>.idr(exposure-gate contract + tool enum) -
✓ Zig FFI: ADR-0006 5-symbol C ABI (
boj_cartridge_init/deinit/name/version/invoke) viacartridge_shim -
✓ Unified gated adapter: REST + SSE + GraphQL + gRPC-compat behind the transaction gate
-
✓ End-to-end verified:
idris2 --buildon emitted ipkg,zig build testonffi/(4/4) andadapter/(5/5) -
✓ Documented:
examples/cartridge-skeleton/README.adoc -
✓ Implements standards#89 sub-issue 1, scaffold side
|
Note
|
Estate-wide fan-out of the regeneration-cartridge pattern across the 28 existing -isers is OWED, but is correctly gated on standards#91 (http-capability-gateway tier-2 production-wiring). Until #91 lands, the unified core stays internal/loopback. |
-
✓
abi-verifysubcommand — diffs an Idris2-derived ABI manifest against a cartridge’s Zig FFI; reports drift across five categories. Phase 1. -
✓
abi-emit-manifestsubcommand — emits the manifest fromSafe*.idrso the Idris2 source is the single authority. Phase 1b. -
✓ Zig reserved-word converter (iseriser#15)
-
✓ GADT-style
data … wheredeclarations skipped in the emitter (iseriser#20) -
✓ Multi-cap acronym variants accept the runtogether form (iseriser#21)
-
✓ Non-canonical Zig switch arms (
falseshorthand) tolerated (iseriser#22) -
✓ Documented:
examples/abi-manifests/README.adoc
-
❏ Define
LanguageDescriptionstruct: name, type system features, compilation target, key primitives, calling convention -
❏ Parse language descriptions from
iseriser.toml[language]section -
❏ Validate language descriptions against known feature sets
-
❏ Map language features to template variables (e.g.,
has_dependent_types→ ABI proof depth) -
❏ Support language feature composition (e.g., "like Chapel but with linear types")
-
❏ Unit tests for language model parsing and validation
-
❏ Integrate Handlebars templates for all generated artifacts
-
❏ Create master template set: Cargo.toml, main.rs, lib.rs, manifest/mod.rs, codegen/mod.rs, abi/mod.rs
-
❏ Create Idris2 ABI templates with language-aware type mappings
-
❏ Create Zig FFI templates with language-aware calling conventions
-
❏ Create CI/CD workflow templates (parameterised by language features)
-
❏ Create documentation templates (README.adoc, ROADMAP.adoc, TOPOLOGY.md)
-
❏ Create RSR governance templates (.machine_readable/ hierarchy)
-
❏ Template validation: verify all placeholders are resolved before output
-
❏ Generate manifest parsers with language-specific fields (e.g., Chapel
[locale], Julia[type-dispatch]) -
❏ Generate codegen engines with language-specific template expansion
-
❏ Generate ABI modules with language-appropriate type mappings
-
❏ Generate example manifests and test fixtures per target language
-
❏ End-to-end test: iseriser generates chapeliser, chapeliser passes
cargo test -
❏ End-to-end test: iseriser generates julianiser, julianiser parses a Julia manifest
-
❏ Iseriser generates iseriser — the meta-framework can regenerate itself
-
❏ Generated iseriser passes all tests of the hand-written iseriser
-
❏ Diff analysis: hand-written vs. generated, converge to zero diff
-
❏ Bootstrap CI: iseriser regenerates itself on every commit, verifies no regressions
-
❏ Prove that template expansion preserves type safety (no ill-typed Rust output)
-
❏ Prove that generated ABI layouts match Zig FFI expectations
-
❏ Prove that generated manifest parsers accept valid TOML and reject invalid
-
❏ Prove that generated CI/CD workflows reference correct file paths
-
❏ Integration with
provenlibrary for shared proof infrastructure
-
❏ PanLL panel: "New -Iser" wizard panel for interactive language description
-
❏ BoJ-server cartridge:
iseriser.generateMCP tool for bot-driven -iser creation -
❏ VeriSimDB backing store: persist language models and generation history
-
❏ Batch generation mode: regenerate all 28 -iser repos from updated templates
-
❏ Publish to crates.io as
iseriserCLI -
❏ Shell completions (bash, zsh, fish)
-
❏ Error messages and diagnostics for template expansion failures