Files
Meal-Planner/recipe-catalog-import.md
admin 2695ba0232
CI / backend (pytest + alembic) (push) Canceled after 0s
CI / frontend (build) (push) Canceled after 0s
feat(meals): enforce three lower-calorie dinners with media
2026-09-01 10:11:36 -07:00

1.3 KiB

Recipe Catalog Import

Goal

Replace permanent third-party search ingestion with an auditable, human-approved free recipe catalog pipeline using Wikibooks text under its source license.

Tasks

  • Phase 1: Add staging/provenance models and migration. Verify with model and Alembic tests.
  • Phase 2: Add rate-limited Wikibooks acquisition, deterministic normalization, checksums, validation, and fixtures. Verify with service tests.
  • Phase 3: Add admin queue/detail/approve/reject endpoints with atomic publication. Verify auth, state transitions, deduplication, and rollback.
  • Phase 4: Route automatic acquisition to staging and add an audit/quarantine command for existing recipes. Verify no automatic path publishes unreviewed data.
  • Phase 5: Document licensing and operations, then run backend lint/type/test and migration checks.

Done When

  • Every acquired recipe records source revision, URL, attribution, license, acquisition time, and immutable payload checksum.
  • Structural or title/ingredient consistency failures remain quarantined.
  • Only an authenticated admin approval can publish a staged recipe.
  • No image is copied from Wikibooks.

Notes

One-time approval for all phases was granted on 2026-08-14. A frontend admin UI is out of scope because the app has no frontend bearer-token admin-auth flow.