Files
box-box/documentations/refactor/19-phase-11-weekend-ingestion.md

41 lines
1.4 KiB
Markdown

# Phase 11 Weekend Ingestion
## Purpose
Phase 10 made local data navigable in the Web UI, but the app still needs a
practical way to populate a complete weekend. Phase 11 should make ingestion
work at the same shape users browse: meeting/weekend first, then sessions.
This is a backend/CLI slice for Cursor.
## Scope
Add or refine CLI ingestion so a user can ingest a whole meeting/weekend into
the domain database without manually running one command per session.
The target workflow is:
- ingest meeting metadata and sessions for a `meeting_key`;
- for each session in that meeting, ingest Race Hub datasets;
- report per-session success, partial failure, and row counts clearly;
- keep raw payload provenance.
## Guardrails
- Do not remove single-session ingestion.
- Do not fetch data from React.
- Do not make failed optional analytics endpoints destroy already-ingested
meeting/session metadata.
- Keep tests offline with fake sources.
- Be careful with live/current sessions; completed historical sessions are the
primary target.
## Acceptance Criteria
- A single CLI path can ingest all sessions for a meeting.
- Ingestion summaries make per-session results clear.
- Existing `--ingest-session` behavior still works.
- Store/query/web/frontend tests still pass.
- Add focused ingestion tests for full-weekend orchestration and partial
failures where practical.