Commit graph

14 commits

Author SHA1 Message Date
b3c6099691 feat: StyleAdapter — 5 cuisine templates with element dimension biasing 2026-03-31 12:54:42 -07:00
4773465904 feat: recipe + staple API endpoints with tier gating 2026-03-31 12:49:38 -07:00
2233d55e25 feat: RecipeEngine Level 1-2 — grocery links + affiliate deeplink builder
Add GroceryLink schema model and grocery_links field to RecipeResult.
Introduce GroceryLinkBuilder service (Amazon Fresh, Walmart, Instacart)
using env-var affiliate tags; no links emitted when tags are absent.
Wire link builder into RecipeEngine.suggest() for levels 1-2.
Add test_grocery_links_free_tier to verify structure contract.

35 tests passing.
2026-03-31 12:23:07 -07:00
3a064bcac8 feat: RecipeEngine Level 1-2 — corpus match, substitution, grocery list, hard day mode 2026-03-31 11:50:28 -07:00
97e8889d89 feat: store — recipe search, rate-limit check, substitution feedback logging 2026-03-31 11:29:54 -07:00
925d1eeacb fix: test fixture — add protein_delta to substitution_pairs inserts 2026-03-30 23:16:15 -07:00
2ca76bddec feat: SubstitutionEngine — deterministic swap candidates with compensation hints 2026-03-30 23:13:49 -07:00
ba6766b1d9 fix: staple library — consistent tofu_firm slug, load error handling, typed yield_formats, expanded test coverage 2026-03-30 23:10:51 -07:00
12ebd11092 fix: ElementClassifier — guard empty input, safe JSON decode, dedup heuristic elements, strengthen test assertions 2026-03-30 23:10:49 -07:00
421a52cb50 feat: ElementClassifier -- ingredient element tagging with heuristic fallback 2026-03-30 22:59:46 -07:00
67cfd70e92 feat: data pipeline -- recipe corpus + substitution pair derivation 2026-03-30 22:55:41 -07:00
7fd2cc75c4 feat: tiers -- leftover_mode rate-limited free, style_picker paid+, staple_library free 2026-03-30 22:50:35 -07:00
320657e61a feat: data pipeline -- FlavorGraph molecule index builder 2026-03-30 22:46:53 -07:00
b1fa55c809 feat: data pipeline -- USDA FDC ingredient index builder 2026-03-30 22:44:25 -07:00