Wave 2 · Priority 1 · Phase A
AKHANDA working name
Patient State / Clinical Graph
akhaṇḍa — unbroken, indivisible, whole. One patient, one continuous clinical state.
01 · Rationale
Why this exists
The brief says One Cascade. Every Specialty. Today that is a statement of intent, not a shared object. Thirty-eight products each hold a partial, private view of the patient. OMNIOME's picture of a diabetic with CKD is not the same object as HRIDAYA's, which is not the same object as the Cardiometabolic Twin's. They agree by convention and re-derivation, not by construction.
That is integration debt, and it compounds with every product added. AKHANDA is the payment.
What changes when it exists
| Before | After |
|---|---|
| Each product re-derives the patient's medication list | One list, one truth, versioned |
| "Cascade" = re-invoking N products on one input | Cascade = N subscribers reacting to one state change |
| Contradictory risk scores with no arbiter | Scores carry provenance and supersession |
| No way to ask "what did we know at 14:20?" | Full temporal reconstruction |
02 · Position
Position in the architecture
AKHANDA is not a database wrapper and not an EMR. AAROGYA holds the EMR. AKHANDA holds the clinical interpretation of the patient — the reasoned state, not the record of encounters.
03 · Core model
Core model
The five node families
Edge semantics
Edges carry semantics, not just linkage:
The Belief node — the hard part
Beliefs are what make AKHANDA a clinical graph rather than a data lake. A Belief is a defeasible assertion by a named agent at a named time with a named basis.
belief: asserted_by: hridaya@v10.2 # product + version, never "the system" asserted_at: 2026-08-09T11:04:22Z statement_type: risk_score | differential | trajectory | contraindication basis: observations: [obs_..., obs_...] kb_refs: [HRIDAYA_KB14@1.2] confidence: 0.0–1.0 claim_grade: established supersedes: <prior belief or null>
- Beliefs are never deleted, only superseded or retracted. The graph is append-only.
- Two products may hold contradicting beliefs simultaneously. AKHANDA does not resolve them; it exposes the contradiction via a
contradictsedge and lets the consuming product or clinician arbitrate. - A belief with no
basisis rejected at write time. Unattributable assertions do not enter the graph.
Temporal semantics
Bitemporal. Every node carries valid time (when it was true of the patient) and transaction time (when the system learned it). This is what makes "what did we know at 14:20 when the decision was made?" answerable — which PRAMANA requires for fair outcome attribution, and which medico-legal defence requires absolutely.
04 · Knowledge
The KB library — 84 KBs
Six layers, authored and clinically reviewed before the engine that consumes them. Every KB carries a claim grade that governs downstream hedging language.
Full KB manifest — grades, dependencies & scope →
Ontology
22 KBs| KB | Title |
|---|---|
| KB01 | Patient Identity & Linkage Rules (ABHA, MRN, national ID, duplicate resolution) |
| KB02 | Problem Ontology & SNOMED CT Value Sets |
| KB03 | Observation Ontology & LOINC Mapping |
| KB04 | Medication Ontology (RxNorm, Indian brand register, AYUSH formulations) |
| KB05 | Procedure Ontology (SNOMED, CPT, ICD-10-PCS crosswalk) |
| KB06 | Unit Normalisation & Conversion Canon |
| KB07 | Reference Range Library by Age, Sex, Pregnancy, Ethnicity |
| KB08 | Edge Semantics Dictionary |
| KB09 | Belief Statement Type Schemas |
| KB10 | Provenance & Attribution Model |
| KB11 | Bitemporal Semantics & Query Canon |
| KB12 | Confidence Calibration Scales |
| KB13 | Claim Grade Definitions & Downstream Hedging Rules |
| KB14 | Problem Lifecycle States (suspected→active→controlled→resolved→recurrent) |
| KB15 | Severity & Acuity Scales Canon |
| KB16 | Anatomical & Laterality Model |
| KB17 | Allergy & Intolerance Ontology |
| KB18 | Social & Environmental Determinant Vocabulary |
| KB19 | Genomic Variant Representation (HGVS, star alleles) |
| KB20 | Device & Implant Registry Model |
| KB21 | Encounter Context Taxonomy (OPD, IPD, ICU, ED, home, tele) |
| KB22 | Identity Merge & Unmerge Safety Rules |
Domain Knowledge
14 KBs| KB | Title |
|---|---|
| KB23 | Physiological Plausibility Bounds (reject impossible values) |
| KB24 | Observation Volatility Profiles (how fast each measure legitimately changes) |
| KB25 | Problem Co-occurrence Priors |
| KB26 | Causal Adjacency Canon (which problems can cause which) |
| KB27 | Medication–Problem Indication Map |
| KB28 | Lab Result Interpretation Context Rules |
| KB29 | Life-Stage Physiological Variance (neonate→geriatric) |
| KB30 | Pregnancy State Model & Trimester Adjustments |
| KB31 | Renal & Hepatic Function Staging Canon |
| KB32 | Frailty & Functional Status Models |
| KB33 | Symptom–Sign Semantic Equivalence |
| KB34 | Indian Epidemiological Priors |
| KB35 | Oman & GCC Epidemiological Priors |
| KB36 | Traditional Medicine Concept Bridging (Ayurveda/Siddha/Unani → biomedical) |
Reasoning Templates
16 KBs| KB | Title |
|---|---|
| KB37 | Belief Conflict Detection Rules |
| KB38 | Belief Supersession Precedence (recency, specificity, agent authority) |
| KB39 | Observation Deduplication & Reconciliation |
| KB40 | Problem List Curation Heuristics |
| KB41 | Active vs Historical Problem Discrimination |
| KB42 | Medication Reconciliation Source Precedence |
| KB43 | Trajectory Interpolation Rules |
| KB44 | Missing Data Semantics (absent ≠ normal) |
| KB45 | Stale Data Decay Functions |
| KB46 | Cross-Product Score Comparability Rules |
| KB47 | Contradiction Surfacing Thresholds |
| KB48 | Graph Query Patterns Library |
| KB49 | State Snapshot Composition Rules |
| KB50 | Derived Attribute Computation Canon |
| KB51 | Confidence Propagation Through Inference Chains |
| KB52 | Anomaly & Implausible-State Detection |
Workflow
10 KBs| KB | Title |
|---|---|
| KB53 | Write Path State Machine |
| KB54 | Clinician Arbitration Workflow (contradiction resolution) |
| KB55 | Problem List Review & Attestation Cycle |
| KB56 | Identity Merge Review Workflow |
| KB57 | Retraction & Correction Workflow |
| KB58 | Bulk Import Reconciliation Workflow |
| KB59 | Cross-Facility Transfer of State |
| KB60 | Subscription & Notification Rules |
| KB61 | Snapshot Request & Delivery Workflow |
| KB62 | Degraded Mode Operating Procedure |
Integration
12 KBs| KB | Title |
|---|---|
| KB63 | FHIR R4 Resource Mapping (bidirectional) |
| KB64 | ABDM / ABHA Health Record Contract |
| KB65 | AAROGYA EMR Sync Contract |
| KB66 | OMNIOME Read/Write Contract |
| KB67 | Cardiometabolic Twin (INDRA H-OS) State Exchange |
| KB68 | Specialty Clinician Write Contracts (ARJUN, HRIDAYA, NEEL, DRISHTI family) |
| KB69 | GUARDIAN+ Medication State Contract |
| KB70 | PRAMANA Evidence Emission Contract |
| KB71 | JEEVANA Goal & Plan Contract |
| KB72 | Wearable Stream Ingestion (Aegis Bio-ID, ARES Sentinel) |
| KB73 | SANGAMA Federated Export Schema |
| KB74 | Event Catalogue & Versioning Policy |
Safety & Governance
10 KBs| KB | Title |
|---|---|
| KB75 | Write Authorisation Matrix (which agent may assert what) |
| KB76 | Consent Model & Purpose Binding |
| KB77 | Consent Revocation Cascade |
| KB78 | Audit Log Specification & Immutability Guarantees |
| KB79 | PHI Minimisation & Field-Level Access Control |
| KB80 | Break-Glass Emergency Access Protocol |
| KB81 | Data Residency & Cross-Border Rules (India DPDP, Oman) |
| KB82 | Retention & Deletion Policy |
| KB83 | Belief Poisoning & Adversarial Write Defence |
| KB84 | Medico-Legal Reconstruction Requirements |
05 · Data
Data architecture
Graph store
For traversal, contradiction detection, and causal chains. The graph is a derived projection and must be rebuildable from the ledger alone.
Relational append-only ledger
The system of record — bitemporal fact tables and audit. Append-only: no UPDATE, no DELETE, enforced at the database level.
Every assertion records: node family, payload, asserting product + version, valid time, transaction time, basis (observations + KB references — must be non-empty), confidence, claim grade, supersession chain, and trace id.
The snapshot API — the primary read surface
Consumers rarely traverse the graph directly; they request a composed state snapshot at a point in time:
GET /v1/patient/{id}/snapshot?as_of=<ISO8601>&lens=<product>
lens shapes the projection — HRIDAYA gets a cardiac-weighted view, SAATHI gets a patient-safe view with claim grades translated to plain language.
06 · Engine
Engine components
Write Gateway
Validates authorisation (KB75), basis non-empty, plausibility (KB23), life-stage coherence. Rejects rather than coerces.
Reconciler
Dedupes observations (KB39), curates problem list (KB40), applies medication source precedence (KB42).
Contradiction Detector
Runs on write, creates contradicts edges above threshold (KB47), never auto-resolves.
Snapshot Composer
Bitemporal query + lens projection + staleness decay (KB45).
Subscription Dispatcher
Emits state-change events per KB60.
Audit Sealer
Hash-chains the assertion log; daily anchor.
07 · Proof
Acceptance criteria
- Append-only enforced at the database level; UPDATE/DELETE attempts fail and alarm
- Graph projection fully rebuildable from the ledger with byte-identical results
- Bitemporal query returns correct state for any past instant, proven against a 50-case fixture set
- Write with empty
basisrejected 100% of attempts - Contradiction between two products surfaced, never silently resolved
- Consent revocation propagates to all downstream subscribers within 60 seconds
- Break-glass access logs immutably and notifies within 5 minutes
- Snapshot p99 latency < 400 ms at 10,000 patients
- Zero PHI in logs (automated scan in CI)
08 · Failure
Degraded mode
Degraded mode is defined, not emergent. Default is fail-safe: reduce function, never guess.
| Failure | Behaviour |
|---|---|
| Graph store down | Serve snapshots from the ledger; disable traversal queries; banner to consumers |
| Ledger down | Hard stop. No writes accepted. Consumers fall back to their own last-known state with staleness banner. Never guess. |
| Consent service down | Deny all non-emergency reads; break-glass remains available |
| Event bus down | Buffer and replay on recovery; consumers must be idempotent |
AKHANDA is the first of ten Wave-2 applications. See the full cascade, the build sequence, and the universal safety rails.
← Back to Wave 2