HR decision workflow with Jev
Inbound applications and tickets mix eligibility, policy questions, and messy free text. The ATS, payroll, and your employment counsel still own outcomes. Jev can score job-related criteria you wrote. It is not an ATS and must not become a proxy for protected-class decisions.
This unofficial page is the decision workflow slice of the HR screening operations pack. Intent: apply the Jev (TypeSafe System One) decision model to HR screening operations decision workflow. Primary search language: HR Jev decision workflow. 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): Job-criteria Nouls with an explicit do-not-encode-protected-class lint — not a clone of an ATS or HR-screening product page.
HR use-case context
HR screening operations is a workflow, not a chat. Assemble a narrow state, ask the primitives below, and let the screening worker branch. TypeSafe’s docs say a good question is a snap decision a knowledgeable person could make in a few seconds — not an open-ended analysis of the application or HR ticket text.
Hub: Use cases. Compare, when the other tool is the real job: HR screening.
Decision Workflow inputs
Keep only fields the questions name:
{
"app": { "id": "c-190", "text": "5 years Python; no work auth mentioned; relocating July." },
"role": { "must": "Python in production; authorized to work without sponsorship this cycle." },
"ticket": { "type": "inbound_app" }
}
Point instructions at app.text, role.must. Drop photos, CVs as images, or video interviews; demographic / protected-class fields — drop in the wrapper.
Decision signals and actions
| Id | Type | Job |
|---|---|---|
screen |
Choice | advance / hold_docs / reject_role_mismatch / other |
must_have_fit |
Score | none of the musts → all musts evidenced |
work_auth_clear |
Noul | Text clearly meets role.must work-auth clause? |
All of these share state and run in parallel. Code owns the graph:
def hr_screen(ans):
s = ans["screen"]
if s.confidence < FLOOR or s.choice == "other":
return "recruiter_review"
if ans["work_auth_clear"].noul < T_AUTH:
return "hold_docs"
if s.choice == "reject_role_mismatch" and ans["must_have_fit"].score <= 1:
return "recruiter_confirm" # adverse action stays human
return s.choice
Do not treat a Noul of 0.5 as a “medium” HR screening operations score — it means yes and no are equally likely. Conjunctions stay in your code.
Guardrails and escalation
TypeSafe’s confidence-gated examples use a lower bar for recoverable reads than for irreversible actions. Those numbers are illustrations. For HR screening operations, treat auto_reject as the high bar (auto-rejecting a candidate or taking employment action). Tune on labels — see offline evaluation.
Low confidence, screen == other, or a policy miss → human or safe default; do not auto-reject or take employment action.
Evaluation and rollout notes
Shadow: ATS stage unchanged; log Jev screen only.
Canary: Auto hold_docs only; every reject stays human.
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 | you are here |
What may enter state |
input contracts |
| 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
Does Jev execute the screening worker action? No. It returns typed answers. Your screening worker code calls queues, models, or humans.
Why several questions in one request? TypeSafe’s fan-out pattern: extra questions are cheap versus another HTTP call. Screen + must_have_fit + work_auth_clear in one call. Do not add a personality or “culture fit” Score — that is how proxies sneak in.
Where is the rest of the HR pack? Start with HR input contracts and HR confidence thresholds. Cluster hub: Use cases.
Is this an ATS or hiring decision system of record? No. It is an unofficial typed-screening pattern. Employment law stays with you and counsel.
Can we score “culture fit”? We recommend you do not. Keep criteria job-related and lint for proxies.
What this page does not claim
- Not an ATS, not employment-law advice, not a fairness certificate.
- No quality-of-hire 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.