Consulting innovation · AI quality engineering
Every eval dashboard shows what you measure. Nothing shows what you should be measuring and are not. The coverage gap audit answers that second question, and answers it deterministically: every finding is a lookup you can check, not a score you have to trust.
Ask a team running an AI system what their quality tooling covers and you get a tool list. Ask which quality attributes matter for that system, given how much autonomy it has, what its outputs trigger, who is exposed to them, and what domain it operates in, and the room goes quiet. The gap between those two answers is where production incidents and regulatory findings live. A regulator does not ask what you measured. It asks what you should have measured.
There is a second problem, and it shaped the design. The natural instinct in AI quality tooling is to infer: estimate impact, weight stakeholders, score risk. Practitioner feedback on our own engine was blunt about the failure mode: stack a probability on a probability on a probability and nobody trusts the number at the end. He who wants to fly must first learn to crawl. So the audit refuses to infer anything at all.
Five steps, each a deterministic lookup over a versioned quality ontology (a 25-attribute catalogue, a metric registry, and a library of human-reviewed impact rules):
Identical inputs produce a byte-identical audit. The engine module that computes it is barred, by an automated guard in its test suite, from importing an LLM client, a network library, or the impact inference engine it sits beside.
We ran the audit against Corpus Coach, our own retrieval-augmented chatbot over Monetary Authority of Singapore AML/CFT publications, built deliberately imperfect as a testing target. Its real measurement stack was declared with provenance: an exploratory testing agent covering five attributes, an LLM eval framework, an observability adapter, and a disabled tracing layer.
Then we ran the same system, with the same tooling, through a second DNA declaration: a hypothetical posture in which the identical chatbot is productised customer-facing at a regulated financial institution.
| As deployed (internal demo) | Customer-facing posture (hypothetical) | |
|---|---|---|
| System DNA | assistive · advisory · internal · financial services | supervised · advisory · external regulated · financial services |
| Material attributes | 18 of 25 | 24 of 25 |
| Coverage gaps | 15: 14 low, 1 medium | 19: 14 high, 5 critical |
| Gaps with mapped regulatory obligations | 2 | 7 |
Nothing about the model changed. Nothing about the tooling changed. The deployment posture changed, and five gaps became critical. Quality attribute materiality is a property of deployment context, not of the model, and this is that claim made checkable: every moved severity traces to a cited rubric row, every newly material attribute to a catalogue applicability entry.
The audit also cuts the other way, on us. It flagged that our exploratory agent spends effort measuring two attributes the internal DNA classifies as immaterial, and that thirteen of the fifteen internal gaps have no regulatory mapping in the ontology yet. An audit that cannot embarrass its own author is marketing.
The audit carries no impact scores, no stakeholder weighting, and no probabilities. That layer exists in the wider engine, behind human-reviewed rules, and it stays out of the audit on purpose. The audit is the artefact two parties can agree on before any inference enters the room: what matters, what is measured, what is not, and which regulator cares. It needs documentation and interviews only, no integration work, so it works as a day-one deliverable.
The audit is a capability of Prism, the quality impact communication engine, and pairs with Scout (which generates the measurement evidence for systems that lack it) and Crystal Ball (which watches the measurements once they exist). Coverage first, measurement second, communication third.