Inferensys

Prompt

Incident Severity Upgrade Approval Prompt

A practical prompt playbook for generating structured, evidence-backed incident severity upgrade requests that require explicit human approval before escalating priority, notifying stakeholders, and mobilizing resources.
Developer doing prompt engineering on laptop, prompt variations visible on screen, casual coding session.
PROMPT PLAYBOOK

When to Use This Prompt

Defines the precise operational context for using the Incident Severity Upgrade Approval Prompt and clarifies when it should not be applied.

This prompt is designed for incident commanders and SRE teams who need a formal, evidence-based proposal to escalate the severity of an already-declared incident. The core job-to-be-done is generating a structured, auditable request that justifies the upgrade by linking it to concrete impact metrics, SLA implications, and resource mobilization needs. The ideal user is an on-call engineer or incident manager who has observed a material change in the incident's scope or customer impact and must secure explicit human approval before expanding the response. Required context includes the current incident record, the proposed severity level, and the specific triggering evidence that warrants the change.

Use this prompt when your incident management workflow requires a formal approval gate before taking actions like expanding the notification scope to executive stakeholders, pulling in additional on-call teams, or invoking higher-tier SLA commitments that carry financial penalties. The prompt forces the AI to structure the proposal with a direct comparison of current versus proposed severity, a quantification of customer impact, and a clear statement of the additional resources required. For example, if a P2 incident affecting a single region begins to show cascading failures across multiple availability zones, this prompt will generate a proposal that cites the new error budget burn rate, the number of newly affected users, and the specific teams that must be mobilized, rather than a vague request for more help.

Do not use this prompt for the initial severity assignment during triage; it is specifically designed for upgrade proposals on active incidents. It is also inappropriate for downgrade proposals, routine status updates, or post-incident reviews. The output should be treated as a draft for human review, not an automatic execution command. Before relying on this prompt in production, validate its output against your organization's specific severity definitions, SLA contracts, and escalation policies to ensure the AI's justification language matches your internal runbooks.

PRACTICAL GUARDRAILS

Use Case Fit

Where this prompt works and where it does not. Use these cards to decide if the Incident Severity Upgrade Approval Prompt fits your operational workflow.

01

Good Fit: Structured SRE Workflows

Use when: Your incident management process already defines severity levels (SEV1–SEV5), SLAs, and notification scopes. The prompt excels at comparing current vs. proposed severity against documented policy. Guardrail: Provide the prompt with your severity definitions and SLA matrix as [CONTEXT] so it can ground its recommendation in your actual policy, not generic assumptions.

02

Bad Fit: First-Response Triage

Avoid when: The incident has just been reported and no initial assessment exists. This prompt assumes a current severity is already assigned and needs upgrading—it is not designed for cold-start classification. Guardrail: Use a separate incident triage and classification prompt first to establish the baseline severity before invoking this upgrade approval workflow.

03

Required Inputs

What you must provide: Current severity level, proposed severity level, incident summary, impact evidence (customer count, revenue at risk, error budget burn), affected SLA commitments, and current notification scope. Guardrail: Validate that all required fields are present before calling the prompt. Missing customer impact quantification is the most common failure mode—reject the request and ask for evidence rather than allowing the model to infer impact.

04

Operational Risk: Premature Escalation

What to watch: The prompt may recommend escalation based on pattern matching rather than actual impact evidence, especially when the incident description uses high-severity language without supporting data. Guardrail: Require explicit impact metrics (affected user count, error rate, revenue impact) in the input. If metrics are absent, the prompt should output a request for evidence rather than an upgrade recommendation.

05

Operational Risk: Notification Fatigue

What to watch: Repeated severity upgrades can cause notification fatigue if every minor fluctuation triggers a new approval request and expanded paging. Guardrail: Add a cooldown constraint in [CONSTRAINTS] such as 'Do not recommend a second severity upgrade within 30 minutes of a previous upgrade unless new impact evidence is provided.' Log upgrade frequency in your observability layer.

06

Human-in-the-Loop Boundary

