| key | type | primitive | tier |
|---|---|---|---|
cites_sources | must_have | regex_match@1 | — |
grounded_in_references | scored | llm_judge@1 | 2 |
no_fabricated_facts | must_not | llm_judge@1 | 2 |
answers_the_question | scored | llm_judge@1 | 1 |
**Judges:** whether a RAG answer is grounded in its retrieved passages — citations present, every claim supported, nothing fabricated, and the actual question answered. **Use when:** you ship a RAG assistant and a wrong-but-confident answer costs you trust (support bots, doc Q&A, research copilots). Pass `reference_set_id` (or inline references) with each verify.
curl -s -X POST $API/v1/rubrics -H "Authorization: Bearer $KEY" -H "Content-Type: application/json" \
-d @templates/rag-grounding-check/rubric.json
curl -s -X POST $API/v1/verify -H "Authorization: Bearer $KEY" -H "Content-Type: application/json" \
-d '{"rubric_id":"<id>","submission":{"inline":"The refund window is 30 days [1]."},"options":{"wait_ms":45000}}'MCP: `rubric_compile` with this rubric.json, then `verify_submit { rubric_id, submission: { inline: "..." } }`.