{"data":{"status":"fail","jurisdictions":["eu","us"],"tokenCount":12,"matches":[{"allergen":"wheat","term":"wheat","text":"Wheat","start":0,"end":5,"regimes":["eu","us"],"kind":"category","source":"eu","precautionary":false},{"allergen":"milk","term":"milk","text":"milk","start":21,"end":25,"regimes":["eu","us"],"kind":"category","source":"eu","precautionary":false},{"allergen":"soy","term":"soy","text":"soy","start":34,"end":37,"regimes":["eu","us"],"kind":"synonym","source":"fda","precautionary":false},{"allergen":"sesame","term":"sesame seed","text":"sesame seeds","start":48,"end":60,"regimes":["eu","us"],"kind":"category","source":"eu","precautionary":false},{"allergen":"tree-nut","term":"nut","text":"nuts","start":74,"end":78,"regimes":["eu"],"kind":"category","source":"eu","precautionary":true}],"allergens":[{"allergen":"milk","listedIn":["eu","us"],"references":{"eu":"Annex II 7: Milk and products thereof (including lactose)","us":"FD&C Act 201(qq): milk"},"matchCount":1,"firstOffset":21,"precautionaryOnly":false,"notes":["Annex II 7 excepts whey used for making alcoholic distillates including ethyl alcohol of agricultural origin, and lactitol.","FDA Q&A B.7: lactose and ghee still need milk labelling when residual milk protein is present; ingredients that contain no protein are outside the requirement."]},{"allergen":"tree-nut","listedIn":["eu","us"],"references":{"eu":"Annex II 8: Nuts (almonds, hazelnuts, walnuts, cashews, pecan nuts, Brazil nuts, pistachio nuts, macadamia nuts) and products thereof","us":"FD&C Act 201(qq): tree nuts"},"matchCount":1,"firstOffset":74,"precautionaryOnly":true,"notes":["Annex II 8 excepts nuts used for making alcoholic distillates including ethyl alcohol of agricultural origin.","FDA Q&A C.8: only the tree nuts in Table 1 are major allergens."]},{"allergen":"wheat","listedIn":["eu","us"],"references":{"eu":"Annex II 1: Cereals containing gluten (wheat, such as spelt and khorasan wheat)","us":"FD&C Act 201(qq): wheat"},"matchCount":1,"firstOffset":0,"precautionaryOnly":false,"notes":["Annex II 1 excepts wheat based glucose syrups including dextrose, wheat based maltodextrins, glucose syrups based on barley, and cereals used for making alcoholic distillates (products thereof only where the process is not likely to increase allergenicity)."]},{"allergen":"soy","listedIn":["eu","us"],"references":{"eu":"Annex II 6: Soybeans and products thereof","us":"FD&C Act 201(qq): soybeans"},"matchCount":1,"firstOffset":34,"precautionaryOnly":false,"notes":["Annex II 6 excepts fully refined soybean oil and fat, natural mixed tocopherols (E306) and D-alpha tocopherol forms from soybean sources, vegetable-oil-derived phytosterols and phytosterol esters from soybean sources, and plant stanol ester from soybean vegetable oil sterols."]},{"allergen":"sesame","listedIn":["eu","us"],"references":{"eu":"Annex II 11: Sesame seeds and products thereof","us":"FD&C Act 201(qq) as amended by Pub. L. 117-11: sesame"},"matchCount":1,"firstOffset":48,"precautionaryOnly":false,"notes":["FDA Q&A B.5: sesame inside a spice mix must still be declared (e.g. in a Contains statement)."]}],"undeclared":["soy","sesame"],"witnesses":[{"ruleId":"undeclared-allergen","detail":"\"soy\" is a soy term (eu+us) but soy is not in declared.","path":"ingredients","offset":34,"expected":"declared","actual":"soy"},{"ruleId":"undeclared-allergen","detail":"\"sesame seeds\" is a sesame term (eu+us) but sesame is not in declared.","path":"ingredients","offset":48,"expected":"declared","actual":"sesame seeds"}],"versions":{"engine":"allergen-flag/1: token-sequence lexicon match over folded tokens (NFD diacritics stripped, lowercase, simple plural), longest term first, no regex from callers","euAnnexII":"Regulation (EU) No 1169/2011 Annex II, OJ L 304 of 22.11.2011 (publications.europa.eu/resource/celex/32011R1169), cereals entry as amended by Delegated Regulation (EU) 78/2014; fetched 2026-11-04","usMajorAllergens":"FD&C Act 201(qq) per FALCPA (Pub. L. 108-282) and FASTER Act (Pub. L. 117-11, sesame effective 2023-01-01); FDA Q&A guidance Edition 5, January 2025 (fda.gov/media/117410/download); fetched 2026-11-04","sulphiteNames":"Commission Regulation (EU) No 1129/2011 Annex, E 220-228 (publications.europa.eu/resource/celex/32011R1129); fetched 2026-11-04","precautionaryPhrases":"heuristic phrase list (may contain, traces of, shared facility/equipment), not from a regulation"},"limits":["Lexical match only: terms come from the cited texts plus caller extraTerms; a missing match is not evidence of absence.","The 'precautionary' flag is reported, not judged: the EU and US have no harmonised may-contain rule.","Plurals are matched by adding or removing a trailing s; other inflections and misspellings are not.","English lexicon only: text in another language or script finds nothing. Letters outside Latin script make a clean result unknown; Latin-script non-English text cannot be detected.","A 'may contain' marker covers the rest of its sentence, up to a colon or a bracket that closes one opened before it; a term after such a marker in the same sentence is reported precautionary."],"deterministic":true},"_provenance":{"version":"writerslogic-provenance/1","issuer":"did:web:agents.writerslogic.com","verify":{"endpoint":"POST /api/v1/verify-provenance","did":"did:web:agents.writerslogic.com"},"manifest":{"format":"application/json","instance_id":"xmp:iid:21cc97e7-9045-46ad-80e2-3c1afc659a21","claim_generator_info":[{"name":"WritersLogic x402 Agent Hub","version":"2.0.0"}],"title":"Allergen flags in an ingredient list (EU Annex II, US FALCPA + FASTER Act)","assertions":[{"label":"c2pa.actions.v2","data":{"actions":[{"action":"c2pa.created","when":"2026-11-06T01:30:31.383Z","softwareAgent":{"name":"writerslogic-agent-hub/allergen-flag","version":"2.0.0"},"digitalSourceType":"http://cv.iptc.org/newscodes/digitalsourcetype/algorithmicMedia","parameters":{"endpoint":"POST /api/v1/allergen-flag","inputDigest":{"alg":"sha256","hash":"921fd85e88b7ecde3c47cda5472c3bc0d3fe1584c63340c2fda31cf5d205e65b","canonicalization":"JCS"}}}]}},{"label":"c2pa.hash.data","data":{"alg":"sha256","hash":"983add939efc0ff515c0897d13df0d3947676e7ff38353226a22b87d3940443b","name":"jcs-canonical-json(data)"}}]},"credential":{"@context":["https://www.w3.org/ns/credentials/v2"],"id":"urn:uuid:9c0dc09a-8bf2-43e4-86b8-6c8ae2d37d3d","type":["VerifiableCredential","AgentOutputCredential"],"issuer":"did:web:agents.writerslogic.com","validFrom":"2026-11-06T01:30:31.383Z","credentialSubject":{"id":"urn:sha256:983add939efc0ff515c0897d13df0d3947676e7ff38353226a22b87d3940443b","agent":"allergen-flag","endpoint":"POST /api/v1/allergen-flag","outputDigest":{"alg":"sha256","value":"983add939efc0ff515c0897d13df0d3947676e7ff38353226a22b87d3940443b","canonicalization":"JCS"},"inputDigest":{"alg":"sha256","value":"921fd85e88b7ecde3c47cda5472c3bc0d3fe1584c63340c2fda31cf5d205e65b","canonicalization":"JCS"},"manifestDigest":{"alg":"sha256","value":"f88c4432b4b8db4eb43eac8a422bbe7e1e4aa6ee7144a00edc9d52647e7c1ef0","canonicalization":"JCS"},"ingredients":[],"payment":{"scheme":"api-key","network":"eip155:8453","payer":"sample"}},"proof":{"type":"DataIntegrityProof","cryptosuite":"eddsa-jcs-2022","created":"2026-11-06T01:30:31.383Z","verificationMethod":"did:web:agents.writerslogic.com#key-1","proofPurpose":"assertionMethod","proofValue":"z2deybBtgcaLF6be6n6AsqwvQsNYC5B2Hb2YwdXQgrLvqrsD1qydzhpnT2tU28FFbqwzggGbAPZCF9yNQPyL7bjoa"}},"ethSignature":{"type":"EIP-191","signer":"did:pkh:eip155:8453:0x3DBd42560cA7a7E448A2c7DfC9E785526189411f","address":"0x3DBd42560cA7a7E448A2c7DfC9E785526189411f","message":"writerslogic-provenance:195bd8d9def51c499c7774980fdc072eaedb18b70dda754b58a0cfe76278e82b","signature":"0x0b5b35affbcae9dda88fe4a85b28f65a07f2b8838c3e86f6cb7ee58a65a36266073cdcf73bbbfc521385751f80bf4694b5b9e1b4815f72daa2bf02ee588e18cf1b"}}}