Triage evidence collection with Jev
Incoming tickets need a queue, a temperature reading, and a sense of time pressure — then code routes. Jev judges; it does not write the reply.
This unofficial page is the evidence collection slice of the support triage pack. Intent: apply the Jev (TypeSafe System One) decision model to support triage evidence collection. Primary search language: Triage Jev evidence collection. Confirm patterns on docs.typesafe.ai. This site does not sell, issue, or proxy TypeSafe keys. Use a credential you already have from the console or a documented gateway.
Independent angle (cover ≠ clone): Full triage pack (contracts → thresholds → handoff → audit) beats a single support-triage-choice recipe. We do not clone rival recipe IA.
Triage use-case context
Evidence collection for support triage happens before POST /v1/systemone. Jev does not browse your warehouse, retriever, or ESP. You gather the support ticket facts, filter them, then ask snap questions. This slice is where fan-out cost math belongs: batch questions, do not re-send state.
Hub: Support triage hub. Compare, when the other tool is the real job: keyword triage.
Evidence Collection inputs
Collect:
- Latest customer turn (not the whole thread unless the question names it)
- Product + plan the ticket is about
- The one policy excerpt the urgency question needs
Never send:
- Every historical ticket as unstructured paste
- Payment PAN / government IDs (redact in code first)
- Internal Slack gossip that no question reads
Shape the payload like this once the gather step finishes:
{
"ticket": { "id": "T-1042", "body": "Card charged twice after the outage.", "channel": "email" },
"customer": { "plan": "pro", "open_incidents": 1 },
"policy": { "p1": "P1 = safety issue or complete outage" }
}
Decision signals and actions
Each evidence field should change a named answer:
| Id | Type | Job |
|---|---|---|
department |
Choice | billing / technical / sales / other |
frustration |
Score | calm → civil → strong language |
is_urgent |
Noul | time-sensitivity as P(yes) |
Ask department, frustration, and urgency in one call (TypeSafe speculative fan-out). Ignore unused answers in code. A second trip is for hierarchical product taxonomies, not for re-asking the same ticket.
Do not treat a Noul of 0.5 as a “medium” support triage score — it means yes and no are equally likely. Conjunctions stay in your code.
Guardrails and escalation
If the gather step fails (empty support ticket, redaction stripped everything, retriever empty), fail closed on paging on-call or issuing a refund flag. Do not invent evidence so Jev has something to say. TypeSafe’s confidence-gated examples use a lower bar for recoverable reads than for irreversible actions. Those numbers are illustrations. For support triage, treat page_oncall as the high bar (paging on-call or issuing a refund flag). Tune on labels — see offline evaluation.
Evaluation and rollout notes
Your eval set should include thin-evidence cases, not only happy support tickets. Label queue gold, urgency gold, and whether a human would have paged. Pin jev-1.13.0 (the versioned id) after you fit thresholds. jev-latest and the marketing line jev-1.13 can move. Log the response model. TypeSafe’s published list price for jev-1.13 is $0.042 per million input tokens (vendor claim — confirm on the models page); output tokens are free on that same page. Unused distractors still bill as input.
Official Python and JavaScript SDKs read TYPESAFE_API_KEY and retry documented 429/529. This site does not sell, issue, or proxy TypeSafe keys. Use a credential you already have from the console or a documented gateway.
Pack map
| Slice | Page |
|---|---|
| Graph and primitives | decision workflow |
What may enter state |
input contracts |
| What to gather first | you are here |
| Atomic rules | policy checks |
| Act / review / abstain | confidence thresholds |
| Reviewer payload | human handoff |
| What to persist | audit trail |
| How it breaks | failure modes |
| Labeled replay | evaluation |
| Shadow → canary | production rollout |
FAQ
Should evidence live in the question text?
Put facts in state and point instructions at ticket.body, policy.p1, customer.plan. Criteria stay stable so you can replay.
When do I split calls? Ask department, frustration, and urgency in one call (TypeSafe speculative fan-out). Ignore unused answers in code. A second trip is for hierarchical product taxonomies, not for re-asking the same ticket.
Where is the rest of the Triage pack? Start with Triage input contracts and Triage decision workflow. Cluster hub: Use cases.
Can Jev replace the support agent? No. It classifies and scores. Agents, macros, or humans act. See the support triage hub.
Should every company copy TypeSafe’s 0.5 intent floor? No. Official numbers are illustrations. Fit on offline evaluation.
What this page does not claim
- No invented triage accuracy or SLA.
- Schema-safe
department≠ the customer named the right product. - Not official TypeSafe documentation.
- Official TypeSafe status, or that jev.pro issues API keys.
- That a schema-constrained answer is automatically factually correct.
Disclaimer
This is an independent unofficial site and is not affiliated with TypeSafe AI; official documentation is available at https://docs.typesafe.ai.
Primary documentation: https://docs.typesafe.ai. Hub: Use cases.
Sources
Public TypeSafe or adjacent documentation only. No private claims.