Skip to content

Incident response runbook#93

Merged
elizabetheonoja-art merged 2 commits into
Utility-Protocol:mainfrom
gloskull:Incident-Response-Runbook
Jul 18, 2026
Merged

Incident response runbook#93
elizabetheonoja-art merged 2 commits into
Utility-Protocol:mainfrom
gloskull:Incident-Response-Runbook

Conversation

@gloskull

Copy link
Copy Markdown
Contributor

Motivation
Provide an automated incident-response layer that evaluates service and contract health snapshots locally and escalates actionable incidents to PagerDuty using the Events API v2.
Keep the critical-path evaluator synchronous and local to preserve the P99 sub-100ms evaluation target while allowing PagerDuty network I/O after rule matches.
Description
Add meter-simulator/src/incident-runbook.js implementing PagerDutyClient and IncidentRunbookAutomation with deterministic evaluate() rules and deduplication suppression via shouldSuppress().
Add Jest tests in meter-simulator/tests/incident-runbook.test.js that cover rule detection, suppression behavior, and Events API payload formation.
Add documentation docs/INCIDENT_RUNBOOK_AUTOMATION.md describing architecture, built-in rules, PagerDuty configuration, deployment guidance, and security notes.
Add an incident-runbook npm script to meter-simulator/package.json and update .gitignore to ignore node_modules/ to reduce noise from JS deps.
Testing
Ran npm test -- --runInBand incident-runbook.test.js, and all tests passed (3 passed).
Ran npm run lint -- --quiet, which reported a missing ESLint configuration for the meter-simulator package (linting blocked by configuration absence).
Closes #87

@elizabetheonoja-art
elizabetheonoja-art merged commit 4fe2472 into Utility-Protocol:main Jul 18, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Incident Response Runbook Automation with PagerDuty Integration

2 participants