Distinguish verified recovery rejections
This commit is contained in:
@@ -139,7 +139,7 @@ manifest = ModuleManifest(
|
|||||||
id="ops.runtime-coordination-and-recovery",
|
id="ops.runtime-coordination-and-recovery",
|
||||||
title="Drain runtime nodes and inspect recovery evidence",
|
title="Drain runtime nodes and inspect recovery evidence",
|
||||||
summary="Ops projects shared runtime heartbeats, replica gaps, drain controls, and recovery states that require operator attention.",
|
summary="Ops projects shared runtime heartbeats, replica gaps, drain controls, and recovery states that require operator attention.",
|
||||||
body="Use the runtime table to identify stale or composition-skewed API and worker replicas. Drain before replacement so API readiness closes and workers stop taking new queue work; cancellation is available while the node is still draining. The recovery table reports durable Core recovery operations. Backup status separately projects only the sanitized deployment verification receipt: a verified status identifies a coordinated recovery point and isolated restore drill, while absent, expired, or invalid evidence blocks a release-changing migration.",
|
body="Use the runtime table to identify stale or composition-skewed API and worker replicas. Drain before replacement so API readiness closes and workers stop taking new queue work; cancellation is available while the node is still draining. The recovery table reports durable Core recovery operations. A rejected operation is a verified provider rejection and needs no recovery; outcome-unknown and recovery-required operations still require reconciliation. Backup status separately projects only the sanitized deployment verification receipt: a verified status identifies a coordinated recovery point and isolated restore drill, while absent, expired, or invalid evidence blocks a release-changing migration.",
|
||||||
documentation_types=("admin", "user"),
|
documentation_types=("admin", "user"),
|
||||||
audience=("operator", "system_admin"),
|
audience=("operator", "system_admin"),
|
||||||
conditions=(
|
conditions=(
|
||||||
|
|||||||
@@ -476,6 +476,7 @@ function stateTone(state: string): string {
|
|||||||
|
|
||||||
function recoveryTone(state: string): string {
|
function recoveryTone(state: string): string {
|
||||||
if (["succeeded", "recovered"].includes(state)) return "success";
|
if (["succeeded", "recovered"].includes(state)) return "success";
|
||||||
|
if (state === "rejected") return "warning";
|
||||||
if (["failed", "recovery_required"].includes(state)) return "error";
|
if (["failed", "recovery_required"].includes(state)) return "error";
|
||||||
if (["running", "recovering", "prepared"].includes(state)) return "warning";
|
if (["running", "recovering", "prepared"].includes(state)) return "warning";
|
||||||
return "inactive";
|
return "inactive";
|
||||||
|
|||||||
Reference in New Issue
Block a user