What to watch: This prompt generates an approval request, not an automated escalation. Teams may be tempted to wire the output directly to paging systems. Guardrail: The output must always route to a human approver or on-call commander. The prompt's job is to structure the decision, not make it. Include a blocking condition in your harness that prevents automated severity changes without explicit human confirmation.

PROMPT PLAYBOOK

Copy-Ready Prompt Template

A ready-to-use prompt that generates a structured incident severity upgrade request for human approval before escalation.

This prompt template is designed to be pasted directly into your AI system when an on-call engineer or monitoring system flags a potential need to escalate an incident's severity. It forces the model to act as a disciplined SRE assistant, producing a complete, evidence-backed request rather than a casual suggestion. The template uses square-bracket placeholders that you must replace with live incident data from your monitoring, ticketing, and communication tools before sending the request to the model. The output is a structured approval payload intended for a human incident commander to review and sign off on before any severity change is applied in your incident management platform.

code
You are an SRE incident response assistant. Your task is to draft a severity upgrade approval request for a human incident commander. You must not execute any changes. You must only produce a structured request for review.

Use the following inputs to construct the request:
- Current Incident ID: [INCIDENT_ID]
- Current Severity Level: [CURRENT_SEVERITY]
- Proposed Severity Level: [PROPOSED_SEVERITY]
- Incident Title: [INCIDENT_TITLE]
- Time of Initial Detection: [DETECTION_TIME]
- Affected Service(s): [AFFECTED_SERVICES]
- Current Impact Summary: [CURRENT_IMPACT_SUMMARY]
- New Evidence Triggering Upgrade: [ESCALATION_EVIDENCE]
- Customer Impact Metrics (e.g., error rate, p99 latency, affected user count): [CUSTOMER_IMPACT_METRICS]
- Affected SLA/SLO Commitments: [AFFECTED_SLA_COMMITMENTS]
- Proposed Notification Scope Expansion: [NOTIFICATION_SCOPE_EXPANSION]
- Additional Resources or Teams to Mobilize: [RESOURCE_MOBILIZATION]
- Relevant Monitoring Dashboard Links: [DASHBOARD_LINKS]
- Current Incident Commander: [INCIDENT_COMMANDER]

Generate a JSON object with the following schema. Do not include any text outside the JSON object.

{
  "request_id": "string, a unique ID for this upgrade request",
  "incident_id": "string, the [INCIDENT_ID]",
  "timestamp": "string, ISO 8601 timestamp of this request",
  "requested_by": "AI SRE Assistant",
  "severity_change": {
    "current": "string, [CURRENT_SEVERITY]",
    "proposed": "string, [PROPOSED_SEVERITY]",
    "justification_summary": "string, a concise 2-3 sentence summary of why the upgrade is necessary based on [ESCALATION_EVIDENCE]"
  },
  "impact_analysis": {
    "customer_impact": "string, a quantified description of user-facing impact from [CUSTOMER_IMPACT_METRICS]",
    "sla_impact": ["list of strings, each describing a specific SLA/SLO at risk from [AFFECTED_SLA_COMMITMENTS]"],
    "affected_services": ["list of strings from [AFFECTED_SERVICES]"]
  },
  "required_actions": {
    "notification_scope": "string, description of who needs to be notified from [NOTIFICATION_SCOPE_EXPANSION]",
    "teams_to_mobilize": ["list of strings from [RESOURCE_MOBILIZATION]"]
  },
  "evidence_links": ["list of strings, URLs from [DASHBOARD_LINKS]"],
  "approval_required_from": "string, the [INCIDENT_COMMANDER] or their designated alternate",
  "risk_of_not_escalating": "string, a clear statement of the consequences if severity remains at [CURRENT_SEVERITY]"
}

Constraints:
- If [ESCALATION_EVIDENCE] does not contain a quantifiable change in customer impact, set "risk_of_not_escalating" to "Insufficient quantitative evidence to assess risk. Human review required."
- Do not fabricate metrics. Use only the data provided in [CUSTOMER_IMPACT_METRICS]. If data is missing, state "Data not provided" for that field.
- If [PROPOSED_SEVERITY] is not a higher severity than [CURRENT_SEVERITY], set "severity_change.justification_summary" to "ERROR: Proposed severity is not an upgrade. Request invalid."

