Problem
Local dev should mirror prod topology: backend, frontend, and OTel collector all up with one command.
Proposed solution
Port docker-compose.yml: app service (built from Dockerfile, port 8000, env vars for OTel exporter endpoint), frontend service (Vite dev server in dev mode, port 5173), jaeger service (jaegertracing/all-in-one, ports 16686 UI + 4317 OTLP). Networks linked. Volumes for hot-reload during dev.
Acceptance criteria
Priority rationale
High: the three-service compose IS the dev experience — one command to a working stack with traces.
Depends on
#6
Problem
Local dev should mirror prod topology: backend, frontend, and OTel collector all up with one command.
Proposed solution
Port
docker-compose.yml:appservice (built from Dockerfile, port 8000, env vars for OTel exporter endpoint),frontendservice (Vite dev server in dev mode, port 5173),jaegerservice (jaegertracing/all-in-one, ports 16686 UI + 4317 OTLP). Networks linked. Volumes for hot-reload during dev.Acceptance criteria
docker compose upbrings all three services up; UI reachable at http://localhost:5173 (after feat: frontend scaffold (Vite + React 19.2 + TS strict, eslint flat + prettier + vitest) #21-feat: hello page hitting /api/v1/health + CSS-variable palette + sample component test #23)./api/v1/healthreachable at http://localhost:8000 (after feat: backend scaffold (FastAPI app, /api/v1/health, /api/v1/echo, sessions) #17).Priority rationale
High: the three-service compose IS the dev experience — one command to a working stack with traces.
Depends on
#6