| tenant / cohort |
Customer + clinical population config container. |
name, config_version, cohort criteria JSON, episode_template_id |
| patient |
Demographics + identity linkage. |
mrn (per tenant), fhir_patient_id, name, dob, phones[], language, tz, accessibility_prefs |
| episode |
One 30-day transition instance. |
patient_id, cohort_id, state, version, index_encounter_id, discharge_at, day30_at, activation_at, closed_at, close_reason |
| consent_record |
Versioned consent artifacts. |
episode_id, type(program|caregiver|comm_channel), scope JSON, granted_by, granted_at, withdrawn_at, doc_version |
| caregiver + caregiver_grant |
Separate identity + scoped access. |
caregiver: name, phone, relationship; grant: episode_id, scope JSON, status(active|revoked), revoked_at |
| clinician + access_grant |
External clinician + purpose-limited grant. |
clinician: npi, name, email, org; grant: episode_id, purpose, expires_at, device_fingerprints[], status, step_up_at |
| source_document |
Ingested artifact + fingerprint. |
episode_id, type(avs|dc_summary|post_visit_note|upload), fhir_ref, s3_key, sha256, source_level(1-9), finality(final|amended|prelim), supersedes_id, received_at |
| extracted_fact |
LLM/parsed proposition pre/post gates. |
source_document_id, kind, payload JSON (schema_version), span_start/end, span_text, gate_status(g1..g7|published|rejected|pending_review), confidence, model_run_id |
| task_instance |
Universal task (all patient/clinician actions). |
episode_id, category(medication|appointment|lab|education|safety|admin), priority(critical|important|routine), state (11), due_at, source_fact_id, supersedes_id, version |
| medication_plan_item |
Instruction authority dimension. |
episode_id, rxnorm, name, dose, route, freq, change_type(new|changed|continued|stopped|uncertain), status(proposed|active|superseded|stopped), source_fact_id, confirmed_by/at |
| medication_status_event |
Evidence dimensions (transmission/access/use). |
plan_item_id, state(ordered|sent|available|obtained|started|taking|stopped|barrier), evidence_class(patient_report|pharmacy_confirmed|clinician_confirmed|ehr), reported_by, occurred_at, barrier_code(cost|stock|transport|confusion|side_effect|other) |
| appointment_requirement / appointment |
Need vs. booked visit. |
req: specialty, window_start/end, status(open|satisfied|waived); appt: req_id nullable, source(ehr|patient_report|assisted), starts_at, provider, status(booked|completed|no_show|cancelled), verified bool |
| notification_message |
Every outbound touch. |
episode_id, task_id, channel(push|sms|voice|email), template_id+version, lang, scheduled_at, sent_at, delivery_status, suppress_reason |
| agent_action |
Evidence record of every agent step. |
agent(engagement|appointment|med_access|records|brief|outcome), tool, params_hash, params JSON (redacted), result(success|fail|blocked), evidence JSON, tokens_cost, envelope_version, killed_by |
| brief_snapshot |
Immutable clinician brief. |
episode_id, appointment_id, content JSON, episode_version_at_build, s3_pdf_key, generated_at, opened_at[], stale_superseded_by |
| outcome_event |
ED/readmission signals. |
episode_id, type(ed|readmit), source(adt|claims|hie|patient_report), facility, occurred_at, within_30d bool, completeness_note |
| audit_event |
Append-only ledger (own schema). |
actor_type/id, action, object_type/id, purpose, context JSON, ip, trace_id, occurred_at, monthly partitions |
| config_version / template / model_registry |
Versioned governance artifacts. |
published_by/at, diff JSON, approval_ref; model_registry: model_id, prompt_version, schema_version, safety_policy_version, status(active|rollback) |