Two Rivers Mobile Grooming — Sacramento, California. Dani grooms dogs out of one van. She works alone.
Her Tuesday: fourteen messages, three phone calls, forty-one minutes of admin after nine at night, and one booking she apologised for the next morning. She had put a customer in Folsom into a slot where the van was still in Elk Grove, thirty-eight minutes away.
That is not a calendar problem. For a mobile business a slot is a time AND a place, and no booking tool checks the second half. Dani checks it, in her head, tired, over text.
So this books against the road instead of the calendar.
A customer texts in their own words. It asks for what it still needs, one thing at a time, and reacts before it asks. Tell it the dog hates his nails and it says it will go slow with them — then that note lives on his record. It never asks twice: unanswered, it infers out loud ("I'll put Barney down at about 28 lb, standard for a cocker — correct me if that's off") and carries on. The package you pick sets how long the van is parked with you, and that is what decides which slots the route can still reach.
Dani gets one message at nine at night instead of forty-one minutes: tomorrow's route, the driving total, where the refill falls, who hasn't confirmed, and the single decision that needs her.
The ladder underneath it: ask the customer before guessing, call Dani before risking. Safety, a dog's health, urgency — those skip the questions, and the customer is told so honestly rather than left in silence.
The part I actually want judged is the page where it fails.
I scored it. Thirty messages, tuned — and the page says it's tuned, because a number you tuned on flatters you. Then ten it had never seen: seven out of ten. The miss that mattered was a dog sprayed by a skunk with the word emergency in the text, booked automatically, nobody reading it. That is the failure a beautiful demo hides.
The fix was a general rule, not a patch for the word skunk. Ten fresh messages after it: nine out of ten. The rule cost a point on the old set and I kept the rule.
Six misses remain across all three sets. Every one leans the same way: it handed Dani something it could have closed itself. Not one went the other way. That sentence is computed from the run — if it ever stops being true, the page says so.
Nothing on that page is typed in. Press Run and it scores all fifty again in front of you.
Built in Lovable. 45 tests pass. Try it with your own message: groomer-route-planner.lovable.app/try