7 Commits

Author SHA1 Message Date
Mauricio Barragan 4e8b113b4e fix(build): make husky prepare tolerant so Docker build doesn't fail
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>
2026-07-16 14:01:54 -06:00
Mauricio Barragan f6e8381c20 test(m3): add Upstash read-tier rate limit HTTP test
Node test asserts 429 with Retry-After after 60 GET requests per IP.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-17 21:35:11 -06:00
Mauricio Barragan 8c7127cfde Add Sentry dev probe and observability smoke test.
GET /api/debug/sentry, load .env.local for DSN, Playwright observability spec.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-12 10:38:08 -06:00
Mauricio Barragan fd4170963e Add Sentry, Pino logs, and OTel spans on WS pipeline (M2).
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>
2026-06-11 01:01:20 -06:00
Mauricio Barragan f4def0c214 Refactor API contracts to Zod, zod-to-openapi, and Scalar.
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>
2026-06-11 00:04:12 -06:00
Mauricio Barragan b5ff33d716 Add Husky pre-commit with eslint and Sentry env convention (M0).
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-10 23:51:52 -06:00
Mauricio Barragan 2e8744ccf0 Initial commit: Arb Pulse monolith with CI and optional Fly deploy.
Real-time BTC cross-exchange arbitrage detection (Kraken, Bybit, OKX, Binance)
with React dashboard, GitHub Actions CI, and documented Fly.io deploy workflow.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-08 21:04:53 -06:00