Change Request
When to use
Use this before any production, infrastructure, or process change that could affect users, data, or dependent teams, and when a change advisory board or approver needs a structured record to review.
Not for: routine pre-approved standard changes with an existing runbook (just execute it), or incident firefighting (use an incident/runbook flow — a CR is written after, not during).
Method
- Describe the change. State what changes, why now, and the end state in one paragraph. Decision: classify as standard (pre-approved), normal (needs CAB), or emergency (expedited approval + retroactive record).
- Scope the blast radius. List affected systems, services, teams, and users, plus upstream and downstream dependencies.
- Analyze impact. Assess availability, performance, security, and cost effects. Rate risk (low/med/high) as likelihood x impact.
- Plan implementation. Write ordered steps with owners, the maintenance window, and required approvals.
- Define validation. Specify the exact checks (metrics, smoke tests, user paths) that confirm success after the change.
- Write the rollback. Give concrete reversal steps, the decision trigger to invoke them, the point of no return, and the max acceptable recovery time (RTO). Decision: if there is no rollback (irreversible migration), say so explicitly and add extra pre-checks and a paused go/no-go gate.
- Communicate. Note who is informed before, during, and after.
Example
Change: upgrade Postgres 14 -> 15 on the orders DB (normal). Blast radius: orders API, reporting jobs, 3 downstream services. Window: Sun 02:00-04:00. Validation: replica lag < 1s, orders smoke test green, error rate flat 30 min. **Rollback:** promote standby on old version; **trigger** = smoke fail or error rate >2x baseline; point of no return = new writes accepted post-cutover; RTO 15 min.
Pitfalls
- Under-scoping the blast radius. The dependency you forgot is the one that pages you. Trace both directions.
- Untested rollback. "Restore from backup" you have never rehearsed is a hope, not a plan.
- No point-of-no-return marked. Teams try to roll back after the migration is irreversible and make it worse.
- Vague validation. "Check it works" fails under pressure; list named, pass/fail checks.
Output format
Header: change ID | title | type | requested-by | date
Description: what + why now + end state
Impact: systems | dependencies | risk rating
Implementation: numbered steps | owners | window | approvals
Validation: named pass/fail checks
Rollback: steps | trigger | point of no return | RTO
Approvals: required sign-offs
Communication: before | during | after
1---2name: ops-change-request3description: Draft a change management request with blast-radius impact analysis, validation checks, and a triggered rollback plan.4---56# Change Request78## When to use9Use this before any production, infrastructure, or process change that could affect users, data, or dependent teams, and when a change advisory board or approver needs a structured record to review.1011**Not for:** routine pre-approved standard changes with an existing runbook (just execute it), or incident firefighting (use an incident/runbook flow — a CR is written after, not during).1213## Method141. **Describe the change.** State what changes, why now, and the end state in one paragraph. *Decision:* classify as standard (pre-approved), normal (needs CAB), or emergency (expedited approval + retroactive record).152. **Scope the blast radius.** List affected systems, services, teams, and users, plus upstream and downstream dependencies.163. **Analyze impact.** Assess availability, performance, security, and cost effects. Rate risk (low/med/high) as likelihood x impact.174. **Plan implementation.** Write ordered steps with owners, the maintenance window, and required approvals.185. **Define validation.** Specify the exact checks (metrics, smoke tests, user paths) that confirm success after the change.196. **Write the rollback.** Give concrete reversal steps, the decision trigger to invoke them, the point of no return, and the max acceptable recovery time (RTO). *Decision:* if there is no rollback (irreversible migration), say so explicitly and add extra pre-checks and a paused go/no-go gate.207. **Communicate.** Note who is informed before, during, and after.2122## Example23**Change:** upgrade Postgres 14 -> 15 on the orders DB (normal). **Blast radius:** orders API, reporting jobs, 3 downstream services. **Window:** Sun 02:00-04:00. **Validation:** replica lag < 1s, orders smoke test green, error rate flat 30 min. **Rollback:** promote standby on old version; **trigger** = smoke fail or error rate >2x baseline; **point of no return** = new writes accepted post-cutover; **RTO** 15 min.2425## Pitfalls26- **Under-scoping the blast radius.** The dependency you forgot is the one that pages you. Trace both directions.27- **Untested rollback.** "Restore from backup" you have never rehearsed is a hope, not a plan.28- **No point-of-no-return marked.** Teams try to roll back after the migration is irreversible and make it worse.29- **Vague validation.** "Check it works" fails under pressure; list named, pass/fail checks.3031## Output format32```33Header: change ID | title | type | requested-by | date34Description: what + why now + end state35Impact: systems | dependencies | risk rating36Implementation: numbered steps | owners | window | approvals37Validation: named pass/fail checks38Rollback: steps | trigger | point of no return | RTO39Approvals: required sign-offs40Communication: before | during | after41```