←All work Improve clinical trial operations with AI Healthcare

They asked for AI.
What they needed first
was a protocol a machine
could read.

A European pharmaceutical company running 41 clinical trials with a contract research partner needed AI to support site operations and patient screening, but simple site questions were taking three to nine days to resolve. Screening rules were spread across five documents with no reliable way to know which version applied.

We redesigned the service around a machine-readable protocol, combining deterministic rule logic, retrieval across three sources of truth and AI-assisted workflows inside existing hospital systems. Screening returned evidence rule by rule instead of a yes or no with nothing behind it.

Questions that previously took days were resolved during the visit. Patients wrongly ruled out at screening fell by half, while nine in ten site staff reported a clear improvement within three weeks.

Protocol answerGrounded
Context sorted before the model ran Study MB-204FranceSite FR-01817 Jun 2024

Question

Can we include a patient whose blood test was taken 9 weeks ago?

No. The version in force at your hospital requires the value to be taken within 8 weeks of the screening visit.

Source: the part that didn't exist before
Protocol MB-204 · Amendment 3 · §5.2 inclusion criterion 4 · p.31
Effective 04 Mar 2024 · applies to France from 22 Mar 2024 · replaces Amendment 2
Evidence stateStrong: one version applies, one clear passage

A site question answered inside the visit, with the version that applies and the passage it came from.

41studies in the portfolio
38sites in the lead study
3countries in scope
5working tools in this piece

The five-minute version

Read this first

Six beats. Everything after this is the evidence behind them, and each beat links to where it's argued properly.

01

The problem

A European drug company with 41 studies wanted AI for two things: helping its trial sites run, and screening patients. Site questions with one-sentence answers were taking three to nine days and leaving no record. Screening ran against rules held in five documents of unknown age, and nobody knew the error rate because nobody measured it.
02

The diagnosis

We followed one eligibility rule through every document that repeats it and found five versions with nothing linking them. The protocol is authoritative as a document and meaningless as data. Both problems fail at that same point, and so would any AI placed on top of them. Of the three kinds of screening error, two are ones the company can never see.
03

The key insight

Two findings changed the engagement. First, the strongest thing we found wasn't AI at all. Portugal already gives every site one named contact and does better than France, and you can test that without writing any software. Second, both problems are created upstream when the trial is designed, in a conversation between the company and its research partner that has almost nothing behind it. That became Track C, and it carries the biggest prize.
04

The redesigned service

Three tracks over one spine. Site questions get answered inside the visit with the source and version shown. Screening runs inside the hospital's own systems, returning evidence rule by rule instead of a yes or no, because the company has no lawful route to records for patients who never join the trial. And a draft protocol can be run as a query against real patient populations before it's signed off.
05

The AI architecture

Fourteen techniques assessed, five built. Which version applies gets settled in plain code, before the search runs as a hard gate, never a scoring weight, because a weight can always be outweighed. Search spans three sources of truth with rules of precedence between them, and when they disagree it raises an alarm instead of quietly picking one.
06

The value

Five layers, each with something you can measure and a realistic date. No saving is claimed without the baseline that would prove it, and getting that baseline is the first piece of work.
Operational
Resolution time and site burden

Questions answered in the visit, double-handling removed, escalations falling

Recruitment
Eligible patients not lost

Eligible patients recovered, time to enrolment, fewer repeat visits

Protocol
Amendments avoided

Feasibility known before sign-off, country fit visible, change orders prevented

Quality & risk
Traceability by default

Every answer carries its version, errors from stale rules fall

Strategic
Learning that compounds

Each study makes the next protocol better, plus a shared evidence base with the partner

The thesis

AI is not the product. It is one layer in a redesigned decision system.

Five mechanisms cut the screening error rate and only one needs a model. Five of the ten capabilities we built involve no machine learning at all. Four of thirteen activities got removed instead of automated, because automating them would have made the underlying fault permanent. That's why the AI is safe to put in front of a clinician, and why this survives an inspection.

5 / 10capabilities built involve no model at all
4 / 5screening error mechanisms need no model
4 / 13activities removed, not automated
~200lines of plain code in the component everything depends on
1capability that acts on its own, with a hard human stop
Part one

The brief, and the two problems underneath it

Two asks that looked separate, one root cause that made both solvable at once, and a third problem nobody had written down.

01
What they asked for

Both problems shared a cause

The company came with two asks and assumed they needed two answers. They shared a root.

Track A on-site trial management Track B patient screening
Track A · what's going wrong on site

Coordinators and monitors spend their day cross-checking: which version of the rules applies, who owns a question, what the research partner already knows. A question with a one-sentence answer takes three to nine days and leaves no record anywhere.

A coordination problem. Four parties, no shared view.

Track B · what's going wrong in screening

Whether a patient qualifies gets judged against rules written in prose, held in five documents of unknown age, with the evidence scattered through notes nobody has time to read. Nobody knows the error rate because nobody measures it.

An accuracy problem. One desk, one decision, no feedback.

Both fail at the same point: the protocol is authoritative as a document and meaningless as data.

A search system can find the right sentence in the wrong version. A screening tool can apply a rule that was replaced in March. A research partner can report against a definition the company doesn't share. Fix the protocol and all three become solvable.

A third problem, which nobody had written down

About three weeks in, a pattern showed up that neither ask covered. Both problems start upstream, when the trial gets designed, in a conversation between the company and its research partner with almost nothing behind it. We added it as a third track. It carries the biggest prize and it appears early here, at section 08, because everything after it reads differently once you've seen it.

Track C designing the trial together, before it's signed off

Three questions we had to answer

Q1

What goes wrong when a trial runs on site, and where can AI help?

03 · 09 · 11 · 12 · 17 · 19 · 20

Q2

How do you cut the error rate in patient screening?

03 · 13 · 18 · 20 · 22

Q3

How can a drug company and its research partner work together through AI, legally, in the EU and UK?

07 · 08 · 14 · 15

02
How we worked

We followed one rule through four sites in eight weeks

We sat with coordinators during screening visits in three countries, walked the systems they use, read the support desk export, and followed a single eligibility rule through every document that repeats it. That last exercise took an afternoon and changed the shape of the whole engagement.

Eight working sessions with the company, its research partner and two site teams. Each one ended in a decision.

How the diagnosis changed as we went

Three things we saw differently by the end:

  • Week two. We arrived expecting a search-quality problem and spent the first fortnight on model improvements. The rule trace in section 03 pointed the work somewhere else entirely.
  • Week four. We had France down as a staffing problem, because that's how the country team described it. Comparing it with Portugal showed four possible causes tangled together, and we went back to separate them.
  • Week six. Track C wasn't in the original scope. It came from noticing the same rules kept turning up in both problem sets, and it's now the part of the work we'd lead with.

How confident we are, line by line

Four classes, marked at the point of the claim.

Observed

Seen directly in a system, document or trace. Blueprints, the rule trace, boundary classifications.

Verified

External and traceable to a published source. Regulatory dates, the screening benchmark in 18.

Modelled

Built to show a shape. Every percentage here. Directional.

Open

Where the evidence points one way but we'd want the number before betting on it.

What each session settled
SessionThe question on the tableWhat came out of itWhere
1 · DecisionsWhich decisions carry the weight?Nine recurring decisions scored on what evidence is missing03
2 · The workWhere does the day break down?Current-state blueprint for one eligibility question03
3 · The ruleWhere does the authoritative rule live?The five-representation trace03
4 · ScreeningWhat kind of errors are we making?Three error types, two of them invisible03
5 · BeliefsWhich of our assumptions survive?Eight beliefs tested against the evidence04
6 · The proposalWould retrieval solve this?Six objections we had to answer before it would be approved05
7 · AllocationWhere should the machine touch the work?Four-stage allocation across thirteen activities11
8 · The lineWhat stays human, and why that specifically?Checkpoints tied to consequence, not caution18
Part two

What we found

The work as it gets done on the ground, the errors nobody can see, and which of the company's confident beliefs held up.

03
Track A · what we found

Running a trial on site is a cross-checking job

Q1 What's wrong on site, and where AI helps

We expected people short of tools. We found people surrounded by tools and short of one fact: which version of the rules is in force at this site, today.

3–9 days
To answer a question whose answer is one sentence
5
Places the same eligibility rule exists
none of them linked
3
Different screening counts in circulation
three definitions, no owner
0
Questions recorded when answered by phone
which is most of them
Monthly
How often the partner's operational history reaches the company
as a PDF

Modelled Figures show the shape of what we observed.

Following one question end to end

An ordinary moment. A coordinator, mid-visit, isn't sure whether a candidate meets an eligibility rule. Nothing here is smoothed. The phone call is drawn because the phone call is where the answer comes from, and no system in the company can see it.

Fig 01The current path of a single eligibility question
At the visit
+1 hour
+1–3 days
+3–9 days
Resolution
Patient
Attends screeningCandidate is in the room
Books a second visit, or doesn'tSome candidates are lost in the gap
Coordinator
Checks the local sheetA printed summary of unknown age
Doesn't trust itIs this current? Nothing on the page says
Emails a monitor she knowsNot the study mailbox, a person who answers
Writes it on her sheetAnd nowhere else. The next site asks again.
Doctor
WaitingCan't decide without the rule
Decides eligibilityCorrectly human, but made late
Monitor / partner
Reads the protocol PDFUnsure which amendment is in force for this country
Escalates to the country teamNo defined route, so picks a name
Company
Answers it againSame question answered for another site last week
Replies by emailTo one person, in one thread
Systems
Paper binderLocal drive
The assistantOpen in a tab. Not used.
eTMFSearchable, not versioned
EmailNo shared record
What's kept
Nothing.Not that the question was asked, not which rule it concerned, not which version answered it, not how long it took. The cheapest thing to fix in the whole system, and every later capability depends on it.
Legend Human work System Workaround Loss or failure
Three to nine days for a one-sentence answer, and the company learns nothing from it. The assistant was in this flow the whole time and went unopened. Partly because using it meant leaving the workflow, mostly because it couldn't answer the version question either.

Why the version question has no answer

We took one eligibility rule and followed it into every document that repeats it.

Fig 02The same rule, in five places
Source of truth
Protocol PDF
Version
Amendment 3
Status
Current
Form
Prose
Correct, and unreadable to a machine.
Given to sites
Site quick guide
Version
Amendment 2
Status
Superseded
Form
Bullets
Nothing triggered its update.
Used at initiation
Training slides
Version
Amendment 1
Status
Two behind
Form
Paraphrase
The paraphrase has drifted from the source.
In real use
The coordinator's sheet
Version
Unknown
Status
Last edited?
Form
Handwritten
This is the one decisions are made from.
What AI reads
Assistant corpus
Version
All of them
Status
Not modelled
Form
Chunks
Can cite any of the five as fact.
This is why arguing about search quality was the wrong argument. A better model, a better ranker and a longer context window all make the system faster at returning a rule that was replaced months ago. The fault is in the documents, and no amount of model capability reaches it.
Fig 03Version drift over time, what each document was carrying on the day we looked
Jul 23original
Nov 23Amendment 1
Jan 24Amendment 2
Mar 24Amendment 3
17 Jun 24today
Protocol PDFThe controlled document
Amendment 3 · current
Site quick guideIssued at study start-up
Amendment 2 · frozen since issue
Training slidesUsed at site initiation
Amendment 1 · two versions behind
The coordinator’s sheetWhat the decision gets made from
Unknown · last edited by hand, no date on the page
Assistant corpusWhat the AI reads
All versions present at once · no dates modelled
In force Superseded Unknown vintage All versions at once Today Dotted band = how long that document has been wrong
The cards above show the drift. This shows how long it's been running. The training slides went stale in January, when Amendment 2 landed, and nothing in the company noticed for five months, because no process exists that would notice. The two documents a coordinator reaches for are the two with the longest red bands.

The data underneath, scored on whether it can do its job

A field can be completely filled in and still worthless. The clearest example here looks healthy in every report the company produces.

