/ 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.