To adapt this template, start by integrating it with your incident management API. The placeholders like [INCIDENT_ID] and [CURRENT_IMPACT_SUMMARY] should be populated programmatically from your ticketing system (e.g., PagerDuty, Opsgenie, ServiceNow) and observability platforms (e.g., Datadog, Grafana). The [ESCALATION_EVIDENCE] field is the most critical; it should be a pre-processed summary of the alert or log that triggered the review, not raw log lines. Before sending this prompt, validate that all required fields are non-null in your application layer to prevent the model from receiving an incomplete request. After receiving the JSON output, your system should validate it against the schema, check for the ERROR: string in the justification, and then post the structured request to the incident commander's review queue—never automatically applying the severity change.

IMPLEMENTATION TABLE

Prompt Variables

Each placeholder must be populated with accurate, current incident data. Missing or stale data produces unreliable approval requests.

PlaceholderPurposeExampleValidation Notes

[CURRENT_SEVERITY]

The incident's present severity level as defined in the org's incident management policy

SEV-3

Must match an active severity label from the incident tracking system; null not allowed

[PROPOSED_SEVERITY]

The target severity level requested for the upgrade

SEV-1

Must be a valid severity level higher than [CURRENT_SEVERITY]; downgrade requests should use a separate workflow

[INCIDENT_ID]

Unique identifier linking the request to the active incident record

INC-2025-00421

Must resolve to an open incident in the incident management platform; closed or resolved incidents should be rejected

[IMPACT_EVIDENCE]

Observable data demonstrating why the current severity no longer reflects reality

Payment failure rate increased from 0.2% to 4.7% in the last 15 minutes; 3,400 affected transactions

Must contain quantitative metrics with timestamps; qualitative-only descriptions should trigger a request for data before approval

[AFFECTED_SLA_COMMITMENTS]

Specific SLA obligations now at risk due to the incident's current impact

Customer-facing API latency SLA (99.9% < 200ms) breached for 22 minutes; Gold-tier customer refund obligation triggered

Must reference named SLA definitions from the service catalog; generic 'SLA breach' statements should fail validation

[NOTIFICATION_SCOPE_EXPANSION]

Additional teams, executives, or external parties who must be informed at the proposed severity

Executive escalation list, Customer Support on-call, Public Status Page update

Must list specific distribution lists or roles; 'wider audience' is insufficient and should block the request

[RESOURCE_MOBILIZATION_NEEDS]

Specific personnel, war room activation, or infrastructure resources required at the higher severity

Activate full incident war room; engage database on-call and SRE lead; pre-approve 2x compute scaling

Must enumerate concrete resources; empty or vague requests should require explicit 'no additional resources needed' confirmation

[ESCALATION_TIMESTAMP]

ISO 8601 timestamp when the severity upgrade is being requested

2025-03-21T14:32:00Z

Must be within 5 minutes of request generation; stale timestamps indicate a stalled workflow and should force a refresh

PROMPT PLAYBOOK

Implementation Harness Notes

How to wire the severity upgrade prompt into an incident management application or agent workflow.

Integrating the Incident Severity Upgrade Approval Prompt into a production system requires treating it as a gated decision point, not a free-text generator. The prompt should be invoked by an incident management agent or an automated monitoring pipeline when a potential severity mismatch is detected—for example, when the number of affected users, error budget consumption, or customer-reported impact exceeds the thresholds defined for the current severity level. The calling application must assemble the required inputs: the current incident record, the proposed severity level, the evidence of impact (metrics, logs, customer reports), the affected SLA commitments, and the expanded notification scope. These inputs populate the [CURRENT_SEVERITY], [PROPOSED_SEVERITY], [IMPACT_EVIDENCE], [AFFECTED_SLAS], and [NOTIFICATION_SCOPE] placeholders in the prompt template.

