Open source · Cloud & Platform

Failover Readiness Probe

Probe recovery dependencies and record whether failover paths are usable.

v0.1.0 · Node.js 22+ · MIT

Browse the public repository · View releases

Read-only evaluation of a local exported recovery-dependency graph. The name “probe” does not mean a live health check: this tool does not connect to infrastructure, switch traffic, restart services, or execute a failover. A complete export and an explicit as-of time are required; the exporter owns the accuracy of observations.

This walkthrough uses the tool's public README and checked-in example files. Run the command from a repository checkout with Node.js 22+; inspect the source before using it on your own files.

Run the checked-in example

node bin/failover-readiness-probe.mjs --root examples --input passing.json
node bin/failover-readiness-probe.mjs --root examples --input failing.json
npm run check

Read the result

--root confines reads by real path; --input is a relative path inside it. Optional --human writes one summary to stderr. Stdout is JSON report only. No output file is written. Configuration/option error: empty stdout, exit 2. Unreadable, malformed, non-UTF-8, incomplete or stale evidence: incomplete report, exit 2. Evaluated failed prerequisite: fail, exit 1. Every required prerequisite fresh and passing: pass, exit 0.

Where this check stops

1,048,576 UTF-8 bytes; 100 prerequisites; 20 recovery paths; 500 raw dependency references in total; JSON depth 4 from root depth 0; 5,000 ms measured by an injectable library clock. Exact N is accepted, N+1 incomplete. Strict UTF-8 decoding and duplicate-key rejection (including escaped keys) prevent ambiguous evidence. CLI read has a 5-second abort. No network, provider call, live probe, traffic switch, restart or auto-fix.

Before adapting the command to your own workflow, review the accepted inputs, exit codes and safety boundaries in the README.

Compiled with AI assistance from checked-in public documentation and example scripts. Run the example and review the repository's current documentation before relying on its result.