Triage that routes on evidence, not on keywords
Most support automation is a keyword rule with a nice interface. The failure mode is quiet: the angry enterprise customer whose message did not contain the word urgent waits in the same queue as everyone else.
The situation
A B2B platform team handles 400 tickets a week across email, in-app chat, and a shared Slack Connect channel with its largest accounts. Severity drives the SLA clock, and the SLA is contractual. Getting severity wrong in either direction is expensive: too low breaches an agreement, too high wakes an engineer at 3 a.m. for a cosmetic bug.
Severity by keyword match
The current rule promotes anything containing down, urgent, or broken. A message reading 'our nightly sync has produced no rows since Tuesday and finance closes tomorrow' contains none of those words and sits in the general queue for nine hours.
Routing that ignores the contract
Triage happens before anyone checks which plan the account is on. An enterprise customer with a four-hour SLA and a free-tier user filing the same complaint are treated identically until a human notices.
Whole tickets pasted into a model
Teams that do use AI for triage typically send the full thread — customer name, email, and any log excerpt the customer attached, which routinely includes tokens and internal hostnames — to whichever model the vendor chose.
Automation that makes commitments
A well-meaning auto-reply that says a fix is coming this week is a customer-visible promise nobody approved. It is the one class of automated message that can create an obligation.
The workflow
Every step names the control that applies to it. The steps marked Human are the points where the workflow stops and waits for a person — by design, not because the automation is incomplete.
WhatsApp → CRM → Approval → Google Sheets
- 01 / 07System
Collect from every channel into one thread
Email, in-app chat, and the shared Slack channel resolve to a single ticket keyed on account and subject, so the same incident reported by three people at one customer does not become three severities.
One ticket per incident, keyed on account
- 02 / 07System
Redact before inference
Names, email addresses, phone numbers, and anything matching a token or key pattern are replaced with typed placeholders before the model sees the text. The mapping stays in your tenancy, so the reply can be rehydrated without the model ever holding the original.
Typed redaction, mapping never leaves the tenancy
- 03 / 07System
AI proposes severity with its reasoning
The model returns a severity, the phrase that drove it, and a confidence. Because it reads meaning rather than keywords, 'no rows since Tuesday and finance closes tomorrow' surfaces as a business-impacting failure with its justification attached.
Severity plus cited evidence, never a bare label
- 04 / 07System
Apply entitlement and SLA
Reads the account's plan, contractual response window, and named support contacts, then combines them with the proposed severity. Entitlement is applied deterministically after inference, so a model error cannot silently downgrade a contractual SLA.
Contract data applied after inference, not by the model
- 05 / 07Human
On-call engineer confirms anything page-worthy
Severity 1 and 2 require a human to accept ownership before a page fires. The engineer sees the redacted thread, the proposed severity with its cited evidence, the account entitlement, and similar recent tickets.
Human accepts ownership before any page
- 06 / 07Human
Approve the customer-visible acknowledgement
The draft reply confirms receipt and states the applicable response window. It never asserts a cause, a fix, or a date. Anything beyond acknowledgement is written by the owner, because a commitment is not an automatable act.
Acknowledgement only; commitments are written by a person
- 07 / 07System
Record the decision chain
Writes the proposed severity, the final severity, who changed it and why, the entitlement applied, and the acknowledgement sent. Over a quarter this becomes the dataset that shows where triage is actually miscalibrated.
Proposed versus final severity retained for review
Controls
Step-level controls stop a single action. These apply to the workflow as a whole, which is what makes the difference between a logic error and an incident.
Automated messages cannot make commitments
The workflow may acknowledge and state a contractual window. Cause, fix, and date are outside what any automated reply is permitted to assert, so no automation can create an obligation your engineers did not agree to.
Redaction happens before the model call
Not after, and not as a post-processing filter on the response. The prompt that leaves your tenancy contains typed placeholders, so a customer's pasted access token is not in it.
Proposed and final severity are both kept
Every human override is retained with its reason, which turns triage quality into something measurable. The pattern that a model consistently under-rates data-integrity issues becomes visible rather than anecdotal.
SLA is arithmetic, not inference
Response windows come from contract data through a deterministic rule. The model influences severity and nothing else, so the contractual clock is never the output of a probabilistic step.
The shape of the change
Each row states what the controls make possible or impossible, rather than a measured saving. The change is structural: the same work, with the risky path closed off.
Business-impacting tickets missed by keyword rules
WasFound when the customer escalates
Surfaced with cited evidence
Customer identifiers sent to a model
WasWhole thread
Typed placeholders
Pages fired without a named owner
WasWhoever is on rotation
None
Other workflows
The same controls apply across every use case. Only the steps and the thresholds change.
Lending and collections
Collections that stay inside the rules
Recovery work touches the most sensitive data you hold and the most regulated conversation you have. SentryFlow runs the repetitive part and stops at every point where a person is legally required to decide.
Read the workflowD2C orders and refunds
Refunds that move fast without moving money by accident
Refund automation is the classic case where speed and safety pull hardest against each other. The interesting question is not how quickly a refund clears, but which refunds a machine is allowed to clear at all.
Read the workflowFinance reconciliation
Reconciliation that closes before the team logs in
Matching a settlement file to an invoice ledger is genuinely mechanical work, which is why it is the strongest case for automation on this list. It is also money, which is why every exception stops at a person.
Read the workflow