An offline, zero-dependency Go CLI to analyze microservice blast radius, SPOFs, and architectural drift directly from OpenTelemetry traces.
Unlike heavy APM platforms, Cascade is a lightweight, single-binary tool designed for offline architecture audit and SRE analysis. It ingests OTLP data, materializes a strict weighted dependency graph, and runs graph-theory algorithms to detect structural vulnerabilities.
- Zero Infrastructure: No databases, no collectors running in production. 100% offline analysis.
- Blast Radius Estimation (M4): Computes Tarjan's SCC (Strongly Connected Components) to identify upstream service impact if a specific dependency fails.
- SPOF Detection (M6): Evaluates Weakly Connected Components (WCC) to pinpoint single points of failure.
- Drift Analysis (M7): Compares two graph states (e.g., baseline vs. current) to detect architectural drift (added/removed/changed edges or latency anomalies).
- Multi-format Output: Renders operational insights into clean Text tables, stable JSON schemas, or interactive HTML network graphs.
go build ./cmd/cascade-
Generate an interactive HTML dependency graph:Bashcascade graph -i production_traces.json --out-format html -o graph.html
-
Analyze the Blast Radius of your services (Top 5 worst offenders):Bashcascade blast-radius -i production_traces.json --top 5
-
Detect architectural drift between two trace dumps:Bashcascade drift --input-baseline baseline.json -i current.json --out-format text
| Command | Description | Output Formats |
|---|---|---|
| graph | Builds the service runtime dependency graph | Text, JSON, HTML |
| blast-radius | Computes affected upstream services per failure | Text, JSON |
| spof | Identifies single points of failure (WCC split) | Text, JSON |
| drift | Compares topology and latency deltas between two inputs | Text, JSON |
-i, --input <file>: OTLP input file (defaults to stdin).
--format <json│protobuf>: Explicit format routing (required for stdin).
-o, --output <file>: Output destination (defaults to stdout).
--out-format <text│json│html>: Selects the renderer.
[x] M4: OTLP Parsing, Graph Construction, and Blast Radius (Tarjan SCC).
[ ] M6: SPOF Detection (CLI wired, engine WIP).
[ ] M7: Architecture Drift Analyzer (CLI wired, engine WIP).
Note: Live trace receivers, probabilistic temporal simulations, and historical persistence are explicitly out of scope for v1.