User repository on GitHub
A .NET 10 and React 19 application for fast, structured AI-powered ticket triage using TypeSafe Jev.
- Forks
- 0
- Last pushed
- Updated Sep 2026
Repo stats from the GitHub API, cached Oct 2026.
A .NET 10 and React 19 support-ticket triage application: one batched Jev call yields five typed decisions, a deterministic rule engine makes the final call, and every field reports whether the model or a rule decided it. Accepts Persian and English.
User repository on GitHub
A .NET 10 and React 19 application for fast, structured AI-powered ticket triage using TypeSafe Jev.
Repo stats from the GitHub API, cached Oct 2026.
Structured support-ticket triage built on .NET 10 and React 19, using TypeSafe Jev to make fast, typed decisions and deterministic .NET business rules to make the final call. A user submits a support ticket in Persian or English. The backend asks Jev five scoped questions in a single batched call, then a deterministic rule engine decides what actually happens to the ticket. Every field in the response says whether the value came from the model or from a rule.
Quoted from the project's README. Read the full README.
Watch out
Noul answers deliberately carry no confidence, because the API returns only a probability for them, and the UI shows not reported rather than inventing a number, which matters if you are comparing fields in the same response. The 0.75 confidence rule means a ticket can be routed to a human even when the model was only mildly unsure, and the security and critical override forces human review regardless of what the model proposed. TypeSafe ships Python and JavaScript SDKs but no .NET SDK, so IJevClient is a hand-written wrapper over the documented HTTP contract through IHttpClientFactory with exponential-backoff retries for 429 and 529, which is what makes live and mock swappable in tests. Mock mode returns deterministic sample answers and the dashboard's three demo tickets are all fictional, so nothing in that path reflects real model behaviour. A defence-in-depth pattern mask scrubs long digit runs, emails, bearer tokens and password-style assignments even from tickets the model did not flag, which can alter text the model never saw. Sensitive-data redaction applies to structured logs and the response. The README argues local inference is the intended production architecture for restricted organisational data, since tickets contain staff names, internal system names, customer references and sometimes a pasted credential. Copy reviewed against the repository README on 2026-10-04, not from running it.
Original write-ups on what this entry is for.
Posts from builders shipping with Jev right now.