Data quality register, scored on whether it can support the decision it feeds Modelled
AssetScore /5Complete?Timely?Fit for the decision it feeds?
Protocol content as data1.1n/a, prosen/aNo. Not held as data at all, so no rule, gate or comparison can be built on it.
Screen-failure reason1.8Largely populatedCoded up to 42 days laterNo. Reconstructed after the fact by someone who wasn't in the room. A plausible guess.
Site performance history2.1PartialMonthlyBarely. Enough to rank sites. Not enough to explain one.
Partner operational recordn/aHeld by the partnerMonthly, as PDFNo. Arrives as a document after the window in which it could change a decision.
Support interactionsn/aOnly what reaches the deskReal time when loggedPartial. The phone-resolved majority never enters it.
Screening countsn/aThree versions existVaries by sourceNo. Three numbers, three definitions, nobody owning the definition.
The one that matters most The screen-failure reason field passes every standard data check going. It fails the only test that counts: it doesn't hold the information the decision needs, at the moment the decision is made, from the person who made it. A dataset can score well on six measures and be useless on the seventh.

Which decisions carry the weight, and what they were missing

We anchored the design on decisions, not processes, because a decision is the only unit that tells you what evidence it needs. Three questions per decision: what would a competent person need to know, does it exist anywhere, and can they reach it in time. The third is where nearly everything fails, and the usual data assessments don't ask it.

Fig 04Nine recurring decisions, scored on what's missing
Decision
Owner
Evidence required
Exists?
In time?
Gap
Closed by
Is this patient eligible?
Doctor
Current rule + patient evidence + how the same ambiguity went before
Partly
No
Severe
Local patient-fit · 15
Which version of the rule applies here?
Clinical dev / site
Version, date it took effect, which countries and sites
No
No
Severe
Protocol object · 14
Who owns this question?
Country ops
Question types + who's accountable for each
No
No
Severe
Routing + directory · 14
Which sites does this change affect?
Clinical dev
What changed × which sites × training and consent knock-ons
No
No
Severe
Protocol graph + agent · 16
Where should we step in, in France?
Country manager
Site state broken down by version, ownership, partner, capacity
Partly
No
High
Event model · 18
Is the partner delivering?
Outsourcing
History of what happened + how often + response times
At the partner
No
High
Data contract · 17
Should the assistant scale?
Digital + clin ops
Correctness, version correctness, a fair sample, document owner
No
No
High
Test suite · 19
Why did this patient not qualify?
Site / clin ops
Reason, captured at the decision, by the decider
Late
No
High
Capture at decision · 15
Will this protocol recruit?
Company + partner
Pass rates rule by rule against real site populations, before sign-off
No
No
Severe
Joint feasibility · 16
Read the two middle columns together. For six of the nine, the evidence exists somewhere and can't be reached when the decision is made. That's an access and timing problem. Only two decisions were short of data, and one of those sits behind a legal boundary.
The order of work fell out of this map. The four worst-served decisions all depend on protocol version and named ownership, so those got built first and everything else queued behind them. The ninth row is the one nobody had written down. It became Track C.

What this does to the person holding it

We ran the coordinator's role through a work-system analysis, looking at the person, the tasks, the tools, the environment and the organisation together instead of blaming any one of them. The finding is specific and uncomfortable.

Fig 05Where the load falls
Person
  • Trained on the protocol at kick-off, once
  • Running three to six studies at a time
  • No notification when any of them changes
Tasks
  • Screen, consent, schedule, query
  • Chase, reconcile, re-enter, translate
  • Five of eight are pure overhead
Tools
  • Trial systems, email, phone
  • Paper binder, personal spreadsheet
  • And now an assistant in a new tab
Environment
  • Clinic-floor interruptions
  • The question comes up with the patient in the room
  • Answer arrives after they've gone home
What the systems carry
  • Storing the document
  • Delivering the email
  • Counting the logins
What the human carries
  • Remembering which version is current
  • Remembering who answered this last time
  • Spotting a change nobody announced
  • Reconciling three counts that disagree
  • Apologising to the patient
The systems took the storage, the sending and the counting. The human kept the cross-checking, the remembering and the exceptions: the three things that need the most support and got the least. That's the classic irony of automation, and it explains the adoption numbers better than any usability finding. The tool didn't reduce the work that was hard.
Automation bias, created not avoided

An assistant that doesn't know about versions and is usually right teaches people to stop checking. The speed arrives before the failure does.

Trust calibration, absent

The product showed no evidence, no version and no sense of how sure it was, so users could only fully trust it or ignore it. They chose to ignore it.

Situation awareness, degraded

An answer with no source strips away the context the doctor needs for a judgement they're still accountable for. Speed bought from the wrong account.

So where can AI help on Track A? Q1

In three places, and only after one non-AI thing is fixed.

Fix first

Make the protocol a proper versioned record. No model involved. A data job that unblocks everything else.

, with the source shown. Removes the cross-checking, and the searching with it.

Answer against the version that applies, with the source shown. Removes the cross-checking as well as the searching.

Then

Route to a named owner automatically, and show that owner four sites asked the same thing.

Then

Map amendment impact before the change lands: sites, documents, training, consent.

Track B · what we found

Two of the three screening errors are invisible

Q2 Reducing the screening error rate

You can't reduce an error rate nobody measures. Before designing anything, we had to work out what kinds of error screening produces and which of them the company can currently see.

Fig 06The three screening errors, and who ever finds out
False screen-failAn eligible patient is turned away
Excluded on a rule they met. The evidence was in a note nobody read, or the rule applied was the old one. They go home. No record is created, because the company has no lawful route to records for people who never join the trial.
Detected byNobody, ever
False screen-passAn ineligible patient is enrolled
Turns up weeks later as a protocol breach, a monitoring finding, or an exclusion at data cleaning. Expensive, visible, and the only error type anyone counts.
Detected byMonitoring, late
Stale-rule decisionThe right call against the wrong version
The coordinator applies Amendment 2 because that's what the quick guide says. Sometimes that turns a no into a yes, sometimes a yes into a no, and sometimes it makes no difference at all. Nobody is any the wiser.
Detected byAudit, if at all
The visible error dominates attention and is almost surely the smaller pool. Turning away an eligible patient costs the trial a participant and costs that patient access to a treatment, and nothing in the company would ever report it happened.

Step one of reducing the error rate isn’t technology at all.

It's a re-review study. Take a sample of past screen failures, have a clinician who doesn't know the original outcome re-check them against the rules that were in force on the day, and get a baseline. Without that number, any later claim of improvement can't be checked. It's exactly the number the earlier pilot never produced.

Where screening loses people

Fig 07The funnel, and where the measurement runs out
Potentially eligible in the population
Unknown: never enumerated
No visibility
Identified by the site
Manual chart review
Effort-limited
Pre-screened against criteria
Rules in prose · evidence scattered · version uncertain
Errors enter here
Formally screened
Visit, labs, consent
Well instrumented
Enrolled
In the trial
Fully recorded

Modelled Widths show the shape observed.

The industry measures the bottom of this funnel beautifully and the middle not at all. Pre-screening is where the judgement happens, where the evidence is hardest to reach, and where nothing is recorded, which is exactly where an assistant working rule by rule has something useful to do.

This constraint shapes everything here

The company has no lawful route to identifiable records for anyone screened who never joins the trial. That's the shape of the problem, and the design starts from it.

You can't build screening intelligence by moving patient data to the company, because the patients who matter most (the ones turned away) are the ones whose data can never move. So the computation goes to the hospital, and only rule-level outcomes come back. Section 15 is what that looks like.

04
Testing the brief

What the company believed, and what held up

The brief arrived with confident positions. We treated each as something to test against what the evidence could support. Three held, three needed reframing, two turned out the other way. The reframings mattered most, because they redirected effort that was about to be spent in the wrong place.

“The pilot worked.”
SupportingActivation 64.9%. Satisfaction 6.8/10. Support requests down 9.1% year on year.
ContradictingWeekly activity 18.2%. Used inside real work 4.1%. Correctness never measured. The year-on-year figure isn't adjusted for study phase.
The pilot showed that people will log in. It showed nothing about whether the answers were right, and the one good operational number is muddied by other factors.
Reframed
“The problem is search quality.”
SupportingUsers describe answers as vague. The instinct is to improve the model.
ContradictingOne rule exists in five documents with nothing linking them and no dates. The system holds every version at once.
Search is working correctly against documents that can't say which version applies. Improving the model makes the system faster at being wrong.
Contradicted
“What we need is contextual reasoning.”
SupportingUsers do want answers that account for their site and country.
ContradictingSite, country and version don't exist as data anywhere a model could reach.
The system can't reason about context because context isn't data. A data problem wearing a reasoning problem's clothes.
Reframed
“Patient screening is the biggest value pool.”
SupportingScreen-failure volume is high and visible. The logic is sound.
ContradictingNo lawful route to records for patients who never join. The screen-failure reason field scores 1.8 out of 5 and is coded up to 42 days late.
Most likely the largest pool and the hardest to reach. Stays in scope, through a service that runs at the hospital, and it can't be measured until the reason field is fixed.
Survived, constrained
“France underperforms because of staffing.”
SupportingSlowest start-up, highest drop-off, and the country team reports being stretched.
ContradictingFrance is also the weakest assistant group, with one weekly active user out of sixteen. No analysis separates when amendments land from how many people there are.
Staffing is one of four candidates. When amendments reach sites, who owns what, and how the research partner works were never separated out. Add staff to a version-timing problem and you buy a faster wrong answer.
Contradicted
“Our research partner's execution is the main problem.”
SupportingTheir operational history arrives late, thin and hard to challenge.
ContradictingThe contract pays for activity, not outcome, and gives no rights over the operational record.
The partner is delivering exactly what it's paid and permitted to deliver. The fault is in the information rights, not the execution, and that opened Track C.
Reframed
“The EU trial portal is a compliance workstream.”
SupportingIt's treated as a submission obligation with its own team.
ContradictingSubmitted and authorised get reported as one figure, so readiness looks better than it is.
Holds up, with one correction: the reporting merges two different states, and that reaches leadership dashboards.
Survived
“More automation is the answer.”
SupportingThe manual burden is real and widely felt.
ContradictingThe heaviest burden is cross-checking, created by there being no shared record.
Holds for gathering and routing. For the cross-checking the answer is a shared record, which removes the task instead of automating it.
Survived, narrowed
The comparison that was already inside the building Portugal gives every site a single named contact and shows faster start-up and lower drop-off than France, which doesn't. Four of the five differences between them are choices about how the work is organised. The strongest single thing we found is a staffing pattern the client already runs somewhere else, and it can be tested without writing any software.
Part three

Making the case

Putting a search assistant into a regulated clinical environment is a governance argument before it's a technical one. Six objections had to be answered before anything would be approved, and answering them is what turned a recommendation into a design.

05
Making the case

Arguing for it in a room that had reasons to say no

Recommending a search assistant into a regulated clinical environment is a governance argument. We knew which objections would land before we walked in, because they're the same six every time, and we built the case around answering them.

Below is what a company's quality, medical, data and privacy functions each need satisfied before anything like this gets approved. Working through them is what turned a technology recommendation into a service design, and each one produced a design constraint we wouldn't otherwise have written.

Clinical quality

Citing a rule that was replaced is a regulatory finding.

An answer that looks right and comes from the wrong version will be acted on, and it'll look correct in the audit trail afterwards. This objection has to be answered first, because nothing else matters if it stands.

What we broughtThe five-document trace. It showed the failure already happening without AI, which turned the assistant into a way of closing an existing hole instead of opening a new one.

Study medical

A lot of site questions have no answer in the protocol at all.

A system that always produces something will produce something for those too, in the voice of the study's medical lead. Nobody was worried about made-up answers in the abstract. They were worried about fluent false authority on questions that need a person.

What we broughtA read of the support desk export showing how many questions needed interpretation instead of a lookup, and a commitment to measure how often the system declines to answer, in both directions.

Quality and systems validation

If this is a computerised system under trial regulations, where's the validation package?

And what happens the week the model provider ships an update. A system whose behaviour can change without a release can't be validated the ordinary way. That's a real objection, and a fair one.

What we broughtPinning the model version, a fixed set of hard test cases, and the rule that a protocol amendment goes back through testing exactly as a model change does. That last point is what carried it.

Country study management

When an inspector asks why a site did something, someone has to sign the answer.

Accountability can't sit with a tool. If a coordinator acted on machine output, the record needs to show who was responsible for that guidance and what evidence they had in front of them.

What we broughtA directory of owners mapped to question type, and an answer record that carries its source version. Accountability became something you can point at.

Clinical data

Someone is hand-building the document set for two studies. Who does that for forty-one?

Hand-curation is the ceiling on scaling, and it was invisible in the pilot because two studies is manageable for one motivated person. Across the portfolio it's a standing job with no owner.

