The business caseThe problem this solves
A prime contract carries a schedule of clauses the prime is obliged to flow down to its suppliers. When the subcontract is drafted, some of those clauses are copied, some are reworded, some are quietly trimmed, and some never make it in at all. Today a contracts manager reads both documents side by side, clause by clause, and the trimmed ones are the hardest to see: the article cites the right number, carries most of the right words, and says first-tier suppliers only where the prime says any tier. the clause-by-clause read a contracts manager does by eye against the prime's flowdown schedule, on the subcontracts there is time for
Audience
The contracts manager who signs the subcontract, and the supply-chain quality lead who inherits whatever was flowed down. The decision is whether a model call per package is worth buying over the code you would write instead. Every number on these pages came from one real run of this code, not from a vendor page.
The inputThe actual review packets
The corpus is 40 review packets, 0.22 MB (json 4 · jsonl 1 · md 2 · txt 40). ⚠︎ EVERY BYTE OF IT IS INVENTED, AND THAT IS STATED BEFORE ANY NUMBER. UAPS-2026 — the Uniform Aerospace Procurement Standard — is a fictional clause framework written for this kit. It is not FAR, not DFARS, not AS9100 and not any national or industry standard; the numbering shape was chosen deliberately not to resemble one. Every prime, supplier, contract number and article is generated. Nothing here is controlled or export-restricted and the scenario is ordinary commercial subcontracting. It was generated rather than found because the measurement needs an answer key at the clause level, and because the corpus has to be SHAPED against the shortcuts: 140 of 462 articles cite their clause number and a narrowed article cites it as often as a conforming one; 51 hollow articles cite a clause and impose nothing; 42 conforming articles are reworded end to end with every parameter restated equivalently, so that "is every prime phrase present verbatim?" cannot separate conforming from narrowed.
The corpus
- The 40 review packetsgenerated 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 review packets. That is the whole change — there is no database to migrate.
SUBCONTRACT FLOWDOWN REVIEW PACKET — PKG-0001
Prime contract HAL-4103 · Halyard Aerostructures (fictional)
Subcontract SC-22017 · Stellaris Fasteners (fictional)
Clause framework: UAPS-2026 (a fictional framework written for this kit)
PART A — MANDATORY FLOWDOWN SCHEDULE (from the prime contract)
Every clause below is mandatory and must appear in the subcontract with no
reduction in scope, no weakening of any stated period, threshold or tier, and
no term inconsistent with it.
UAPS-210.1 Counterfeit Part Prevention
Seller shall maintain a documented counterfeit part prevention programme covering all items,
whether electronic or non-electronic, delivered under this order. Seller shall flow this
requirement down to every lower-tier supplier without regard to tier or order value. Seller
shall notify Buyer in writing within two (2) business days of any suspect counterfeit item
detected.
UAPS-212.4 Retention of Quality Records
Seller shall retain all inspection, test, manufacturing and traceability records for not less
than ten (10) years after final delivery under this order. Seller shall make such records
available to Buyer within five (5) business days of written request.
UAPS-215.2 Right of Access
Buyer, Buyer's customer and any regulatory authority having jurisdiction shall have right of
access to all facilities and all applicable records at any tier of the supply chain, involved
in the performance of this order. Access shall be granted within three (3) business days of
request.
UAPS-221.3 Control of Nonconforming Material
Seller shall not ship any nonconforming item, whether detected before or after delivery,Abridged — the file continues.
The outcomeWhat a good result looks like
Every mandatory clause gets one of four verdicts and, where the subcontract does treat it, the article and the words it rests on — so a reviewer reads a difference rather than a claim about one.
And when it cannot
It over-flags rather than under-flags, and every one of its 8 errors is in that direction. Four times it read an adjacent commercial article — a loading-dock housekeeping clause, a purchase-order copy requirement — as a shrunken version of a clause the subcontract does not carry at all. Twice it read a "for information only" article as a disclaimer instead of an absence. Once it called a faithful rewording a narrowing. It never once told a reviewer that a clause was intact when it was not.
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.
- you need a checklist of flowdown clauses nobody typed into the subcontract at all — the free
bestfloor — 0 calls, $0.00
it scores 301 of 320 on presence against the paid call's 314. The margin is real (p 0.004425) and it is 13 clauses across 40 packets - you need to know whether the clauses that ARE there are intact — the paid call
249 of 250 against the floor's 211, p < 0.000001, and it waved through 0 narrowings against the floor's 35 - a first pass over a large backlog where a human reviews every flag — the paid call, at $0.000820 a packet
it over-flags rather than under-flags: all 8 of its errors either invent a deviation or mis-grade one, and none hides one
And where nothing here is good enough:
- you want a number you can quote about your own clause library — neither, until you re-run the eval on your own labelled packets
UAPS-2026 is invented and its narrowings are drawn from a published list. Real drafting narrows in ways nobody enumerated
At a glanceHow the whole thing runs
Run once, for real, on 2026-09-11. 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? | Replace data/framework.json with your own flowdown schedule — clause ids, titles, obligation text and the parameters you consider material — and drop your executed subcontracts into data/corpus/ in the two-part shape tools/build_corpus.py emits. THE MEASURED ACCURACY DOES NOT TRAVEL WITH YOUR CORPUS. Corpus lens → |
| When is this the wrong choice? | Avoid: Quoting its four-way verdict — it waves 35 narrowings through as conforming. That is the case against the best-fitting scenario (“you need a checklist of flowdown clauses nobody typed into the subcontract at all”). 4 scenarios scored in all, each with its own. Eval lens → |
| Where does it stop working? | a subcontract that incorporates its flowdown obligations BY REFERENCE to a document not in the packet — the correct answer is then 'cannot be determined from this packet' and the schema has no verdict for it. 5 recorded failure modes, each from a run rather than a guess. Corpus lens → |
| What was never verified? | whether any of these rates survives on a REAL flowdown schedule. UAPS-2026 is invented, its clauses are short and self-contained, and its narrowings come from a published list of weaker values — a real schedule cross-refers, incorporates by reference and is negotiated. 5 items this kit says it could not check. Eval lens → |
| Can I run this on a model I control? | The shipped adapter is the runtime provider is not named on this page; 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? | 5 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-11 — r001-flowdown-match. 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.
Checked before this shipped — A clean checkout with no key configured renders the whole board — the corpus, the answer key, the committed run and all four free floors — and scores every floor offline in pure Python. Shot as kits/UC0380-flowdown-match/docs/shots/flowdown-match-empty.png against a server started with API_KEY blanked in its own environment.






