Why aggregate accuracy is the wrong measure
A 97%-accurate analytics agent sounds excellent until you ask which 3%. If the errors concentrate in a cohort — a rare condition, a small site, a demographic slice — then the aggregate figure is actively hiding the failure. Evaluation that reports a single accuracy number over a convenience sample cannot see this, which is why our suites are stratified and why excluded items are counted against coverage rather than dropped.
The defect families that matter here
- Cohort definition drift — the agent’s inclusion criteria diverging from the one the clinical team ratified. Defensible as SQL, wrong as a question.
- SCD-2 temporal errors — a patient attribute read as current when the question was point-in-time.
- Row access policy leakage over PHI — machine-authored SQL reaching rows the invoking identity could not have selected directly. Treated as Sev-1.
- Grain violations — counting encounters as patients, or claims as episodes.
- Silent narrowing — the agent quietly answering a smaller question than the one asked, without saying so. Scored under the disclosure criterion in the rubric.
PHI handling
The default evidence mode is designed for exactly this constraint: no raw query, result row or prompt leaves your boundary, only hashes, invariant status, row counts, latency and a signed manifest. Where exception triage needs more, customer-hosted VDI review keeps review inside your environment. Both require explicit written authorisation. Security & data handling · DPA
EvalQA verifies analytics agents that write SQL against a warehouse. We do not evaluate clinical decision support, diagnostic models or anything that constitutes a medical device, and we hold no HIPAA or HITRUST certification — see the trust centre for what we do and do not hold.
Further reading in the curriculum: AI evaluation in healthcare, a healthcare safety case study and segment before you celebrate.