Evidence
Every other AI tool's failure mode is confident fabrication. In regulated cosmetics that's a liability event, not an inconvenience. Tamats is built so a factual, safety, or regulatory claim either carries a retrievable source or the agent says so and stops — enforced by code that runs on every turn, not a prompt asking the model to behave.
An illustrative example of the abstain behavior — fixed copy below, not a live query. One case where the corpus has an answer, one where it doesn't yet.
Does titanium dioxide need special ingredient-list labeling when used as a UV filter in the EU?
Yes — when present as an engineered nanomaterial, EU rules require it to appear in the ingredient list followed by "(nano)" [1].
[1] Regulation (EC) No 1223/2009 (EU Cosmetic Products Regulation) — Article 19(1)(g), nanomaterial labeling
What is the maximum use level for bakuchiol in a leave-on facial cream sold in Vietnam?
No source retrieved for a Vietnam-specific bakuchiol limit. Nothing asserted — check back once a rulebook covering this ingredient and market is connected.
No citation rendered — nothing to point at.
Four steps run on every factual turn, in order, before a citation reaches the screen.
Every tool call that returns literature, INCI data, web search, or social results builds a numbered source list for that turn — not from the model's memory, from what was actually retrieved.
That numbered list is handed back to the model before it writes a word, so a [n] marker is a pointer to a source it was given, never a guess it made up.
A pure, deterministic resolver checks every [n] the model writes against the registry. A number with no matching source is flagged — the same check runs on the server and in the client, so numbering can never drift between them.
A flagged turn renders a non-destructive "unverified" badge inline. The claim's text is never rewritten, hidden, or regenerated — only marked.
Abstention is the feature, not a gap: a "no source found" answer is the behavior you can defend to an auditor, and a fabricated confident one is the behavior you can't. Every verified turn stores a compact record — whether it passed, how many markers were flagged, and what kind — alongside the saved message, so a reviewed conversation keeps its badges after the page reloads. Every citation in that record carries the same source, title, and year as the underlying literature or regulatory hit it points to — nothing in the trail is typed in by hand.