Operational problem
Replication, backup completion, and GitOps availability each cover only part of recovery. A stateful workload can still fail to return if storage, identity, DNS, bootstrap, or the backup target depends on the failed cluster.
Open engineering project · Assessed 13 July 2026
A Go validator that asks whether backup artifacts form a viable recovery path for an application, rather than merely proving that a backup job ran.
Replication, backup completion, and GitOps availability each cover only part of recovery. A stateful workload can still fail to return if storage, identity, DNS, bootstrap, or the backup target depends on the failed cluster.
The validator correlates applications with PVCs/PVs, Longhorn, Velero, backup-target locality, Flux ownership, declared external dependencies, and recovery policy. A shared model classifies protection, simulates failure scenarios, detects bootstrap cycles, estimates bounded RPO/RTO ranges, and proposes an order for restoring dependencies instead of treating every backup artifact as equivalent.
Reviewers can distinguish in-cluster copies, off-cluster backups, archive inspection, and an exercised application restore. Missing dependencies and circular bootstrap paths become explicit planning work instead of being hidden behind a successful backup status.
The validator separates availability from recoverability, traces dependencies across failure domains, preserves uncertainty in RPO/RTO ranges, and makes the level of restore proof explicit.
Typed and dynamic discovery builds application and recovery-dependency models. Protection checks, RPO/RTO ranges, scenario simulation, cycle detection, and ordered plans share that model so findings point back to dependencies.
Generic recovery dependencies and analyzer risk patterns; not a statement of current defects.
Read the diagram notesThe validator correlates applications with PVCs/PVs, Longhorn, Velero, backup-target locality, Flux ownership, declared external dependencies, and recovery policy. A shared model classifies protection, simulates failure scenarios, detects bootstrap cycles, estimates bounded RPO/RTO ranges, and proposes an order for restoring dependencies instead of treating every backup artifact as equivalent.
Replication, snapshot presence, backup, archive inspection, and an exercised application recovery are different states. A tiered model prevents a local copy from being described as disaster recovery. It requires more metadata and operator input than a boolean, but exposes exactly which step is missing.
The assessment client can use restricted read access and still build a dependency-aware plan. Resource application and data restoration remain operator-approved runbook actions with different permissions and rollback needs. The tradeoff is that the tool can assess readiness but cannot certify a completed recovery.
Data size, dependency depth, operator steps, and missing drill measurements widen the estimate. A range communicates uncertainty better than an unsupported precise target. Until a timed drill exists, the result guides planning and comparison rather than promising a service-level objective.
GitOps, identity, DNS, storage, or backup access can depend on the cluster they are expected to rebuild. The graph surfaces those bootstrap cycles and proposes ordering around them. Some external relationships still need manual input because Kubernetes cannot observe their control planes.
The assessment client uses read access and produces a plan; resource application and data restoration remain operator-approved procedures with different credentials and rollback requirements.
Protection is evaluated against node, storage, namespace, control-plane, backup-target, and full-cluster loss so an in-cluster copy is not mislabeled as off-cluster recovery.
Replication, snapshot, backup, archive inspection, and application recovery are distinct states. RPO and RTO remain ranges until timed drills provide stronger measurements.
Application: namespace-3af2e4/application-cdfa20
Data: 1 PVC · replicated: true · snapshot: true
Off-cluster backup: false · restore tested: false
Protection: BACKED_UP_IN_CLUSTER
Estimated RTO: 55m–3h20mChecks shown here are project-specific; no portfolio-wide claim is applied automatically.
Links are limited to public-safe source material and sanitized evidence. Credentials, state, plans, identifiers, private topology, and backup contents are intentionally excluded.
Protection tiers, bootstrap dependencies, and recovery ordering.
Evidence levels from artifact presence through restore testing.
Operator-owned checks that remain outside assessment.
Ingest signed restore-drill results so successful exercises can advance an application from backed up to restore-tested automatically.