Reviewer guide
Evaluate Kwik 112 in 120 seconds
Ring-time middleware, demonstrated in a browser: the citizen keeps the dial pad; the dispatcher receives a pre-graded call. Built with Codex. Optional refinement uses GLM 4.5 Flash; an OpenAI model path is supported. No live 112 integration.
Independent synthetic-data demonstration — not an official 112, ERSS, government, or C-DAC service.
No login No credentials No setup
~60 seconds
1. Place a 112 call
Opens the voice station. Play a scripted caller (Ramesh — Hinglish accident, John — English market fire, or Sharma ji — Hinglish cardiac arrest) or start a live demo call in Hindi, Hinglish, or English. Watch the transcript, emotion telemetry, and instant rules grade appear as the caller speaks.
Place a test call~2 minutes
2. Dispatch like an operator
Open the console. Pick an incident, read the safety audit ('Why this priority?'), run the three human checkpoints (INTAKE → DISPATCH → RESOLUTION), try to override without a written note — it will refuse. Multi-caller fusion flags duplicate calls for human approval.
Open the console~3 minutes
3. Reproduce the benchmark
Run one command against the versioned corpus. The results page renders the committed measurements with explanatory copy; latency varies by machine and run.
See the held-out resultsProblem
The problem is a busy intake queue, not a missing citizen app. These sources describe different places, periods, and measures; vehicle response time is not telephone ring time.
- Telangana reporting puts genuine emergencies at about 0.28% of roughly 16 lakh daily calls across the combined 112/Dial 100 system. 25 June 2026 report, citing police data.
- The MHA NERS guidelines target an average answer speed below 15 seconds. Separately, a Telangana DGP statement reports a national emergency response average around 18 minutes. These are different stages of response. MHA guidelines, 2015, page 20; DGP report, 6 August 2026.
- Delhi reported roughly 10,000 blank calls out of 15,672 daily calls shortly after the 112 launch. The report also describes IVR filtering already in place. 1 October 2019 report.
- SaveLIFE Foundation v. Union of India, W.P.(C) 726/2024, order dated 26 May 2026 (2026 INSC 567), directs integration of 100, 101, 102, 108, 1033 and 1091 into 112 within three months. As of this review, that stated window has closed; this is a calendar inference, not proof of nationwide implementation. Official order, 26 May 2026.
Working build
No login, no credentials, no setup: place a call above, watch the transcript, emotion telemetry, and deterministic grade appear live, then run the three human checkpoints. Every number on /benchmark regenerates from the repository with one command.
Usability
The proposed citizen interface is the dial pad: a keypad phone on a voice-capable 2G network, no app, URL, reading, or data plan. Hindi, Hinglish, and English today. This browser demonstration emulates that call; it is not connected to the telephone network. The dispatcher receives a pre-graded card.
Product thinking
The AI may escalate severity but can never lower the deterministic floor — enforced in code with regression and prompt-injection tests, not a prompt promise. Emotion can sharpen priority inside a severity band but never cross a band boundary.
A calm caller reporting no pulse must still grade critical. Possible prank prosody is an annotation for human review, never proof of a prank, a downgrade, or automatic removal from the queue. The intended deployment sits before C-DAC NG112 call handling; this build demonstrates that boundary without claiming an integration.
End-to-end thinking
Voice intake → instant rules grade → optional escalate-only refinement → three human checkpoints with written-note overrides → unit reservation, road-following routes, and a session-local audit trail. Every value carries provenance: local rules / model / fallback; measured / simulated / absent.
Honesty
100% critical recall (9/9; Wilson 95% lower bound 0.70), 60% type accuracy (18/30), 60% severity accuracy (18/30), 23.3% under-triage (7/30), and 16.7% over-triage (5/30). This is a development regression suite, not clinical or field evidence. Reproduce via npm run evaluate:local; CI repeats the critical-recall gate. The model cannot dispatch, and the small corpus cannot establish real-world safety.
Prior art and the accountable grading boundary
VANKI proved translation belongs on the 112 line. We start where that ends: after the words are understood, something still has to decide how dangerous the call is — and must never quietly decide it is less dangerous than it looks.
Bengaluru's VANKI supports multilingual emergency communication; Telangana's TG-ERSS also reports automated handling and filtering. We credit those deployed systems. The cited reports do not publish an executable severity floor or reproducible grading corpus; that is the evidence Kwik makes inspectable, not a claim that nobody else has safety controls. VANKI, 30 April 2026; TG-ERSS, 6 August 2026.
Why keep a model away from dispatch authority?
A Danish randomized trial found no significant improvement in dispatcher cardiac-arrest recognition in its primary comparison. That is why Kwik grades with rules first and requires human dispatch decisions, rather than treating AI assistance as proven clinical benefit. Blomberg et al., 2021 randomized trial. The human-oversight principles of EU AI Act Article 14 inform the design; this demonstration claims no certification or regulatory compliance.
What is real, simulated, or synthetic — in one table
Every capability of this build, labelled. The same provenance labels appear inside the product interface.
| Capability | Status | Detail |
|---|---|---|
| Live Hume EVI voice sessions | Real, optional | Browser audio streams to Hume EVI with the configured call-taker prompt; per-utterance model estimates of prosody are labelled MEASURED |
| Scripted callers | Simulated | Demo personas with synthetic emotion frames, labelled Scripted call in the UI — never dressed up as measurements |
| Triage engine | Real | Deterministic multilingual rules run locally in milliseconds; committed test suite covers the no-downgrade floor and injection cases |
| Model refinement | Real, optional | LLM enrichment that may only escalate severity; falls back silently to the local grade on any failure |
| Incidents, units, ETAs | Synthetic | A simulated Delhi fleet; ETAs use a simulated road-adjusted travel model and say so in the interface |
| Audit trail | Session-local demo | Browser-local decisions persist across reloads and browser sessions until storage is cleared; no shared production record store |
Built with Codex — the provider stack, disclosed
Codex and coding agents implemented and reviewed the core of this build: the deterministic triage engine and its no-downgrade floor (with regression and prompt-injection tests), the evaluation harness behind every number on /benchmark, the live voice pipeline (a production render-loop was diagnosed and fixed via controlled repro in real Chromium), and this judge package. The dated, commit-linked log is CODEX_LOG.md in the repository.
| Layer | Provider | Why |
|---|---|---|
| Build tooling | Codex + coding agents (OpenAI) | Implementation and adversarial review; the safety floor is code, not a prompt |
| Voice + prosody | Hume EVI | Live multilingual call-taker with per-utterance emotion measurement |
| Refinement model | GLM 4.5 Flash (free tier); any OpenAI-compatible provider via OPENAI_API_KEY | Measured latency at zero cost for the public demo; the deterministic grader is provider-independent — refinement may only escalate |
| Routing | OSRM (OpenStreetMap) | Road-following dispatch routes with a straight-line offline fallback |
Boundaries
- Kwik 112 is an independent demonstration. It is not an official 112, ERSS, Government of India, or C-DAC service, and it contacts no emergency infrastructure.
- Use synthetic scenarios only. A live call sends microphone audio to Hume; optional refinement sends transcript text to the configured model provider, and address lookup may send location text to a geocoder. Do not enter real personal data. The AI never dispatches; human overrides require a written note.
- The benchmark is a 30-case versioned synthetic corpus with a held-out split — a safety-oriented engineering measurement, not clinical evidence.