Home › Use Cases › Walk event documentation and recovery
Use caseUC0511
🧪 Use-case kit · runnable

Walk event documentation and recovery

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 front-office agent reconstructs what a written walk protection standard owed a relocated guest by reading the booking, the receiving property's confirmation, the night audit narrative and the duty manager log against two revisions of the standard printed together -- and the desk's own auto-summary miscodes the cause, loads the newest revision instead of the one in force, and judges comparability on star rating and distance alone. A front-office agent cross-reading a walk event pack against two printed revisions of the walk protection standard by eye.

Audience

A guest-recovery desk deciding whether to trust the model's draft over the walk log auto-summary it already has for free. The answer measured here is no: the domain floor of record beats the paid call raw, and a phrasing-tuned regex beats it after the station too. Every number on these pages came from one real run of this code, not from a vendor page.

The inputThe actual walk events

The corpus is 64 walk events, 0.27 MB (txt 64). Hospitality & Travel is the stalest pickable vertical in the estate at pick time, and no shipped kit reads a written walk protection standard against a relocated guest's own booking requirements; the nearest kits check a charge or a grant against written terms, never a service the property was obliged to deliver.

The corpus

  • The 64 walk eventsgenerated 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 walk events. That is the whole change — there is no database to migrate.

One walk event, as the model receives itWLK-0001.txt · 1 of 64
WALK EVENT PACK

WALK EVENT HEADER
  Walk event            WLK-0001
  Property              Merrowfield Pentlow (MPW), 4 star
  Guest                 Mr Duquesne
  Guest reference       MPW-W30024
  Authorised on         2026-01-04 at 10:39
  Authorised by         N. Ferreira-Drew, duty manager
  Relocation form       not signed
  Send gate             A person sends every letter. This pack drafts and sends nothing.

DECLARED PROPERTY STANDARDS
  Duty manager approval threshold   250.00 of remedy value in one letter
  Point value for sizing a remedy   7.50 per 1,000 points
  Both values are supplied by the operator for this scenario. They are not a claimed
  policy and no regulation is cited for either.

WALK PROTECTION STANDARD (WPS-2026, citing BSG-114) — the revisions on file
  WPS-2026-R1   effective 1 October 2025   comparable within 10 miles   5,000 points per night per tier step
      protections required: OVERSELL -> FIRST-NIGHT-PAID, TRANSPORT, POINTS-GRANT, RETURN-NIGHT, CALL-AHEAD; ROOM-OUT-OF-ORDER -> FIRST-NIGHT-PAID, TRANSPORT, POINTS-GRANT, RETURN-NIGHT, CALL-AHEAD; MAINTENANCE-RETURN-FAILED -> FIRST-NIGHT-PAID, TRANSPORT, RETURN-NIGHT, CALL-AHEAD; GUEST-SIDE-CHANGE -> CALL-AHEAD
      not-comparable remedy 150.00   transport 60.00   return night 90.00   late notice 75.00   notice cut-off 120 minutes before arrival
  WPS-2026-R2   effective 1 April 2026   comparable within 5 miles   7,500 points per night per tier step
      protections required: OVERSELL -> FIRST-NIGHT-PAID, TRANSPORT, POINTS-GRANT, RETURN-NIGHT, CALL-AHEAD; ROOM-OUT-OF-ORDER -> FIRST-NIGHT-PAID, TRANSPORT, POINTS-GRANT, RETURN-NIGHT, CALL-AHEAD; MAINTENANCE-RETURN-FAILED -> FIRST-NIGHT-PAID, TRANSPORT, POINTS-GRANT, RETURN-NIGHT, CALL-AHEAD; GUEST-SIDE-CHANGE -> none

Abridged — the file continues.

The outcomeWhat a good result looks like

A cited recovery: the decision, clause, every required record cited with no forbidden one, the amount AND the points all right, on a pack the standard draws a letter for.

And when it cannot

A false recovery -- a letter asking for money or points nobody owes -- or a missed one. Measured: 9 false recoveries of 22 no-letter packs after the station, and 26 of 42 owed recoveries missed.

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 pure lookup with no requirement in prose (distance, a printed revision date) — code, always
    arithmetic over columns is free and exact
  • a comparability call resting on a receiving property's own prose confirmation — a model, carefully -- and measure it
    this is the one reading a word list cannot reach without reading the generator's own forms
  • telling a decline from a miss in free text — measure both a domain floor and a model before choosing either
    the domain floor already beats the model raw on this exact reading
  • enforcing a hard cap (never send, never pay, never grant, never adjust) — a shape refusal plus a sentence reader, both red-proven
    a schema with no field for the act plus a phrase reader over the free text covers both the structured and unstructured routes to a breach

At a glanceHow the whole thing runs

38%cited recovery recall pct
1,922 msp50, end to end
$2.89per 1,000 walk event pack · Gemini 2.5 Flash

Run once, for real, on 2026-09-20. 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 tools/build_corpus.py at your own property's walk/relocation standard and its two-revision structure; the reading contract (log_entry_on_file, standard_revision, walk_cause, receiving_confirmation, comparable, comparability_failure, protection_states, told_at) stays fixed and src/rules.py::decide is the one place the rulebook lives. The measured result is specific to this generator's phrasing: the tuned regex reaches 39 of 42 cited recoveries free by reading the generator's own form libraries, and generator-reader reaches 42 of 42 -- a real property's language would not be phrased this way, and the model's score on it is not known to transfer. Corpus lens →
When is this the wrong choice?Avoid: Asking a model to do a subtraction it will occasionally get wrong. That is the case against the best-fitting scenario (“a pure lookup with no requirement in prose (distance, a printed revision date)”). 4 scenarios scored in all, each with its own. Eval lens →
Where does it stop working?A declined protection with no decline word in it ("he took his own car", "asked us to leave the account alone") -- protection_states is right on only 33 of 64 packs. 5 recorded failure modes, each from a run rather than a guess. Corpus lens →
What was never verified?Whether the model's comparability reading transfers to a real property's own written confirmations -- this corpus's phrasing is a generator's, and the tuned regex already reads 39 of 42 of it for free. 4 items this kit says it could not check. Eval lens →
Can I run this on a model I control?Yes — any OpenAI-compatible endpoint, including one on your own hardware. The shipped adapter takes its host from BASE_URL and its model from MODEL, so nothing in src/ changes. The published figures come from 1 model on the fast tier, one provider, one key. Prompt lens →
And if it fits — what do I stand up?4 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-20 — r001-walk-recovery. 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 API_KEY renders the whole board and scores the three free arms live; the recorded run r001-walk-recovery is on the board for the paid columns.

A living map of modern AI — kept current every morning