ef4ac60b81
DELTA MEASURED on live prod grades (live ordering unchanged): MLB 7/8 props move (87.5%), mean 2.5 places, TOP READ CHANGES (corey seager hits 1.5 under -> jake burger hits 0.5 over). WNBA 25/25 move, mean 4.1, max 12. This is a large re-ordering, not a tweak. Caveat recorded rather than buried: MLB had only 8 graded props at measurement time. The percentages are real; the sample is one small slate. Re-run before the flip -- it is one call. PER-SPORT DOCTRINE ENFORCED IN CODE. WNBA moves the most and must NOT adopt this: its p_win is anti-predictive, so ranking that board by p_win would sort it by a signal measured to point the WRONG WAY -- worse than the incumbent, not better. A comment would not have stopped a future flip from going global, so FORECAST_RANKED_SPORTS = Set(['mlb']) gates the forecast_rank stamp, with tests asserting no sport inherits MLB's result. A sport joins only by passing its own holdout. EDGE IS NOW DIAGNOSTIC-ONLY IN DISPLAY. MobileEdgeBoard.EdgeCell rendered green (--g-a) for positive edge and red (--miss) for negative. Two things were wrong: green/red IS a quality claim on a quantity that does not predict, and ROW-GRAMMAR reserves red for settled-negative ONLY -- a negative diagnostic is not a settled loss. Now neutral mono with a diagnostic tooltip; header reads "MKT GAP · DIAGNOSTIC". The number is still shown -- no display went blank. DeskShowcase neutralised likewise. PINNACLE LOGGED, NOT ENSHRINED. Per the order, "market-not-sharp" is PENDING-RECOVERY rather than a confirmed permanent limitation. The single question for PropLine is in BLOCKERS.md with its evidence, and MASTER-PLAN now carries the pending status instead of the permanent claim. Live sorts remain byte-identical: selectTopGrades, flattenToEdgeBoard and topGradedService all still call the incumbent. Gates: 4,041 tests / 323 suites green; next build exit 0. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01QJs13VsyiSKYQP6rj3NNmc
46 lines
2.0 KiB
Markdown
Executable File
46 lines
2.0 KiB
Markdown
Executable File
# VYNDR — Blockers
|
|
|
|
## BLOCKER-001: Hosting Decision
|
|
**Status:** OPEN
|
|
**Impact:** Blocks deployment (Phase 3)
|
|
**Options:**
|
|
- Vercel — free tier, great for Next.js, limited backend
|
|
- Railway — better for full-stack, Node.js native, $5/mo start
|
|
**Decision needed by:** End of Phase 1
|
|
**Owner:** Kev
|
|
|
|
## BLOCKER-002: Auth Provider
|
|
**Status:** RESOLVED (2026-03-21)
|
|
**Decision:** Supabase Auth. See DECISION-004.
|
|
|
|
## BLOCKER-003: WSL2 Cannot Resolve *.supabase.co Domains
|
|
**Status:** OPEN
|
|
**Impact:** Blocks applying Feature 1.4 migration and running verify-schema.js from CLI
|
|
**Details:**
|
|
- WSL2 DNS resolver (10.255.255.254) cannot resolve `*.supabase.co` TLD
|
|
- Google DNS (8.8.8.8) returns NXDOMAIN — may be a new project with DNS propagation delay
|
|
- `*.supabase.com` (e.g., pooler, api) resolves fine
|
|
- Migration SQL is written and validated (37 tests pass)
|
|
**Workaround:** Apply migration via Supabase Dashboard SQL Editor
|
|
**Resolution path:** Either DNS propagates, or add Supabase IP to /etc/hosts, or use `supabase link` with access token via api.supabase.com
|
|
**Owner:** Kev
|
|
|
|
|
|
## PINNACLE MLB PROP COVERAGE STOPPED — 2026-07-31 (open, external)
|
|
|
|
**One question to PropLine:** *why did Pinnacle MLB player-prop coverage stop on
|
|
2026-07-31?*
|
|
|
|
**Evidence:** `closing_captures` MLB, pinnacle: 103,940 rows over 07-20 → 07-30,
|
|
then **4,022 → 0** on 07-31 and zero since, while every other book continued
|
|
normally (07-31: 47,606 non-pinnacle rows). `line_type='sharp'` is a label applied
|
|
in `closingCapture.js` via `SHARP_BOOKS` — same feed, not a separate provider.
|
|
|
|
**Why it matters:** Pinnacle is the only sharp anchor we have ever had for props
|
|
(17,090 two-sided captures in that window). Without it the consensus ruler is a
|
|
**market** consensus, not a **sharp** one.
|
|
|
|
**Status:** `market-not-sharp` is **PENDING-RECOVERY, not confirmed permanent.**
|
|
Do NOT enshrine it in MASTER-PLAN as a permanent limitation until this is
|
|
answered. Not caused by any VYNDR change — the display widening only adds books.
|