What we broughtAn estimate of the curation effort across the portfolio, which moved the conversation from “should we scale the assistant” to “what has to change before it can”.

Data protection

Our research partner holds half of what this thing wants to reason over.

Who's responsible for what data has to be settled per activity, at design time. Finding the question at go-live means either a delay or a system quietly operating outside its legal basis.

What we broughtA map of every data flow between company, partner, hospital and model provider, drawn before any build started, and the finding that the partner blocker was contractual.

Every objection came back to the same thing: the system had no way to know what was true, when, for whom, and no way to say so when it didn't.

06
Reframing

Every objection became a requirement

We stopped defending the recommendation and rewrote it against what they'd said. This is the pivot of the engagement.

Turning the pushback into the specification
The objectionThe requirement it impliesHow the design meets itWhere
Wrong version = regulatory finding Applicability resolved before search, in plain code, and visible in the answer Working out which version applies is a hard gate in front of the index, not a filter behind it. Content that doesn't apply is unreachable rather than ranked lower.12
It'll invent an answer The system must be able to decline, and declining must be measured as carefully as answering Four evidence states drive what the system is allowed to do. Where sources conflict it doesn't write an answer. Both passages are shown and the case goes to a person.15
Where's the validation package? Fixed set of hard test cases, version correctness as a release gate, re-testing on any change An eight-measure test suite. A protocol amendment is treated as a model change and goes back through testing.19
Who signs the answer? Named accountability per question type, and a record of the evidence the human saw Owner directory plus plain routing rules. Every answer writes a record carrying its source version. Every override records a reason.14
Who curates 41 studies? Structuring the source automated, owned by clinical development, checked field by field Rules pulled out into a structured format, with anything failing the check queued for a human instead of accepted.13
Controller or joint controller? Responsibilities, legal basis, transfer route and data rights settled at design time and written into the contract A data contract with the partner on five event types. Patient computation stays at the hospital, so the hardest question never arises.17
What we told the client Search is still the right technology. It was the wrong proposal, because it treated a data problem as a search problem. The redesign keeps the same core technique and changes what sits in front of it, what it's allowed to say, and who's accountable for the answer.
07
Market scan

We assessed six kinds of solution

Q3 Working with the partner, compliantly

Six categories, assessed as at June 2024. Named examples illustrate each category. They aren't endorsements or a competitive assessment.

Solution types against the three tracks
ArchetypeExamplesWhat it solvesWhere it stopsTrackCall
Clinical content & trial platformsVeeva Vault, Oracle Clinical One Custody of documents, milestones and study records. Already in place and doing its job. Stores the protocol as a document. No way to represent a single rule, and no answer to “which version applies here today”.AAlready own
General enterprise search & copilotsMicrosoft Copilot with Azure AI Search, Glean Fast, competent search across a pile of documents, with solid enterprise plumbing. No concept of which document outranks which, when it took effect, or which country it applies to. Will confidently return the training deck.ANot the answer
Protocol digitisation & authoring AIFaro Health, Certara Structuring protocol design and generating regulatory documents from structured inputs. Aimed at writing new protocols. Doesn't go back and structure forty-one live studies.A + CPartner, partial
EHR-based screening & matchingDeep 6 AI, TriNetX, Mendel Finding candidates in unstructured clinical records at scale. Strong, this category works. Mostly built around US health-system data access. An EU multi-country estate and the never-enrolled boundary change the deployment model entirely.BPartner, site-side
Operational analytics & RBQMMedidata Detect, CluePoints, Saama Spotting statistical outliers across trial data: odd sites, odd data, risk indicators. Detects that a site is an outlier. Can't say why, because the operational events that would explain it don't exist in the company's systems.ABuy later
Foundation models, built on directlyAnthropic Claude, OpenAI Extraction, classification, grounded writing and explanation. The reasoning layer, at low cost per call. Ships no domain structure at all. Everything that makes it safe here has to be built around it.A + B + CBuild the thin layer

The gap in the market, stated plainly

No vendor offers a protocol version authority service a component that takes a study, a country, a site and a date and returns exactly one set of rules, with its source. Every vendor assumes you already know which document is in force, because in their model you hand them the document.

Nor does anyone offer what Track C needs: a way for a company and its research partner to test a draft protocol against real patient populations before it's signed off, without either party seeing the other's data.

Both are small. The first is roughly two hundred lines of plain code over a data model that didn't exist. That's what we built. Everything else was bought, partnered or left for later.

Buy

Document custody, statistical monitoring, model inference. Mature markets, real products, no advantage in building.

Partner

Site-side screening deployment and protocol structuring. Specialist capability, but integration and governance stay with the company.

Build

Working out which version applies. The authority ranking. The operational event model. The owner directory. The pre-sign-off feasibility loop. Small, unglamorous, and nobody else can supply them.

Part four

The largest prize

Neither ask covered this. Both problems are made upstream, when the trial is designed, in a conversation between company and partner that has almost nothing behind it.

08
Track C · the unsolved one

Designing the trial together

Q3 Working with the partner, compliantly

Neither ask covered this. But both problems are made upstream, when the trial is designed, in a conversation that has almost nothing behind it. This is the section with the biggest prize and the least prior art.

How they communicate today

The company writes the protocol. The partner and the hospitals run it. Between those two facts sits a set of channels that are all either slow, thin, or leave no record, and usually all three.

Fig 08Every channel between company and partner, and what each one carries
Channel
Bandwidth
Speed
Leaves a record?
What it can't carry
Feasibility questionnairePre-award, per site
Yes
Anything numeric about the actual patient population. It's a site's opinion of its own capability, given months before the rules are final.
Kick-off meetingOnce, per study
Minutes only
A lot of information, once, before anyone has seen a patient. All the important learning arrives afterwards.
Weekly operations callRecurring
No
Structured as status reporting. There's no artefact either side can point at afterwards, so the same issue gets re-argued monthly.
Monthly reportPDF
Yes
Why anything happened. It reports that a site is slow, never that the same rule confused four sites in the same fortnight.
Change orderPer amendment
Yes
Anything preventive. By the time this channel activates, the design decision that caused it is eighteen months old and nobody can trace it.
The monitor's own knowledgeContinuous
Never
Nothing. It carries everything, and has no destination. The monitor usually knows which rule will fail at which site, and there's no channel through which saying so is anyone's job.
The fastest, most accurate channel in the whole relationship is the last row, and it's the only one with no record and nowhere to go. Everything above it is a formal instrument that fires too late to prevent anything.

The protocol is written by people who can't see the patients, and run by people who can. And there is no moment where those two facts meet before the design is signed off.

By the time reality arrives it arrives as a change order. The company experiences it as the partner underperforming. The partner experiences it as an undeliverable protocol. Both are describing the same missing mechanism, and the commercial relationship makes it costly for either to say so first.

What we built instead: run the protocol before you sign it off

Two things we'd already built made this possible without either party seeing the other's data. Rules are now structured records (14), and there's a local engine at each hospital that can check a rule against that hospital's own patients and return only counts above a minimum group size (15). Put those together and a draft protocol becomes a query you can run.

Fig 09 · ToolPre-sign-off feasibility: move a rule, see what it costs
Joint feasibility simulator · company + partnerInteractive

Draft rules · 38 sites, 3 countries

IC1. Raising it protects safety and shrinks the pool.

IC4. Shorter windows mean fewer patients have a recent enough result on file.

EC7. A safety exclusion with a direct recruitment cost.

EC2. A longer gap excludes more people, and is harder to evidence from notes.

Eligible candidates per 1,000 assessed
210
Workable
Sites that would recruit at target
11
of 38
Expected site questions per month
12
Normal
Risk of a later amendment
Low
to loosen criteria

Eligible per 1,000, by country: the same rules, different local practice

France168
Portugal210
Spain179
This draft is recruitable

Modelled Pass rates and country modifiers are illustrative. In the real loop each number is a live count returned by the hospitals themselves.

Three things become arguable that previously weren't. Tightening the blood-test window is a safety-neutral choice with a large recruitment cost. France loses more candidates than Portugal on identical rules, because the evidence is recorded differently in local practice. And a draft that looks defensible on paper can be visibly unrecruitable before anyone signs it. Today none of this is knowable until roughly nine months after the protocol is signed off, at which point it arrives as a change order.
Why this is the compliant version, not a workaround No patient data moves. The company sends a structured set of rules. Each hospital's local engine checks it against its own records and returns a count, suppressed below a minimum group size. The company never becomes responsible for anyone screened, and the partner isn't asked to disclose anything it doesn't have the right to disclose. The mechanism exists because the legal boundary is respected. An architecture that tried to centralise the data couldn't have offered this at all.

The second shared object: what a change costs

The other conversation that goes badly is amendments. The company proposes a change, the partner estimates effort, and neither has a shared picture of what it touches, so the negotiation is about the number instead of the change. Once the protocol is a graph, what it touches is computable and both parties look at the same figure.

Fig 10 · ToolWhat a change touches: pick one, see the knock-ons
Amendment impact explorerInteractive

Proposed change

Criteria touched
1
Sites affected
38
Documents to regenerate
2
Site staff to retrain
0
Patients to reconsent
0
Ethics submissions
3
Today · manual tracing
6 days
Found 31 of 47 things the change touches
With the protocol graph
2 days
Found 47 of 47, and the gaps are named

Modelled Counts illustrate relative reach across change types.

The instructive one is the last option. Adding a safety check looks like a small edit to one rule, and it's by far the most expensive change on the list, because it changes what's asked of the patient, which pulls in the consent form, which pulls in every ethics committee and every patient already enrolled. That relationship is invisible in prose and obvious in a graph.

The operating model that goes with it

Software on its own doesn't change how two organisations talk. What changes the conversation is having a shared thing to point at, and a defined moment to point at it.

Company and partner working together, before and after
MomentBeforeAfterShared object
Protocol draftingCompany writes. Partner comments on workability in prose, late, and diplomatically.Each draft rule is run as a query across the hospitals. The partner's judgement arrives attached to a number.Feasibility run, versioned per draft
Rule reviewA meeting where nobody can evidence a claim.A joint session over the country breakdown, with the rules that cost most recruitment ranked.Rule cost table
LockCompany decides. Partner accepts commercially.Company still decides, but the trade-off is recorded, with what each party advised.Decision record with evidence references
ExecutionMonthly PDF, rebuilt into a tracker by hand.Five operational event types on an agreed schedule, into a shared format.Operational event stream
Issue reviewVolume-based status reporting.Based on recurrence. “This rule generated 34 questions across 14 sites” is a protocol fault.Question volume by rule
AmendmentChange order and a negotiation about effort.Both parties open the same impact map before anyone prices it.Impact map with coverage stated
Close-outLessons learned document nobody reads.The feasibility runs and the actual outcomes get compared, and the differences feed the next protocol.Prediction-vs-actual record
What the company gains

A protocol that recruits. Amendment risk visible before sign-off instead of eighteen months after. And a factual basis for the partner conversation that doesn't depend on trusting a PDF.

What the partner gains

A channel for the thing its monitors already know, with the operational reality attributable to the protocol instead of to their delivery. Fewer undeliverable studies, and a defensible position when a rule is the problem.

What neither gives up

No patient data crosses. No commercially sensitive partner data crosses. The company's authority over its own protocol is untouched. The only thing that moves is a count, and the only thing that changes is when the conversation happens.

Part five

The design

Where the machine touches the work, how search is scored across three sources of truth, and how any of it scales to forty-one studies.

09
The design

The AI service blueprint

Two tracks drawn separately. They're different services with different users, data and legal exposure. What they share is the layer underneath. Track C gets its own section, because it changes who's in the room.

One eligibility question, before and after

The same moment, drawn twice. The test we applied throughout was simple: what does the coordinator stop doing?

Today
Check the local sheet
Printed summary, vintage unknown
At the visit
→
Doubt it
Nothing on the page says which version
+1 hour
→
Phone a monitor she knows
Not the study mailbox, someone who answers
+1 hour
→
Monitor reads the PDF
Unsure which amendment applies here
+1–3 days
→
Escalates by name
No defined route, so picks someone
+3–9 days
→
Answer arrives verbally
Written on her sheet and nowhere else
Patient gone
3–9 dayselapsed for a one-sentence answer
0records created
4other sites will ask the same thing
1candidate at risk of being lost in the gap
After
Open the rule
Context already sorted: study, country, site, role, date
At the visit
→
Read the answer
With version, date it took effect, and the passage it came from
+30 seconds
→
Phone a monitor
Removed: the route is in the answer
Gone
→
Escalate in one click
Only if it's ambiguous. Context travels with it.
+2 minutes
→
Chase the answer
Removed: owner is named and status is visible
Gone
→
Back to the patient
Answered once, for every site that asked
Same visit
Same visitresolved, or routed with context
5events recorded, none of them data entry
1answer, published to every site that asked
2steps removed from the coordinator's day

