Keep provider outages from blocking the support inbox
The classifier stalls and newly submitted tickets disappear until its call completes. Decouple intake from classification and make failure an observable review state.
- Focused work estimate
- 2h + prerequisites
- Priority in the scenario
- High
- Engineering practice
- Outbox · Idempotent jobs · Failure isolation
Estimated field mix
- Distributed systems40%
- Applied AI30%
- Backend30%
Field percentages are editorial estimates of the ticket's engineering focus. They total 100%; they are not measured time, proficiency scores, or ownership evidence.
Review it, then add it to your workspace.
The board opens an editable draft; nothing is saved until you confirm it. Sign-in and workspace permissions apply, and Demo boards remain ephemeral.
Project context
A fictional software vendor receives billing, account-access, bug, and security reports. A prototype silently moves tickets based on vague model confidence. Replace it with bounded suggestions, deterministic safety rules, and an auditable review flow.
Setup prerequisites
- Create a synthetic support-ticket corpus with no real customer messages.
- Implement a deterministic local classifier double with success, malformed-output, and timeout modes.
Preceding work
Complete these dependencies, or supply their agreed outputs before taking this ticket.
Acceptance criteria
- Ticket intake commits before asynchronous classification starts.
- Jobs use deterministic identities and bounded timeout/retry settings.
- Exhausted jobs leave tickets visible in manual review with a safe failure category.
Implementation constraints
- Use a transactional outbox or equivalent local transactional queue boundary.
- The default provider is deterministic and requires no credentials.
Verification to include
- Simulate provider timeout and verify immediate ticket visibility plus eventual review state.
- Deliver the same job twice and confirm it does not create duplicate suggestions.
Deliverables
- Asynchronous suggestion job and outage scenarios
Rollout and recovery
Enable queued suggestions behind a feature flag; disable workers while preserving manual inbox intake.
Value of the work
For the engineer: Practice constrained classification, human correction workflows, model versioning, and evaluation under ambiguous inputs.
For the team: Review whether automation saves triage effort while preserving queue ownership and safe escalation.
Evidence boundaries
Outcome Evidence: Tests, patches, and runbooks are requested deliverables. They become Outcome Evidence only through a qualified Mission and immutable Evidence IDs.
Ownership Evidence: Independent adaptation must be observed under a declared verification policy and cite immutable Evidence IDs. Completing a planning ticket establishes no Ownership Evidence.