Inferensys

Prompt

Graceful Degradation Strategy Review Prompt

A practical prompt playbook for using the Graceful Degradation Strategy Review Prompt in production resilience workflows.
Legal team reviewing EU AI Act compliance documents on laptop in modern office, coffee cups and papers on table, casual meeting.
PROMPT PLAYBOOK

When to Use This Prompt

Defines the ideal user, required inputs, and boundaries for the Graceful Degradation Strategy Review Prompt.

This prompt is for SREs, product engineers, and architects who need to design a prioritized degradation plan before an outage forces reactive decisions. Use it when you have a dependency map and a feature catalog, and you need a structured plan that maps each feature to a fallback behavior, estimates user impact, and defines recovery triggers. The prompt forces explicit thinking about cascading degradation and incomplete fallback coverage, which are the two most common failure modes in degradation design.

The prompt requires two concrete inputs to be useful: a [DEPENDENCY_MAP] that enumerates upstream services, databases, and third-party APIs with their failure modes, and a [FEATURE_CATALOG] that lists user-facing features with criticality tiers. Without these, the model will generate plausible but untethered degradation plans that don't match your actual system. The prompt also accepts an optional [CONSTRAINTS] block for regulatory requirements, SLA boundaries, or business rules that constrain fallback behavior. If you don't have a current dependency map, run a dependency analysis prompt first before using this one.

Do not use this prompt during an active incident. It is a design-time tool for creating a degradation strategy that your incident response team can reference, not a runbook generator for real-time triage. The output is a strategy document that should be reviewed by the engineering team that owns the affected services, then stored alongside your incident response procedures. If you need a runbook for an ongoing incident, use an operational incident prompt instead. The degradation plan this prompt produces should be revisited whenever your dependency graph or feature catalog changes significantly.

PRACTICAL GUARDRAILS

Use Case Fit

Where this prompt works and where it does not. Use it to review planned degradation paths before an outage exposes gaps.

01

Good Fit: Pre-Implementation Design Review

Use when: you have a dependency map and feature catalog, and you need to define fallback behaviors before writing code. Guardrail: the prompt requires a structured feature list as input; do not use it on a blank canvas.

02

Bad Fit: Real-Time Incident Response

Avoid when: an active outage is in progress and you need immediate mitigation steps. Guardrail: this prompt is for proactive planning. For incident response, use an operational runbook prompt instead.

03

Required Input: Prioritized Feature Catalog

Risk: without a ranked list of features and their dependencies, the model will invent a generic degradation plan that misses critical paths. Guardrail: provide a concrete feature-to-dependency mapping with business priority labels.

04

Required Input: Dependency Failure Modes

Risk: the model assumes all dependencies fail cleanly. Guardrail: specify expected failure modes for each dependency (timeout, error code, partial data, complete unavailability) so degradation paths match real conditions.

05

Operational Risk: Cascading Degradation

Risk: a fallback for Feature A may silently depend on Feature B, which is also degraded. Guardrail: after generation, trace every fallback path end-to-end and flag any fallback that itself has an unsatisfied dependency.

06

Operational Risk: Incomplete Fallback Coverage

Risk: some features receive no fallback definition and are assumed to fail gracefully by default. Guardrail: diff the input feature list against the output plan and require an explicit fallback or 'no degradation path' acknowledgment for every feature.

PROMPT PLAYBOOK

Copy-Ready Prompt Template

A copy-ready prompt for reviewing a system's graceful degradation strategy, mapping features to fallback behaviors, user impact, and recovery triggers.

This prompt template is designed to be pasted directly into your AI tool. It instructs the model to act as a reliability architect and produce a structured, prioritized degradation plan. The template uses square-bracket placeholders that you must replace with your system's actual data before execution. The output is a detailed plan that can be directly fed into an implementation harness for validation and integration into your runbooks.

text
You are a senior reliability architect reviewing a system's graceful degradation strategy. Your task is to produce a prioritized degradation plan that maps features to fallback behaviors, user impact, and recovery triggers.

