feat: implement core application structure with Fastify server and SQLite persistence

- Add Fastify server in `app/src/index.ts` with health check and API routes for game state and turn processing.
- Create `latentEntities.ts` to handle personal item plausibility and promote beliefs to facts based on actor context.
- Introduce `llmAdapter.ts` for action extraction from prose input.
- Develop `truthEngine.ts` for pure validation logic, handling all verbs with explicit rejection reasons.
- Define new types in `types.ts` for facts, affordances, and latent entity requests/resolutions.
- Update `docker-compose.yml` for improved service structure and volume management.
- Create frontend structure with React, including Dockerfile, Vite configuration, and initial components for state inspection.
- Implement basic styles and HTML structure for the frontend application.
- Document current status and next steps in `thoughts.md`.
This commit is contained in:
2026-04-23 21:08:38 -04:00
parent 14a07bca7a
commit 1df2ae8164
20 changed files with 1830 additions and 14 deletions

View File

@@ -1,23 +1,29 @@
version: "3.9"
services:
app:
build: ./app
working_dir: /app
ports:
- "${APP_PORT:-3000}:3000"
environment:
- APP_PORT=3000
- NODE_ENV=${NODE_ENV:-development}
- DB_PATH=/data/sqlite/app.db
- OLLAMA_URL=${OLLAMA_URL:-http://ollama:11434}
volumes:
- ./data:/data
depends_on:
- ollama
- ./app/src:/app/src
frontend:
build: ./frontend
working_dir: /frontend
ports:
- "${FRONTEND_PORT:-5173}:5173"
environment:
- CHOKIDAR_USEPOLLING=true
volumes:
- ./frontend/src:/frontend/src
- ./frontend/index.html:/frontend/index.html
- ./frontend/vite.config.ts:/frontend/vite.config.ts
depends_on:
- app