// challenge brief · hack a ton 2026
City Record Err
Snap a public problem and the agent drafts a report addressed to the exact authority responsible. You review and send it yourself.
- // Proposed by
- Ambasada
- // Industry
- Public sector / civic tech
- // Difficulty
- 🟢 Beginner-friendly
// the problem
Reporting a pothole, a broken streetlight, or illegal dumping means knowing which authority owns the problem, and that changes with both where you are and what it is. A street defect in Năvodari goes to a different inbox than one in Constanța. Illegal dumping isn't the city hall at all, it's the environment guard (Garda de Mediu). A burst pipe is the water utility. Most people don't know the routing, so most problems never get reported.
// your mission
Build an AI agent that takes a photo of a public-space problem (plus a location), works out who is responsible, drafts a proper Romanian report (sesizare), and addresses it to the correct email. The agent never sends it: the citizen reviews the draft and sends it themselves.
// how it works
- 1Perceive: a vision model classifies the problem (pothole, lighting, dumping, fallen tree, damaged sign, overflowing bin…) and writes a factual description.
- 2Locate: resolve the location from the photo's GPS/EXIF or a typed address, then map it to the UAT (locality).
- 3Decide: look up
(UAT × problem type) → responsible authority + email. - 4Act: draft a complete, polite sesizare citing the location, the problem, the attached photo, and the citizen's right to a response within 30 days (OG 27/2002), addressed to the correct recipient. The agent never sends it: it hands the citizen a ready-to-send draft, and the citizen sends it themselves.
// suggested approach
- Inference: for model access, we suggest [LLMok](https://llmok.app). Use code
AMBASADA26for 50% off. - A vision-model API (GPT-4o / Claude / Gemini vision) for classification, no training needed.
- A free reverse-geocoder (Nominatim / OpenStreetMap) for location → UAT.
- A routing map you build yourself: which authority owns which problem type in which UAT, with contact emails. Mapping the relevant authorities is the heart of the challenge, and the wider and more accurate your map, the better.
- An LLM to draft the sesizare; the citizen sends it themselves, so no mail integration is needed.
- Floor version to aim for first: Constanța city only, three problem types, one recipient. Then expand outward.
// how you'll be judged
- Correct problem classification.
- Correct UAT + authority routing, weighted highest. This is the real differentiator.
- Quality and completeness of the drafted sesizare.
- Speed, and graceful handling of an ambiguous location or unknown UAT (asks rather than guesses wrong).
- Creativity & reliability: English/tourist mode, duplicate detection, 30-day auto-follow-up.
// stretch goals
- Cover surrounding UATs (Năvodari, Mangalia, Eforie, Ovidiu, Techirghiol…).
- Cross-jurisdiction routing: environment guard, water utility (RAJA), county vs. national roads.
- Track a submitted report and chase a response after 30 days.
// deliverables
- Git repo: code + README + run instructions.
- Demo: a notebook or script running on a few sample photos.
- 5-minute pitch: architecture, key decisions, trade-offs.