Epic stays the chart of record. Dock is where the agent drafts the note, the clinician reviews it, and the sign-off is recorded against the encounter. The agent never writes to Epic without a clinician's explicit approval. Every approved note carries a pointer back to the Epic encounter ID, the agent that drafted it, and the clinician who signed. Same pattern for athenahealth practices.
The architectural split
Epic and athenahealth stay the systems of record for the raw chart: vitals, labs, orders, prior notes, problem list. Dock is the system of record for what the AGENT interprets from that chart. Each Dock row carries a pointer back to the platform record (epic_encounter_id or athena_chart_id), the agent identity, the clinician reviewer, the decision, and the timestamp. When the agent needs current chart state, it re-fetches via fresh FHIR reads. Dock never caches PHI past the draft cycle.
One Dock surface: the draft-note review table
| epic_encounter_id | patient_mrn (masked) | agent | draft_summary | clinician_reviewer | decision | signed_at |
|---|---|---|---|---|---|---|
| ENC-8821044 | *--4419 | scribe-agent-v3 | 47F follow-up HTN, BP 138/88, continue lisinopril 20mg, recheck 6wk | dr.patel@clinic | approved + signed | 2026-05-30T14:22Z |
| ENC-8821067 | *--7732 | scribe-agent-v3 | 63M post-op day 14, incision clean, sutures removed, return PRN | dr.okafor@clinic | edited + signed | 2026-05-30T14:48Z |
| ENC-8821081 | *--2210 | scribe-agent-v3 | 29F prenatal wk 22, fundal height 22cm, FHR 148, next visit 4wk | pending | awaiting review | --- |
One worked workflow
A clinician finishes an encounter. The scribe agent pulls the encounter transcript and the relevant Epic chart context via FHIR. It drafts a SOAP note into a new Dock row tagged with epic_encounter_id ENC-8821044. The clinician opens the row, edits two lines, and clicks approve. That approval is the two-key handshake: only after the signed approval does Dock call Epic's DocumentReference write endpoint and post the finalized note. The Dock row keeps the diff between draft and signed version, plus the agent ID, the clinician ID, and the timestamp. The Epic note references the Dock row ID in its provenance field.
Why it matters
The AMA frames AI in medicine as augmented intelligence, where the design enhances human judgment rather than replacing it (AMA, Augmented Intelligence in Medicine). That principle only holds operationally if the agent draft and the clinician sign-off are separate, inspectable artifacts. Dock makes them separate by default.
HIPAA-safe means more than encryption. Every PHI access has a name attached, every write has a reviewer, and the audit trail survives staff turnover. Dock's row history gives you that without a second compliance tool, matching the direction federal health IT policy is taking on AI in clinical care (HealthIT.gov / ONC).
Because the agent has its own identity, revoking scribe-agent-v3 is a one-click action that does not touch any clinician account. See agent identity lifecycle for clinical agent rotation cadence.
CTA
Run agent-drafted notes through Dock before they hit Epic. See Dock for healthcare operations.
FAQ
Does Dock store PHI? Only the draft note and encounter pointer, for the review cycle. Once the clinician signs, the canonical note lives in Epic. Dock retains the audit row (who, when, what changed), not the chart.
Is this Epic-certified?
Dock reads and writes Epic via standard FHIR R4 endpoints (Encounter, DocumentReference, Observation). No bespoke integration required. The same connector covers athenahealth via its FHIR API.
What if the agent drafts something wrong? The clinician edits or rejects the draft in Dock before it reaches Epic. The reject is logged. See agent audit and compliance for how rejection patterns surface.
How does this satisfy a HIPAA audit? Every draft, edit, and sign-off is a row with an agent ID, clinician ID, Epic encounter pointer, and immutable timestamp. Auditors get a queryable trail without scraping Epic logs. More in Dock for compliance.