Home › Use Cases › Validate a warranty claim's labour op, causal part and time against the manual
Use caseUC0421
🧪 Use-case kit · runnable

Validate a warranty claim's labour op, causal part and time against the manual

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 dealer submits a warranty claim and it lands on a warranty administrator's queue. Six things have to hold at once on every claimed operation before anybody works it: the coverage plan the operation falls under has to still be in force on the repair date AND at the repair odometer, and the three plans run out at different months and different miles; the technician story the line names has to exist AND be about this repair order; the class of work the story describes has to be the class the op code declares, because a reseal claimed under a replace operation is paid at replace time; the causal part has to be the part the story says failed, and its group has to be one the operation allows, because every operation publishes a different allowance per group; the catalogue must not have superseded that part; the claimed time has to be inside the published allowance plus only the supplements the operation admits; and the technician has to hold the certification the operation names. An administrator does that by eye, at month end, against a labour-op manual, a parts catalogue and a roster, on every line of every claim. Joining every claimed operation to a labour-operation manual by op code, to a parts catalogue by part number, to a technician roster by clock number and to a coverage plan by date and odometer — then READING the technician's write-up to decide what was actually done and which part actually failed. It does not replace the administrator: nothing here approves, denies, pays, rejects or adjusts a claim, charges a dealer back, re-codes an operation or raises an allowance.

Audience

The warranty administrator a submitted claim is routed to, and the manufacturer's warranty operations desk that owns the exception list. Every number on these pages came from one real run of this code, not from a vendor page.

The inputThe actual submitted warranty claim packets

The corpus is 60 submitted warranty claim packets, 0.21 MB (json 4 · jsonl 1 · md 2 · txt 60). Because the job needs a document that can be WRONG IN A WAY THE COLUMNS CANNOT SEE, and no public warranty corpus exists: a claim carries a VIN, a customer, a technician's clock number and the labour a dealer billed a manufacturer, and a labour-time guide is a licensed product sold per seat. So the corpus is generated, the manual is invented, and the construction is written down in data/SOURCES.md with six numbered attacks on it and the measurement for each.

The corpus

  • The 60 submitted warranty claim packetsgenerated from a fixed seed, so no real record, person or institution appears in it.
  • Where each came fromNowhere — all 60 claim packets, data/records.json and the whole answer key are generated in-process by the file that sits beside them. Every dealer, dealer code, model line, VIN, repair order, op code, part number, part group, published allowance, supplement, coverage limit, technician, certification, date, odometer reading, labour rate and technician story is invented. Verrance Motor Group does not exist and LOM-2026 is not a labour-operation manual, a warranty policy, an industry standard or anybody's published time guide. See data/SOURCES.md.

Swap this folder for your own material and the kit is pointed at your submitted warranty claim packets. That is the whole change — there is no database to migrate.

One submitted warranty claim packet, as the model receives itWC-0001.txt · 1 of 60
WARRANTY CLAIM PACKET - A SUBMITTED DEALER CLAIM AGAINST THE LABOUR-OPERATION MANUAL AND ITS OWN STORY

CLAIM HEADER
  Claim              WC-0001
  Manufacturer       Verrance Motor Group
  Dealer             Ashgrove Verrance (D-4021)
  Repair order       RO-110000
  VIN                VRNC4K21H8M004000
  Model line         Verrance Halden
  Repair date        2026-01-05
  Odometer           8,000 miles
  Submitted by       M. Hallberg, service writer

