Public sector · 2026 · 10 weeks
Routing permit referrals by geography instead of by inbox
A coastal county's development referrals were routed by hand to eleven review agencies. We built a boundary-aware routing layer that gets each referral to the right desks on day one.
- Sector
- Public sector
- Year
- 2026
- Engagement
- 10 weeks
- Team
- 2 people
Every development application in the county has to be referred to the agencies whose jurisdictions it touches: fire districts, water boards, tribal heritage offices, a coastal commission. Which agencies, exactly, depends on where the parcel sits against a stack of overlapping boundaries, several of which exist only as PDFs of ordinance maps. A planner did this lookup by hand for every application. When she was on leave, referrals waited.
The situation
The county processes about 2,300 applications a year. Routing each one took anywhere from twenty minutes to half a day, and a missed referral could void an approval months later. The planning director didn't ask for AI. She asked for the lookups to stop being a person's memory.
What we did
We digitized the boundary stack (40 layers, including four that had to be traced from ordinance exhibits) and built a routing service: a parcel goes in, the set of mandatory and discretionary referrals comes out, with the ordinance citation for each. A language model drafts the referral cover memos from the application materials; a planner reviews and sends.
What we found
Boundary digitization surfaced real problems. Three of the ordinance maps contradicted each other along one stretch of shoreline, and no amount of engineering makes contradictory law computable. County counsel is resolving it; until then, that segment routes to human review by design.
What we learned
Our confession for this one: we initially auto-sent the referral memos for the unambiguous cases, with planner review only on exceptions. The receiving agencies hated it: memos arrived faster than their intake could absorb, and the county's relationships matter more than its throughput. We put the planner's send button back. The system drafts; a person decides. It should have been built that way from the start.