Skip to content

Price a pet-grooming salon's appointments by weight band and coat, with same-day multi-pet discounts, add-ons and matting time

Exact prompt

# Price a pet-grooming salon's appointments by weight band and coat, with same-day multi-pet discounts, add-ons and matting time Inputs: `appointments.csv` (appt_id, pet_id, groomer_id, date, addons, matting_min), `pets.csv` (pet_id, owner_id, name, weight_kg, coat), `owners.csv` (owner_id, name), `groomers.csv` (groomer_id, name) and `prices.json` (bands, coat_pct, addons, matting_per_15, multi_pet_pct). All owners, pets and groomers are synthetic; amounts are in dollars. These rules are the salon's policy; where `front-desk-note.txt` disagrees, the rules win. Rules: - Band: a pet's band is the first entry in bands whose max_kg is at least its weight_kg (null = no limit); base = the band's base plus coat_pct for the pet's coat, rounded half-up to the cent. - Same-day discount: when one owner has two or more appointments on the same date, each of them except the one with that owner's lowest appt_id that date gets multi_pet_pct off its base, rounded half-up to the cent; add-ons and matting are never discounted. - Extras: add-ons is a semicolon-separated list (blank = none), each charged at its addons price; matting is charged at matting_per_15 for each started 15 minutes of matting_min (0 = none); extras = add-ons + matting. - Write `out/grooming.json`: `{"appointments": {"<appt_id>": {"band": "<band>", "base": <dollars>, "discount": <dollars>, "extras": <dollars>, "total": <base − discount + extras>}, ...}, "owners": {"<owner_id>": <sum of the owner's appointment totals>, ...}, "groomers": {"<groomer_id>": <number of appointments>, ...}}`. `appointments` has one entry per row of appointments.csv. - Roll-ups: Owners in owners.csv with no appointments are left out. Groomers in groomers.csv with no appointments are included at 0. ## How this run works - Work on your own: nobody will answer questions in this task, and writing to `ask/` counts against the run. - Write only under `out/`. Create `out/` if it is missing. Inputs are synthetic; don't fetch anything from the network. - Scoring is partial credit: each listed check is pass/fail, and the score is the share passed. Numbers are compared to within 0.005 unless the task says otherwise.

Price a synthetic grooming salon's appointments. Pets fall in weight bands (some weights sit exactly on a band limit), coats add a percent, owners with several pets in on the same day get a discount on all but their first appointment, and add-ons and matting time are extras. The prompt says owners with no appointments are left out and idle groomers are listed at 0. A front-desk note gets the discount, matting and roll-up rules wrong. Original benchmark task written for usecaserank.com (not based on a specific public post). Headless, offline run on a reproducible fixture. Each run's notes say how its cost was measured (estimates are marked).

Success criteria: size_band same_day_discount extras owner_totals groomer_counts

Best model for this task so far: Claude Haiku 5.5 (effort default (no --effort flag) · thinking on) (success, $0.0050, 17s).

Run this on another model

All runs (3)

100% pass rate across 3 eligible runs: 3 pass, 0 partial, 0 fail. Partial and failed runs are listed below with everything else.ⓘ

Runs for this use case
ModelCostTimeStep-insⓘAutonomyOutcomeTrustⓘDateCompare
AClaude Opus 5.5default · thinking on$0.1424s0Fully autonomouspassTrust 80%2026-10-25
AClaude Haiku 5.5default · thinking on$0.005017s0Fully autonomouspassTrust 80%2026-10-25
AClaude Sonnet 5.5default · thinking on$0.0512s0Fully autonomouspassTrust 80%2026-10-25

Embed this result

A live badge for this use case. It links back here and updates as new runs are published.

UseCaseRank badge for Price a pet-grooming salon's appointments by weight band and coat, with same-day multi-pet discounts, add-ons and matting time

Get new runs and ranking changes weekly

Which models got better or cheaper on real tasks like this one.