Track A · running the trial on site

The same moment as Fig 01, redesigned. We asked what the coordinator stops doing.

Fig 11Track A · the redesigned service, layer by layer
At the visit
+30 seconds
+2 minutes
Same visit
Afterwards
Coordinator does
Opens the ruleIn the workbench, not a document
Reads the answerWith its source
Escalates in one clickCase is ambiguous
Returns to the patientDoesn't wait for the reply
NothingNo sheet to update, nobody to chase
And sees
Context already resolvedStudy, country, site, role, date: shown, not asked for
Answer + version + date + the passage
“Two sources disagree”Both shown, neither chosen
Who it went to, and when they usually reply
The answer, when it landsVisible to every site that asked
Backstage
Version resolverStudy + country + site + date → one set of rules
Scoped indexOnly the version that applies is reachable
Routing rulesQuestion type → named owner. No model.
Owner sees four sites asked thisAnswers once, for all of them
Answer published against the ruleBecomes precedent
AI layer
Query understandingSorts the question, pulls out details → sets filters
Grounded compositionWrites only from the passages found, or says nothing
Conflict explanationExplains what differs: does not pick
DeduplicationGroups the same question across sites
Data written
QuestionRaised · AnswerIssued (source version required) · Escalated · IssueResolved · AIInteraction with feedback None of it is a data-entry task. Recording happens as a side effect of doing the work, so it happens.
Legend Human Model Plain code Declares uncertainty Gain
Five things left the coordinator's day and one arrived. The path for an ambiguous question is drawn as prominently as the answer path. A service that only performs when it knows the answer isn't designed for clinical work. Today the same question takes 3–9 days, is answered by phone, and leaves no trace.

Track B · patient screening

A different service. The computation runs at the hospital because the data can't leave it, and the output is evidence rule by rule instead of a yes or no.

Fig 12Track B · screening as a service inside the hospital
Candidate identified
Criteria applied
Evidence gathered
Doctor reviews
Recorded
Site does
Flags a candidateFrom clinic list or referral
Runs the checkOne action, inside the existing system
Reviews what was foundAnd what wasn't
Makes the clinical callEligible, not eligible, or needs a test
Picks a reason from a short listAt the decision, not 42 days later
And sees
Which studies this hospital is open for
Every rule, current version, plain text
Pass · fail · not enough evidence, rule by rule, with the note it came from
What the system could not establishNamed explicitly, never guessed at
Confirmation, nothing more to type
Runs where
Inside the hospital's own systemsPatient records, notes and lab results are never sent to the company. Not de-identified. Not sent.
SiteHuman decision, site-side
Hospital → companyGoverned output only
AI layer
Plain rulesAge, lab values, dates: no model needed and none used
Answering questions rule by ruleOne question per rule against the notes
Evidence locationCites the note and its date, or reports nothing found
Reason suggestionSuggests from the controlled list, the human picks
What leaves
rule id · outcome (pass / fail / not enough evidence) · protocol version used · timestamp · site-level counts above a minimum group size No identifier, no clinical value, no free text, no record of any individual. Enough to answer “which rule disqualifies most candidates in France?”, which nobody could ask before.
The shape of the output is the safety design. A system that returns “eligible” invites the doctor to rubber-stamp it. A system that returns the evidence rule by rule invites them to read it. The second resists automation bias and is the only version that can be audited. Today the company sees a screen-failure reason coded up to 42 days later by someone who wasn't in the room.
10
Capability assessment

We assessed fourteen techniques and built five

Before designing anything we assessed the available AI techniques against this company. Two questions per technique: could it do the job, and could this company run it. The second decided more than the first.

Technology scan: assessed as at June 2024
TechniqueWhat it would do hereData prerequisiteMaturityScales across 41 studies?Call
Retrieval-augmented generationAnswer protocol questions against the version that appliesA versioned, structured corpusMatureYes, once the documents are structuredBuild
Structured extractionTurn protocol prose into structured rulesThe protocol documents, and a format to put them inMatureYes: in batches, once per amendmentBuild
Entity resolutionMatch the same site and doctor across three different trial systemsIdentifier overlapMatureYesBuild: prerequisite
Knowledge graphWhat a change touches, and the history of a ruleThe entity modelMatureYes: ten types of thing, not a giant enterprise graphBuild, narrow
Distributed analyticsRule-by-rule pass rates across hospitals, feasibility before sign-offA local engine per hospital and agreed query patternsEmerging in this settingYes: the governance grows with each site, the computing doesn'tBuild: Track C
Bounded agentsCoordinate the knock-ons of a changeThe graph, plus a read-only tool layerEmergingYes, in one narrow workflowBuild, one only
Document intelligence / OCRBring scanned old protocols and site folders into scopeThe scanned corpusMaturePartly: quality varies by hospitalBuy
Classical anomaly detectionFlag site behaviour that departs from its peersA history of operational events that doesn't yet existMatureYes, laterDefer to step 6
Time-series forecastingProject recruitment per site and per countryClean recruitment history with consistent definitionsMatureYes, laterDefer to step 6
Causal inferenceEstablish why France differs from PortugalEvent history plus site characteristicsMature, but demandingMedium: needs enough sites in each groupDefer, then narrow
Distributed learningPredict candidate fit across hospital populations that differ a lotVerified labels, comparable meanings, a shared way to evaluate itResearch-grade in clinical deploymentNot yet: see 14Defer
Speech-to-textCapture monitoring visits and site calls as structured recordsAudio capture, and consent from everyone on the callMatureLow: the consent burden scales badly across three countriesDeclined
NLP for adverse-event codingSupport medical coding in the safety databaseSafety data, which sits outside this scopeMaturen/aOut of scope
Scheduling optimisationPlan monitoring visits by risk and travel costRisk model plus travel dataMatureYes, but the value here is smallDeclined

Where each one sits

Fig 13Value to this company against how easily it can be run here
High value · hard
High value · feasible
Low value · hard
Low value · feasible
Version resolution
Structured extraction
Scoped RAG
Distributed feasibility (Track C)
Knowledge graph
Bounded agent
Entity resolution
Causal inference
Distributed learning
Anomaly detection
Enrolment forecasting
Document OCR
Speech-to-text
Scheduling optimisation
← Harder to run hereEasier to run here →
Call Build Buy Defer Declined
Two clusters matter. Top-right is where we spent the money, and none of it is novel technology. Top-left is the interesting corner: distributed learning and causal analysis are both high value and, at this date and in this company, hard enough that starting there would have eaten the whole programme.

Could this company run it?

Capability assessments usually stop at the technique. The more useful question is about the organisation: five dimensions, scored one to five, per capability. A capability with strong data and weak governance fails just as completely as one with no data.

Fig 14Readiness by capability, across five dimensions Modelled
Capability
Data
Integration
Governance
Skills
Evidence
Verdict
Protocol structuring
2
4
4
3
4
Build first
Version resolution
3
4
5
5
5
Build first
Question answering
3
4
3
4
2
Build, gated
Site-side screening
4
2
3
3
4
Two-site pilot
Distributed feasibility
4
2
3
3
3
Build: Track C
Agentic amendment support
3
3
2
3
3
Build, bounded
Operational analytics
1
3
4
4
2
Blocked on data
Distributed learning
2
1
1
2
1
Not yet
Working out which version applies scores highest and is the least technically interesting thing on the list. Screening inside the hospital is held back by integration. That's a hospital IT problem, and it needs a different kind of person to solve.
The pattern across all fourteen Almost every technique here was shaped by whether this company had the data, the integration, the governance route or the evidence base to run it. That's why the built set is unglamorous and why the sequence in section 24 is ordered the way it is.
11
Who does what

We split every task four ways before automating it

Q1 What's wrong on site, and where AI helps

You can't automate a task. You automate a stage inside it. Every significant activity got split into four stages and allocated separately at each one. This is the piece of work that stops “AI-assisted” from being a phrase that means nothing.

Fig 15Gather → Analyse → Decide → Act, allocated independently
Activity
Acquire
Analyse
Decide
Act
Why this shape
Answer a protocol question
Automate
Augment
Preserve
Augment
Which version applies is a judgement. Finding text isn't.
Map amendment impact
Automate
Augment
Preserve
Automate
Spotting it is mechanical, approving it is accountable.
Route an incoming issue
Automate
Automate
Rule
Automate
Fully automated, and it needed no model at all.
Identify site risk
Automate
Augment
Preserve
Preserve
Stepping in with a site is a relationship act.
Assess patient eligibility
Local only
Augment
Preserve
Preserve
Clinical accountability, and error costs are asymmetric.
Test a draft protocol for feasibility
Local only
Augment
Preserve
Assist
Track C. Counts can cross, the design call cannot.
Prepare a regulatory response
Assist
Assist
Preserve
Preserve
A regulator requires an accountable signature.
Prepare a partner review pack
Automate
Augment
Preserve
Automate
Assembling it is drudgery, the conversation is not.
Reconcile three screening counts
REDESIGN. Publish one definition with one owner. Don't build reconciliation logic on top of a definition failure.
Automating this would make the fault permanent.
Maintain the site's rules sheet
REDESIGN. Remove the task. The sheet exists because the source is unreachable. Make the source reachable and it disappears.
The best automation is deletion.
Curate the assistant's documents by hand
REDESIGN. Hundreds of person-days across the portfolio, with no owner. Structure the source instead of curating the copy.
The thing that blocks scaling, hiding as a maintenance task.
Chase who owns a question
REDESIGN: question types and a directory first, then automate routing. The chasing is a symptom of missing structure.
Structure first, then automate the rest.
Interpret an ambiguous rule
PRESERVE ENTIRELY. The machine surfaces the conflicting versions and how it went last time, then stops. It doesn't resolve ambiguity.
Resolving ambiguity changes what the protocol means.
13activities allocated across four stages
4marked redesign , the task was removed, not automated
1preserved entirely: no AI built for it at all
4of those five would have been easy to automate, and doing so would have locked the fault in for a decade
Allocation Automate: machine performs it Augment: machine improves human performance Assist: machine prepares only Preserve: human judgement dominant Redesign: fix the process first
Reading across a row shows why one-word descriptions fail. Answering a protocol question is automated at gathering, assisted at analysis, human at the decision and assisted again at the action. Four different allocations inside one task that would otherwise get labelled “AI-assisted”.

Four of thirteen activities were removed removed, not automated.

The document curation, the rules sheet, the count reconciliation and the ownership chase all exist because something upstream is missing. Automating any of them would have bought a small efficiency and made the underlying fault permanent and harder to see.

12
Capabilities

Exactly what the AI does, and what it doesn't

Ten capabilities. Five use a language model. Five are ordinary software that gets called AI far too often. Naming which is which is the difference between a system you can validate and one you can only hope about.

5use a language model
5are plain code
10have a named human role
1acts on its own, with a hard stop
01
Version resolution

Which rules are in force here, today

How
Plain lookup over the version record. Study + country + site + date → exactly one set of rules, or a declared conflict.
Model
None. ~200 lines of code.
Human
Clinical development owns the version data.
If it failsTwo versions in force → search doesn't run. Conflict screen, routed, logged as a protocol fault.
02
Pulling rules from prose

Protocol prose → structured data

How
Long-context model with a strict output format: rule id, logic, threshold, unit, window, evidence required.
Model
Claude Opus, in batches, once per amendment.
Human
Clinical development approves each extracted set.
If it failsFormat validation rejects it. Nothing malformed enters the store, it queues for review.
03
Query understanding

Turning a typed question into filters

How
Sort the question type, pull out study, rule, drug, timepoint. These set the hard filters before the search runs.
Model
Claude Haiku. Thousands of calls a day, negligible cost.
Human
None. Low-confidence labels route to a default owner.
If it failsAn unclear question widens the filter instead of guessing, and flags that it did.
04
Scoped hybrid retrieval

Finding the passage, inside one version

How
Keyword search for exact identifiers, thresholds and units, meaning-based search for paraphrase, combined and then reranked on the domain features in 12.
Model
Embedding + reranker. No generative model.
Human
None.
If it failsNothing clears the support floor → the system says so instead of writing an answer.
05
Grounded composition

