An AI support layer only earns its keep if it protects human agents' attention rather than flooding it. The rule we settled on is that agents should only ever see a conversation the AI genuinely could not handle, or that the customer explicitly asked a human for. Everything the AI resolved should stay out of the agent queue entirely.
Two doors into the queue
This is simple to state and surprisingly easy to get wrong, because a support system has several paths that can surface a ticket to an agent, and every one of them has to respect the rule. We found tickets could reach agents through two independent mechanisms.
The first is the push offer, a ticket actively offered to an available agent through an incoming accept-or-decline prompt. The second is the pull queue, a list of open, unassigned tickets an agent can claim. An AI-handled voice call was leaking through the second door: while the AI was mid-call the ticket was briefly open and unassigned, so it showed up as claimable even though no human was ever wanted.
The fix was to make the channel a first-class filter at both choke points. A voice call is never a chat-style queue item, so it is excluded both from the single offer path every push route funnels through and from the query that feeds the pull queue. Closing only one door was never going to be enough.
Auto-resolve, so handled means gone
When the AI answers and no human was requested, we mark the ticket auto-resolved by AI. That status keeps it out of every agent view by default while preserving it for oversight, analytics and reopening on reply.
A confident bot answer becomes a closed, answered-by-AI record. It is not a silent deflection, and it is not an item left nagging the team.
Transfer means assign, and escalate only on request
When a human is wanted we do not drop the ticket into the anonymous queue and hope someone grabs it. We assign it straight to the chosen agent and reach them on the appropriate channel. For voice that means ringing their in-browser softphone and handing them the ticket with its live transcript, and we clear any lingering offer so it cannot resurface elsewhere.
Finally, the AI itself is told to hand off only on an explicit request for a person, not merely because it is unsure. The tool description and the system instructions agree on this, so the model does not transfer a caller just because it hit a gap it could have honestly declined. Keeping AI conversations away from agents is not one check; it is an invariant you must enforce at every path that can surface a ticket.

