Council Report It
A resident reports a missed collection. Language switches mid-demo to show equality of access, with Workflow gating, an auditable case record, and TTS read-back.
Facilitator notes — Council Report It
Presenter-only. Generated from the Engage demo kit.
Talk track
- This is a public-sector reframe of the same buying story as every other scenario — deflected contact, faster resolution — but with two things none of the others have: a statutory accessibility duty, and an audit trail that has to survive a Freedom of Information request, not just a support-quality review.
- Watch escalate_to_human: it's called for exactly two reasons — the resident picked a safeguarding category, or the model detected distress mid-conversation — and it's the Workflow-gated action, same deterministic-gating shape as scenario 1's shipping upgrade and scenario 6's card freeze. The agent never quietly closes a conversation that should have gone to a person.
- conversation_locale is the equality-of-access proof point, made concrete rather than asserted: every report records the actual language it was filed in, and the case queue shows it plainly. Point at it live when a language switch happens mid-demo — the audit record, not just the conversation, reflects the switch.
- This scenario is chat-first, not voice-first, which is itself a talking point: the same agent config and tool contracts work across channels (D3's 'design once, deploy everywhere'), and the accessibility read-back button shows what adding a voice channel to this exact agent would unlock next.
- The knowledge base is real platform content, not scripted copy: four articles (bin collections, potholes/highways, safeguarding referrals, accessibility) uploaded to the live agent as ElevenLabs knowledge base documents with RAG enabled and `usage_mode: "auto"`, retrieved by chunked semantic search rather than keyword match. The in-app Knowledge base tab is a read-only mirror of the exact same content module the agent draws its answers from, so nothing shown on screen can drift from what the agent actually says — click a suggested question in the resident chat and the reply traces straight back to the article open on screen. That's the answer if a buyer asks how the agent's knowledge stays accurate: it doesn't have its own copy, it and the citizen-facing page read from one source.
Discovery questions
- Where do missed-collection and highways reports land today — a phone queue, a web form, an app — and what's your average time from report to acknowledgement?
- What does your safeguarding escalation process look like today when a contact-centre agent, or a report itself, raises a concern about a vulnerable resident? Who gets notified, and how fast?
- How do you currently produce an audit trail for a Freedom of Information request about a specific case — is that a manual pull across systems, or does one system already hold the full record?
- What proportion of contacts today come from residents who need a non-English language or an accessible format, and how is that currently served?
- How is your public-facing policy content — collection calendars, highways response times, service standards — maintained and kept current today, and who owns that? That's the content that would seed an agent's knowledge base, so it's worth knowing whether it already exists in a reusable form or would need restructuring first.
Objection handling
We have a statutory duty here — we can't have an AI deciding what's a safeguarding concern.
The agent doesn't decide anything is or isn't a safeguarding concern in the sense of a professional judgement — it routes. Either the resident picks a safeguarding category themselves, or the model notices signs of distress and routes to a human rather than closing the conversation. The actual judgement — what to do about it — is made by a person, every time, same as today. What's different is nothing falls through the cracks because an agent decided a conversation was over.
Public sector can't move as fast as retail — this feels like overreach for a council.
It's the same posture as scenario 6's 'fraud is too sensitive for a voice agent to touch' objection: separate 'the agent talks to the resident' from 'the agent decides sensitive outcomes.' Every write here is server-side, secret-verified, and logged with a full audit row — the agent is the conversational front end onto a case record your own team already reviews and acts on, not a replacement for that team's judgement.
If a tool call fails or times out
- submit_report fails or times out: don't let the agent claim the report was filed — that's the one claim that must be true. Say the system is being slow, check the case queue directly, and file it manually there if the tool call genuinely didn't land.
- escalate_to_human is called but nothing visibly happens: this is the scenario's most important gate, so treat a silent escalation as a stop-the-demo moment, not a minor glitch — confirm live, out loud, that a human would actually have been notified, using the case queue as the source of truth.
- A language switch mid-conversation doesn't carry through to conversation_locale: don't paper over it — it's the specific proof point for the equality-of-access story, so call out that this is exactly the kind of thing the audit trail is designed to catch, then show the case record after the call to confirm what actually got logged.
- The agent answers a knowledge-base question generically, or claims it doesn't have the information, even though the question matches one of the four articles: this is a known gotcha in managing this KB, not a scripting error to cover for. Attaching a document to the agent (`usage_mode: "auto"`) is a separate step from computing its RAG index — the index has to be triggered explicitly, isn't exposed by the standard tool surface, and skipping it leaves the document attached but silently returning zero chunks on retrieval. It shipped broken exactly once already before being caught and fixed. If you ever add or edit an article for a new vertical or pitch, re-run the index step and spot-check with a real question in the chat before demoing — there's no error, just a wrong answer.
Fenbridge Council
Local services, sorted
A resident reports a problem — Fenbridge Council logs it as an auditable case, live.
Local services, sorted
Report it now
From a missed bin to a pothole — let Fenbridge Councilknow and we’ll sort it.
What’s the problem?

Missed bin collection

Pothole or road damage

Streetlight not working

Fly-tipping

Noise nuisance

Safeguarding concern
© Fenbridge Council · Accessibility statement