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.
Prompt
Incident Severity Upgrade Approval Prompt

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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
codeYou 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.
Prompt Variables
Each placeholder must be populated with accurate, current incident data. Missing or stale data produces unreliable approval requests.
| Placeholder | Purpose | Example | Validation 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 |
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.
Expected Output Contract
The model must return a structured JSON object with these fields. Validate before surfacing to the incident commander.
| Field or Element | Type or Format | Required | Validation 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. |
Common Failure Modes
What breaks first when using an LLM to draft incident severity upgrades and how to guard against it in production.
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.
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.
Hallucinated SLA or Compliance Violations
What to watch: The model invents specific contractual penalties
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.
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
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.
Evaluation Rubric
Test your prompt implementation against these criteria before deploying to production incident workflows.
| Criterion | Pass Standard | Failure Signal | Test 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 |
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
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

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.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us