Create, update, and audit structured incident postmortems in a repository. Use when the user asks for an incident postmortem, outage review, retrospective, root-cause writeup, lessons learned document, or wants to establish or maintain a numbered docs/postmortems system with an index.
Create, update, and audit structured incident postmortems in a repository. Use when the user asks for an incident postmortem, outage review, retrospective, root-cause writeup, lessons learned document, or wants to establish or maintain a numbered docs/postmortems system with an index.
Incident Postmortems
Manage production or project incident postmortems as structured markdown documents. By default, postmortems live in docs/postmortems/, but follow the repository's existing incident documentation layout if one already exists.
Postmortems are reference documents for future incident response. They should explain what happened, how it was detected, how it was mitigated, what evidence supports the conclusions, and what durable follow-up work remains.
Directory Structure
Default layout:
docs/postmortems/
|-- INDEX.md # Index with TOC (read this first)
|-- PM-001-2026-07-03-nats-jetstream-stall.md # Individual postmortem
|-- PM-002-2026-08-14-api-rollout-regression.md
`-- ...
If no postmortem structure exists yet, prefer docs/postmortems/ unless the user asks for a different location.
File Naming
PM-{NNN}-{YYYY-MM-DD}-{kebab-case-slug}.md
NNN: zero-padded three-digit number, sequential.
YYYY-MM-DD: incident start date, not necessarily the writeup date.
Slug: short kebab-case incident summary.
Postmortem Template
# PM-{NNN}: {Incident Title}**Incident date:** {YYYY-MM-DD}
**Status:** Draft
**Severity:** {SEV-1|SEV-2|SEV-3|SEV-4|Unknown}
**Systems affected:** {systems, services, tenants, regions}
**Authors:** {names or teams}
**Last updated:** {YYYY-MM-DD}
## Summary
One short paragraph describing the customer/user impact, the cause at the level currently known, and the mitigation.
## Impact- Who or what was affected.
- Duration and scope.
- User-visible symptoms.
- Data loss or correctness impact, if any.
## Timeline
All times should include timezone or UTC.
| Time | Event |
|------|-------|
| {YYYY-MM-DD HH:MM TZ} | {event} |
## Detection
How the incident was noticed: alert, user report, logs, metrics, synthetic check, deployment signal, etc.
## Root Cause
What failed and why. Be specific about evidence and confidence. If root cause is not known, say so and list the leading hypotheses.
## Resolution
What restored service. Include operational commands/actions only at the level needed for future response; avoid secret values.
## What Went Well- Things that reduced impact or made diagnosis faster.
## What Went Poorly- Things that delayed detection, diagnosis, mitigation, or recovery.
## Follow-Up Actions
| Owner | Action | Priority | Status |
|-------|--------|----------|--------|
| {owner} | {action} | {P0|P1|P2|P3} | Open |
## References- Links to incidents, dashboards, PRs, ADRs, FDRs, logs, runbooks, or related postmortems.
Status values:
Draft: writeup is incomplete or waiting for evidence.
Reviewing: stakeholders are reviewing accuracy and actions.
Final: root cause, impact, and follow-ups are accepted.
Reopened: new evidence materially changed the incident analysis.