Initialize project structure with core files, environment settings, and basic configurations
Co-authored-by: Copilot <copilot@github.com>
This commit is contained in:
29
thoughts.md
Normal file
29
thoughts.md
Normal file
@@ -0,0 +1,29 @@
|
||||
# thoughts.md
|
||||
|
||||
## Current Status
|
||||
- Scaffold complete: `charactergarden/` folder structure created per spec section 9
|
||||
- Core contracts defined in `app/src/types.ts`: Entity, Action, Verb, ValidationResult, StateChange, GameEvent, Turn, Belief, Summary
|
||||
- `docker-compose.yml` created; ollama service gated behind `--profile llm` (not required for MVP)
|
||||
- `.env` created with defaults
|
||||
- Nothing is implemented yet — no logic, no database, no server
|
||||
|
||||
## Current Architecture Decisions
|
||||
- App: Node.js + Fastify + TypeScript
|
||||
- Frontend: React + Vite + TypeScript
|
||||
- Database: better-sqlite3 (synchronous, no ORM)
|
||||
- Ollama is optional; system must work without it (per section 14)
|
||||
- `Event` type renamed `GameEvent` in code to avoid collision with the DOM `Event` global
|
||||
|
||||
## Next Steps
|
||||
1. Implement Truth Engine (`app/src/truthEngine.ts`) — pure validation, no I/O
|
||||
2. Add SQLite schema + db module (`app/src/db.ts`) with the 5 tables from section 7
|
||||
3. Implement App service / turn flow (`app/src/index.ts`) per section 6
|
||||
4. Add Fastify route `POST /turn` that executes the full pipeline
|
||||
5. Stub LLM adapter (`app/src/llmAdapter.ts`) with a fallback parser
|
||||
|
||||
## Open Questions
|
||||
- Should room/location be an Entity attribute or a separate entity type?
|
||||
- What is the initial world state for the MVP (1–2 rooms, ≤3 characters)?
|
||||
|
||||
## Session Notes
|
||||
- 2026-04-23: Project started. Scaffold and type contracts created. No logic yet.
|
||||
Reference in New Issue
Block a user