Fallback capacity overloads after primary failure
Detect: Queue age and rejection rate rise sharply in the alternate path.
Recover: Shed optional work and enforce reserved capacity limits.
Preserve the most valuable safe subset of service during dependency failure, making reduced capability and evidence freshness explicit to users.
Graceful degradation deliberately reduces functionality when full service cannot be delivered. An agent might provide verified cached information, omit an optional enrichment, queue a long task, or return a structured partial result. The degraded mode must have its own correctness contract rather than merely returning whatever content happens to be available.
Classify dependencies and capabilities by business consequence. Losing a recommendation model may permit a search-only experience; losing authorization cannot justify unrestricted access. Define which facts may be stale, which actions are disabled, and how the interface communicates limitations without falsely claiming complete success.
A prototype can disable one dependency at a time and identify which useful functions remain. Write down the minimum acceptable response for each failure.
Production implements explicit capability states, fallback ordering, freshness limits, and observability for degraded responses. Keep degraded modes exercised so they do not become untested emergency code.
At scale, avoid shifting all traffic onto an undersized fallback. Capacity reservations, admission control, and recovery hysteresis prevent degradation from triggering another outage.
Relates user-visible functions to mandatory and optional dependencies.
Determines which degraded modes are currently safe and permitted.
Supplies validated cached data, simpler computation, alternative models, or queued work.
Marks missing capabilities, evidence freshness, and incomplete outcomes explicitly.
Restores normal service gradually and observes fallback capacity and errors.
flowchart LR
Q["Customer request"] --> C["Capability and health evaluator"]
C --> F["Full assisted workflow"]
C --> S["Verified search-only mode"]
C --> K["Freshness-bounded cache"]
C --> J["Deferred job"]
F --> R["Explicit response contract"]
S --> R
K --> R
J --> R
P["Mandatory security policy"] --> CDetect timeout, open circuit, unavailable data, or exhausted capacity using trusted signals.
Consult the capability map and preserve mandatory security and correctness constraints.
Apply admission and concurrency limits before moving work to alternate capacity.
Return only results that meet the degraded contract and freshness requirements.
Identify missing analysis or disabled actions without presenting partial service as complete.
Probe primary health and restore capabilities with hysteresis and outcome monitoring.
Retail operations · Illustrative enterprise scenario, not a reported customer outcome.
A retailer's store assistant answers operating-procedure questions and explains current stock exceptions.
When the language-model provider is unavailable, the entire support interface becomes unusable even though approved procedures remain searchable.
The assistant must preserve access to verified information while disabling unsupported analysis and stock-changing actions.
A capability map selects search-only mode for procedure questions and queues analytical requests that require unavailable inference.
If cached inventory exceeds its freshness limit, the system withholds availability claims rather than showing stale stock as current.
Track successful degraded tasks, fallback saturation, stale-data rejection, and time to restore full capability. Availability is measured against each mode's promised behavior.
| Decision | Benefit | Cost |
|---|---|---|
| Partial service | Users can complete some work during an outage. | Additional modes increase implementation and testing effort. |
| Cached evidence | Responses remain fast when origins fail. | Freshness limits restrict which claims remain valid. |
| Deferred work | Important tasks can survive temporary capacity loss. | Users need durable status and realistic completion expectations. |
Detect: Queue age and rejection rate rise sharply in the alternate path.
Recover: Shed optional work and enforce reserved capacity limits.
Detect: Contract checks find missing mandatory sections without status markers.
Recover: Correct the response state and block misleading publication.
Keep mandatory access controls fail-safe.
Enforce freshness bounds and show source age.
Exercise them in routine validation and controlled failure tests.