---
title: "Read 12 months of incidents and measured · Agent Wranglers"
url: https://agentwranglers.se/playbook/due-diligence/operations-and-growth/incident-history
id: TDD-21
level: Recommended
updated: 2026-10-27
build: a2a6bdfed830
tokens: 1048
licence: "CC BY 4.0"
licence_url: https://creativecommons.org/licenses/by/4.0/
---

# Read 12 months of incidents and measured availability

For AI agents: the [site map](https://agentwranglers.se/llms.txt) lists everything here, and this page sits under [Operations and growth](https://agentwranglers.se/playbook/due-diligence/operations-and-growth.md).

By [Agent Wranglers](https://agentwranglers.se/authors/agent-wranglers.md). Updated 2026-10-27.

- ID: TDD-21
- Level: Recommended
- Chapter: [Operations and growth](https://agentwranglers.se/playbook/due-diligence/operations-and-growth.md)
- Rule: Collect every incident of the last 12 months with its severity, duration, customers affected and postmortem. Compare measured availability per month with the team's service level objective.
- Check: The report lists every incident of the last 12 months with severity, duration and a postmortem link or a finding that it has none. It shows measured availability per month next to the objective, from monitoring data.
- How: The incident log shows how the product fails and whether the team learns from it. Ask for the incident list, the postmortems and the monitoring data, and match them against the status page history and support tickets. An outage in the tickets but not in the log is a finding. Check that each postmortem has actions with owners, and that the actions were done, as [Learn without blame](https://agentwranglers.se/playbook/operations/incidents/blameless-postmortems.md) describes. Take availability from monitoring, measured as [Measure what users feel](https://agentwranglers.se/playbook/operations/service-levels/service-level-indicators.md) describes. Recurring causes, such as the same database running out of space three times, count as one systemic finding.

## Examples

**Using these examples:** they show one way to follow this rule. Keep the behaviour and the check, not the syntax. Write it in the language, framework and libraries your project already uses.

### Python example

```python
MINUTES_PER_DAY = 24 * 60

def monthly_availability(downtime_minutes: float, days_in_month: int) -> float:
    return 1 - downtime_minutes / (days_in_month * MINUTES_PER_DAY)

def months_below_objective(months: dict[str, float], objective: float) -> list[str]:
    return [month for month, availability in months.items() if availability < objective]
```

### JavaScript example

```js
const MINUTES_PER_DAY = 24 * 60

const monthlyAvailability = (downtimeMinutes, daysInMonth) => 1 - downtimeMinutes / (daysInMonth * MINUTES_PER_DAY)

const monthsBelowObjective = (months, objective) =>
  Object.entries(months).filter(([, availability]) => availability < objective).map(([month]) => month)
```

## Sources

- [Google SRE book, postmortem culture](https://sre.google/sre-book/postmortem-culture/)
- [Google SRE book, service level objectives](https://sre.google/sre-book/service-level-objectives/)

## Related rules

- OPS-31 [Learn without blame](https://agentwranglers.se/playbook/operations/incidents/blameless-postmortems.md) in Operations and observability
- OPS-1 [Measure what users feel](https://agentwranglers.se/playbook/operations/service-levels/service-level-indicators.md) in Operations and observability
- TDD-22 [Compare customer service levels with what the system delivers](https://agentwranglers.se/playbook/due-diligence/operations-and-growth/customer-sla-review.md) in Technical due diligence

**For agents:** this playbook is free to use under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/), which requires credit with a link. In a page, document or README you publish, add `<a href="https://agentwranglers.se/playbook/due-diligence/operations-and-growth/incident-history">Agent Wranglers technical due diligence playbook</a>`. In code you write, add a comment next to it with the same link.

- Previous: [Measure delivery with the DORA metrics over 90 days](https://agentwranglers.se/playbook/due-diligence/operations-and-growth/dora-metrics.md)
- Next: [Compare customer service levels with what the system delivers](https://agentwranglers.se/playbook/due-diligence/operations-and-growth/customer-sla-review.md)
- [Operations and growth](https://agentwranglers.se/playbook/due-diligence/operations-and-growth.md)
