Continue F1 predictor validation after MC-4841. User asked Luci to carry on from the current F1 prediction state. Scope: 1. Rebuild Japan 2026 FP analysis with the current ric...
StateDoneNext ActionClosedOwnerLuciRuntimeClosedAge4d ago
Ticket is done; runtime is closed.·profile claude_opus_1m_medium
Description
MC-4858
Continue F1 predictor validation after MC-4841.
User asked Luci to carry on from the current F1 prediction state.
Scope:
1. Rebuild Japan 2026 FP analysis with the current richer FP-analysis code, limited to Japan only.
2. Do not run season-wide backfills and do not submit or modify Superbru picks.
3. Compare richer FP output against stored actual Japan result:
- weighted FP top-10 hit rate
- exact-position count
- winner hit/miss
- podium-set hit/miss
- ideal-lap ranking and any richer telemetry fields now available
4. Update the dashboard/report evidence so Japan can be compared with Australia, China, Miami, and Monaco.
5. Recommend whether this changes the FP weighting conclusion. Default hypothesis: no global weight change unless Japan materially alters the sample.
Acceptance:
- One-race-only Japan rebuild evidence is recorded.
- Dashboard API returns validation for japan-2026.
- Relevant focused tests/checks pass.
- Any code/doc/data changes are committed and pushed in the f1-predictor repo.
- Comment final metrics back on this ticket.
Activity
done
INTERACTIVE
Luci is working...
Details —
Done
· High
· Luci
▼
SState
Done
Closed
PPeople
TTiming / Details▼
api (human)
Mission Control
4d ago
4d ago
Advanced / Operator evidence
RRouting owner
ROperator console
Ticket is done; runtime is closed.MC is visibility-only. Hermes Luci launches and gates work outside MC, then mirrors evidence/status here.
WWorkflow
Start Dev Review + QA ▾
Select phases to include:
Agents
Review Gates
Decision
WAT routing: choose an agent, review gate, or decision. Buttons use the live runtime when one is attached.
[visibility-only] Queued message recorded for Hermes Luci. MC did not claim the ticket or spawn a runtime.
api4d ago
MC-4858 progress: started one-race Japan-only FP validation rebuild in /home/lucienne/workspace/projects/f1-predictor. I have read AGENTS.md, confirmed existing untracked unrelated files are present, and will avoid Superbru submission paths and season-wide backfills.
api4d ago
MC-4858 final evidence:
Completed one-race Japan-only richer FP rebuild in /home/lucienne/workspace/projects/f1-predictor.
Command run:
PYTHONDONTWRITEBYTECODE=1 PYTHONPATH=. python3 pipeline/09_fp_deep_analysis.py --race japan-2026 --year 2026 --sessions FP1,FP2,FP3
Scope guard:
- No Superbru submit/modify path was run.
- No season-wide backfill was run.
- Only data/fp_analysis/japan-2026 plus docs were changed.
Japan rebuilt summary:
- Sessions analysed: FP1/FP2/FP3.
- Weighted pace rows: 23.
- Rich fields now available: ideal_lap_ranking 23, corner_speed_ranking 23, load_factor_ranking 23, compound_deg_ranking 10, aero_triangulation 11, pu_isolation 11.
- Session warnings in generated payloads: none. FastF1 printed one upstream FP3 timing-integrity warning for driver 30/lap 17.
Validation against data/results/japan-2026.json via /api/fp-analysis/japan-2026:
- Weighted FP top-10 hit rate: 8/10 = 80%.
- Exact-position count: 5.
- Winner hit: yes (ANT P1).
- Podium-set hit: no.
- Weighted top 10: ANT, RUS, PIA, LEC, NOR, HAM, HUL, VER, LAW, HAD.
Comparison documented with Australia/China/Miami/Monaco in docs/fp-validation-phase2.md, with full Japan evidence in docs/japan-2026-fp-validation.md.
Checks:
- node --check dashboard/server.js
- node tests/test_dashboard_fp_api.js
- PYTHONDONTWRITEBYTECODE=1 PYTHONPATH=. python3 -m pytest -q tests/test_fastf1_cache_bypass.py tests/test_openf1_fp_summary.py tests/test_next_race_fp_quality.py tests/test_scoring_correctness.py
- Result: Node checks passed; pytest reported 28 passed.
Committed and pushed:
- b6bab98484778a62e593221455dbb5b192eb4b56 docs: rebuild Japan 2026 rich FP validation
- Branch: kanban/mc-4858-japan-rich-fp-validation
Note: repo still has unrelated pre-existing untracked files/dirs (data/superbru_filled_monaco-2026.png, graphify-out/, test-results/); I left them untouched.
api4d ago
Controller verification after worker handoff:
- Re-ran focused checks from /home/lucienne/workspace/projects/f1-predictor:
- node --check dashboard/server.js
- node tests/test_dashboard_fp_api.js
- PYTHONDONTWRITEBYTECODE=1 PYTHONPATH=. python3 -m pytest -q tests/test_fastf1_cache_bypass.py tests/test_openf1_fp_summary.py tests/test_next_race_fp_quality.py tests/test_scoring_correctness.py
- Result: Node checks passed; pytest 28 passed.
- Fast-forwarded master to b6bab98484778a62e593221455dbb5b192eb4b56 and pushed origin/master.
- Verified b6bab98 is an ancestor of origin/master.
- Remaining untracked files are pre-existing generated artifacts and were not included: data/superbru_filled_monaco-2026.png, graphify-out/, test-results/.
Closing MC-4858 as done.
Controller decision
api4d ago
Mobile visual gate evidence for MC-4858:
APPROVED mobile verdict: 375px Japan FP telemetry page renders live validation without obvious visual failure.
Live dashboard check:
- URL tested locally: http://127.0.0.1:3002/
- Viewport evidence from Chrome DevTools emulation: document width 375px.
- Selected race: Japanese GP / japan-2026.
- Selected page: FP Telemetry.
- Visible metrics: 8/10 FP top-10 hits, 80% hit rate, 5 exact positions, winner hit Yes.
- Table visible with Kimi Antonelli P1 exact and the Japan weighted FP top-10 vs actual rows.
Screenshot file: /tmp/mc4858-japan-fp-mobile-375.png
Command evidence:
python3 /tmp/mc4858_cdp_existing.py
luci-board-manager4d ago
Controller gate complete: MC-4858 worker evidence is now independently verified. From /home/lucienne/workspace/projects/f1-predictor I fetched origin/master, verified b6bab98484778a62e593221455dbb5b192eb4b56 is HEAD and an ancestor of origin/master, confirmed /api/fp-analysis/japan-2026 returns HTTP 200 with validation available=true, top10_hits=8/10, exact_positions=5, winner_hit=true, podium_set_hit=false, weighted_len=23, and reran the focused checks: node --check dashboard/server.js; node tests/test_dashboard_fp_api.js; PYTHONDONTWRITEBYTECODE=1 PYTHONPATH=. python3 -m pytest -q tests/test_fastf1_cache_bypass.py tests/test_openf1_fp_summary.py tests/test_next_race_fp_quality.py tests/test_scoring_correctness.py (28 passed). Closing as done. MC visibility-only boundary preserved: no MC pickup/runtime endpoints were used.
luci-board-manager4d ago
Controller processed the legacy queued_message after independently closing the ticket; MC visibility-only did not spawn a runtime.