Churn evidence collection with Jev
Usage curves belong to your warehouse. Jev reads why someone is unhappy (cancel language, effort, save-offer fit). Code blends the two.
This unofficial page is the evidence collection slice of the churn risk decisions pack. Intent: apply the Jev (TypeSafe System One) decision model to churn risk decisions evidence collection. Primary search language: Churn 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): Evidence-first risk bands from tickets and language, with arithmetic in code — not a black-box churn-model clone or rival recipe IA.
Churn use-case context
Evidence collection for churn risk decisions happens before POST /v1/systemone. Jev does not browse your warehouse, retriever, or ESP. You gather the account language + pre-aggregated usage facts, filter them, then ask snap questions. This slice is where fan-out cost math belongs: batch questions, do not re-send state.
Hub: Use cases. Compare, when the other tool is the real job: churn models.
Evidence Collection inputs
Collect:
- Latest qualitative text (ticket, chat, NPS comment)
- Usage buckets you computed (not raw time series)
- Plan / contract flags if offers depend on them
Never send:
- Asking Jev to compute churn probability from 90 days of events
- CSM private notes the customer never said
- Competitor pricing tables as distractors unless the question names them
Shape the payload like this once the gather step finishes:
{
"account": { "id": "A-12", "plan": "pro", "seats": 40 },
"usage": { "wow_delta_bucket": "down_gt_30", "last_active_days_bucket": "21_plus" },
"tickets": { "latest": "We are moving to a competitor unless SSO ships." },
"nps": { "comment": "Setup took weeks." }
}
Decision signals and actions
Each evidence field should change a named answer:
| Id | Type | Job |
|---|---|---|
cancel_intent |
Noul | Is the latest text a cancellation / competitor threat? |
effort |
Score | How painful is the described experience? |
save_offer |
Choice | none / education / discount_review / exec_outreach / other |
Cancel-intent + effort + save-offer in one call. Warehouse risk stays outside Jev and ANDs in code.
Do not treat a Noul of 0.5 as a “medium” churn risk decisions score — it means yes and no are equally likely. Conjunctions stay in your code.
Guardrails and escalation
If the gather step fails (empty account language + pre-aggregated usage, redaction stripped everything, retriever empty), fail closed on exec outreach or a commercial concession. 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 churn risk decisions, treat exec_outreach_or_discount as the high bar (exec outreach or a commercial concession). Tune on labels — see offline evaluation.
Evaluation and rollout notes
Your eval set should include thin-evidence cases, not only happy account language + pre-aggregated usages. Label cancel-intent gold and whether the chosen save play was appropriate. 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 tickets.latest, nps.comment, usage.wow_delta_bucket. Criteria stay stable so you can replay.
When do I split calls? Cancel-intent + effort + save-offer in one call. Warehouse risk stays outside Jev and ANDs in code.
Where is the rest of the Churn pack? Start with Churn input contracts and Churn decision workflow. Cluster hub: Use cases.
Can Jev replace our churn model? No. Keep warehouse risk; use Jev on unstructured complaints and save-offer fit.
TypeSafe mentions churn in the use-case map — is that a product? It is an example of more questions on ticket state, not a separate TypeSafe churn API.
What this page does not claim
- No causal save-rate numbers.
- Not a billing system.
- 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.