Jev implementation checklist
This implementation checklist is independent and unofficial. Not a clone of TypeSafe’s build narrative. Keys come from their console or a marketplace, never from jev.pro. Canonical: docs.typesafe.ai.
This page is for builders crossing from curious to production-minded Jev use. jev.pro is an independent unofficial field guide — not affiliated with TypeSafe AI. Cover intents; do not clone rival IA. Confirm facts on docs.typesafe.ai.
Open-cluster pages are independent field-guide notes. Replicas and third-party interfaces mentioned anywhere on jev.pro are not Jev and not endorsed.
Client and channel
- Pick one production door; record model id + auth in config (matrix).
- First-party: official SDK or
POST /v1/systemonewith your own 429/529 backoff. - Do not mix
boolean/noulorjev-latest/typesafe/jev-1.13across doors. - Env:
TYPESAFE_API_KEY(or the door’s name). Never commit tokens. - Pin
jev-1.13.0(or current versioned id) once thresholds exist; logresponse.model.
Questions module
- Single file for instructions, criteria, and floors.
- Dual-stack smoke test (Python + TS) on the same JSON body if both languages ship.
- Filter
statebefore POST; measure input tokens.
Errors and traces
- Map 401 / 422 / 429 / 529 per errors and retries.
- Marketplace 402 / customer_verification handled as callouts, not retries of the body.
- Persist a decision trace on every production call (or sampled + all handoffs).
Eval
- Gold JSONL + frozen questions (offline evaluation).
- Score policy actions, not only argmax.
- No invented 193× in dashboards — quote TypeSafe if you show vendor speed.
Order of operations (questions file → gold → HITL)
Implementation fails when people wire the SDK before they can name the judgment. Sequence:
- Questions file — one module for
instructions,criteria, and floors. Question ids are for you (official: not sent to the underlying model). Put the whole question ininstructions. - Filter — allow-list
statefields; measureusage.input_tokens. Unused fields still bill (vendor $0.042 / M input, confirm models page) and distractjev-1.13. - Door — one production door; record model id + auth (channels). First-party: official SDK or
POST /v1/systemonewith your own 429/529 backoff. Env:TYPESAFE_API_KEY(or the door’s name). Never commit tokens. We do not issue keys. - Pin —
jev-1.13.0(or current versioned id) once thresholds exist; logresponse.model. Do not mixboolean/noulorjev-latest/typesafe/jev-1.13across doors. - Gold JSONL — freeze questions; score policy actions, not only argmax. Offline evaluation.
- HITL — review queue before auto-act. Screens and reason codes: review templates. Persist a decision trace on every production call (or sampled + all handoffs).
- Errors — map 401 / 422 / 429 / 529 per errors and retries. Marketplace 402 / verification = callouts, not retries of the body.
Dual-stack smoke (Python + TS) on the same JSON body only if both languages ship. Next: launch checklist. Intent still unset? Design checklist.
No invented 193× in dashboards — quote TypeSafe if you show vendor speed. Schema-safe ≠ factual correctness.
When not to use this page’s advice
Do not treat this as TypeSafe’s build narrative. Do not implement SemIf/OpenJev with these ids and call it Jev — not Jev and not endorsed. Do not skip HITL because the SDK example returned 200. Do not “finish implement” without a questions file and a gold set.
See also
FAQ
Python only?
Official JS SDK exists too — JavaScript SDK.
Is OpenRouter a TypeSafe door?
If you use a marketplace, treat their error codes as callouts. Confirm their docs.
Next after implement?
Launch checklist, then operate (monitoring, review templates).
Can I ship without gold JSONL?
You can ship a demo. You cannot claim the floors are fitted.
Disclaimer
This is an independent unofficial site and is not affiliated with TypeSafe AI; official documentation is available at https://docs.typesafe.ai. Never treat jev.pro as TypeSafe official documentation. We do not sell, issue, or proxy API keys.