/ MILESTONES.md
MILESTONES.md
1 # Milestones 2 3 ## M0 — Scaffold accepted 4 5 Target: immediate. 6 7 Scope: 8 9 - repository shape 10 - project vocabulary 11 - architecture docs 12 - RFC/ADR process 13 - placeholder source modules 14 - basic unit tests 15 16 Definition of done: 17 18 - maintainer can clone, inspect, and understand project direction. 19 - no major design concept exists only in chat history. 20 21 ## M1 — Runtime contract alpha 22 23 Target: first development increment. 24 25 Scope: 26 27 - component contract 28 - typestate lifecycle 29 - orthogonal ISA v0 30 - protocol frame v0 31 - deterministic test interpreter 32 33 Definition of done: 34 35 - no HTTP server required. 36 - counter component runs as a simulated instruction program. 37 - lifecycle invariants are tested. 38 39 ## M2 — Session actor alpha 40 41 Scope: 42 43 - one live session as one actor 44 - typed inbound events 45 - patch outbox 46 - lifecycle integration 47 - crash isolation semantics 48 49 Definition of done: 50 51 - session actor can process events and emit patches. 52 - tests cover normal event flow, crash path, timeout path, and shutdown. 53 54 ## M3 — WebSocket proof of concept 55 56 Scope: 57 58 - one HTTP/WebSocket adapter 59 - browser connect 60 - browser event push 61 - server patch push 62 - ack/retry policy 63 64 Definition of done: 65 66 - counter example works in a browser. 67 - reconnect behaviour is documented and tested. 68 69 ## M4 — Rendering/diff beta 70 71 Scope: 72 73 - static/dynamic render segmentation 74 - minimal patch protocol 75 - keyed collection patches 76 - client patch conformance suite 77 78 Definition of done: 79 80 - patch payload is smaller than full HTML for common updates. 81 - failing conformance tests show exact instruction mismatch. 82 83 ## M5 — Public API beta 84 85 Scope: 86 87 - ergonomic component API 88 - typed event helpers 89 - form bindings 90 - navigation commands 91 - examples and guides 92 93 Definition of done: 94 95 - public API is documented. 96 - all public modules have examples. 97 - breaking changes require RFC and ADR. 98 99 ## M6 — 0.1.0 release 100 101 Scope: 102 103 - stable protocol v0 104 - stable component API subset 105 - production caveats documented 106 - Hex package metadata ready 107 - changelog and migration guide 108 109 Definition of done: 110 111 - maintainer can publish to Hex when license and ownership are finalized. 112 - at least one complete example application exists.