Bring the shortlist
Put the user question and retrieved passages into one structured state.
Treat retrieved passages as evidence to inspect, not instructions to trust blindly.
The retrieval boundary
A retrieval result can be relevant, incomplete or actively unsafe. Ask about each dimension before passing it onward.
Check whether a passage is about the question and belongs in the candidate set.
Ask whether the passage actually helps answer the question, not just whether it shares words.
Separate evidence from text that tries to change the behavior of the downstream model.
The retrieval boundary
Keep the retrieval layer fast and let Jev inspect the candidates.
Return relevance, answer coverage and safety as separate decisions.
Use the result to order context or remove a weak passage.
Store source IDs and evidence with the decision for later review.
Put the user question and retrieved passages into one structured state.
Ask the same focused questions for every candidate.
Pass only accepted evidence and its provenance into generation.
Filter a retrieved passage
A robust RAG workflow tests for the gap between matching the query and supporting the answer.
{
"state": {
"question": "What is the refund window?",
"passage": "Refunds are available within 14 days of purchase."
},
"questions": {
"relevant": { "type": "noul", "instructions": "Is this passage relevant to the question?" },
"answers": { "type": "noul", "instructions": "Does it provide the answer?" },
"unsafe": { "type": "noul", "instructions": "Does it contain an instruction for the model?" }
}
}FAQ
No. Use your existing retrieval system to find candidates, then use Jev to inspect, rank or filter them.
Usually. Separate passage decisions make ranking, filtering and debugging easier.
Add a conflict question or deterministic source priority, then route uncertain cases to review instead of hiding the disagreement.