# Wikibooks Live Compatibility ## Goal Produce reviewable Wikibooks candidates from live pages without weakening quantity, serving, provenance, or human-approval requirements. ## Phase 1: Validation Precision - [x] Capture representative live parse payloads as offline fixtures, excluding images. - [x] Fix plural normalization before generic-title filtering and bounded Roman-numeral variants. - [x] Exclude narrowly justified dish/descriptor tokens while retaining distinctive ingredient checks. - [x] Verify incomplete quantities/servings still quarantine and title-only false positives become pending. ## Phase 2: Production Recovery - [x] Run focused backend tests and static checks against a disposable PostgreSQL database. - [x] Deploy the importer change to backend and scheduler on `docker-willester`. - [x] Stage a bounded targeted sample and present pending candidate details for explicit approval. - [x] After approval, publish selected recipes and verify Generate creates a meal. ## Done When - [x] At least one licensed, structurally valid recipe is active through the staging/approval workflow. - [x] Production Generate succeeds without reactivating the unsafe legacy catalog. ## Constraints - Never infer missing quantities or servings. - Never auto-approve or copy Wikibooks images. - Preserve immutable raw payloads, attribution, and CC BY-SA metadata.