diff --git a/CLAUDE.md b/CLAUDE.md index ec39618..48259eb 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -141,3 +141,34 @@ Each development step follows this exact sequence: Do not modify the content. Do not reformat. Do not add imports or change structure. Write it exactly as given. **When a shell command result is pasted**, it is for context only — no action unless explicitly instructed. + +## Current development state — updated 2026-04-25 + +### OTIVM-I — complete +- Fastify backend serving dist/ and save API on port 3000 +- Five trade routes, Ostia → Alexandria, all working +- Journal entries firing on dispatch milestones +- Otium/negotium mechanic working +- Per-player save files in data/saves/ via 8-char hex token +- Token displayed in UI — player can record it to resume on another device +- 128 concurrent players supported + +### Navigation scaffold — complete +- src/screens/ directory established +- Game.jsx renamed to src/screens/Ledger.jsx +- App.jsx manages screen state — ledger and map +- Both screens stay mounted — no state lost on switch +- Map screen shows placeholder — ready for OTIVM-II work + +### OTIVM-II — next +- src/screens/Map.jsx to be created +- Mediterranean rendered using H3 geometry +- Five waypoints plotted using confirmed H3 res-5 IDs +- Route lines drawn between waypoints +- No interactivity required in first Map commit — visual only + +### Architecture decisions locked +- H3 IDs on all waypoints — permanent, TESSERA-compatible +- constants.js / gameState.js / api.js separation — permanent +- Virtual screens via display:none — state preserved in browser +- Save on meaningful events only — not on every tick