Skip to content
reaatech

@reaatech/agent-runbook-failure-modes

npm v0.1.0

Identifies potential failure points in a codebase by analyzing code patterns, categorizes them into 10 types (e.g., dependency, security, database) with severity scores, and generates actionable mitigation strategies including circuit breaker and retry configurations. Exports functions like `identifyFailureModes`, `generateMitigations`, and `getAllFailureModes`.

@reaatech/agent-runbook-failure-modes

npm version License: MIT CI

Failure mode analysis for the Agent Runbook Generator. Identifies potential failure points from code patterns, categorizes them by type and severity, and generates actionable mitigation strategies.

Installation

terminal
npm install @reaatech/agent-runbook-failure-modes
# or
pnpm add @reaatech/agent-runbook-failure-modes

Feature Overview

  • Failure identification — detects single points of failure, resource bottlenecks, and dependency risks
  • 10 failure categories — dependency, resource, application, network, security, infrastructure, database, cache, queue, external
  • Built-in failure catalog — pre-cataloged common failure modes with detection and mitigation strategies
  • Risk scoring — 0–10 score with contributing factors for prioritization
  • Mitigation generation — circuit breaker configs, retry policies, timeout settings, monitoring changes
  • Code-level suggestions — identifies specific files and patterns that need hardening

Quick Start

typescript
import { identifyFailureModes, generateMitigations, getAllFailureModes } from "@reaatech/agent-runbook-failure-modes";
 
const analysis = identifyFailureModes("/path/to/repo", analysisContext);
// { failureModes: [...], singlePointsOfFailure: [...], riskScore: 6.5 }
 
const plans = generateMitigations(analysis.failureModes, analysisContext);
// [{ failureMode: {...}, immediateActions: [...], codeChanges: [...] }]
 
const catalog = getAllFailureModes();

API Reference

Failure Identifier

FunctionSignature
identifyFailureModes(repoPath: string, context: AnalysisContext) => FailureAnalysis
getCommonFailureModes(serviceType: string) => FailureMode[]

Failure Catalog

FunctionSignature
getFailureModesByCategory(category: string) => FailureMode[]
getAllFailureModes() => FailureMode[]
findFailureMode(name: string) => FailureMode | undefined
getDetectionStrategies(failureMode: FailureMode) => string[]
getMitigationStrategies(failureMode: FailureMode) => string[]

Mitigation Generator

FunctionSignature
generateMitigations(failureModes: FailureMode[], context: AnalysisContext) => MitigationPlan[]
suggestCircuitBreakerConfig(serviceName: string) => { threshold: number; timeout: number; resetTimeout: number }
suggestRetryConfig(serviceName: string) => { maxRetries: number; baseDelay: number; maxDelay: number; factor: number }
suggestTimeoutConfig(serviceName: string) => { connect: number; request: number; idle: number }

License

MIT