## System Context
- System Name: [SYSTEM_NAME]
- Primary Function: [SYSTEM_PRIMARY_FUNCTION]
- Critical User Journeys: [CRITICAL_USER_JOURNEYS]
- Key Dependencies: [KEY_DEPENDENCIES]

## Input Data
- Feature Catalog: [FEATURE_CATALOG]
- Dependency Health Model: [DEPENDENCY_HEALTH_MODEL]
- Current SLA Targets: [SLA_TARGETS]
- Existing Runbooks: [EXISTING_RUNBOOKS]

## Output Schema
Return a JSON object with a single key "degradation_plan" containing an array of objects. Each object must have the following fields:
- "priority": (integer, 1=highest) The order in which degradation should be activated.
- "feature_name": (string) The user-facing feature.
- "dependency_failure": (string) The specific dependency failure that triggers this degradation.
- "fallback_behavior": (string) A precise description of the degraded experience.
- "user_impact": (string) A severity assessment (e.g., "Read-only mode", "Stale data shown", "Feature unavailable").
- "recovery_trigger": (string) The condition that signals it is safe to restore full functionality.

## Constraints
- The plan must cover every feature in the Feature Catalog.
- Fallback behaviors must not cause cascading failures in other systems.
- Prioritize preserving core read paths over write paths where possible.
- If a feature has no safe fallback, set "fallback_behavior" to "HARD FAILURE" and explain the rationale in "user_impact".

## Evaluation Criteria
Before outputting the final JSON, self-critique your plan against these checks:
1. Are there any features with no defined fallback? If so, flag them.
2. Could any fallback behavior itself trigger a new failure cascade?
3. Is the recovery trigger for each feature specific, measurable, and free of ambiguity?

To adapt this prompt, replace the placeholders with concrete data from your system's architecture documentation. The [FEATURE_CATALOG] should be a structured list of user-facing capabilities, and [DEPENDENCY_HEALTH_MODEL] should describe how dependencies fail (e.g., latent, unavailable, corrupt). After generating the plan, you must validate the output JSON against the defined schema and run the self-critique checks. For high-risk systems, a human SRE must review the plan before it is loaded into any automated degradation trigger. Do not use this prompt for systems where a hard failure is unacceptable and no safe fallback exists; in those cases, the architecture itself must be redesigned before a degradation strategy can be defined.

IMPLEMENTATION TABLE

Prompt Variables

Placeholders required by the Graceful Degradation Strategy Review Prompt. Replace each placeholder with concrete system data before execution. Validation notes describe how to confirm the input is well-formed and safe.

PlaceholderPurposeExampleValidation Notes

[SERVICE_CATALOG]

List of services, endpoints, or components in scope for degradation review

payment-api, user-profile-service, recommendation-engine, search-indexer

Must be a non-empty list of unique identifiers. Validate against service registry or CMDB. Reject if any identifier is unrecognized or ambiguous.

[DEPENDENCY_GRAPH]

Directed mapping of which services depend on which other services, including external APIs

payment-api -> [fraud-detector, ledger-db]; recommendation-engine -> [user-profile-service, redis-cache, ml-model-api]

Must be a valid adjacency list or graph structure. Validate that every referenced dependency exists in [SERVICE_CATALOG]. Flag circular dependencies and missing nodes. Reject if graph is empty or disconnected without explanation.

[CRITICALITY_TIERS]

Priority classification for each service or feature, typically P0 (critical) through P3 (non-critical)

payment-api: P0, recommendation-engine: P2, search-indexer: P1

Must assign a tier to every entry in [SERVICE_CATALOG]. Tiers must follow a defined ordinal scale. Validate that at least one P0 service exists. Reject if tier definitions are missing or inconsistent with business SLAs.

[SLA_TARGETS]

Latency, availability, and throughput targets per service or endpoint

payment-api: 99.99% availability, p99 < 200ms; recommendation-engine: 99.9% availability, p99 < 500ms

Must include availability percentage and at least one latency target per critical service. Validate numeric ranges are plausible (0-100 for availability, positive ms for latency). Flag targets that conflict with dependency SLAs.

[FALLBACK_BEHAVIORS]