Writing the answer, only from evidence

How
Answers only from the passages found, with citations bound in. Any sentence without a source is dropped before display.
Model
Claude Sonnet, with the protocol context cached.
Human
Reader confirms it applies to their patient.
If it failsUnsupported claims are stripped. If nothing survives, the answer becomes “I can't answer this”.
06
Screening rule by rule

Reading notes against one rule at a time

How
One targeted question per rule against authorised clinical notes. Returns pass, fail or not enough evidence, with the source note and its date.
Model
Runs inside the hospital. Never returns an eligibility verdict.
Human
The doctor makes the clinical call.
If it failsDefaults to not enough evidence, which sends the case to a human instead of resolving it.
07
Routing

Getting the question to its owner

How
Rules over a published list of question types and a directory of owners. A lookup, and nothing more.
Model
None. A model here adds delay, cost and a new way to fail, for no gain.
Human
The named owner resolves and closes it.
If it failsNo owner mapped → escalates to the country lead, and the gap in the directory is logged.
08
Amendment diff

What changed between versions

How
A plain structural comparison of the rules. A model then explains why it matters, and never decides what changed.
Model
Sonnet for the explanation only, shown alongside the raw comparison.
Human
Clinical development judges materiality.
If it failsIf the explanation drifts from the comparison it's visible, because both are on screen.
09
Distributed feasibility query

Testing a draft protocol before it's signed off

How
A structured set of rules goes to each hospital's local engine, and each returns counts above a minimum group size. No patient data moves in either direction.
Model
None for the count. The rules that drive it come from capability 02.
Human
Company and partner interpret it jointly. The protocol call stays with clinical development.
If it failsHospitals below the group threshold return “suppressed”. Coverage is reported.
10
Amendment impact agent

The only capability that acts on its own

How
Triggered by a change. Walks rule → site → training → consent, and drafts a review task per affected item.
Model
Claude with read-only tools, writing drafts only.
Human
A named owner approves the impact map before anything is published.
Hard limitsCan't contact a hospital, edit a controlled document, close its own task, or resolve ambiguity. Enforced in the tool layer.
Why counting them matters Five of the ten involve no model. When people say “we're using AI for clinical operations”, most of the value in this design comes from the five that aren't: version resolution, routing, scoping the search, comparing versions and the distributed count. The language model does five jobs, each narrow, each tested separately.
13
Search design

The rules between three sources of truth

Q2 Reducing the screening error rate

Most descriptions of this kind of system assume one pile of documents. There are three here, they aren't comparable, and the interesting engineering is in how a question gets routed between them and what happens when they disagree.

The three substrates
SubstrateHoldsAnswers questions likeRetrieval methodAuthority
Structured rule storeStructured rules: threshold, unit, window, logic, date it took effect, who it applies to“What is the blood test window?” “Does a value from 9 weeks ago qualify?”Database lookup or rule check. No model, no search.1.0 by construction
Document corpusProtocol body, amendments, country annexes, investigator brochure, lab manual“Why was the window changed?” “What does the protocol say about repeat testing?”Keyword and meaning-based search combined, scoped to the version that applies, then rerankedRanked: see the weights below
Precedent storePreviously approved answers, the event log, resolved conflicts, override reasons“Has anyone asked this?” “How was it answered for the other French sites?”Meaning-based match on the question, filtered to answers whose source version is still in forceMedium, and it fades as versions move on

Routing happens before scoring

The classifier's job isn't to pick an answer. It decides which sources can legitimately answer the question, and a large share of questions never reach the search at all, because the structured store holds an exact value.

Fig 16How a question is routed, and how the three results are combined
InputQuestion + resolved context

Study, country, site, role, date, taken from the session and never typed by the user

Step 1 · classifyWhich sources may answer this?

Question type and details extracted. Sets the hard filters and picks the routes.

Route A · lookupStructured rule store

Exact value returned directly. No search, no writing. Roughly a third of site questions end here, in under a second.

Route B · retrieveDocument corpus

Version-scoped search, reranked on the five domain features. Used for reasoning, edge cases and anything a structured rule can't express.

Route C · recallPrecedent store

Previously approved answers whose source version is still in force. Returns the answer and who approved it, which matters more than the text.

Step 2 · combineRank fusion, then precedence

Results combined on rank, not score, because a database exact match, a keyword score and a similarity distance aren't on one scale. Precedence rules then apply.

OutputOne answer, with its source

Which source answered, which version, which passage, and how strong the evidence is

Sending every question through meaning-based search is the common mistake. A threshold is a fact, not a passage, and looking it up is both faster and correct by construction. Search is for the questions where prose is the right answer.

None of the three precedence rules is a weight

01 Structured beats prose

If the structured store holds a definite value, that value is the answer. The documents may add reasoning alongside it. They may never override it.

Why not a weight: the same reason which-version-applies isn't one. Anything expressed as a weight can be outweighed by a confident enough competitor, and the failure is silent.

02 Precedent informs, never decides

A previously approved answer is shown as precedent with its approver and date. It isn't merged into the answer text, because an approved answer to a similar question isn't an approved answer to this one.

Why: precedent silently becoming policy is how a one-off interpretation turns into an unwritten rule nobody remembers agreeing to.

03 Disagreement is an alarm

If the documents say twelve weeks and the structured store says eight, don't try to rank one above the other. Something has gone wrong in the extraction or an amendment has gone stale, and it pages the person who owns the documents.

What this buys: the search system becomes a continuous check on the quality of the company's own data. It surfaces protocol faults as a side effect of answering questions.

The part worth stealing Rule three turned out to be the highest-value line of code in the system. Every disagreement between sources is a place where the structured version and the source document have drifted apart, which is exactly the failure the quality team was worried about, caught automatically, on live traffic, before anyone acts on it.

Inside route B: the version gate runs first

Fig 17The document retrieval pipeline
Input
Question + context

Study, country, site, role, date

→
Stage 0 · hard gate
Version resolver

Yes or no. One set of rules that applies, or a declared conflict and a full stop.

→
Stage 1
Hybrid candidates

Keyword and meaning-based search, combined. Only the version that applies is reachable.

→
Stage 2
Domain rerank

Relevance adjusted by five clinical features

→
Stage 3
Compose + bind

Every claim tied to a passage. Unsupported claims dropped.

→
Output
Human

Answer, source, version, evidence state, route

Two versions in forceThe search never runs. Both sources shown, neither chosen, case routed as a protocol conflict and logged against clinical development as a fault in the protocol.
Nothing clears the support floorIt doesn't attempt an answer. “The current protocol doesn't address this” is a correct and useful answer that the old system couldn't produce.
Model or index unavailableFalls back to the version resolver alone: the right document, unsummarised. Reduced, still useful, and honest about which mode it's in.
A filter applied after the search can only remove what the search already found. If the current version says little about a topic and an old one says a lot, similarity search surfaces the old passage, the filter deletes it, and the model writes from the scraps that remain. Splitting the index by version means the question is asked of one version from the start.

The scoring, and why it isn't off the shelf

Relevance alone ranks a training slide above a protocol section, because the slide is written in the same plain language as the question. Five domain features fix that.

Fig 18 · ToolMove the weights and watch the ranking change
Search scoring explorer · document corpusInteractive

Question from a French site, 17 June 2024

“Can we include a patient whose blood test was taken 9 weeks ago?”

How closely the meaning matches. The only feature a generic system has.

Protocol > country annex > brochure > training deck > site-written.

Contains the exact rule id, threshold, unit or window.

How recently this source took effect.

Source language against site language. Translations score below the controlled source.

An answer already approved by a human, whose source version is still in force.

Correct source at rank 1

Modelled Illustrative feature values on six representative passages, to show the mechanism.

Turn the gate off and the old Amendment 2 passage takes rank one, because it happens to phrase the rule closer to the question. Then try raising authority tier to rescue it. You can't: both are protocol sections and score identically on authority. Only recency separates them, and recency is a weight, so it can always be outweighed.
How the weights are set: the part that matters for validation Not by hand. We built a labelled set of several hundred real questions from the query log, with the correct source passage decided by a clinical expert, then fitted the feature weights automatically, holding version correctness as a hard requirement (never something to trade off). The resulting set of weights is a versioned, documented artefact, refitted per family of studies. When an inspector asks why the system surfaced what it surfaced, those weights and their test run are the answer.

Two numbers decide whether it answers at all

Absolute support

Does any passage clear a minimum support threshold? If not, the system says it can't answer. This catches the questions the protocol doesn't address, which is a large share of what sites ask.

Gap between first and second, across authority levels

If the best and second-best passages come from different levels of authority and their scores are close, that's a conflict. It triggers the conflict state instead of a confident answer.

14
Multi-site scaling

How this scales to forty-one studies without moving any patient data

Q3 Working with the partner, compliantly

The distributed architecture is the backbone of both Track B and Track C, so it belongs in the open. What follows is the ladder, what blocks each rung, and where we stopped.

The topology

Fig 19What moves down, what comes back, and what never leaves
Company, EU environmentStructured rule set

A draft or in-force protocol expressed as machine-readable rules. This is all that travels down.

DistributionQuery broker

Pre-approved query patterns only. Every request logged, and the log readable by both company and partner.

France · 14 sites

A local engine at each hospital. Rules checked against local records, nothing sent outward.

Portugal · 9 sites

Same engine, same rules, different mapping to local terminology.

Spain · 15 sites

Two hospital groups with shared IT, the rest independent, which is where the integration cost lands.

Below this line nothing moves

Patient records, notes, lab results, medication history and any identifier stay inside the treating hospital. Not de-identified and forwarded. Not sent at all.

Returned upwardCounts, suppressed below a group threshold

rule id · outcome · protocol version used · timestamp · count. A hospital with fewer than the threshold returns “suppressed”.

Sites Local engine live Onboarding Not yet reachable
The lopsidedness is the point. A set of rules is small, identical for every hospital and contains nothing confidential. What comes back is smaller still. The expensive part is that each hospital needs its own terminology mapping and its own approval.

The five levels

1
Distributed rules

Definite rules pushed to each hospital and checked locally. Age, lab values, dates, windows.

Crosses the wireRules out, pass/fail back
Governance costOne data agreement per hospital
BlockerMapping to local lab codes
StatusBuilt
2
Distributed search

Local search over authorised clinical notes, finding the evidence for each rule. The model runs inside the hospital.

Crosses the wireNothing: the model runs locally
Governance costHospital IT approval and a hosting decision
BlockerSite infrastructure heterogeneity
StatusBuilt · 2 sites
3
Distributed analytics

Combined queries across hospitals. Which rules disqualify most candidates, and whether a draft protocol would recruit.

Crosses the wireSuppressed counts only
Governance costPre-approved query patterns plus a joint working agreement
BlockerAgreeing the query patterns, which took longer than building it
StatusPiloted This is Track C
4
Distributed learning

Train a shared model across hospitals without pooling data. Model updates move.

Crosses the wireModel updates: which can leak, and need protecting
Governance costEthics review per hospital, a stated privacy budget, secure combining
BlockerEverything in the next section
StatusDeferred
5
Distributed evaluation

Run the test set at every hospital and report performance per hospital. The level almost nobody builds.

Crosses the wirePer-site performance metrics
Governance costLow, but it needs a shared definition of correct
BlockerIt's unglamorous and nobody funds it
StatusNot built Level 4 is unsafe without it
Why level 5 is listed after level 4 Because that's the order in which organisations attempt them, and it's the wrong order. A shared model judged only on the average can be worse than the local one at a third of hospitals while the headline number looks fine. If you can't measure per hospital, you can't deploy per hospital, so the evaluation layer comes before the learning layer.

What blocks a shared model here

Not computing power, and not model architecture. Six things, in the order they bite.

Blocker 1

Semantic heterogeneity

The same rule resolves against different local lab codes, different coding systems, different units and different note conventions at every hospital. A kidney function measure isn't one field across thirty-eight hospitals.

What it costsA terminology mapping layer per hospital. This is the real price of scaling, and it's paid before any model exists.

Blocker 2

Non-IID populations

Hospital populations differ systematically: who gets referred there, what else patients have, local demographics. A globally averaged model can be worse at every individual hospital than that hospital's own local one.

MitigationLocal tuning or grouping similar hospitals together. Both need level 5 to prove they helped.

Blocker 3

N hospitals means N approvals

