Verum · in private evaluationClinical inference engine · v0.1

Probabilistic
intake.
Deterministic
verdict.

Note

Two layers: an LLM that reads, a rule engine that decides. Each is best at what the other is bad at.

Verum is a clinical inference engine. LLMs read the unstructured input — clinical notes, voice dictation, structured forms, attached imaging. Pure code makes every load-bearing decision underneath. The same gate runs payer-side prior-auth in Decide, provider-side multimodal CDS in Insight, and the relational data plane both pull from in Record. When a case has imaging, Verum · Visionreads it and the findings promote into the gate's fact bank — text-only and image-only claims arbitrate against the policy alongside each other. Every output carries a verbatim citation and a reversible audit trail.

Sign in to the workspace
01The pipeline at a glance

The shape below is the canonical pattern. Decide instantiates it as a 3-agent prior-auth pipeline; Insight as a 6-stage multimodal pipeline with an image-extract layer; Record as a deterministic ingest-to-archive path with the same audit-everything contract. One pattern, three instantiations.

  1. 01
    NOTE
    Clinical note
    Free-text, structured, or voice
    Probabilistic LLM extraction
  2. 02
    FACTS
    Extracted facts
    14 typed fact spans
  3. 03
    GATE
    Deterministic eval
    Rules × facts → verdict
  4. 04
    VERDICT
    Decision + audit
    APPROVE · PEND · DENY
01.5Three angles, one engine

One pipeline pattern.
Three load-bearing outputs.

Each product is the pattern instantiated against a different question. Same extractor family. Same audit ledger. Same deterministic gate. Different verdicts.

02The instrument

Not a chatbot
wrapping a verdict.
An engine that defends every one.

Why this shape

The most expensive failure mode in any clinical workflow is a non-deterministic decision. The second most expensive is one you can't defend. Verum is designed — across all three product surfaces — to make both impossible.

01Intake

Probabilistic where uncertainty lives.

Free-text notes, voice dictation, structured forms, attached imaging, DICOM uploads — five intake modes feed one extractor family. Confidence is reported per fact, not buried. The model knows when it is guessing.

02Verdict

Deterministic where stakes live.

Once facts are extracted, the gate is pure code. Decide arbitrates a prior-auth verdict; Insight arbitrates a clinical-decision recommendation; Record arbitrates referential integrity. Same facts, same policy, same answer — every run. No temperature. No regeneration.

03Audit

Reversible where it counts.

Every output — a verdict, a finding, a soft-deleted scan — is six components: rule or constraint id, criterion, verbatim quote, status, confidence, operator hand. Override one component, the output re-derives. Nothing decided here is opaque.

02bOne case

From intake to verdict.

A single prior-authorization case, fully evaluated. Note, extracted facts, deterministic verdict, and the citation register that defends it — all on one sheet.

Verum · 4231
verum · 4231
Case file · prior authorization
VERUM-4231
filed
2026·05·12
Member
Synthia Marlow
DOB 1962·03·15
MBR 8194·4231
Procedure · Payer
Lumbar MRI w/o
CPT 72148
Medicare Part B
Clinical note · excerpt

62F presents with chronic low back pain × 9 weeks. Completed 8 weeks PT with structured pain program. ODI score 42. Failed NSAIDs and muscle relaxants. No red-flag findings on neurological exam. No bowel/bladder dysfunction, no saddle anesthesia. Provider requests MRI for surgical planning.

Extracted facts · 3 of 14
  • conservativeTx8.0w≥ 6w
  • odi42≥ 30
  • redFlagabsentbypass · n/a
Differential · imaging rationale

Disc herniation (L4-L5, L5-S1) vs. facet arthropathy vs. spinal stenosis. MRI required to establish anatomic correlate to the clinical findings before surgical referral.

Verdict · deterministic
APPROVE
confidence
0.94
Operator attestation

Reviewed by medical director on file. Reversible upon receipt of additional records. Standard appeal window: 60 days · Medicare Part B.

Citation register · click to view source
↗ 3 sources
··

One case. One verdict. Full audit, every time.

01bThree intakes, one engine

How does a case
arrive?

Free-text, voice dictation, or a 23-field structured form. One probabilistic extractor consumes all three. The clinical facts shape is the same downstream.

IDLE · click microphone to begin
Engine Groq WhisperP50 410ms
Raw audio · 16 kHz mono
noise floor · −42 dB
Denoised · speech-only
✓ HP filter @ 80 Hz · spectral gate
Auto-cycling demo. In the workspace, hold to record · release to transcribe.
Live transcript
Awaiting speech…
03At scale

Counts and
constraints.

The honest answer to "what is in the box." No vanity metrics, no rounded-up totals.

  • 010
    procedure families
    Lumbar · Cervical · Brain · CT abdomen-pelvis (+ BRIDGE-extended lumbar decompression)
  • 020
    payer ontologies
    Medicare · Commercial · Medicaid — two policy versions
  • 030
    LLM providers, one switch
    Groq · OpenRouter · Google · Mistral · NVIDIA
  • 040
    curated models
    Reasoning-graded, with structured-output reliability
