docs(signoz): record verified gRPC runtime closure

This commit is contained in:
ogt
2026-07-15 02:02:46 +08:00
parent 7d48f28d05
commit 240e0c1f91
5 changed files with 138 additions and 10 deletions

View File

@@ -20,8 +20,7 @@ SCHEMA = "awoooi_signoz_canonical_route_preflight_v1"
EXPECTED_BLOCKERS = [
"organization_not_initialized",
"direct_ingress_policy_not_closed",
"traces_not_fresh",
"bridge_not_supervised",
"http_bridge_not_supervised",
"filelog_normalization_degraded",
"wave_b_not_authorized",
]

View File

@@ -22,6 +22,7 @@ FILELOG_CANARY = ROOT / "ops/signoz/filelog-normalization-canary.yaml"
GRPC_BRIDGE = ROOT / "scripts/reboot-recovery/signoz-188-otlp-grpc-bridge.sh"
GRPC_UNIT = ROOT / "ops/systemd/user/awoooi-signoz-otlp-grpc-bridge.service"
GRPC_VERIFIER = ROOT / "scripts/reboot-recovery/verify-signoz-otel-grpc-runtime.sh"
GRPC_RUNTIME_RECEIPT = ROOT / "ops/signoz/p0-obs-002-grpc-runtime-receipt.yaml"
def test_wave_a_contract_keeps_active_route_and_all_producers_on_incumbent() -> None:
@@ -242,14 +243,28 @@ def test_grpc_runtime_verifier_uses_real_service_aggregates_and_ten_minute_gate(
contract = yaml.safe_load(CONTRACT.read_text(encoding="utf-8"))
grpc = contract["runtime_observations"]["application_otlp_grpc"]
assert grpc["root_cause"] == "missing_incumbent_grpc_bridge"
assert grpc["runtime_status"] == "restored_verified"
assert grpc["confidence"] == 0.99
assert grpc["recent_awoooi_api_trace_count"] == 0
assert grpc["recent_awoooi_api_trace_count"] == 1098
assert grpc["recent_awoooi_api_metric_sample_count"] == 60180
assert grpc["http_only_verifier_blind_spot"] is True
assert grpc["source_fix"]["check_terminal"] == "pass"
assert (
grpc["source_fix"]["runtime_apply_status"]
== "check_pass_pending_stable_cd_window"
== "applied_post_verifier_pass"
)
assert grpc["source_fix"]["runtime_verifier_terminal"] == "pass"
receipt = yaml.safe_load(GRPC_RUNTIME_RECEIPT.read_text(encoding="utf-8"))
assert receipt["run_id"] == grpc["source_fix"]["runtime_run_id"]
assert receipt["post_verifier"]["window_seconds"] == 600
assert receipt["post_verifier"]["exporter_trace_errors"] == 0
assert receipt["post_verifier"]["exporter_metric_errors"] == 0
assert receipt["post_verifier"]["awoooi_api_trace_count"] == 1098
assert receipt["post_verifier"]["awoooi_api_metric_sample_count"] == 60180
assert receipt["post_verifier"]["rollback"] == "not_required"
assert receipt["completion"]["grpc_runtime_asset"] == "closed"
assert receipt["completion"]["program"] == "partial_degraded"
def test_managed_promotion_and_bridge_retirement_fail_closed_without_receipts() -> None: