Skip to content

AI policy key

Every search row carries ai_policy_bits: {ai_policy_version, ai_policy_schema, use, action, blocked} — the business’s sealed AI policy as bitmasks. This page is the key. The same key is served, public and unauthenticated, at GET /v1/ai-policy-key (cacheable for a day), and is built into @masterdb/shared and both verifier libraries.

The rule. A bit is set exactly when the sealed boolean of that name is true. Positions are fixed per ai_policy_schema and only ever appended. A blocked-context code bc{n} is bit n−1 of the blocked mask and is never reused or renamed; a context that is ever retired keeps its number. At ai_policy_version 0 (no sealed AI policy) every mask is 0.

Code Number Bit Name Meaning Since schema
bc1 1 0 adult_sexual Adult and sexual content 2
bc2 2 1 alcohol Alcohol 2
bc3 3 2 crime_illegal Crime and illegal activity 2
bc4 4 3 death_tragedy_disaster Death, tragedy and disaster 2
bc5 5 4 firearms_weapons_violence Firearms, weapons and violence 2
bc6 6 5 gambling_betting Gambling and betting 2
bc7 7 6 mental_health_self_harm Mental health, self-harm and crisis 2
bc8 8 7 politics_elections Politics and elections 2
bc9 9 8 regulated_advice Regulated advice (medical, legal or financial) 2
bc10 10 9 tobacco_vaping_drugs Tobacco, vaping and recreational drugs 2

A set bit: the business does not want its published data used to build a response in that context. A suppression list, not a rating of the business.

Bit Name Since schema
0 cite_as_source 1
1 definitive_source 1
2 prefer_over_inference 1
3 include_in_recommendations 1
4 quote_policy_verbatim 1
5 prices_indicative 1
6 state_publish_date 1
Bit Name Since schema
0 answer 1
1 quote 1
2 reserve 1
3 purchase 1
4 contact 1
5 hand_to_human 1

The purchase bit is withheld on rows while the business’s authorised endpoints are suspended; the sealed record a fetch returns still says what the business sealed.

ai_policy_schema Adds
1 the seven use toggles and six action terms (sealed as terms_schema 1 in the earlier masterdb/terms/1 form)
2 the ten blocked contexts, bc1–bc10
{ "ai_policy_version": 4, "ai_policy_schema": 2, "use": 79, "action": 51, "blocked": 130 }

use 79 = bits 0, 1, 2, 3, 6 (cite as source, definitive source, prefer over inference, include in recommendations, state publish date); action 51 = bits 0, 1, 4, 5 (answer, quote, contact, hand to human); blocked 130 = bits 1 and 7: bc2 alcohol and bc8 politics_elections.