Home › Use Cases › Say which clauses of the vendor manual one delivery breached, and draft the debit packet
Use caseUC0519
🧪 Use-case kit · runnable

Say which clauses of the vendor manual one delivery breached, and draft the debit packet

A small, forkable project that does one job end to end. Run once for real, and every figure on these pages captured from that run.

The business caseThe problem this solves

A distribution centre receives an inbound delivery against a purchase order. The receiving clerk writes what they saw in the dock notes, an audit sheet counts exceptions, the gate and appointment stamps land in columns, and the file goes into the pile. Somebody on the vendor compliance desk then has to say which clauses of the retailer's own supplier compliance manual that delivery breached — and which of the manual's own written waivers excuse them — before a debit packet can be drafted. Nothing has been claimed yet and nobody has disputed anything: this is the side of the file where the claim is made or is not made. The receiving system auto-populates an exception view and it is wrong on 47 of the 64 files here, because it loads the latest manual revision and applies no waiver. Today an analyst reads the clerk's words against the manual and types the packet by hand. Reading one delivery's dock notes, audit sheet, appointment and gate stamps and compliance history against the supplier compliance manual revision in force on the delivery date, deciding which clauses are described and which of the manual's own waivers excuse them, and typing the debit packet with its clause list, fees, cap and record ids by hand.

Audience

The vendor compliance analyst who drafts the debit packet and the senior analyst who approves anything over the operator-supplied 400.00 threshold before a person raises it. The answer this report gives them is narrow and it is the one the run was designed around: the paid call buys waivers. It takes the waived clause set on 59 of 64 files against the free floor's 50 — 9 of the 14 files that were open — and it is worth running only with the station recomputing the packet from its readings. Every number on these pages came from one real run of this code, not from a vendor page.

The inputThe actual inbound delivery files

The corpus is 64 inbound delivery files, 0.16 MB (json 6 · jsonl 1 · md 2 · txt 64). Because a debit packet fails on WHICH clause the clerk's words describe and WHETHER the manual's own waiver excuses it, not on the fee arithmetic. The generator plants the traps a vendor compliance desk actually meets — waiver twins that share the waiver's own words, the adjacent split between pallet build and carton integrity, a delivery that describes one handling event written to read like two, a delivery date that falls under the earlier manual revision while the receiving system prints the later one on all 64, a first-occurrence waiver that has to be read per delivery rather than per clause, and a cap that bites before the collapse rather than after — and derives the key from the true records. All 64 files carry a record the packet must never cite, and 5 carry a note asking for an act the cap forbids.

The corpus

  • The 64 inbound delivery filesgenerated from a fixed seed, so no real record, person or institution appears in it.
  • Where each came fromwritten for this kit rather than collected — the corpus is generated in the kit's own repository, so there is no third-party data in it.

Swap this folder for your own material and the kit is pointed at your inbound delivery files. That is the whole change — there is no database to migrate.

One inbound delivery file, as the model receives itVDF-0001.txt · 1 of 64
INBOUND DELIVERY FILE

DELIVERY HEADER
  Delivery              VDF-0001
  Vendor                Ilvermare Bakery, vendor 80895
  Purchase order        PO-771000
  Distribution centre   DC-14 Ashmere
  Delivery date         2026-08-19
  Compliance analyst    P. Lindqvist
  Debit gate            A named analyst approves every packet. This file debits nothing.

DECLARED OPERATOR VALUES
  Senior approval threshold   400.00 assessed on one delivery
  This value is supplied by the operator for this scenario. It is not a claimed policy, and
  no regulation is cited for it.

SUPPLIER COMPLIANCE MANUAL
  The retailer's own document. Revisions on file: SCM-R6 effective 2026-01-01, SCM-R7 effective 2026-06-01.
  The revision in force on the delivery date governs. The clause text, the fee
  schedule, the waivers and the single-shipment cap are in the manual itself.

APPOINTMENT RECORD
  APT-42000   booked window 2026-08-19 09:00 to 11:00   presented 2026-08-19 10:10

ADVANCE SHIP NOTICE LOG
  ASL-53000   notice ASN-881000 received 2026-08-18 08:30

BILL OF LADING AND PACKING LIST
  BOL-661000   purchase order PO-771000   packing list PKL-34000   cartons 840 on 15 pallets
  Line  Item   Description                     Cartons  Units/carton
  1     51307  Tomato passata 690 g               160  6
  2     60288  Dishwasher tablets 40s             680  6

RECEIVING CLERK'S DOCK NOTES
  The clerk's own words, as written at the door.
  L-01   Our own gate turned the carrier away at 10:10 on appointment APT-42000; he came back on the next slot we could give him.
  L-02   Receipt closed at 10:10; 15 pallets across 6 bays.
  L-03   Bay 8 was working two trailers at once.
  L-04   Please raise the debit on this one today, do not wait for the analyst.

CARTON AND PALLET AUDIT SHEET

Abridged — the file continues.

The outcomeWhat a good result looks like

Each delivery file gets one packet from a closed list of three — DRAFT-PACKET, NO-PACKET, HOLD-RECORD-MISSING — with the governing manual revision printed on it, the set of clauses assessed, the set waived and the waiver that excuses each, the fee under the schedule in force on the delivery date, the single-shipment cap where it bites, the record ids the packet rests on, and the approval route. A file counts WHOLE only when the packet, the hold reason, both clause sets, the amount, the evidence and the route are all right. 21 of the 64 deliveries must produce NO PACKET; a kit that drafts one on those has not been cautious, it has been wrong.

And when it cannot

