|
5 | 5 | [metadata] |
6 | 6 | project = "iseriser" |
7 | 7 | version = "0.1.0" |
8 | | -last-updated = "2026-04-04" |
| 8 | +last-updated = "2026-05-20" |
9 | 9 | status = "active" |
10 | | -session = "converted from scheme — 2026-04-11" |
| 10 | +session = "standards#89 Phase 2b — cartridge scaffolder shipped" |
11 | 11 |
|
12 | 12 | [project-context] |
13 | 13 | name = "Iseriser" |
14 | | -purpose = """Meta-framework that generates new -iser projects from language descriptions""" |
15 | | -completion-percentage = 48 |
| 14 | +purpose = """Meta-framework that generates new -iser projects from language descriptions, plus the boj-server cartridge skeleton that wires each -iser into the unified regeneration-cartridge pattern.""" |
| 15 | +completion-percentage = 62 |
16 | 16 |
|
17 | 17 | [position] |
18 | | -phase = "phase-1-complete" # design | implementation | testing | maintenance | archived |
19 | | -maturity = "experimental" # experimental | alpha | beta | production | lts |
| 18 | +phase = "phase-2b-complete" # design | implementation | testing | maintenance | archived |
| 19 | +maturity = "alpha" # experimental | alpha | beta | production | lts |
| 20 | + |
| 21 | +[capabilities] |
| 22 | +# CLI subcommands shipped (as of 2026-05-20). |
| 23 | +subcommands = [ |
| 24 | + "init", # initialise an iseriser.toml manifest |
| 25 | + "validate", # structural + semantic validation |
| 26 | + "generate", # scaffold a complete -iser repo |
| 27 | + "cartridge", # scaffold a boj-server cartridge skeleton (standards#89 Phase 2b) |
| 28 | + "info", # print a summary of a manifest |
| 29 | + "scan", # walk a repo and recommend -iser tools |
| 30 | + "abi-verify", # diff Zig FFI vs Idris2 ABI manifest (standards#92 Phase 1) |
| 31 | + "abi-emit-manifest", # derive ABI manifest from Safe*.idr (standards#92 Phase 1b) |
| 32 | +] |
20 | 33 |
|
21 | 34 | [route-to-mvp] |
22 | 35 | milestones = [ |
23 | | - # No milestones recorded |
| 36 | + "Phase 1 complete (2026-03-21) — scaffold, CLI, manifest parser, codegen, ABI types", |
| 37 | + "standards#92 Phase 1 + 1b complete (2026-05-20) — abi-verify + abi-emit-manifest shipped", |
| 38 | + "standards#89 Phase 2b complete (2026-05-20) — cartridge subcommand emits the full boj-server cartridge skeleton (PR #24)", |
24 | 39 | ] |
25 | 40 |
|
26 | 41 | [blockers-and-issues] |
| 42 | +# All open work is correctly parked. No active iseriser-side blockers. |
27 | 43 | issues = [ |
28 | | - "No blockers — Phase 1 complete, ready for Phase 2", |
| 44 | + "standards#90 — regen.yml fan-out across the 28 -iser repos remains owed; gated on standards#91 (gateway tier-2)", |
| 45 | + "standards#91 — http-capability-gateway tier-2 production-wiring; ~8-12wk programme; the real blocker for the public surface going live", |
| 46 | + "standards#92 — Class B/C/D drift across ~15 cartridges (sub-issues #150-156); active PR train on the boj-server side", |
29 | 47 | ] |
30 | 48 |
|
31 | 49 | [critical-next-actions] |
32 | 50 | actions = [ |
33 | | - "Begin Phase 2 — implement core domain logic for iseriser", |
34 | | - "Write property-based tests for manifest parsing", |
35 | | - "Define Idris2 ABI proof obligations for Phase 3", |
| 51 | + "Standby for standards#91 to land before opening the 28-repo regen.yml fan-out", |
| 52 | + "Continue the standards#92 drift sweep as Class B/C/D sub-issues land", |
| 53 | + "Phase 3 (TBD) — explore generating the Zig FFI directly from the Idris2 ABI rather than the current scaffolded-once + hand-evolved pattern", |
| 54 | +] |
| 55 | + |
| 56 | +[recent-prs] |
| 57 | +# 2026-05-20 session — full provenance. |
| 58 | +prs = [ |
| 59 | + "#23 — revert wrong-place adapter emission (standards#89 sub-issue 1 follow-up)", |
| 60 | + "#24 — cartridge scaffolder (standards#89 Phase 2b)", |
| 61 | + "#25 — cartridge ipkg dep correction: depends = base, contrib", |
36 | 62 | ] |
37 | 63 |
|
38 | 64 | [maintenance-status] |
39 | | -last-run-utc = "2026-04-04T00:00:00Z" |
40 | | -last-result = "unknown" # unknown | pass | warn | fail |
| 65 | +last-run-utc = "2026-05-20T11:30:00Z" |
| 66 | +last-result = "pass" # unknown | pass | warn | fail |
0 commit comments