The computing cost of adding a hospital is negligible. The governance cost is a data agreement, an IT review, an ethics position and a local sign-off. That grows with every site and never gets cheaper.

What we didKept what comes back identical and minimal across all levels, so one approval template covers every query pattern.

Blocker 4

Systems heterogeneity

A teaching hospital and a district hospital aren't comparable. Wait for all of them and the slowest sets the pace for everyone.

MitigationA minimum spec for a hospital to take part, and combining results as they arrive, so a slow hospital degrades its own contribution and not the whole run.

Blocker 5

Gradient leakage

Model updates carry information about the data that produced them. “The data never leaves” is true and not sufficient.

MitigationSecure combining plus mathematical privacy protection, with the privacy budget written as a number in the protocol instead of asserted as a property.

Blocker 6

Combinatorial versioning

Model version times protocol version times hospital. Without a registry you can't answer which model produced a given answer under which protocol at which hospital.

What we builtThe registry, at level 1, long before it was needed. Cheap early and impossible to retrofit.

The economics of stopping at level 3

~90%of the value the company asked for, delivered by levels 1 to 3
1approval template covering every level 3 query pattern
38separate ethics positions needed to reach level 4
0verified labels available to train on today
~6the number of hospitals where a rule generates enough cases to learn from

Level 4 becomes worth it in one specific circumstance: when you need a prediction that a count can't give, and no single hospital has enough examples to build it alone. The realistic candidate here is deciding which chart to review first. That's a genuine distributed-learning problem, and it earns a second look once levels 1 to 3 have run long enough to produce the labels.

Distributed learning was sequenced. The distributed architecture was built on day one.

Confusing the two is the most common mistake in this area. The distributed rules and the distributed counts are what make Track B lawful and Track C possible, and neither of them trains anything.

15
Engineering

Running it on Claude

Q3 Working with the partner, compliantly

Claude isn't the search engine and isn't the system of record. It does five bounded jobs at three cost tiers, wrapped in plain code that decides what it's allowed to see.

Fig 20The stack, top to bottom
PeopleNamed, accountable
Coordinator, doctor, monitor, country manager, study medical owner, clinical development, partner programme lead. Every answer has one of these attached to it.
SurfacesOne workbench
Seven task surfaces over one spine. Seven products would need seven owners, seven adoption programmes and seven validation packages.
Plain-code layerDoes the heavy lifting
Version resolver · routing rules · owner directory · version comparison · format validation · group thresholds · combining counts. Cheap, testable, auditable, and the reason the model layer is safe.
Model layerFive jobs, three tiers
Haiku understanding and sorting questions, thousands of calls a day. Sonnet writing grounded answers, explaining changes, reading notes. Opus pulling rules out of prose, and working out what a change touches, in batches.
Semantic spineThe data model
study → protocol → version → rule → representation → change · country → site → doctor · event → decision → outcome. One owner per fact, a source on every value.
AssuranceRuns alongside, not after
Test suite · version-correctness release gate · audit of human and machine actions · a protocol amendment goes back through testing exactly as a model change does.
The plain-code layer is drawn the same size as the model layer because it does at least as much work. Most of what makes this system trustworthy involves no machine learning at all.
Model selection, and the engineering that makes it affordable
JobTierWhy this tierPatternVolume
Query understandingHaikuSorting into a small, stable set of labels. Speed matters, capability doesn't.Structured output, single callHighest, per question
Grounded compositionSonnetMust follow a strict answer format and stay inside the passages supplied.Protocol context cached between callsHigh, per answer
Screening rule by ruleSonnetOne narrow question per rule beats one broad question about eligibility. More accurate, and each answer is separately checkable.At the hospital, one rule at a timeMedium, per candidate
Diff explanationSonnetExplaining a computed comparison is a language task. Computing it isn't, and isn't given to the model.Comparison supplied as input, shown alongsideLow, per amendment
Pulling rules from proseOpusLong documents, subtle logic, high cost of a silent error. Worth the best model available.Batch API, strict output format and validationLow, per amendment
Amendment impactOpusMulti-step reasoning across the protocol graph with read-only tools.Bounded agent, drafts onlyLow, per amendment
Evaluation judgingSonnetScores how well answers are grounded and cited, offline, with human review on a sample.Offline only: never judges live outputPer release
The model never sees content that doesn't apply

Version scoping happens before the prompt is assembled. Replaced passages aren't in the model's view at all, so there's no way for it to reason its way to them.

Deployment follows the data

Track A runs in the company's EU environment. Track B runs inside the hospital's. The same capability deployed twice, because the constraint is legal.

Model changes are change control

Version pinning, a fixed test set, and re-testing before any tier is upgraded. The quality team's objection about the model changing underneath them is a release process.

Part six

In the clinic

How people get onto the system, what each track looks like in daily use, how trouble is spotted, and the legal instrument on every line.

16
Access

Getting staff and patients onto the system

Q1 What's wrong on site, and where AI helps

Access control in clinical research usually gets rebuilt from scratch for every tool, badly. There's a record that already exists, is already kept current, and is already inspected, and almost nobody wires systems to it.

Staff: the delegation log is the access layer

Trial regulations already require a log naming who may perform which trial duties and from when. It's signed by the lead doctor, kept current, and examined at inspection. It's also, in most organisations, a spreadsheet that no system reads.

Fig 21Site and staff onboarding, with what gates each step
Already exists
Site selected

Feasibility complete, hospital chosen for the study

Gate: contract
Already exists
Contract executed

Trial agreement and data processing terms signed

Gate: ethics
Already exists
Delegation log

Lead doctor names each person and the duties delegated to them, with dates

Gate: signature
Already exists
Training record

Protocol and regulatory training completed and recorded per person

Gate: completion
New: automated
Access provisioned

Role and scope taken from the delegation log. Access is limited to that study and those duties.

No manual step
New: automated
Access withdrawn

The log entry ends, access ends the same day. No leaver process to forget.

No manual step
Four of the six steps already happen and are already audited. The two new ones follow from the third, which means setting someone up stops being an IT ticket and becomes a property of the study record. The system also knows why someone has the access they have.
What this fixes

Access that outlives the person's involvement. In the pilot, setup was a spreadsheet and a support ticket, and nobody owned removing access at all.

What it costs

The delegation log has to become structured instead of a scanned PDF. Roughly the same work as structuring a protocol, and the same argument applies.

Where it strains

Hospitals that keep the log on paper. Around a third of them, and they need a light entry route instead of an exception process.

Patients: mostly they never touch it, and that's deliberate

Everything in Track B runs behind the hospital's own systems and is used by the coordinator and the doctor. The patient experiences it as a shorter wait and fewer repeat visits. That's the intended relationship, and there's a reason to be careful about changing it.

Today · no patient-facing screenWhat the patient experiences
  • Screening sorted within the visit, not across two
  • Fewer repeat tests ordered because a rule was misread
  • Fewer people turned away who were in fact eligible
  • No new account, no new app, no extra consent
The obvious extensionA patient-facing pre-screen

Let candidates check likely eligibility themselves before a visit. It would widen the top of the funnel.

  • Cuts wasted visits for both sides
  • Reaches people no hospital would have found
  • Creates the first real data on who was considered
The catch, and why it has to be hosted by the hospitalThe boundary reappears one layer out

A patient using a self-check becomes the responsibility of whoever hosts it. If the company hosts it, the company becomes responsible for people who never join the trial, the exact boundary the whole architecture exists to respect.

So it's hosted by the hospital, under the hospital's own basis, with the same governed output: counts up, nothing else. Same pattern, one layer further out.

17
Track A · the design

Running the trial on site

Q1 What's wrong on site, and where AI helps

Four changes. Only one of them is a model. Together they close the cross-checking loop that was eating the coordinator's day.

01 The protocol becomes a data record

Each rule becomes a record with an identifier, structured logic, threshold, unit, evidence needed, date it takes effect and who it applies to. The training deck, quick guide and site sheet become derived documents pointing at the rule, not separate documents that drift.

Closes: the five-document problem. Change a rule and everything pointing at it is flagged automatically.

02 Every question type gets an owner

A published list of question types, each mapped to exactly one accountable function, per country. Routing is a lookup. The coordinator stops choosing who to phone, and the answer stops depending on who she happens to know.

Closes: the France–Portugal gap. Portugal already ran one named contact per site and did better, so this spreads an existing practice instead of inventing something.

03 Answers carry their evidence

Version, date it took effect, the passage, the escalation route and the feedback box, in the same order every time, whether the system is confident or not. Users learn the shape, then learn which part to check.

Closes: trust calibration. The earlier assistant showed no source, so users could only fully trust it or ignore it. They ignored it.

04 The work writes its own record

Seven events, created as a by-product of doing the job. Nothing is a data-entry task. The gate that changed behaviour: AnswerIssued requires a source_version, so an answer given over the phone can no longer enter the record at all.

Closes: the invisibility of the phone call, and with it the partner conversation, the France analysis and the test set, none of which are separate builds.

Fig 22The protocol as a graph, ten types of thing, three of them new
Existing
Study

study_id, phase, therapeutic area, milestones

Existing
Protocol

protocol_id, therapeutic intent

New
Version

effective_from, supersedes, applicability scope

New · the keystone
Rule

human_text, structured_rule, threshold, unit, window, evidence_requirement

Derived
Representation

source_doc, section, page, translation, derived_from

Existing
Country

regulatory context, annexes in force

Existing
Site

site_id, organisation, capability, contract

Existing
Doctor

role, affiliation, study history

These three already existed. They were given identifiers and owners.

New
Change

change id, old, new, why, which rules it affects. The thing that makes impact analysis possible at all

New
Event

question, issue, milestone, actor, timestamp, source

New
Decision

owner, evidence_used[], override, outcome

The path that pays for the whole thing
Change → Rule → Document → Site → Doctor → Event

Six hops. That single path answers “which sites does this change affect, which documents go stale, who needs retraining, and who has already asked about it”, the question that previously took three weeks of manual tracing and found two-thirds of the answer.

Keystone object New Existing, given an owner
Three things are new: the protocol as a versioned record (the four blue nodes along the top), the operational event, and the decision record. Everything else already existed and was suffering from missing identifiers and unclear ownership.
The data model and the seven-event contract engineering detail

No data lake. The architecture starts from the smallest set of things that make the nine decisions in 03 computable, and every one has exactly one owner. Split ownership of a fact is where programmes like this quietly rot.

ObjectKey fieldsOwnerNew?
Studystudy_id, phase, therapeutic area, status, milestonesClinical systemsExisting: given identifiers
Protocolprotocol_id, therapeutic intentClinical developmentExisting
Versionversion_id, effective_from, supersedes, applicability scopeClinical developmentNew
Rulehuman_text, structured_rule, threshold, unit, window, evidence_requirementClinical developmentNew
Representationsource_doc, section, page, translation, derived_fromDerived: never authoredNew
Changeamendment_id, old, new, rationale, affected_criteria[]Clinical developmentNew makes impact analysis possible at all
Country / Site / Doctorregulatory context, annexes in force, capability, contract, study historyRegulatory / clinical opsExisting: given owners
Eventquestion, issue, milestone, actor, timestamp, sourceOperational functionsNew
Decisionowner, evidence_used[], override, outcomeThe decision ownerNew
AI interactioncapability, model_version, output, feedbackAI governanceNew
The seven events and their quality gates
EventRequired fieldsRejected if
ProtocolChangedstudy_id, old_version, new_version, effective_date, affected_criteria[]No named owner or no source document
QuestionRaisedstudy_id, site_id, role, category, timestamp, contentIdentity doesn't resolve, or category isn't on the list
AnswerIssuedquestion_id, source_version, answer, responder, timestampsource_version missing. An answer without a version is not a valid answer.
IssueResolvedissue_id, action, owner, outcomeOutcome is empty: an unresolved issue stays open
SiteMilestonesite_id, milestone, date, sourceMilestone name isn't from the controlled list
EligibilityAssessmentlocal_subject_token, study_id, criterion results[], evidence timestampsToken isn't local to the hospital, so central resolution is rejected at the boundary
Decisiondecision_id, owner, evidence_refs[], result, outcome_dateNo evidence reference: records as an unevidenced decision

The gate on AnswerIssued is the one that changed behaviour. Making the source version structurally required meant an answer given over the phone could no longer enter the record informally. That, and not any policy, is what moved resolution into the workbench.

