Two Unrelated Recalls Named Undeclared Sesame This Week. Mr Bite Already Wrote the Allergy Checker That Would Catch It, and Never Pointed It at a Barcode Scan.
Oliva LLC's baba ghanouj and hummus and Pan Pepin's Para Bien Al Grano were both flagged for undeclared sesame in the same ten-day window. Mr Bite already has a careful allergen-matching function built for AI meal plans, sesame synonyms included, but it is never called when a user scans a barcode, and the barcode pipeline does not even fetch the ingredient text it would need.
Two recalls landed in the same ten-day window this month, from two companies that have never heard of each other. On October 12th, Oliva LLC of Bethlehem, Connecticut recalled its Riad’s Oliva to Go baba ghanouj, spicy baba ghanouj, and hummus, sold at gourmet shops and farmers markets across Litchfield County and the Great Barrington, Massachusetts area, for undeclared sesame. Around the same time, the FDA posted an allergy alert for Pan Pepin’s Para Bien Al Grano, a 24 oz product distributed only in Puerto Rico, for the same undeclared allergen, with affected sell-by dates running October 12th through the 21st. Neither company has reported an adverse reaction so far. Sesame is one of the nine major allergens the FDA requires on a label by name, and it still keeps slipping past two unrelated production lines in the same two weeks, which is less a story about either company and more a reminder that “it’s on the label” is a promise that fails often enough to matter.
That sent me back into Mr Bite’s own code, because I remembered we’d actually built something for this. Not a vague “watch out for allergens” feature. A real function, screenRecipeAgainstAllergens() in supabase/functions/_shared/mrBiteDraftPlan.ts, that takes a recipe and a list of expanded allergy terms and returns one of three verdicts: clear, matched, or unverified. The comment above it is specific about why three states instead of two: “calling it clear tells an allergic user a recipe was checked when it was not; calling it matched deletes whole libraries, since saved recipes routinely carry no ingredient text.” Someone thought hard about this. The matching itself runs through mrBiteExclusions.ts, which expands a user’s raw allergy term into every real-world synonym before checking it against a recipe’s name and ingredients. Sesame’s own entry in that file is thorough: ['sesame', 'tahini', 'halva', 'halvah', 'til', 'gingelly']. It would have caught Para Bien Al Grano’s problem on sight if it were ever given the ingredient text to look at.
Here is the part that sent me looking further: that function and that synonym map are imported in exactly two files, both of them. mrBiteDraftPlan.ts, which builds the AI-generated meal plans, and mrBiteServerTools.ts, which backs the recipe tool calls the coaching chat makes on a user’s behalf. I grepped for every call site. Both are inside the AI meal-planning surface. Neither is anywhere near BarcodeScannerScreen.tsx, the screen that actually runs when someone points their phone at a product. I read that file end to end, 817 lines, and the word “allerg” does not appear in it once. It imports useUserData() for exactly two things, dark mode and a resolved user ID. It never reaches for the allergy list that’s sitting right there on the same profile object mrBiteDraftPlan.ts reads from.
And it’s worse than a missing function call, because even if someone wired screenRecipeAgainstAllergens() into that screen tomorrow, it would have nothing to check. The scanner’s barcode lookups go through openFoodFactsService.ts, which requests a named, explicit list of fields from Open Food Facts: OFF_SEARCH_V2_FIELDS and OFF_SEARCH_CGI_FIELDS. I read both lists. Product name in six languages, brand, three image URLs, serving size, product quantity, the nutriments block. No ingredients_text. No allergens_tags, the field Open Food Facts carries specifically so an app doesn’t have to parse free-text ingredient lists itself. OpenFoodSearchResultCard.tsx, the component that renders a scan result on screen, doesn’t mention ingredients or allergens either, so there’s nowhere for a user to even read the ingredient list themselves and catch the sesame on their own. The allergy data exists on the user’s profile. The matching logic exists, and it’s good enough that someone gave real thought to its failure modes. The one place a user actually encounters a specific, unfamiliar product in the real world never asks either of them a single question.
I don’t think the fix is complicated, which is almost the more uncomfortable part. screenRecipeAgainstAllergens() already returns unverified instead of a false “clear” when ingredient data is missing, exactly the honest answer a scanned product without ingredients_text would need. The scaffolding for doing this safely already exists. It’s just never been asked to look at the one place in the app where a user is standing in front of an actual product, the way the people writing this week’s Para Bien Al Grano allergy alert were.
Three Quick Bites

-
Krasnyi Oktyabr Inc., a Brooklyn seafood wholesaler, recalled 8 oz packages of its Starfish Seafood Trio (cold smoked salmon, halibut, and trout), lot D139149161-153, on October 9th after New York state inspectors flagged a possible Listeria risk. The product shipped to Florida, Georgia, Massachusetts, New York, North Carolina, and South Carolina, and no illnesses have been reported. It’s a reminder that a recall can start from a routine state inspection with no sick customer anywhere in the chain yet. WSOC-TV
-
Gardeners Basics and Eden Brothers both recalled broccoli sprouting seed packets in early October after the FDA matched a sample to the genetic strain behind a Salmonella outbreak that had sickened 32 people as of October 7th. Both companies trace their seeds back to the same bulk supplier lot, and anyone growing sprouts at home from the affected bags is told to discard both the seeds and anything they’ve already grown from them. FDA
-
The FDA’s allergy alert for Pan Pepin’s Para Bien Al Grano, the second undeclared-sesame case in this week’s main story, covers a 24 oz product sold only in Puerto Rico with affected sell-by dates of October 12th through the 21st. Pairing it with Oliva LLC’s recall the same week isn’t a coincidence worth reading too much into, but it is two different companies, two different product categories, and the same specific allergen slipping through two separate label-review processes inside ten days. FDA
Tool of the Week: FARE’s Allergy Alerts Page

Since this issue is about an allergy check our own app never runs, the pick this week is the free public page that already does this job for real recalls as they happen. Food Allergy Research & Education (FARE) keeps a running Allergy Alerts feed, pulled from FDA and USDA notices, searchable and free, no account needed. It’s exactly the kind of thing a coaching app with someone’s allergy list already on file should be cross-checking against automatically, and right now the honest answer is that a reader doing it by hand on FARE’s own site is more protected than someone trusting Mr Bite’s scanner to flag it for them. FARE Allergy Alerts
Thanks for reading. If you want a coach that’s honest about the check it hasn’t wired up yet, Mr BITE is free on iOS and Android.
Collins, building Mr BITE