Current or proposed fallback responses when a dependency is unavailable

recommendation-engine: serve cached top-10 list (stale up to 1h); payment-api: queue request for retry, show 'payment delayed' UI

Must map each service to at least one fallback. Validate that fallback does not call a degraded dependency. Flag fallbacks with no staleness or freshness constraint. Reject if P0 services lack a defined fallback.

[RECOVERY_TRIGGERS]

Conditions that signal a dependency has recovered and normal operation can resume

fraud-detector: health check returns 200 for 3 consecutive intervals; ml-model-api: p99 latency drops below 300ms for 5 minutes

Must define a measurable condition per degraded dependency. Validate that triggers are observable (health check, metric threshold, synthetic test). Reject if trigger relies on the degraded service self-reporting without external verification.

[USER_IMPACT_MATRIX]

Mapping of degradation scenarios to user-facing consequences and affected user segments

recommendation-engine down: all users see generic popular items; payment-api degraded: checkout users see delay notice, non-checkout users unaffected

Must describe impact per degradation scenario. Validate that every fallback in [FALLBACK_BEHAVIORS] has a corresponding user impact entry. Flag scenarios where impact description is missing or too vague to inform product decisions.

[DEGRADATION_TIMEOUTS]

Maximum duration a service can operate in degraded mode before escalation or forced recovery

recommendation-engine: 4 hours max degraded; payment-api: 15 minutes max degraded before incident escalation

Must specify a duration per service that can degrade. Validate that timeouts are shorter for higher criticality tiers. Reject if any P0 service has a timeout exceeding 30 minutes without explicit justification.

PROMPT PLAYBOOK

Implementation Harness Notes

How to wire the Graceful Degradation Strategy Review Prompt into a production application or review workflow.

This prompt is designed to be integrated into a pre-production architecture review pipeline, not as a one-off chat interaction. The primary integration point is a CI/CD or design-review platform (e.g., a pull request checklist, an internal architecture review tool, or a structured document workflow) where a system design document or feature specification is submitted for automated analysis. The application harness must collect the required inputs—the feature catalog, dependency map, and current fallback specifications—and format them into the [FEATURE_DEPENDENCY_MAP] and [CURRENT_FALLBACK_SPEC] placeholders. Because the output is a structured degradation plan, the harness should parse the model's response into a typed object (e.g., a JSON schema with fields for degradation_tiers, fallback_behaviors, and recovery_triggers) for downstream processing, such as rendering in a dashboard or inserting into a decision record.

The implementation must include a validation layer that checks the model's output against the expected schema before accepting it. Use a retry loop with a maximum of three attempts: if the output fails schema validation, re-submit the prompt with the validation error appended to the [CONSTRAINTS] section, instructing the model to correct the specific structural issue. Log every attempt, including the raw prompt, model response, and validation result, to an observability platform for debugging and audit. For high-risk systems where an incomplete degradation plan could lead to a production outage, route the final output to a human reviewer via a notification or ticket. The reviewer should confirm that all critical user journeys have a defined fallback and that no dependency is left without a degradation path. The harness should block the promotion of the design document until this review is approved.

For model selection, use a model with strong reasoning and structured output capabilities, such as GPT-4o or Claude 3.5 Sonnet, with a low temperature setting (0.1-0.2) to maximize deterministic, analytical output. Avoid using smaller, faster models for this task, as the risk of hallucinating a plausible but incorrect fallback chain is high. Do not use Retrieval-Augmented Generation (RAG) for this prompt unless you have a knowledge base of your organization's specific resilience standards and past incident postmortems; in that case, inject relevant policy documents into the [CONTEXT] block. The next step after a successful review is to feed the approved degradation plan into your resilience testing harness to validate the fallback behaviors under simulated failure conditions.

IMPLEMENTATION TABLE

Expected Output Contract

Defines the shape, types, and validation rules for the Graceful Degradation Strategy Review output. Use this contract to parse the model response, validate correctness, and trigger retries or human review when constraints are violated.

Field or ElementType or FormatRequiredValidation Rule

degradation_plan

Array of objects