The unglamorous finding worth stealing The strongest thing we found in the whole engagement wasn't AI. Portugal gives every site one named contact and shows faster start-up and lower drop-off than France, which doesn't. That contrast was sitting inside the company, unexamined, and can be tested without writing any software. We recommended running it as a service change alongside the build, so the technology wouldn't get credit for it.
18
Track B · the design

Reducing the screening error rate

Q2 Reducing the screening error rate

Five mechanisms, in the order they contribute. Only the third involves a model reading a patient note, and it's the narrowest possible use of one.

How each error type gets smaller
MechanismWhat it doesFalse screen-failFalse screen-passStale rule
1 · Structured rules at the current versionThe check runs against machine-readable rules resolved for this hospital today, not a printed sheetReducesReducesEliminates
2 · Plain rules for what is definiteAge, lab values, dates and windows are arithmetic. No model, no variation, nothing to make upReducesReducesn/a
3 · Reading clinical notes one rule at a timeOne targeted question per rule against authorised notes. Finds evidence a human hasn't time to look forReduces mostReducesn/a
4 · “Not enough evidence” as a real outcomeSeparates “fails this rule” from “I couldn't establish this”, and sends the second to a humanReduces mostReducesn/a
5 · Reason captured at the decisionShort controlled list, chosen by the person who made the call, in the momentMakes visiblen/aMakes visible

Mechanism 5 reduces nothing. It's what turns an invisible error into a measurable one.

The evidence this approach works

Not speculative. In June 2024, the same month as this engagement, Mass General Brigham published RECTIFIER in NEJM AI: a system answering thirteen eligibility rules as separate questions against clinical notes, for a heart-failure trial. It's the closest published analogue to this architecture, and the result is instructive in a specific way.

Fig 23Published benchmark · rule-by-rule screening vs trained study staff Verified
Sensitivitycatching eligible patients
RAG system92.3%
Study staff90.1%
Specificitycorrectly excluding
RAG system93.9%
Study staff83.6%

Read the gap, not the headline.

Catching eligible patients barely improved. Trained coordinators are already good at that. The entire gain is in correctly ruling people out, ten points: the system was far better at excluding people the staff had wrongly flagged as possibly eligible. In practice that's screening effort spent on candidates who were never going to join. Rule by rule, published staff accuracy ran as low as two-thirds on the hardest rules.

Source: Retrieval-Augmented Generation–Enabled GPT-4 for Clinical Trial Screening, NEJM AI, June 2024 (Mass General Brigham, COPILOT-HF). Reported cost was cents per patient. A randomised comparison of the same tool followed in 2025, after this engagement.

Which lever moves the number

Fig 24 · ToolScreening error model
Which lever moves the screening error rateInteractive

Move the levers

Machine-readable rules, resolved to the version in force at this hospital today.

Reading notes rule by rule, returning “not enough evidence” instead of guessing.

Doesn't reduce error. Determines whether you can see it at all.

False screen-fail
eligible patient turned away
18.0%
Invisible today
False screen-pass
ineligible patient enrolled
6.0%
Found late, in monitoring
Candidates recovered
per 100 screened
0
Baseline

At today's settings nothing has changed, and the larger of the two error rates is one the company has no way of seeing.

Illustrative model. Baseline rates and lever strengths are assumptions used to structure the discussion. Getting the real baseline needs the re-review study in section 03 . That's the first piece of work, and no claim of improvement means anything before it.
Two things fall out of playing with this. Structuring the rules is necessary but not enough on its own, and the evidence lever is where most of the recovered candidates come from. The third lever contributes nothing to the error rate, yet without it neither of the other two could be shown to have worked.

Why the human line sits where it does

Every checkpoint is justified by something specific: an action you can't undo, one kind of error costing far more than the other, or accountability a regulator requires. “Healthcare is sensitive” wasn't accepted as a reason for any of them.

Human decides

Clinical eligibility

Why: the two kinds of error cost wildly different amounts. A wrong yes puts a patient in a trial they shouldn't be in, and clinical accountability can't be handed to software.

Sees: results rule by rule, evidence found, evidence missing, version used.

Human decides

Ambiguous protocol interpretation

Why: resolving ambiguity changes what the protocol means for every hospital. That's authorship.

Sees: both conflicting sources with their dates, and how other sites were answered.

Human approves

Amendment impact map

Why: a missed site becomes a protocol breach, and reversing after sites are notified is expensive and public.

Sees: the full map with coverage stated, including what the agent couldn't reach.

Human decides

Any contact with a hospital

Why: an unnecessary escalation damages a relationship the company depends on for recruitment.

Sees: suggested priority, site history, comparable sites.

Human records

Screen-failure reason

Why: the value only means anything if it comes from the person who made the call, in the moment. A data-quality control.

Sees: a short controlled list plus free text, inside the existing flow.

Human approves

Any model, prompt or document change

Why: a silent change alters clinical guidance at every hospital at once.

Sees: the full test run, including the version-correctness gate.

The four states the interface can be in

Strong
One version applies, one clear passage
Answers, cites, offers the next action. Never asserts eligibility.
Answer, source, version, date it took effect.
Route still shown
Partial
Version found, passage is indirect
Answers, and names the gap inside the answer itself.
“This is inferred from §5.3, not stated there.”
Escalate in one click
Conflicting
Two in-force sources disagree
Shows both. Chooses neither. It doesn't write an answer.
Both passages, both dates, and why it won't choose.
Routed automatically
Insufficient
No passage supports an answer
Says so plainly. Doesn't write around the gap.
What was searched, and in which version.
Routed automatically

No percentage confidence score reaches the user. A named state tells someone what kind of checking to do. A percentage invites them to invent a private threshold. The escalation route is visible in all four states, including the confident one, so escalating never reads as the tool having failed.

The distributed capability ladder, and where we drew the line why level 4 comes later
LevelCapabilityWhat it answersPrerequisiteStatus
1Local plain rulesDoes this candidate meet each rule?Structured rule recordBuilt
2Local search over authorised notesWhere is the evidence for this rule?Deployment at the hospital and local governanceBuilt
3Distributed analyticsWhich rules disqualify most candidates, across hospitals? Would this draft protocol recruit?Hospital query capability, agreed query patterns, group thresholdsPiloted, two sites
4Distributed learningCan we predict fit across hospital populations?Stable features, verified labels, comparable meanings, an evaluation design, privacy controlsDeferred
5Multiple data types, distributedDoes combining local data types improve the decision?Everything in level 4, plus multiple data types and testing at each hospitalNot pursued

Sequenced later. The published healthcare literature is consistent about why a shared trained model isn't a starting point. Generalising across hospitals that differ this much, residual privacy leakage, communication cost, governance and evaluation design all remain live problems in real deployment. Levels 1 and 3 answer the questions this company has, at a fraction of the burden, and level 3 is what makes Track C possible.

19
Detection

Spotting errors and trouble on site

Q1 What's wrong on site, and where AI helps

Once questions, answers and decisions exist as records, eight things become visible that previously weren't. None of them need a model. All of them need the event record from section 17.

Signal 01

Question grouping by rule

One rule generating far more questions than its peers, across several hospitals.

What it meansThe rule is ambiguous or badly translated. A protocol fault, not site incompetence, and the single most useful signal in the set.

Signal 02

Answers issued from a replaced version

Direct and countable, because every answer record carries the version it came from.

What it meansThe change didn't propagate. Tells you which hospital, which rule, and which day the drift started.

Signal 03

Override clustering

Where humans consistently disagree with the system, grouped by rule and by hospital.

What it meansEither the system is wrong about that rule, or the hospital is. Both are worth knowing and the breakdown tells you which.

Signal 04

Reopen rate

Questions answered, closed, then asked again by the same hospital.

What it meansThe answer didn't land. Unclear, not trusted, or not reaching the person who needed it.

Signal 05

Time to first correct answer after a change

Measured per hospital, from the date it takes effect to the first answer citing the new version.

What it meansA direct measure of how fast changes reach each hospital, which nobody has today. This is the France question, made testable.

Signal 06

Rule fail rates that differ from peers

A hospital failing candidates on one rule far more often than comparable hospitals.

What it meansEither a real population difference or a misapplication. The country breakdown from Track C separates the two.

Signal 07

Question spikes before a protocol breach

A cluster of questions on one rule, followed weeks later by a filed breach at that hospital.

What it meansAn early warning. Once there's enough history, the spike becomes a prompt to step in instead of something discovered afterwards.

Signal 08

Silence after an amendment

A hospital that asks nothing at all in the weeks after a substantial change.

What it meansUsually the worst signal in the set. A hospital asking many questions is engaging with the change. One asking none has either not received it or isn't reading it.

The absence of interaction is the signal nobody measures.

Every operational dashboard in this industry counts activity. A hospital that goes quiet after a change produces no activity at all, so it produces no alert, and it's the one most likely to be running on the old rules six weeks later.

What the country manager sees on a Monday

Fig 25 · ToolSite triage: switch the lens and the priority order changes
Site attention board · France, week of 17 JuneInteractive

Rank sites by

Modelled Eight representative hospitals, to show how the ranking moves.

The same eight hospitals, four lenses, four different top-ranked hospitals. Recruitment shortfall is what every company currently monitors, and it's a lagging measure of something that went wrong months earlier. The fourth lens surfaces a hospital nobody was worried about.
Why none of this needs a model All eight signals are counts and time differences over the event record. The hard part was never the detecting, it was that the events didn't exist. Anomaly models earn their place later, at step 6 in section 24, once there's enough history for a departure from normal to mean something.
Part seven

Proving it

How the by-product becomes insight, and what gets measured.

20
Value

What this is worth, and when it lands

Five layers of value, each traced from the problem through the mechanism to something you could measure. Each row names the number that would prove it and the baseline that has to exist first.

Fig 26The five layers, and how much of each depends on the one below
OperationalTime and burden
Available as soon as the workbench is in use
1–2 quarters
Quality & riskTraceability
Arrives with the version gate, because the record exists once the work makes it
Immediate → 1 cycle
RecruitmentPatients not lost
Needs the re-reviewed baseline before anything can be claimed
2–4 quarters
ProtocolAmendments avoided
Needs rules as data and a local engine at enough hospitals
Next protocol
StrategicLearning
Builds up from the first study and can't be backfilled
Compounds

Bar length shows how much of the layer is available without further prerequisites.

Read this as a dependency order. The layer that's easiest to bank is the smallest, and the one that compounds is the one nobody can buy. It only exists if you start recording early.
Fig 27The value architecture: problem to mechanism to measurable outcome to business value
Layer
The problem
The mechanism
What we measure
Business value
OperationalSite burden, resolution time, monitor and partner workload

A one-sentence answer takes three to nine days. Coordinators cross-check versions, chase owners and rebuild trackers. Most resolution happens by phone and is never recorded.

Version settled before the search runs. Answers carry their source, questions route to a named owner, and the same answer publishes to every hospital that asked. Recording happens as a by-product.

Time from question raised to answer used. Reopen rate. Escalation hops per issue. Share of answers carrying a current source version. Cross-checking hours removed per hospital per month.

Capacity released, not headcount cutThe same site teams run more studies without more people, and the coordinator's day loses the work that produced nothing.
RecruitmentEligible patients found, screen failures, time to enrol

Eligible candidates get turned away because evidence sat in an unread note or the rule applied was out of date. That error is invisible: the company has no lawful route to records for anyone who never joins.

Assessment rule by rule inside the hospital, with “not enough evidence” returned as a real result instead of a fail. Reason captured by the person who made the decision, at the moment they made it.

False screen-fail rate against a re-reviewed baseline. Candidates recovered per 100 screened. Reason latency. Time from finding someone to enrolling them.

The most expensive thing in a trial is a slow oneRecovered candidates shorten recruitment, and recruitment is usually what holds up the whole study.
ProtocolChanges avoided, feasibility before sign-off, country fit

The protocol is written by people who can't see the patients and run by people who can, with no moment where those two facts meet. Reality arrives later as a change order.

A draft protocol run as a query against real hospital populations before sign-off. What an amendment touches computed from the protocol graph and shared with the partner before anything is priced.

Substantial amendments per study, against the company's own historical rate. Pre-sign-off prediction against actual recruitment at close-out. Rules changed after sign-off for recruitment reasons.

The largest single lineAn avoided substantial amendment removes ethics resubmission in every country, site retraining, document regeneration and, where patient burden changes, re-consenting everyone enrolled.
Quality and riskTraceability, version control, documented decisions