The model's output must be validated against a strict JSON schema before any action is taken. Define a schema that requires fields such as approval_decision (enum: APPROVE, REJECT, NEED_MORE_INFO), justification_summary, customer_impact_quantification, resource_mobilization_needs, and risk_of_not_upgrading. If the model's response fails schema validation, implement a retry loop (maximum two retries) that feeds the validation error back into the prompt as additional context. If validation continues to fail, escalate the raw output to the on-call commander via the incident channel without automated action. For model choice, use a model with strong instruction-following and structured output capabilities (e.g., Claude 3.5 Sonnet or GPT-4o with response_format set to json_object). Do not use a small or fast model for this task; the cost of a hallucinated severity upgrade—unnecessary paging, misallocated resources, SLA confusion—far outweighs the latency or token savings.

Log every invocation, including the full prompt, the model's raw response, the validation result, and the final action taken, to your incident audit trail. This is critical for post-incident review and for tuning the prompt's thresholds over time. Wire the approved upgrade into your incident management tool (e.g., PagerDuty, Opsgenie) via API, but only after the approval payload has been validated. Never allow the model to directly call the severity-change API; the application layer must be the sole executor of state changes. If the prompt returns NEED_MORE_INFO, the application should pause the escalation workflow and post a structured request for the missing data into the incident's communication thread, tagging the incident commander. The next step is to build a set of evaluation cases—both clear upgrades and borderline scenarios—and run them through this harness before deploying to production.

IMPLEMENTATION TABLE

Expected Output Contract

The model must return a structured JSON object with these fields. Validate before surfacing to the incident commander.

Field or ElementType or FormatRequiredValidation Rule

severity_change_request_id

string (UUID v4)

Must be a valid UUID v4. Reject if null or malformed.

current_severity

string (enum: SEV1, SEV2, SEV3, SEV4, SEV5)

Must match one of the defined enum values. Reject if not in the allowed set.

proposed_severity

string (enum: SEV1, SEV2, SEV3, SEV4, SEV5)

Must be a higher severity than current_severity. Reject if proposed <= current.

impact_evidence

object

Must contain 'customer_impact_quantification' (string) and 'affected_sla_commitments' (array of strings). Reject if either field is missing or empty.

notification_scope_expansion

object

Must contain 'current_recipients' (array of strings) and 'proposed_recipients' (array of strings). Reject if proposed is a subset of current.

resource_mobilization_needs

array of objects

Each object must have 'team' (string) and 'justification' (string). Reject if array is empty or any object is missing a field.

escalation_justification_summary

string

Must be between 50 and 500 characters. Reject if outside bounds or contains only whitespace.

approval_blocking_conditions

array of strings

If present, each string must be non-empty. Null is allowed. Reject if array contains empty strings.

PRACTICAL GUARDRAILS

Common Failure Modes

What breaks first when using an LLM to draft incident severity upgrades and how to guard against it in production.

01

Missing Customer Impact Quantification

What to watch: The model generates a severity upgrade request that describes the technical symptom but omits the number of affected users, revenue at risk, or SLA commitments in jeopardy. This leads to an under-informed approval decision. Guardrail: Require a structured [IMPACT_EVIDENCE] input field with user count, error rate, and business metric degradation. Add a pre-submission validation check that rejects the draft if these fields are empty or contain only qualitative language.

02

Premature Escalation Without Diagnostic Exhaustion

What to watch: The prompt drafts a severity upgrade based on alert noise or a single failed check before standard diagnostic runbooks have been executed. This causes alert fatigue and erodes trust in the escalation process. Guardrail: Include a [DIAGNOSTIC_CHECKLIST] variable in the prompt that must be populated with completed runbook steps. The prompt should be instructed to refuse to generate an upgrade request if the checklist is incomplete or if a known transient failure pattern is detected.

03

Hallucinated SLA or Compliance Violations

What to watch: The model invents specific contractual penalties

04

Incorrect Notification Scope Expansion

