The obvious way to build clinical documentation software in 2026 is to pass a transcript to a large language model and ask for a note. It produces excellent prose immediately. We chose not to do that for the note body, and the reasons are narrower than "LLMs are bad".
Three properties we needed
1. Reproducibility. The same evidence must produce the same note. If a note changes between two runs on identical input, a clinician reviewing the difference cannot tell whether the patient's story changed or the sampling did.
2. Attributability. Every sentence must be traceable to specific facts, and every fact to a transcript span. When a model generates prose, the mapping from sentence to evidence is reconstructed after the fact — by another model, or by a human guessing.
3. Fail-closed behaviour. If a claim cannot be supported, it must not appear. A generative system's default is to produce a plausible sentence; a renderer's default can be to produce nothing.
What a renderer actually does
The validated fact graph is walked under a department template. Each section
knows which concepts it accepts and which status vocabulary it renders. A finding
with status: ABSENT becomes a denial sentence; a section with no
supporting facts becomes "Not documented".
facts: fever(RESOLVED, 4 days), fever(ABSENT, current)
→ "History of fever for four days, which has since resolved.
The patient denies fever currently."
Both sentences are the same on every run, on every machine, forever, given the same graph. There is no temperature to tune and no seed to record.
What this costs
- The prose is plainer. Templated sentences repeat. A human writes better clinical English than our renderer does.
- Some sentences read awkwardly. "I still have a cough" can end up verbatim in a note where a clinician would have paraphrased.
- Novel phrasing is impossible. If a consultation contains a clinical idea the template has no slot for, the renderer cannot improvise a section for it.
- The template is a bottleneck. Coverage depends on someone having written the section and its mapping.
We accept these because the failure mode of plain prose is a clinician editing a clumsy sentence, and the failure mode of fluent generation is a clinician signing a sentence nobody can trace.
Where this argument stops being honest
Determinism does not make the output correct. It makes it inspectable. A deterministic renderer faithfully renders a wrong fact graph, and we have shipped exactly that: a fabricated laterality that passed validation because the graph itself contained the invention (defect R3).
The honest claim is narrow: if the graph is right, the note is right, and if the note is wrong you can find out why in bounded time. Everything about extraction quality is a separate, unsolved problem.
What we would change our minds about
If evaluation with clinician-authored gold documentation showed that generated prose scored better on factual consistency than templated rendering — measured, not assumed — the trade would deserve revisiting. We have not run that study, and we will not claim the trade is settled until we have.
Related: the platform architecture and the clinical representation.