Must be a non-empty array. If empty, retry with explicit instruction to enumerate at least one degradation path.

degradation_plan[].feature

String

Must match a feature name from [FEATURE_CATALOG] if provided. Non-empty string. If no catalog provided, check for non-empty string.

degradation_plan[].dependency

String

Must reference a dependency listed in [DEPENDENCY_MAP]. Non-empty string. Validate against known dependency inventory.

degradation_plan[].failure_mode

String enum

Must be one of: 'unavailable', 'timeout', 'error_response', 'degraded_performance', 'partial_data'. Reject unknown values.

degradation_plan[].fallback_behavior

String

Must describe a concrete action (e.g., 'serve cached results', 'disable recommendations module'). Reject vague descriptions like 'handle gracefully'.

degradation_plan[].user_impact

String enum

Must be one of: 'none', 'stale_data', 'reduced_functionality', 'manual_fallback', 'service_unavailable'. Reject unknown values.

degradation_plan[].recovery_trigger

String

Must specify a measurable condition (e.g., 'health check returns 200 for 3 consecutive intervals'). Reject if no metric or threshold is present.

degradation_plan[].priority

Integer

Must be a positive integer. Lower numbers indicate higher priority. Validate no duplicate priority values exist across the plan.

PRACTICAL GUARDRAILS

Common Failure Modes

Graceful degradation plans fail in predictable ways. These are the most common failure modes when reviewing degradation strategies, with concrete guardrails to catch them before production.

01

Incomplete Fallback Coverage

What to watch: The degradation plan covers primary dependencies but misses transitive dependencies, shared infrastructure, or indirect service calls. A feature appears protected until a hidden dependency fails and the fallback never triggers. Guardrail: Require a full dependency graph walk for each user-facing feature. Every leaf dependency must have an explicit fallback or an acknowledged 'no degradation available' entry with documented user impact.

02

Cascading Degradation

What to watch: Fallback behavior for Feature A silently depends on Feature B, which is also degraded. The system enters a lower state of functionality than intended, or the fallback itself triggers a new failure chain. Guardrail: Map fallback dependency chains explicitly. For each fallback, ask 'what does this fallback depend on?' and trace until you hit a static default or cached response. Flag any fallback that depends on another potentially degraded path.

03

Undefined Recovery Triggers

What to watch: The plan describes how to degrade but never specifies when to restore full functionality. Systems stay in degraded mode longer than necessary, or oscillate between states due to ambiguous recovery signals. Guardrail: Define explicit recovery criteria for each degradation path, including health check pass thresholds, stabilization windows, and rate-limited restoration to prevent flapping. Recovery must be as explicit as degradation.

04

User-Facing Ambiguity

What to watch: The degradation plan describes backend behavior but never addresses what the user sees. Users encounter blank screens, infinite spinners, or cryptic errors because the UI layer has no degradation contract. Guardrail: Require a user-experience mapping for every degradation state. Each fallback must specify the exact UI treatment: skeleton, cached data with staleness indicator, disabled feature with explanation, or static fallback content.

05

Stale Fallback Data

What to watch: Cached or static fallback responses serve data that is dangerously out of date. Users act on stale pricing, inventory, or configuration without knowing the data freshness has degraded. Guardrail: Attach a maximum staleness threshold to every cached fallback. If the cache exceeds the threshold, the fallback must either serve no data with an explicit freshness warning or escalate to a higher-impact degradation state rather than silently serving stale data.

06

Missing Degradation Priority Tiers

What to watch: All features degrade uniformly without considering business criticality. A payment processing degradation receives the same treatment as a recommendation widget, causing disproportionate business impact. Guardrail: Assign every feature a degradation tier (e.g., critical, degraded, disabled, offline) with tier-specific fallback rules. Critical-path features should degrade more conservatively and recover more aggressively than non-critical features.

IMPLEMENTATION TABLE

Evaluation Rubric

Use this rubric to evaluate the quality of a generated graceful degradation plan before integrating it into a production system. Each criterion targets a specific failure mode common in AI-generated resilience strategies.

CriterionPass StandardFailure SignalTest Method