What to watch: The model proposes notifying the entire executive team or all-premium customers for a low-impact, localized failure, causing unnecessary panic and communication overhead. Guardrail: Provide a [NOTIFICATION_MATRIX] as a strict lookup table mapping severity levels to distribution lists. Add an output validator that flags any proposed recipient not present in the matrix for the declared severity level.

05

Resource Mobilization Over-Request

What to watch: The prompt requests a full cross-functional war room and all-hands page for an issue resolvable by the on-call engineer, draining team capacity and focus. Guardrail: Include a [CURRENT_ON_CALL_CAPACITY] input. Instruct the model to differentiate between

06

Loss of Critical Context in Upgrade Summary

What to watch: The model summarizes a complex, multi-faceted incident into a single, overly simplistic sentence, stripping away the nuanced evidence the approver needs to make a judgment call. Guardrail: Force a structured output with distinct sections for current_state, trigger_event, troubleshooting_evidence, and proposed_next_steps. Use a schema validator to ensure each section meets a minimum information density threshold before the request is routed.

IMPLEMENTATION TABLE

Evaluation Rubric

Test your prompt implementation against these criteria before deploying to production incident workflows.

CriterionPass StandardFailure SignalTest Method

Severity Justification Completeness

Output includes current severity, proposed severity, and at least three distinct impact evidence points (customer count, revenue at risk, SLA breach time)

Missing impact quantification, vague 'worsening conditions' without metrics, or single-factor justification

Schema validation for required fields; LLM-as-judge check for presence of quantified impact statements

SLA Commitment Mapping

Proposed severity correctly maps to defined SLA tiers with explicit affected commitment names and breach countdown timers

SLA tier mismatch (e.g., Sev1 criteria met but Sev2 proposed), missing timer references, or undefined SLA labels

Golden dataset test with 10 incident scenarios at boundary conditions between severity tiers

Notification Scope Expansion Accuracy

Output lists current notification audience, proposed expanded audience, and delta with role-based justification for each addition

Blanket 'notify all teams' without role justification, missing current audience baseline, or omitting compliance/legal when required

Parse notification lists and compare against incident policy matrix; flag additions without role justification

Resource Mobilization Specificity

Request includes specific team names, on-call rotation references, estimated headcount, and activation channel (page, Slack, incident bridge)

Generic 'more resources needed' without team identification, missing escalation channel, or no headcount estimate

Regex check for team identifiers and channel names; LLM-as-judge for presence of mobilization specifics

Premature Escalation Detection

Output includes explicit check against premature escalation patterns: transient spike recovery, known false-positive alert correlation, or existing mitigation in progress

Escalation triggered on single data point, no mention of recovery trajectory, or ignoring active incident commander override

Adversarial test cases with transient spikes and known false positives; expect escalation refusal or explicit caveat disclosure

Customer Impact Quantification

Output specifies affected customer count, segment (enterprise/SMB), geographic scope, and revenue or contractual exposure in concrete terms

Qualitative-only impact ('significant customer pain'), missing customer count, or no revenue/contractual exposure estimate

Numeric extraction from output; validate customer count > 0 and presence of segment or exposure field

Approval Chain Completeness

Output identifies required approvers by role, specifies quorum or sequential approval rules, and includes escalation path if approvers unavailable

Single approver assumption for high-severity changes, missing backup approver chain, or no timeout/auto-escalation rule

Schema check for approver array length >= 2 for Sev0/Sev1; validate backup approver field populated

Evidence Grounding and Source Traceability

Each impact claim links to a specific monitoring source, alert ID, or observability dashboard with timestamp

Unattributed claims, 'system shows' without source reference, or stale data without freshness timestamp

Citation extraction and link validation; check that each claim has at least one source reference with timestamp

ADAPTATION OPTIONS

Adapt This Prompt

How to adapt

Use the base prompt with lighter validation. Start with a simple structured output request and iterate on the schema as you observe model behavior. Focus on getting the severity change reasoning right before adding strict field enforcement.

Watch for

  • Missing schema checks leading to inconsistent JSON keys
  • Overly broad instructions that allow the model to skip impact quantification
  • The model accepting weak evidence for escalation without pushback
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.