JevCandidateSelector evaluates candidates independently when multiple ticket queues, documents or team members may apply. It returns selected, excluded and uncertain groups. The application decides what to do with them.
Example: one ticket concerns both an order and a refund
A customer says, “My order has not shipped. Refund me if it cannot ship today.” Routing to just one of the orders, billing and technical queues may lose the refund request. Acting on the word “refund” alone would ignore the condition. Use JEV to decide which queues should participate. It can recommend both orders and billing and exclude technical support. Classification directs handling; it cannot authorize a conditional refund.Initialize the components
selector and judge initialized here; this example needs only selector.
The two thresholds mean clearly inapplicable and clearly applicable. A billing queue with probability 0.5 belongs in the uncertain group: clarify rather than treating it as unnecessary. The example thresholds are not calibrated.
2. Supply the request and candidate queues
ctx is the current RuntimeContext. Each key is an application queue ID; its value describes the queue. Independent probabilities need not sum to 1. The host must already have checked authorization and availability.
3. Check decision status before using the recommendation
observed in reactive services; a standalone CLI may use observed.block(). SHADOW only records recommendations. Even in ENFORCE this API does not dispatch tickets: the host must explicitly adopt the recommendation.
Run and verify
SetJEV_CP using the example build instructions, then run:
[orders, billing], excludes [technical] and performs zero business actions. This demonstrates separation of classification and execution, not live model accuracy. JevApplicationScenarios source