Check claims for unbacked certainty language
check_provenance_claimsScans content for certainty claims like '(verified)' or 'guaranteed' that lack a proper provenance tier or source reference before publishing.
Instructions
Scans reader-facing claims for certainty-implying language ("(verified)", "independently verified", "guaranteed", "fact-checked", "100% accurate", ...) that isn't backed by an appropriate provenance tier, plus tiers that require a sourceRef but don't have one, and claims carrying an unrecognized tier. This is the exact pattern that caught ~150 false '(verified)' labels on a live site after they had already shipped -- run it on any copy, marketing page, or AI-drafted content that makes factual-sounding claims before it ships, not after. The default phrase list is a starting point drawn from that one incident, not a taxonomy -- it will miss phrases it doesn't know about (e.g. 'clinically proven', 'third-party tested'); extend certaintyPhrases for your domain. Negation detection is a fixed character window before a match, not a parser, so it can miss a negation in an earlier clause or over-suppress one further away. An empty result means every claim's certainty language (that this tool's phrase list and negation window caught) is backed by its tier.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| claims | Yes | The claims to check. | |
| caseSensitive | No | Case-sensitive phrase matching. Default false. | |
| negationWindow | No | Characters before a phrase match to scan for a negation word ('not', 'without', ...). Default 40. | |
| certaintyPhrases | No | Override the certainty-phrase vocabulary. Defaults to a generic starter list ('(verified)', 'independently verified', 'proprietary dataset', 'guaranteed', 'fact-checked', '100% accurate', ...). | |
| certaintyRequiresTier | No | Tiers strong enough to back certainty language. Default ['verified']. | |
| requireSourceRefForTiers | No | Tiers that must carry a non-empty sourceRef. Default ['verified']. |