Methodology

How data and AI are used

See which information is sourced, estimated, or left for you to verify.

01

Sources and dates

Nutrition, food-safety guidance, prices, and food-history claims include a source and date. Pairing suggestions are labeled as editorial.

02

Calculations use fixed rules

First-party portions, nutrients, cost, timing, and required filters are calculated in code. ATK time and yield may come from official public metadata. Cost affects ATK ranking only when a usable estimate exists; public metadata search does not calculate one.

03

Estimates are labeled

Food varies by brand, weight, preparation, and store. Missing or uncertain information is shown instead of guessed.

Nutrition

Nutrition estimates

The prototype uses rounded values informed by representative USDA FoodData Central foods. The current estimates are not tied to exact FDC record IDs, so the data says so explicitly instead of inventing them. Serving grams, preparation state, access date, and estimation method remain attached to every nutrient-bearing graph node.

Raw and cooked forms are not interchangeable. Allergen status is tracked separately as contains, package-label may contain, unknown, or not expected. Composite sauces remain unknown wherever their full formula or label is unavailable, and “not expected” never promises that cross-contact is impossible.

USDA FoodData Central

Food safety

Use a food thermometer

Cook times are planning estimates. When a minimum internal temperature applies, CooksIntelligence shows the authoritative temperature separately and tells the cook to verify it with a food thermometer.

FoodSafety.gov temperature chart

Grocery deals

Retailer destinations and connected data

CooksIntelligence supports preferences for Whole Foods, the Kroger family, Walmart, ALDI, and Target. A saved retailer preference is not evidence of a connected store, price feed, or inventory feed. Each destination is labeled as a verified store connection, user-started weekly-ad source, or official-site link.

Use my location sends coarsened coordinates to OpenStreetMap Nominatim. Each result is accepted only after it is matched to an official Whole Foods store page and store ID.

When you load offers, CooksIntelligence retrieves that store's official public weekly flyer. It returns the advertised product, price labels, dates, source link, and any matched ingredient. The request runs only when you ask for it. Delivery price and stock may differ from the flyer.

The app then checks likely dinner ingredients by category. When AI is configured, only bounded product names, brands, and existing app ingredient IDs are sent for classification. Otherwise fixed rules are used. The user reviews every checked item before recipe search.

CooksIntelligence does not request Amazon or Whole Foods credentials or access either account, carts, Buy Again, or delivery inventory. The grocery handoff copies only the remaining list and opens the official Whole Foods ordering page. It does not add products.

Any sample offers elsewhere in the app are labeled demonstration data and are not redeemable. Verify prices before buying.

The public Nominatim service is suitable only for this test-scale preview. Public release requires a production location provider or a hosted Nominatim service.

Recipe destinations

Publisher links and public ATK planning metadata

Allrecipes, Food Network, America's Test Kitchen, Serious Eats, and Bon Appétit are available as official publisher destinations. Only ATK currently supplies bounded metadata to the guided planner; the other destinations are link-outs and are not scraped, cached, summarized, or represented as publisher integrations.

After you approve Whole Foods dinner offers, CooksIntelligence builds at most 12 rotating ATK searches. Each search uses one, two, or three approved ingredient terms. When you start a search, CooksIntelligence reads ATK's official public search pages and recipe JSON-LD for title, canonical link, total time, yield, ingredient list, diet, and category only.

Directions, editorial commentary, and images are not extracted, retained, persisted, displayed, or sent. Response HTML is discarded after allowlisted metadata parsing. CooksIntelligence does not accept ATK credentials or cookies and does not connect an ATK account or sync saved recipes.

Deterministic code verifies sale-item matches against parsed ingredient text. Choose the number of dinners and apply saved or one-time fish, pork, time, serving, and ranking criteria. The selected recipes' ingredient needs become one combined grocery list.

Eligible candidates are ranked by sale-item coverage and speed. Cost affects ranking only when a usable estimate exists; the current public metadata search does not calculate one.

AI ranking receives opaque candidate keys and bounded planning facts. If a custom exclusion needs semantic review, it also receives the bounded candidate title and ingredient names. After dinners are selected, a separate AI pass compares only the bounded ingredient names and saved pantry display names under temporary surrogate IDs. It returns groups of those IDs; server validation requires every ingredient exactly once and keeps durable names and keys under app control. ATK URLs, search terms, quantities, prices, directions, commentary, and images are not sent. If AI is unavailable, fixed ranking and conservative ingredient grouping remain available. OpenAI requests include a stable SHA-256-derived pseudonymous safety identifier, not a raw account or household ID.

AI assistant

What AI can and cannot do

Meal type, diet, time, nutrition, and catalog eligibility are checked in code before AI ranks plans. If AI is unavailable, fixed ranking is used. AI can classify likely dinner ingredients, but it cannot add recipes, invent prices, change nutrition values, or approve a meal.

The assistant can compare recipes, suggest substitutions, explain techniques, and return cited food history. Nutrition and safety come from fixed app data. Voice audio is streamed and not saved with meals. Guided Cook can move through steps and manage one local timer. Keep the page open and verify doneness and safety yourself. Voice remains owner-only because the server cannot end a modified client's direct session.