{ "schema_version": 1, "channel": "homelab-runtime", "command_id": "SUPPORT-261006-SNIKKET-WG-ENDPOINT-RCA-99730R1", "status": "OK", "rc": 0, "host": "pve01", "mode": "read-only", "component": "snikket-wg-endpoint-rca", "started_at_utc": "2026-10-06T16:46:22Z", "finished_at_utc": "2026-10-06T16:46:33Z", "reference_register_checked": true, "reference_sha256": "5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66", "error_register_checked": true, "error_register_sha256": "3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0", "command_sha256": "ce49bf8d67e601a54dd265cf5dbd1572a18d843ba02629fe7d6845152ccb8184", "duplicate_failed_command_blocked": false, "block_reason": null, "execution_started": true, "change_declared": false, "result_contract_valid": true, "result_contract_status": null, "result_contract_error": null, "command_rc": 0, "changes_made": false, "rollback_started": false, "rollback_restored": null, "mutation_outcome": "NO_MUTATION", "sanitized": true, "secrets_included": false, "private_addresses_included": false, "raw_evidence_retained_locally": true, "raw_evidence_sha256": "f1d2b6461be37250b3b98fd1919e2370773532eaa003e01563910d3e88d2a60a", "sanitized_output_sha256": "f1d2b6461be37250b3b98fd1919e2370773532eaa003e01563910d3e88d2a60a", "output_truncated_in_json": false, "full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt", "output": "SNIKKET_WG_ENDPOINT_RCA=V1\nMODE=read-only\nNO_CONFIG_MUTATION=true\nVM130_QGA_TRANSPORT_RC=0\nQGA_EXIT=0\nHOST=edge-vm\nCFG_PRESENT=true\nCFG_MODE=600\nCFG_MTIME=1786953770\nUNIT_ACTIVE=active\nUNIT_ENABLED=enabled\nIFACE_PRESENT=true\nPEER_COUNT=1\nLISTEN_PORT_PRESENT=true\nFWMARK_PRESENT=false\nREC|ENDPOINT|HOST_SHA=6d6149f42864ce03daf2|TYPE=PUBLIC_IP|PORT=51820\nREC|CFG_FIELD|KEY=Address|COUNT=1\nREC|CFG_FIELD|KEY=PrivateKey|VALUE=REDACTED\nREC|CFG_HOOK|KEY=PostUp|VALUE=ip route replace IP_REDACTED via IP_REDACTED dev eth0 src IP_REDACTED\nREC|CFG_HOOK|KEY=PostDown|VALUE=ip route del IP_REDACTED via IP_REDACTED dev eth0 2>/dev/null || true\nREC|CFG_FIELD|KEY=Table|VALUE=off\nREC|CFG_HOOK|KEY=PostUp|VALUE=ip route replace table 17777 default dev wg-edge01\nREC|CFG_HOOK|KEY=PostDown|VALUE=ip route del table 17777 default dev wg-edge01 2>/dev/null || true\nREC|CFG_HOOK|KEY=PostUp|VALUE=ip rule add priority 101 from IP_REDACTED lookup 17777\nREC|CFG_HOOK|KEY=PostDown|VALUE=ip rule del priority 101 from IP_REDACTED lookup 17777 2>/dev/null || true\nREC|CFG_HOOK|KEY=PostUp|VALUE=nft -f /etc/wireguard/snikket-edge-ingress.nft\nREC|CFG_HOOK|KEY=PostDown|VALUE=nft delete table ip snikket_edge_prod 2>/dev/null || true\nREC|CFG_ALLOWED|COUNT=1|DEFAULT4=true|DEFAULT6=false\nREC|CFG_ENDPOINT|HOST_SHA=6d6149f42864ce03daf2|TYPE=PUBLIC_IP|PORT=51820\nREC|CFG_FIELD|KEY=PersistentKeepalive|VALUE=25\nHANDSHAKE_NONZERO_COUNT=0\nNEWEST_HANDSHAKE_AGE=-1\nRX_BYTES=0\nTX_BYTES=21460\nENDPOINT_HOST_SHA=6d6149f42864ce03daf22828cf236bf64d5d9a004040746ddbb051d71c9fcbc5\nENDPOINT_PORT=51820\nENDPOINT_DNS_V4_COUNT=1\nENDPOINT_DNS_V6_COUNT=1\nENDPOINT_ROUTE_MAIN_DEV=\nWG_CONFIG_COUNT=3\nREC|WG_CONFIG|NAME_SHA=cc0e438ccfd8fd0f42de|ACTIVE=inactive|IFACE=false\nREC|WG_CONFIG|NAME_SHA=42e16f90a5ad5e5a55c0|ACTIVE=active|IFACE=true\nREC|WG_HEALTH|NAME_SHA=42e16f90a5ad5e5a55c0|HS_AGE=-1|RX=0|TX=21460\nREC|WG_CONFIG|NAME_SHA=3d123def9832d8981356|ACTIVE=active|IFACE=true\nREC|WG_HEALTH|NAME_SHA=3d123def9832d8981356|HS_AGE=16|RX=116592|TX=31600\nWG_FORCED_PING_RC=1\nENDPOINT_UDP_PACKET_COUNT=1\nENDPOINT_UDP_OUT_COUNT=1\nENDPOINT_UDP_IN_COUNT=0\nREC|WG_ENDPOINT_CAPTURE|19:46:28.502707 eth0 Out IP IP_REDACTED.45314 > IP_REDACTED.51820: UDP, length 148\nFAILED_UNIT_COUNT=0\nCLUSTER_QUORATE=true\nDECISION=PASS_SNIKKET_WG_ENDPOINT_RCA\nNEXT_GATE=SNIKKET_WG_ENDPOINT_TARGETED_REPAIR\nTASK_RESULT=SNIKKET_WG_ENDPOINT_RCA\nCHANGES_MADE=false\nROLLBACK_STARTED=false\nROLLBACK_RESTORED=null\nMUTATION_OUTCOME=NO_CONFIG_MUTATION\nHOMELAB_RESULT_CONTRACT={\"version\":1,\"command_id\":\"SUPPORT-261006-SNIKKET-WG-ENDPOINT-RCA-99730R1\",\"status\":\"OK\",\"changes_made\":false,\"rollback_started\":false,\"rollback_restored\":null}\n" }