An answer from a replaced version looks correct in the audit trail. Nothing records which version informed a decision, so a version error is undetectable afterwards.

Source version structurally required on every answer. A version gate in front of the search. Every override records a reason. Disagreement between sources raises an alarm instead of being ranked away.

Protocol-version findings at monitoring and audit. Breaches attributable to stale rules. Share of decisions carrying an evidence reference. Extraction faults caught per amendment.

Risk removed, not managedInspection readiness stops being a preparation exercise. The evidence exists because the work produced it.
StrategicLearning built up across studies and across the partnership

Each study starts from scratch. What one country learned about a rule doesn't reach the next protocol, and the relationship with the partner resets at every kick-off.

Question volume by rule, screening outcomes and feasibility predictions build up across studies. Close-out compares prediction with actual, and the difference feeds the next protocol's design.

Feasibility calibration over time. Reuse of rule structures across studies. Share of protocol decisions supported by prior evidence. How often the same issue recurs across studies.

The only layer that compoundsEvery other layer is a one-off step change. This one improves with each study, and it can't be bought. It's built by operating.
Read the fourth column. Every value claim here resolves to a number someone has agreed to measure, and three of the five layers can't be measured at all until the baseline work in section 25 step 0 has run.

When each layer lands

The layers don't arrive together, and presenting them as though they do is how these programmes lose credibility in year two.

Fig 28Value horizons Modelled
Layer
When the measurement becomes readable
Operational
1–2 quarters
Quality and risk
Immediate for traceability, one inspection cycle for the rest
Recruitment
2–4 quarters, after the baseline exists
Protocol
Next protocol cycle · 6–18 months
Strategic
Multi-study · 2 years and compounding
Now1 year2 years3 years+
The layer with the largest single financial line, protocol, is also the slowest to read, because it's measured in amendments that didn't happen. That's an awkward business case and it's the honest one, so the operational and quality layers are what a first-year review should be judged on.
What has to be true before each layer can be claimed
LayerBaseline required firstOwner of the numberConfounder to control for
OperationalQuery log analysed, current resolution time measured and not estimatedClinical operationsStudy phase: activity volumes differ hugely between start-up and steady state
RecruitmentRe-review study on a sample of past screen failuresClinical operations with medicalCondition and hospital population mix, seasonal variation in referrals
ProtocolHistorical amendment rate per study, with reasons classifiedClinical developmentAmendments driven by regulation, which no design change prevents
Quality and riskCurrent findings rate from monitoring and auditQuality assuranceDetection effort: more looking finds more, which looks like getting worse
StrategicNothing. It starts building from the first study and can't be backfilledR&D leadershipAttribution across a portfolio that's changing for other reasons

The cheapest thing we built was a version resolver. The most valuable thing it enabled was a conversation the company and its partner had never been able to have.

That's the shape of value in a regulated business. It rarely arrives as automating an existing task. It arrives when a decision that used to be made blind can be made on evidence, and the technology that makes that possible is usually smaller and duller than the decision it unblocks.

21
Insight

From recorded events to decisions someone can act on

Once questions flow through one place, the company starts producing operational data it's never had. Here's how that becomes something a country manager can act on, traced from one real question all the way up.

Fig 29From a recorded event to a decision
1
Event

One thing that happened, recorded as a by-product of the work

ExampleSite FR-018 asked about the blood test window on 17 June. Answered from Amendment 3 at 09:44. Coordinator marked it used.
2
Metric

Events counted against one owned definition

ExampleRule IC4 generated 34 questions across 14 French hospitals this quarter, the highest of any rule in the study.
3
Signal

A number that differs from what comparable places do

ExampleFrench hospitals ask about IC4 four times more often than Portuguese ones running the same protocol version. That isn't random.
4
Explanation

The cause, broken down. Not a score, a reason

ExampleThe French translation of IC4 renders the window ambiguously, and the country quick guide still carries the Amendment 2 figure. Two causes, both fixable, neither visible before.
5
Decision and outcome

Someone acts, and the result links back to the action

ExampleClinical development reissues the rule text and the quick guide regenerates from the rule record. IC4 question volume is tracked for eight weeks to confirm it worked. The difference feeds the next protocol's feasibility run.
Every rung is cheap once rung one exists, and none are possible without it. The France question the company had been arguing about for months is answered at rung four, by data that costs nothing extra to collect.
Before: unanswerable, so not asked
  • Which rule is confusing the most hospitals?
  • Is France slow because of staffing, or because changes land late there?
  • How often is a question answered from an out-of-date version?
  • Which rules disqualify the most candidates, and is that intended?
  • Would this draft protocol recruit?
  • Does the partner's issue volume reflect site difficulty or partner practice?
  • Did the change we made last quarter change anything?
After: answerable from data the work already produces
  • Question volume by rule, hospital, country and protocol version
  • Time from a change taking effect to the first correct answer at each hospital
  • Share of answers carrying a current source version
  • Screening outcomes rule by rule, combined above a group threshold
  • Pass rates per rule, per country, before sign-off
  • How often the same issue recurs across hospitals, from the partner's event feed
  • Before-and-after on any measure, matched on study phase
Why these are diagnostics, not scores Every one of them breaks down into a cause you can act on. A single site score or maturity index would compress those causes into one figure that invites ranking and discourages the question that matters, which is always why.
22
Proving it

What we measure

The earlier pilot reported one number, 64.9% adoption, meaning a single login. Two levels down, use that had changed how work was done stood at 4.1%. Nothing measured whether the answers were right.

The test suite: eight measures, two of them release gates
MeasureWhat it isHowStatus
Version correctnessEvery cited source applies to this hospital, country and dateAutomated against the version record, on every releaseHard gate
Abstention qualityDeclines when it should, and doesn't when it shouldn'tHard test set: conflicts, gaps, replaced content, unanswerable questionsHard gate, both ways
GroundednessEvery claim traces to a passage that was foundAutomated claim-to-passage binding, plus sampled human reviewThreshold
Citation validityThe cited passage supports the claimAutomated, plus expert review on a sampleThreshold
Answer correctnessExpert-judged factual correctnessTest set spread across studies, countries and languagesThreshold
Escalation correctnessCases needing judgement reach a humanHuman review of a sample of answers that were not escalatedWeighted by consequence
Feasibility calibrationDid the pre-sign-off prediction match actual recruitment?Prediction against actual per rule, per country, at close-outMonitored: Track C
Outcome effectScreening error rate, resolution time, rework, amendment countComparison against the re-reviewed baseline, matched on study phaseDecides scale
The test set doesn't look like normal traffic It deliberately over-samples replaced versions, contradictory country annexes, incomplete evidence, questions no document can answer, and French, Spanish and Portuguese contexts where translation shifts the meaning. Testing on the best-documented studies and the strongest hospitals is exactly how the earlier pilot produced a positive checkpoint paper about a system whose correctness nobody had measured.

Adoption, redefined so it can't flatter anyone

RungDefinitionCan't be faked byWho acts on it
1 · ProvisionedAn account existsn/aNobody. Not a metric.
2 · ActivatedAuthenticated at least onceProvisioningNobody. The retired headline.
3 · RepeatReturned in a later week unpromptedA launch emailProduct
4 · EmbeddedUsed inside a task that produced an operational eventBrowsingOperations
5 · CorrectThe task completed correctly, judged against the test suiteFrequent use of a wrong answerAI governance
6 · OutcomeScreening error rate or cycle time moved against baselineEverything above itClinical operations leadership

Rungs 5 and 6 didn't exist in the pilot. They're the only two that can support a decision to scale, and both depend on the re-review baseline being established first.

24
Sequence

Ordered by dependency, not by quarter

No dates. Each step is gated by something the previous step has to produce. A phased plan survives none of those.

The rule we held No shared model, no digital twin and no autonomous agent until the protocol record, the event model and the test layer exist. The advanced capability is the last link in the chain.
25
The product

What people see

Three screens, placed last. The interface is the smallest part of this work and the part that would have been designed first if we'd got the sequence wrong.

Fig 30Anatomy of an answer, the same eight parts in the same order, every time
1
Resolved contextStudy, country, site, role and date, shown and never asked for. The user can see what the system thinks it's answering for.
2
The question, restatedSo a misread question is caught before the answer is trusted.
3
The answerWritten only from the passages found. Any sentence without a source is removed before display.
4
Source, version and date it took effectThe part that didn't exist before. Document, section, page, when it took effect, and what it replaced.
5
Evidence stateStrong, partial, conflicting or not enough. A named state.
6
What changed since last timeIf a previous version said something different, it's shown instead of quietly replaced.
7
Escalation routeNamed owner and typical response time, visible in all four states including the confident one.
8
FeedbackUsed, corrected or escalated anyway. Goes straight into the test set.
Why the shape never varies

A user who sees the same eight parts every time learns where to look. The second time they see a conflict, they already know part five is where the system tells them how much to trust it.

Why the route is always shown

If escalation only appears when the system fails, escalating becomes an admission that the tool didn't work. Showing it every time makes asking a person an ordinary move.

Why there is no confidence score

A percentage invites every user to invent a private threshold. A named state tells them what kind of checking to do.

Why feedback sits in the answer

Corrections captured at the point of use are the only realistic source of new test cases. Ask for them later and you get nothing.

Parts four, five and seven are the ones the earlier assistant had none of, and they're the three that decide whether a clinician can calibrate their trust. The screens below are this contract, rendered.
Protocol answerGrounded
Context sorted before the model ran Study MB-204FranceSite FR-018Coordinator17 Jun 2024

Question

Can we include a patient whose blood test was taken 9 weeks ago?

No. The version in force at your hospital requires the value to be taken within 8 weeks of the screening visit. A repeat test is needed before eligibility can be assessed.

Source: the part that didn't exist before
Protocol MB-204 · Amendment 3 · §5.2 inclusion criterion 4 · p.31
Effective 04 Mar 2024 · applies to France from 22 Mar 2024 · replaces Amendment 2
Evidence stateStrong: one version applies, one clear passage
Changed since you last askedAmendment 2 said 12 weeks. Compare the two →
Book repeat testAsk the study ownerShow me the passage
Escalation route: always visible, and never only on failure Study medical owner · typically replies within a few hours · 3 other French hospitals asked this in the last month
Feedback goes straight into the test set: ✓ Used this✎ Corrected it↑ Escalated anyway
Protocol answerConflicting sources
Context sorted before the model ran Study MB-204FranceSite FR-018Coordinator17 Jun 2024

Question

Is previous exposure to this drug class a problem if it stopped 14 months ago?

I can't answer this safely.

Two approved sources for this study give different gaps between treatments and both are currently in force for your country. This is a protocol interpretation question.

Source 1Amendment 3 · §5.3 · p.33
Says 12 months · effective 04 Mar 2024
Source 2Country annex FR-2 · p.4
Says 18 months · effective 22 Mar 2024, later
Why the system won't pick one Two sources in force disagree. Clinical development owns the correction, and it gets fixed for every hospital instead of answered for one.
Already routed: you don't have to find anyone Study medical owner, flagged as a protocol conflict. Both passages, your context and the patient reference travelled with it. Opened 09:42.
Also logged as a protocol fault, and not only a questionTwo sources in force disagree. Logged against clinical development as a protocol fault.
Screening review · runs inside the hospitalSite-local
Nothing on this screen leaves the hospital Study MB-204Amendment 3Local ID only

Candidate assessment · 13 rules

Results rule by rule, not a verdict

IC1
Age ≥ 18 yearsDefinite rule · no model involved
Pass
IC4
Blood test within 8 weeks of screeningLab result 22 May 2024 · 26 days · within window
Pass
EC2
No exposure to this drug class in the prior 12 monthsNo record found in notes or medication history for 24 months. Absence of a record isn't evidence of absence.
Insufficient
evidence
EC7
eGFR ≥ 45 mL/min/1.73m²Most recent value 38, dated 03 Jun 2024 · consultation note, p.2
Fail
What the system could not establish One rule returned not enough evidence. It hasn't been treated as a fail, and it hasn't been guessed. It needs you.
Record decisionOrder eGFR repeatAsk about EC2
If you screen-fail this candidate One click, from a short controlled list, now, and not coded from memory six weeks later. This is the field that makes the error rate measurable at all.

The most capable component in the finished design is a two-hundred-line piece of plain code that can say which protocol version applies to this hospital, today.

Everything else became possible once it existed, including the one thing neither the company nor its partner had ever been able to do: find out whether a protocol would work before agreeing to run it.