Feature Coverage Completeness

Every feature listed in [FEATURE_CATALOG] appears in the degradation plan with an assigned priority tier.

A feature from the input catalog is missing from the output plan, or is mapped to a generic 'no impact' category without justification.

Parse the output JSON. Extract all feature names. Perform a set comparison against the input [FEATURE_CATALOG] list. Assert set equality.

Fallback Behavior Specificity

Each degraded feature has a concrete, executable fallback action (e.g., 'serve stale cache', 'return static default', 'disable write path') rather than a vague description.

A fallback cell contains phrases like 'handle gracefully', 'inform user', or 'use fallback' without specifying the exact mechanism or data source.

For each entry in the output's 'degradation_plan' array, check if the 'fallback_behavior' field matches a predefined list of valid action types. Assert no null or generic string matches.

Recovery Trigger Definition

Every degradation rule includes a measurable recovery trigger (e.g., 'p99 latency < 200ms for 60s', 'health check 200 OK for 5 consecutive polls').

A recovery trigger is missing, is defined as 'manual only' without an alerting hook, or relies on a metric not present in [OBSERVABILITY_METRICS].

Validate that each 'recovery_trigger' field is non-null. For each trigger, check if the referenced metric exists in the provided [OBSERVABILITY_METRICS] schema. Assert all references resolve.

Cascading Dependency Check

The plan explicitly identifies and mitigates cascading risks where degrading Feature A could increase load on Feature B, potentially causing its failure.

The output contains a dependency chain where a fallback action (e.g., 'retry on dependency X') would amplify load on a downstream service that is already degraded.

Simulate the degradation plan against a dependency graph provided in [SYSTEM_TOPOLOGY]. Assert that no fallback action increases calls to a dependency already marked as unhealthy.

User Impact Transparency

Each degradation entry includes a clear, non-technical description of the user-facing impact, suitable for a status page update.

The 'user_impact' field contains internal jargon, is blank, or promises full functionality when the fallback behavior indicates data loss or feature unavailability.

Use an LLM-as-judge with a rubric checking for jargon and truthfulness. Assert that the 'user_impact' description does not contradict the technical 'fallback_behavior'.

Priority Tier Consistency

Feature priority assignments (e.g., Tier 1 - Critical, Tier 2 - Degraded, Tier 3 - Off) are consistent with the business rules defined in [PRIORITY_POLICY].

A payment capture feature is assigned to Tier 3, or a non-critical reporting feature is assigned to Tier 1, contradicting the explicit policy document.

Cross-reference the output 'priority' field for each feature against the rules in [PRIORITY_POLICY]. Assert that all assignments match the policy's classification logic.

Output Schema Validity

The generated output strictly conforms to the expected [OUTPUT_SCHEMA], including all required fields and correct data types.

The model returns a malformed JSON object, omits the required 'degradation_plan' array, or uses a string where an array of objects is expected.

Validate the raw output string against the [OUTPUT_SCHEMA] using a JSON schema validator. Assert validation passes with no errors.

Idempotency and Safety

The plan includes a safety gate ensuring that degradation actions are safe to execute multiple times without causing data corruption or duplicate side effects.

The plan suggests a fallback action like 'send email to customer' or 'create duplicate order' without an idempotency key or deduplication check.

Scan the 'fallback_behavior' descriptions for keywords (e.g., 'send', 'create', 'charge'). If present, assert that the corresponding 'safety_gate' field contains a non-null idempotency strategy.

ADAPTATION OPTIONS

Adapt This Prompt

How to adapt

Use the base prompt with a single dependency and a simplified output format. Replace the full [DEPENDENCY_MAP] with a short list of 3-5 critical services. Skip the recovery trigger schema and ask for a plain-text degradation plan with three tiers: full service, degraded, unavailable.

Watch for

  • The model may skip dependencies not explicitly listed
  • Fallback behaviors may be described vaguely without concrete user-facing language
  • Recovery triggers will be missing unless you explicitly ask for them
Prasad Kumkar

About the author

Prasad Kumkar

CEO & MD, Inference Systems

Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.

His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.