Skip to content
reaatechREAATECH

@reaatech/agent-runbook-failure-modes

npm v0.1.0

Analyzes local codebases to identify failure points and generates corresponding mitigation strategies like retry policies and circuit breaker configurations. It provides a set of utility functions to perform risk scoring, retrieve failure mode definitions, and suggest infrastructure hardening patterns.

@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