docs(recovery): record reboot breach and late recovery

This commit is contained in:
ogt
2026-07-11 17:56:22 +08:00
parent 198bf24ff4
commit 69efe9aab3
5 changed files with 306 additions and 38 deletions

View File

@@ -0,0 +1,36 @@
import json
from pathlib import Path
ROOT = Path(__file__).resolve().parents[3]
RECEIPT = ROOT / "docs" / "operations" / "agent99-full-host-reboot-drill-20260711.snapshot.json"
def test_real_drill_receipt_preserves_breach_and_late_recovery_truth() -> None:
payload = json.loads(RECEIPT.read_text(encoding="utf-8"))
assert payload["status"] == "slo_breached_recovered_late"
assert payload["observer_evidence"]["continued_recovery_transitions"] == 0
assert payload["observer_evidence"]["continued_host_down_samples_authoritative"] is False
assert payload["latest_readback"]["host_99"] == "up"
assert payload["latest_readback"]["all_public_routes"].startswith("23/23")
assert payload["recovery_evidence"]["windows99_vmware_running_guests"] == "5/5"
public_results = payload["recovery_evidence"]["public_surface_results"]
assert len(public_results) == 23
assert all(200 <= row["http_status"] < 400 for row in public_results)
assert payload["recovery_evidence"]["agent99_reboot_slo_claimed"] is False
assert "deploy_external_l0_supervisor_outside_the_local_failure_domain" in payload["required_closure"]
assert "provision_verified_out_of_band_power_for_host99" in payload["required_closure"]
assert "all_services_recovered_within_ten_minutes_for_this_drill" in payload["claims_forbidden"]
assert payload["observer_evidence"]["secret_value_read"] is False
def test_real_drill_receipt_records_the_repaired_agent99_and_vmware_contracts() -> None:
payload = json.loads(RECEIPT.read_text(encoding="utf-8"))
assert payload["source_runtime"]["runtime_mismatch_count"] == 0
assert payload["source_runtime"]["startup_recovery_execution_limit"] == "PT20M"
assert payload["recovery_evidence"]["agent99_coordinator_verified"] is True
assert payload["root_cause_classification"]["host120_121_secondary_reboots"].startswith(
"VMware VIX SoftReboot"
)