How it uses Jev
The plugin sends numbered source snippets as state. For each matched lint rule it asks a Noul question about whether the snippet violates that rule. When the rule has location guidance and the snippet can be located, it also asks a Choice question to select a source line or range, with an `unknown` option. The caller validates returned answers before using them as verdicts and annotations.
What Jev decides
Decide whether the rule is violated by the numbered snippet.
One source snippet is stored under `state.snippets.s0`; its source text and rule are supplied by the current match.
App workflow
- Prepare snippets
Matched source snippets are placed in state under stable request-local references such as `s0`.
- Ask typed questions
The request builder creates one Noul violation question per match and, when a source location is available, one Choice location question.
- Validate and report
The response parser checks the answer type and probability; the location answer must match one of the request's criteria before it can be used.
Why it is interesting
It combines a yes/no violation decision with a second, evidence-localized decision, while reserving an explicit unknown location for uncertain annotations.