The app is built on a simple idea: your policy is the prompt. The model doesn't bring its own opinions about what should be banned, escalated, or allowed. Instead, it reads your policy, looks at the content, and applies your rules. If the policy is sharp, the output is sharp. If the policy is vague, the model fills in the gaps with its own priors, and you get inconsistency.
A few principles that shape the product:
Output quality is downstream of policy quality. Here's what that looks like in practice:
| Symptom you see | Usually caused by |
|---|---|
| Same kind of content classified differently across runs | Vague thresholds; missing examples at the boundary |
| Clean content getting flagged | "Clear" category named or scoped wrong; rules overlap |
| The wrong label applied to a clear violation | Categories defined by adjacency to each other rather than by their own criteria |
| Inconsistent behavior on satire, news, or educational content | Exceptions not spelled out; implicit cultural context |
| Reviewers disagreeing with the model on appeals | Policy says one thing, internal practice does another |
A useful test: if a brand-new reviewer applied your written policy literally, would they reach the same answers as your tenured team? If no, then you'll have an LLM problem too, because the model will use whatever the written policy says, plus its own priors, to fill the gap. Closing that gap by tightening the policy text usually fixes both groups at once.
The elements of a policy each pull on outcomes differently:
Each category should be defined by what it covers, not by contrast with another category. If two categories require you to think about each other to apply correctly, the model will trip on the boundary. When you find yourself writing "this category covers X except when it's actually category Y," that's a sign the underlying taxonomy needs work.
A rough test: cover up the category name and read the description alone. Can you tell which behavior it's describing? If not, the description is leaning on the label.