npm ci --prefix web installs the web package's file:.. dependency on root, which runs the root prepare script (husky). In the Docker build stages husky isn't installed, so 'husky' exits 127 and the build fails. 'husky || true' no-ops when the binary is absent (Docker/CI) while still running normally in local dev where husky is present.
Co-authored-by: Cursor <cursoragent@cursor.com>
Capture REST/WS/SSE errors in Sentry, emit structured pino logs with correlation IDs, and trace the book-tick pipeline to Sentry via OpenTelemetry.
Co-authored-by: Cursor <cursoragent@cursor.com>
Replace hand-written OpenAPI and Swagger UI with schema-driven docs at /api-docs and Zod validation on request bodies.
Co-authored-by: Cursor <cursoragent@cursor.com>