ed6502a880
Three submission methods: - POST /api/bets/quickslip — structured bet entry - POST /api/bets/screenshot — stub OCR with confirm flow - POST /api/bets/sync — coming soon stub Full bet lifecycle: - PATCH /api/bets/:id/settle — settle with outcome, recalculates performance - GET /api/bets — list with status/book/pagination filters - GET /api/bets/performance — ROI, win rate, profit (weekly/monthly/all_time) Payout calculator handles straight bets (American odds) and parlays (multiplied leg payouts). Performance service recalculates on each settlement and upserts into performance table. 33 new tests, 221 total (194 Node.js + 27 Python), all passing. All backend features for Phase 1 + Phase 2 now complete. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2.3 KiB
Executable File
2.3 KiB
Executable File
BetonBLK — Build State
Last Updated
2026-03-22
Current Phase
Phase 2 — Core Product (COMPLETE). Ready for Phase 3.
What Has Shipped
Phase 1 — Foundation (COMPLETE)
- Feature 1.1 — Odds API Integration
- Feature 1.2 — NBA_API Stats Wrapper (FastAPI microservice)
- Feature 1.3 — Prop Analysis Engine (6-step grading pipeline)
- Feature 1.4 — Database Schema (9 tables, RLS, triggers)
- Feature 1.5 — Bet Submission (3 methods)
Phase 2 — Core Product (COMPLETE)
- Feature 2.1 — Parlay Scan (correlation detection, monetization)
- Feature 2.2 — Line Movement + Cascade Detection
Feature 1.5 — Bet Submission (COMPLETE)
- POST /api/bets/quickslip — structured bet entry with payout calculation
- POST /api/bets/screenshot — image upload (stub OCR, needs_confirmation flow)
- POST /api/bets/screenshot/confirm — save confirmed screenshot bet
- POST /api/bets/sync — stub (coming soon)
- PATCH /api/bets/:id/settle — settle bet with outcome, triggers performance recalc
- GET /api/bets — list bets with status/book/limit/offset filters
- GET /api/bets/performance — ROI, win rate, profit for weekly/monthly/all_time
- Payout calculator: straight (American odds) + parlay (multiplied legs)
- Performance service: recalculates on each settlement, upserts into performance table
- Scan session linking for analytics
Test Summary
- Node.js: 194 tests passing (unit + integration)
- Python: 27 tests passing
- Total: 221 tests, all green
What's Next
- Phase 3 — Web MVP
- Feature 3.1 — Landing Page (Next.js)
- Feature 3.2 — Scan UI
- Feature 3.3 — Bet Tracker UI
- Feature 3.4 — Stripe Integration
Active Blockers
- BLOCKER-003: WSL2 DNS cannot resolve *.supabase.co
- Migration 002 needs manual apply via Supabase SQL Editor
Session Log
Sessions 1-5 — 2026-03-21
- Built Phase 1 (Features 1.1-1.4) + Phase 2 (Features 2.1-2.2)
- 188 tests passing
Session 6 — 2026-03-22
- Built Feature 1.5: Bet Submission
- betService.js (create, settle, list bets)
- payoutCalculator.js (straight + parlay payout math)
- performanceService.js (ROI/win_rate/profit recalculation)
- ocrStub.js (MVP screenshot stub)
- routes/bets.js (7 endpoints)
- 33 new tests (unit + integration)
- All backend features for Phase 1 + Phase 2 now COMPLETE
- Total: 221 tests (194 Node.js + 27 Python), all green