Can this batch ship?

Six systems hold the answer and none can see the other five. Today a reviewer opens all six and joins them by hand. This walks them in about a minute and names what would stop the batch leaving.

Open the release deskOr: a supplier was disqualified

94 batches on file · 6 systems · 30 documents

The answer is assembled by walking.

Nothing here holds the answer on its own. The question reaches a loop, the loop reaches tools, and the tools reach seven stores that cannot see each other.

You askThe loop decidesA tool fetchesThe systems answer
  1. You ask

    • Your question

      one batch, one market

      The question text is the only thing about you that leaves this page.

  2. The loop decides

    • the loop

      gpt-5-mini

      Reads the question, picks a tool, reads what comes back, writes the file. It never queries a database itself.

    • agent-01 … agent-23

      one per affected lot

      A supplier question fans out. Each agent sees one lot, so a bad document reaches one row and stops.

  3. A tool fetches

    • assess_release

      29 queries, six systems

      One call, not six. A model free to stop after Quality would report five passes and be wrong.

    • assess_supplier_impact

      one supplier, every lot

      Walks forward from a disqualified material to the batches that used it, and to where they went.

    • search_procedures

      the revision in force

      Finds the procedure that governed the act on the day it happened, not the one in force now.

  4. The systems answer

    • mrd_erp

      Materials

      Products, formulations, suppliers, and the incoming material lots each batch consumed.

    • mrd_mes

      Manufacture

      The execution record: which line, which equipment, and whether it was qualified that day.

    • mrd_qms

      Quality

      Specifications, test results, retests, and the disposition that released the batch.

    • mrd_hcm

      People

      Training, qualifications and signing authority — and the day each of them lapsed.

    • mrd_reg

      Registration

      Market authorisations, and every procedure revision with the dates it was in force.

    • mrd_tms

      Transport

      Shipments at lot granularity: the truck, the route, and how cold it was kept.

    • mrd_kb

      Procedures

      The written procedures themselves, searched by meaning. A library, not a system of record.

  5. The seven stores are seven separate databases. Nothing joins one to the next, which is why the answer has to be walked rather than queried.

And this is what is in them.

Seven databases on four different vendors' systems, in the shape a mid-size manufacturer actually has them. Open one to see its tables, what each holds, and every field with a real value from it.

7databases53tables5,047rows

counted 2026-09-13 by pnpm pharma:estate

The six on the left are the customer's systems of record — read, never written, and no query joins one to the next. mrd_kb on the right is ours: the written procedures, indexed so they can be searched by meaning.

Two questions, one estate.

Both walk the same six systems and cite the same records. They differ in what they are about, and in the shape of what comes back — which is why they are two desks and not one with a dropdown.

 Release deskOpen it →Supplier impactOpen it →
You askCan this batch go to this market?This supplier was disqualified — what did we make with their material?
The subjectOne lot, one destination.One supplier, and every lot their material reached.
What comes backA dossier: what would block it, with the rule that makes it a blocker.A work list, one row per affected lot, ranked by how far the material got.
Measured on the seeded estate29 queries across the six systems, about a minute.23 affected lots · 3,768,955 units · 19 deliveries traced.
The worst finding it will stateA blocker, with the clause behind it.5 lots reached a hospital or a pharmacy chain.
What it refuses to sayThat the batch may ship. A QP decides.That anything should be recalled. Quality and Regulatory decide.

Supplier figures from pnpm db:supplier-impact SUP-04, which reads the estate and calls no model.

It never says yes.

Under Annex 16 the signature is a person's. So the strongest thing this can return is that nothing was found to block the batch — which is a statement about the checks that ran, not a clearance. There is no field in the answer that could carry one, and no green tick anywhere in the product.

What it does instead is prepare the file: every finding with the rule that makes it one, every gap it could not close, and the name of whoever has to decide.

The strongest answer it gives

No blocker found

for QP review

Absence of a finding is not a certification. A Qualified Person signs.

Answering a question means sending part of your data to a language model. Which parts, where they stop, and the command that proves each claim — where your data goes.