Customer support input contracts with Jev
Triage already picked a queue. This pack decides what happens next: is the customer asking for a refund, does a drafted reply violate policy, should a macro fire? Jev judges; macros, agents, or humans act. Jev does not send the reply.
This unofficial page is the input contracts slice of the customer support actions pack. Intent: apply the Jev (TypeSafe System One) decision model to customer support actions input contracts. Primary search language: Customer support Jev input contracts. 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 support-action pack (contracts → thresholds → handoff → audit) beats a single support-triage-choice recipe. This pack is refunds, commitments, and policy replies — not a clone of rival recipe IA, and not a duplicate of the triage routing pack.
Customer support use-case context
An input contract is the allow-list of fields you will ever POST for customer support actions. It is a decision contract for the ticket thread + drafted reply: if a field is not named in instructions, it should not be in state. That is how you beat noisy “dump the object” integrations — the rival-intent failure mode — without cloning anyone’s IA.
Hub: Support triage hub. Compare, when the other tool is the real job: ticket queues.
Input Contracts inputs
Documented System One inputs: state (string, object, or array of text) and a questions map. English is the primary training language. Images, audio, and video are not accepted.
Allow for customer support actions:
{
"ticket": { "id": "T-2201", "latest": "You promised a refund last week. Charge is still there." },
"draft": { "body": "I issued a $400 goodwill credit." },
"account": { "plan": "pro", "refunds_ytd_cents": 0 },
"policy": { "refunds": "Auto-refund language only if amount extracted in code is under cap.", "promises": "Do not invent credits." }
}
Bind paths: ticket.latest, draft.body, policy.refunds, policy.promises.
Refuse at the wrapper (do not send):
- full CRM novels and every historical ticket
- payment PAN / government IDs (redact first)
- internal Slack gossip no question reads
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.
Decision signals and actions
The contract exists so each primitive stays atomic:
| Id | Type | Job |
|---|---|---|
refund_ask |
Noul | Is the latest turn requesting a refund or chargeback help? |
draft_ok |
Noul | Does draft.body invent a credit vs policy.promises? |
disposition |
Choice | send_macro / hold_promise / escalate_specialist / other |
If a new CRM field appears, either add a question that names it or drop it. Do not “just include it.” Do not treat a Noul of 0.5 as a “medium” customer support actions score — it means yes and no are equally likely. Conjunctions stay in your code.
Guardrails and escalation
Contracts are a guardrail: missing required text → do not call Jev (or ask a Noul “is enough information present?”). That is cheaper than a confident wrong refund_ask. TypeSafe’s confidence-gated examples use a lower bar for recoverable reads than for irreversible actions. Those numbers are illustrations. For customer support actions, treat send_customer_reply as the high bar (sending a customer reply or issuing a credit flag). Tune on labels — see offline evaluation.
Evaluation and rollout notes
Version the contract (field list + criteria git SHA) next to the pinned model. Replay send_macro / hold / escalate gold from senior agents, plus invented-promise gold when either changes. 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 |
you are here |
| What to gather first | evidence collection |
| 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
What happens if I send the whole warehouse row?
jev-1.13 loses accuracy as distractors grow (official jaggedness note). Drop full CRM novels and every historical ticket. 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.
Can I send images of the artifact? No. State is text (string, object, or array of text). Transcribe first.
Where is the rest of the Customer support pack? Start with Customer support decision workflow and Customer support evidence collection. Cluster hub: Use cases.
Is this the same as the support-triage recipe rivals publish? No. Triage routes the ticket. This pack gates actions after routing. Cover the intent; do not clone their slug or outline.
Can Jev replace the agent? No. It classifies and scores. See the support triage hub.
What this page does not claim
- Not a helpdesk or payments product.
- No invented CSAT/AHT numbers.
- Not official TypeSafe.
- 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.