AI-drafted orders and clinician sign-off: modelling it in FHIR R4

AI tools now draft orders for clinicians to sign. FHIR R4 already has the fields to keep a draft from being acted on. Here is how to use status, intent and requester so the sign-off is real and recorded.

The short answer

Picture an AI tool drafting a medication order that another system treats as ready before the doctor has seen it. The fix is in how the order is stored: as an unsigned draft that nothing acts on. Only the clinician’s own sign-off should turn it into a real order, with their name and the time recorded.

To keep an AI-drafted order from being acted on before a clinician signs it, write it in FHIR R4 with status: draft and intent: proposal. In R4, draft means the request “has been created but is not yet complete or ready for action”1, and a proposal is a suggestion with no authority to act.2 Only the clinician’s own action should change it to active with intent: order, with the clinician as requester.3 Then record who signed, when, and what they saw. This post is about records and workflow, not about which orders are clinically right.

With a rule like “medication changes need a clinician”, the AI’s draft waits until a clinician approves it. Deedglass then saves it, reads it back to check, and seals a record. It makes no clinical decision itself. Made-up patient and names.

Why this is a live question

AI tools are moving from drafting notes to queuing orders. Epic says its AI Charting, released in February 2026, “drafts the clinician’s note, and queues up orders”.4 Microsoft says of Dragon Copilot: “With supported EHRs, orders are directly entered into the EHR order module”.5

Inside one EHR, the vendor’s own order workflow handles the sign-off. The question gets harder when a third-party agent writes through FHIR. Epic’s public sandbox capability statement, for example, lists create and update for ServiceRequest but only read and search for MedicationRequest, and each customer’s configuration may differ.6 So what an agent can write varies by site, and the safe pattern has to work with whatever the server allows.

The three fields that matter

Field AI draft After sign-off What it controls
status draft active Whether anyone should act on it1
intent proposal order Whether it carries authority to act2
requester Empty, or the device The signing clinician Who is responsible for activating it3

Two details from R4 make this work. First, in MedicationRequest both status and intent are modifier elements: they change the meaning of everything else in the resource.3 A system that ignores them is misreading the resource, so a draft proposal is clearly not an order to any conformant reader.

Second, requester is “the individual, organization, or device that initiated the request and has responsibility for its activation”, and recorder is the person who entered it on someone else’s behalf, as with a verbal or telephone order.3 Responsibility for activation belongs to a person. An AI tool can draft; it shouldn’t be the requester of an active order.

ServiceRequest and other request resources follow the same request pattern; MedicationRequest has its own status list, which still includes draft.3

A worked example

The agent drafts a lab order after a visit. It writes:

Code Data in JSON, the format software uses to pass records and settings.

{
  "resourceType": "ServiceRequest",
  "status": "draft",
  "intent": "proposal",
  "subject": { "reference": "Patient/p-12" },
  "code": { "text": "Lipid panel" },
  "note": [{ "text": "Drafted by AI assistant from visit note; not reviewed." }]
}

The clinician opens the draft, checks it against the visit, and signs. The signing action, made by the clinician in the EHR’s own interface, not by the agent, produces:

Code Data in JSON, the format software uses to pass records and settings.

{
  "resourceType": "ServiceRequest",
  "status": "active",
  "intent": "order",
  "requester": { "reference": "Practitioner/dr-rao" },
  "authoredOn": "2026-10-27T10:42:00+05:30"
}

The agent’s credentials should be able to create the first and never the second. If the agent can set status: active or name a practitioner as requester itself, the sign-off is a convention, not a control.

What the sign-off record should hold

The order resource shows the end state. It doesn’t show who drafted it, what changed between draft and signature, or whether the clinician looked at it. Keep a separate record. FHIR R4 Provenance exists for this: it tracks the activity that created, revised or signed a version of a resource.7

A useful sign-off record holds:

  1. The draft version, as the agent wrote it, and the tool and model that wrote it.
  2. The signed version, and the differences between the two.
  3. The clinician who signed, the time, and how they authenticated.
  4. What the clinician was shown when they signed.
  5. A read-back of the stored order after activation, confirming it matches what was signed.

Our open draft for this, AAP-H, records which agent acted, what the rules decided, who approved, what the agent claimed and what the system of record shows afterwards, as FHIR R4 Provenance and AuditEvent profiles plus a JSON envelope.9 The spec page has examples.

Failure modes to design against

Failure How it happens Control
Draft acted on A downstream system ignores status Test every consumer with a draft; they must skip it
Agent activates its own draft Write scope allows active Server or gateway refuses agent writes with active or order
Rubber-stamp signing Dozens of drafts signed in seconds Show the source text beside the draft; measure time per sign-off
Signed version differs from what’s stored Server trims or rewrites fields Read back after activation
Nobody knows the AI drafted it No provenance kept Provenance on every draft and signature

The rubber-stamp row deserves attention. People over-trust automated suggestions when checking is hard; our post on automation bias in health IT summarises the research. A design that makes signing faster than reading invites it.

A checklist

  • Agents write requests only as status: draft, intent: proposal.12
  • Only a clinician action sets active and order, with the clinician as requester.3
  • The agent’s credentials can’t set active, order, or a practitioner requester.
  • Every consumer of orders is tested to ignore drafts.
  • Provenance is kept for the draft and the signature.7
  • The stored order is read back after activation.
  • Time-to-sign is measured, and very fast sign-offs are reviewed.

Questions people ask

Should an AI-drafted order use status draft or on-hold?

Draft. R4 defines draft as created but not ready for action1; on-hold is for a request whose authorisation has been temporarily withdrawn.

Can a Device be the requester?

R4 allows a Device as requester3, but for an active order the responsible party should be the signing clinician.

Is this enough to make AI orders safe?

No. It makes sure nothing is acted on without a person’s signature and that the signature is recorded. Whether the order is clinically right is the clinician’s judgement.

To see a high-risk order held for a clinician in a sandbox, run npx deedglass health pilot; one of its four scenes does exactly that.8 The healthcare overview has more. To try approvals and read-backs on a real database in your browser, open the playground; to grade what an agent can reach on your own machine, run npx deedglass scan (the grade, explained).

Written with AI assistance and checked against our claims register.

The takeaway

Write AI-drafted orders as status draft with intent proposal, let only a named clinician's action make them active orders, and record who signed and when.

Read nextFHIR AuditEvent vs Provenance: two records, two questions Try it: install in 7 s

Related on this site

More posts

Sources

  1. 1HL7 FHIR R4: RequestStatus value set · hl7.org · checked 27 October 2026
  2. 2HL7 FHIR R4: RequestIntent value set · hl7.org · checked 27 October 2026
  3. 3HL7 FHIR R4: MedicationRequest · hl7.org · checked 27 October 2026
  4. 4Epic: AI Charting rolls out (4 February 2026) · epic.com · checked 27 October 2026
  5. 5Microsoft: Meet Dragon Copilot (3 March 2025) · microsoft.com · checked 27 October 2026
  6. 6Epic FHIR R4 sandbox capability statement · fhir.epic.com · checked 27 October 2026
  7. 7HL7 FHIR R4: Provenance · hl7.org · checked 27 October 2026
  8. 8Deedglass for hospitals: the 15-minute pilot · deedglass.com · checked 27 October 2026
  9. 9Agent Action Provenance for Health (AAP-H) v0.1 draft · deedglass.com · checked 27 October 2026

Published 27 October 2026, sources last checked 27 October 2026. If something here is out of date, write to hello@deedglass.com.

Try it on your own setup

npx deedglass scan

Grades only your own setup. Nothing is uploaded.

Pricing