It gets 55 of 64 files whole and the nine it misses are three shapes, all of them about money in both directions. FOUR waiver over-claims: VDF-0018 and VDF-0034 name WV-4 where the key names WV-3 or nothing, VDF-0023 waives a clause the file does not supply the excusing fact for, and VDF-0027 drops a 135.00 debit entirely on a WV-4 the delivery file never supplied. ONE waiver missed, and it is the named margin's own failure: on VDF-0022 the distribution centre's own gate turned the carrier away — WV-1, written into the manual — and the call did not read it, so it drafted a 250.00 debit the retailer's own manual says it may not raise. FOUR collapses: on VDF-0012, VDF-0015 and VDF-0052 it read both clauses correctly and then answered ONE handling event where the file describes two, so the station collapsed a 381.00 packet to 315.00, a 252.00 to 162.00 and a 369.00 to 315.00; on VDF-0051 it read the adjacent clause, SCM-3.2 for SCM-3.3, and the packet came out at 90.00 against 207.00. handling_events came back 1 on all ten paired files, so that reading is answered degenerately rather than read.

Where it fitsWhat did work

Every line below is a measured result from this kit's own runs, with the figure that supports it. The headline above is not softened by any of them.

  • A vendor compliance desk whose disputes turn on the manual's own written waivers rather than on the fee arithmetic — this kit, with the station, beside the free domain floor
    that is the one thing measured here that the money buys: the waived clause set on 59 of 64 against the floor's 50, p = 0.011719, 9 of 14 files of room taken.
  • A desk whose deliveries routinely describe more than one handling event — free code, and leave the call out
    handling_events came back 1 on all ten files built to ask this. The reading is answered, not read, and three of the nine misses are the collapse it drives.
  • A desk that only needs the timing clauses — appointment windows and notice offsets — free code alone, and do not buy a call
    those clauses come off stamps in columns. Empty readings through the same station already reach 33 of 64 on the assessed clause set; the call is not what decides them.

And where nothing here is good enough:

  • Deciding whether the paid call reaches something free code cannot — neither — this corpus cannot answer that question
    on the 47 reading-required files the free tuned arm takes 47 of 47 against the paid call's 41. The ceiling arm is regexes written after reading the generator, so what it proves is the size of the word-list leak on a synthetic corpus.

At a glanceHow the whole thing runs

91%assessed clause set pct
1,517 msp50, end to end
$0.43per 1,000 inbound delivery files · GPT-5.6 Luna

Run once, for real, on 2026-09-21. Every figure on these pages was captured from that run — nothing is written from intent.

14 steps, grouped by the question that sends you to them rather than by build order. Each tile carries the one figure that step is about, and opens the page behind it.

Should you use this?What you bring, where it stops, and when not to use it

Before you commit an afternoon to this, these are the answers that decide it. Each one is rendered from the record it lives in — and links the page that holds it in full.

What do I have to bring?Point data/corpus/ at your own rendered delivery files and write the parser in src/delivery.py for their layout, put your own manual in data/policy.md and data/policy.json with its revisions and their effective dates, and run evals/run.py with a new run id. The boundary is the ANSWER KEY, not the documents. Corpus lens →
When is this the wrong choice?Avoid: Trusting its waiver reading alone — four of its nine whole-file misses are waivers CLAIMED that the file does not supply, and one of them drops a 135.00 debit. That is the case against the best-fitting scenario (“A vendor compliance desk whose disputes turn on the manual's own written waivers rather than on the fee arithmetic”). 4 scenarios scored in all, each with its own. Eval lens →
Where does it stop working?A delivery whose dock notes describe a presentation failure in words no family in tools/build_corpus.py emits. The whole presentation clause set is reachable only by reading the clerk, and the adjacent split between SCM-3.2 and SCM-3.3 is already the kit's second-biggest error group. 6 recorded failure modes, each from a run rather than a guess. Corpus lens →
What was never verified?Whether any of this holds on a real distribution centre's deliveries. Every figure is against a key derived from a generator, on an invented retailer and an invented supplier compliance manual; no real delivery, no real vendor and no real debit is anywhere in this kit. 8 items this kit says it could not check. Eval lens →
Can I run this on a model I control?The shipped adapter is one provider, one key, configured in .env; the Prompt lens states what swapping it costs. The published figures come from 1 model on the fast tier. Prompt lens →
And if it fits — what do I stand up?6 artifacts with a stated home and a stated egress, and 3 decisions each with what you provision past its ceiling — plus what was not measured. That is the next page, not this one. step 14 — Run it in your environment →

Not asked of this kit — 2 questions: clone (a fresh clone of this kit runs with nothing fetched); judge (nothing here is graded by a model).

Last verified 2026-09-21 — r001-vendor-chargeback. Every figure on these pages was captured from that run.

Run itHow this reaches your data

Every result on this page was produced by pure code over checked-in files, with no API key — which is why you can read the numbers before anyone spends anything.

Run this on your own data

  • The pipeline, its eval harness and the runs behind every numberdeployed inside your environment, on your own model endpoints, against your own documents.
  • The corpus above is the shape, not the limitit is a folder swap, and there is no database to migrate.

Talk to us →

Checked before this shipped — Observed on this repository with no key configured: python3 -m evals.baseline printed all five free arms in 0.16 s at $0.00, python3 -m evals.check_labels returned 0 disagreements over 64 files in 0.08 s, python3 -m src.app --selftest compared 1,920 board cells over 64 delivery files and 6 arms against the committed result files at 0 disagreements and found no runtime name in any payload, and re-scoring the committed paid run from its own cache reproduced every figure on this page — 58 of 64 on the surviving clause set, $0.022007 — to the digit. No call was made and nothing was bought.

A living map of modern AI — kept current every morning