VEHICLE RECORD (the manufacturer's own record for this VIN)
   VIN                 Model line          In service    Basic plan          Powertrain plan     Emissions plan
   VRNC4K21H8M004000   Verrance Halden     2025-01-05    36 mo / 36,000 mi   60 mo / 60,000 mi   96 mo / 80,000 mi

LABOUR OPERATION MANUAL (LOM-2026, the operations this claim references)
   Op code    Operation                                      Class           Coverage    Allowed groups (hours)     Supplements         Cert
   LOM-4410   Hub bearing front - replace                    replace         basic       HUB 2.10 / WSS 1.40        seized-fastener     L1
   LOM-5210   Engine control module - reprogram              reprogram       emissions   ECU 0.70 / OXS 0.95        dual-battery        L1

PARTS CATALOGUE (the parts this claim references)
   Part        Group   Description                          Superseded by
   VP-10000    HUB     front hub bearing assembly           -
   VP-25000    OXS     oxygen sensor                        -

SUPPLEMENT SCHEDULE (LOM-2026, published times, added only where the operation admits them)
   seized-fastener      0.30    fasteners seized, cut off and renewed
   corrosion-belt       0.20    corrosion-belt vehicle, additional cleaning

Abridged — the file continues.

The outcomeWhat a good result looks like

Every claimed operation carries a verdict, the thing it rests on, the labour time at issue to the hundredth of an hour and signed, and one row copied verbatim as evidence — and the claim carries CONSISTENT or EXCEPTION with the lines named, plus the same answer broken out across LOM-2026's six named checks. On the published run the pure-code station reaches the right verdict on 178 of 180 claimed operations and the right determination on 58 of 60 claims.

And when it cannot

⚠︎ THE CLAIM-LEVEL NUMBER IS 23 OF 60 AND THAT IS NOT A TYPO. claim_all_correct requires every one of the six graded fields on every line, and the arm returned a QUOTED ROW on 45 of the 133 lines that are CONSISTENT, where the answer contract says the citation must be null. Every one of those quotes is locatable in the packet and every one scores zero. The station recomputes the verdict and the hours and deliberately does not repair the citation, because rewriting it would erase the evidence of the failure. Read the verdict and determination columns for what the product does and the all-correct column for what it costs to trust the reply as written.

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.

  • Your claims are already validated by a rules engine and you want to know what it is missing — the column floor alone (b000-laborop-validate-rules), then diff it against your own engine
    It is free, offline and deterministic, and it settles 160 of the 180 lines here. Whatever it cannot settle is the population worth paying for.
  • Your technician write-ups are short, templated and drawn from a small set — the keyword floor (evals/baseline.py), written against your own corpus
    On THIS corpus it reaches 180 of 180 for $0.00. A templated write-up is exactly what a keyword list generalises over.
  • Your write-ups are free prose from many technicians and many shops — the paid call, with src/recheck.py over its two readings
    This is the case the two column floors get 0 of 20 on. The call reads the prose and the station does the arithmetic, which is where the 178-of-180 line-verdict number comes from.

And where nothing here is good enough:

  • You need the quoted row to work an exception list — neither, yet
    The arm quotes a row on 45 lines that are consistent, where the contract says null. That is the dominant single failure on this run and the station does not repair it.

At a glanceHow the whole thing runs

99%line verdict pct
2,236 msp50, end to end
$1.96per 1,000 submitted warranty claim packets · OpenAI GPT-5.6 Luna

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?Drop your own claim packets into data/corpus/ in the printed layout, put your manual, catalogue, supplement schedule and roster into data/records.json keyed by claim id, and the whole free half runs immediately: the parser, LOM-2026's engine, all four floors, the citation scorer, the refusal reader and the board. ⚠︎ EVERY PERCENTAGE ON THIS PAGE STOPS BEING TRUE THE MOMENT YOU SWAP THE CORPUS. Corpus lens →
When is this the wrong choice?Avoid: Buying a call before you know how large that population is. That is the case against the best-fitting scenario (“Your claims are already validated by a rules engine and you want to know what it is missing”). 4 scenarios scored in all, each with its own. Eval lens →
Where does it stop working?A claimed-operation row whose columns do not match the printed layout — the parser reads runs of spaces between fixed columns, so a packet from another system parses to zero rows and the run reports zero lines rather than guessing. 6 recorded failure modes, each from a run rather than a guess. Corpus lens →
What was never verified?WHETHER THE CALL BEATS A KEYWORD FLOOR ON REAL WRITE-UPS. On this corpus it does not — the paired test against the de-memorised floor is a tie. 6 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, reasoning disabled (THE PUBLISHED RUN). Prompt lens →
And if it fits — what do I stand up?4 artifacts with a stated home and a stated egress, and 4 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-laborop-validate. 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 — A clean checkout with no key configured renders the whole board, computes all four free floors live on any claim, replays the committed scored run off its result file, and rebuilds the corpus byte-identically under two PYTHONHASHSEEDs — all offline, with nothing installed beyond the Python 3 standard library. The only step that needs a credential is the one control that is disabled without one.

A living map of modern AI — kept current every morning