04.5Insight at depth

Where the image
and the note
arbitrate together.

Why six stages, not three

Decide's pipeline is text-only because PA workflows arrive as a referral packet of notes. Insight runs in clinic at the moment of decision — the imaging study is on the screen already. Adding image-extract + a fuse stage lets the policy gate see both sides of the same patient.

01Flagships

Four policies, each grounded in real specialty literature.

CXR critical findings against the ACR Practice Parameter. Diabetic retinopathy + DME against the AAO ICDR 2003 4-2-1 grading. Cutaneous melanoma 2WW against NICE NG12 with the Glasgow 7-point checklist. Prostate Gleason scoring against ISUP 2014 v2 with documented 2014/2019 divergence.

47 sample cases. Provenance citation per criterion. Cross-validated against ≥3 independent sources before any policy is promoted to flagship status.
02Fuse

Text and image extracted in parallel, fused before the gate.

The note runs through the text extractor. The image runs through Verum · Vision. The fuse stage labels every fact BOTH-AGREE / TEXT-ONLY / IMAGE-ONLY before the deterministic gate sees it. The gate uses the same evaluator (evaluator-fused.ts) the Decide gate uses — same rule schema, same severity-tier logic.

Vocab alignment as a 4-layer contract — extractor prompt, MedGemma adapter prompt, policy severityTiers, fixtures. Drift between any two breaks the fuse merge.
03Audit + export

Append-only ledger, sealed records, portable FHIR R4 Bundle.

Every accept / promote / override / revert / resolve-dispute action lands in an append-only InsightAuditRecord with sealed-state immutability (SealedRecordError) and supersedes-chain lineage. Sealed records export to react-pdf and to a FHIR R4 Bundle containing Patient + Condition[] + DocumentReference + Provenance + AuditEvent[].

No fabricated profile claims — CRD STU 2 doesn’t publish PlanDefinition / Library / Bundle / ValueSet profiles, so we conform to base R4 + meta.tag[] for posture instead.
04.6Record at depth

The substrate
Decide and Insight
both pull from.

Why a real database

The other two products run on JSON files and sessionStorage — appropriate for their workflows. Record holds the longitudinal study graph, the audit history, and the bytes themselves — that needs FK enforcement, composite-PK constraints, and a real query language underneath.

01Relational

Eleven tables. FKs enforced. Soft-delete with reason.

patients · studies · series · instances · scan_notes (append-only) · instance_findings (composite PK on sop_uid + icd10) · audit_log · 4 reference tables. The 4-step hierarchy enforces referential integrity at the database level. Deletes require a typed reason; restores re-link cascaded children.

CLAUDE.md “no DB” rule relaxed for Record specifically. Every other surface still uses no DB. Serverless Postgres in us-east-1 via Drizzle ORM.
02DICOM intake

De-identified at the boundary. Rendered to the same WL math everywhere.

48-tag DicomTagSet schema. Deterministic FNV-1a 64-bit hashing on the 5 PHI tags PS3.15 Annex E lists (PatientName / PatientID / PatientBirthDate / IssuerOfPatientID / OtherPatientIDs). WL transform + paintToCanvas with MONOCHROME1 inversion shared between Ingest, Vault hover-preview, and Vision Chat DICOM upload.

Content-hashed cloud upload — re-uploading the same DICOM is idempotent. Re-uploads of an already-persisted row refuse with a toast instead of silently duplicating bytes.
03Query + visualize

Search across six entities. Three SVG dashboard panels. RFC 4180 export.

Global search across patient / study / series / instance / scan observation / ICD-10 finding — the finding search hits code + description + synonyms in one query. Dashboard panels: modality donut + 30-day storage sparkline + 84-day activity heatmap, all pure SVG, no chart library. Hover-preview thumbnails on every row use a module-scope LRU cache to keep render under 100ms.

Per-table CSV export with RFC 4180 quoting. Selectable rows on the Vault instances surface deep-link into Vision Chat with up to 3 pinned instances via ?fromRecord=sop1,sop2,sop3.
05Provenance

Two ontologies are real.
The others are honest about it.

Lumbar and cervical Medicare 2026 are encoded verbatim from Aetna CPB 0236, cross-validated against CMS LCD L34220 and Carelon Imaging of the Spine. The other ten ontology cells are synthetic — every fact carries an explicit SYN- prefix.

No hidden mocks. No "AI-generated" hand-waving.

4 procedures × 3 payers · 2026
LUMBAR · MCR
LUMBAR · COM
LUMBAR · MCD
CERVICAL · MCR
CERVICAL · COM
CERVICAL · MCD
BRAIN · MCR
BRAIN · COM
BRAIN · MCD
CT A/P · MCR
CT A/P · COM
CT A/P · MCD
Flagship REAL — verbatim from cited policy
Synthetic — flagged in sourceDocument
06Access

Open the workspace.
Run one case.

Authorized accounts open into the evaluation workspace immediately. Teams without credentials reach the engine through a brief alignment call — Verum is in private evaluation, by design.

Sign in to the workspace