{
  "schema_version": 1,
  "channel": "homelab-runtime",
  "command_id": "GRAM1-SITE-CHARTS-V39-SEPARATE-PIPELINES-20260801T125100Z",
  "status": "OK",
  "rc": 0,
  "host": "pve01",
  "mode": "change",
  "component": "gram1-charts-v39-isolate",
  "started_at_utc": "2026-08-01T13:03:04Z",
  "finished_at_utc": "2026-08-01T13:03:14Z",
  "reference_register_checked": true,
  "reference_sha256": "5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e",
  "error_register_checked": true,
  "error_register_sha256": "24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83",
  "command_sha256": "4f55a1050c754cf7fe1061aa15bc026e90841e5fb92e9059422766b1ee9a3022",
  "duplicate_failed_command_blocked": false,
  "block_reason": null,
  "execution_started": true,
  "change_declared": true,
  "result_contract_valid": true,
  "result_contract_status": "OK",
  "result_contract_error": null,
  "command_rc": 0,
  "changes_made": true,
  "rollback_started": false,
  "rollback_restored": null,
  "mutation_outcome": "MUTATED",
  "sanitized": true,
  "secrets_included": false,
  "private_addresses_included": false,
  "raw_evidence_retained_locally": true,
  "raw_evidence_sha256": "f11c272aefef172d26485070fdc4f24a2f6e51a2610df5d8547083820cbc9067",
  "sanitized_output_sha256": "c7fd85598e290aa09a0d6b6553d8fde0df9a34ff9088875d117e81ffa68f572a",
  "output_truncated_in_json": false,
  "full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt",
  "output": "HOMELAB_RESULT_CONTRACT={\"changes_made\":true,\"command_id\":\"GRAM1-SITE-CHARTS-V39-SEPARATE-PIPELINES-20260801T125100Z\",\"mutation_outcome\":\"MUTATED\",\"rollback_restored\":null,\"rollback_started\":false,\"status\":\"OK\",\"version\":1}\n{\"changes_made\":true,\"command_id\":\"GRAM1-SITE-CHARTS-V39-SEPARATE-PIPELINES-20260801T125100Z\",\"control_plane_error\":null,\"gitea_changed\":false,\"mutation_outcome\":\"MUTATED\",\"pinned_host_key_aliases\":[\"[PRIVATE_IP]\"],\"production_site_changed\":true,\"rc\":0,\"remote_result\":{\"backup_dir\":\"/var/lib/homelab-change-rollback/GRAM1-SITE-CHARTS-V39-SEPARATE-PIPELINES-20260801T125100Z\",\"baseline_capsule_sha256\":\"905d0b554ff025817a7480375ac6c8685396a99b456f01f54220ef4398af7139\",\"baseline_command_id\":\"GRAM1-SITE-CHARTS-V37-SCOPED-RUNTIME-VERIFY-20260801T122700Z\",\"changed_paths\":[\"templates/index.html\"],\"changes_made\":true,\"command_id\":\"GRAM1-SITE-CHARTS-V39-SEPARATE-PIPELINES-20260801T125100Z\",\"control_plane_error\":null,\"deployment\":{\"container_hashes\":[{\"path\":\"app.py\",\"service\":\"web\",\"sha256\":\"3b55b78c015173eea66b67afb8fb9371f0d7d2e38a7679d4c433749f4c07301d\"},{\"path\":\"templates/index.html\",\"service\":\"web\",\"sha256\":\"d60f575395d203b3d638c2416daa1f981a4a827b9d61caf2d1b90bf0e8063d65\"},{\"path\":\"worker.py\",\"service\":\"worker\",\"sha256\":\"4a7b16ece826fe2d938f392db6b0b5ca028dcb6ff02fdff4ab431f114edf0e5c\"}],\"running\":[\"web\",\"worker\"],\"runtime\":{\"local_headers\":{\"server\":\"uvicorn\"},\"local_root_sha256\":\"d60f575395d203b3d638c2416daa1f981a4a827b9d61caf2d1b90bf0e8063d65\",\"public\":{\"headers\":{},\"root_sha256\":\"d60f575395d203b3d638c2416daa1f981a4a827b9d61caf2d1b90bf0e8063d65\",\"status\":200},\"svg\":{\"AVAX\":{\"bytes\":12739,\"candles\":72,\"sha256\":\"2dd8850447185c0b4be5c146242e8195ae840af1666fe877a4c5b110f60a22c9\"},\"HBAR\":{\"bytes\":14697,\"candles\":84,\"sha256\":\"cb5c6cdf8268990e735cb91e3070ee34f282e9826bacacc9be1fe04268c62951\"},\"LINK\":{\"bytes\":16003,\"candles\":92,\"sha256\":\"cb40e40aac61db48c82361a18fe7e89e93c96624718d205c3575db9f4d22d38c\"},\"POL\":{\"bytes\":4949,\"candles\":24,\"sha256\":\"e54be1f05c3abb3c23bd4fdd79e3a1e16352eb78f32cbd580d5a3f4aefd8c07f\"}}}},\"diagnostic_capsule_sha256\":\"7e704e0217aabc9d825ee36d299b74f51d05f482ee543d706a024b53a3177147\",\"diagnostic_command_id\":\"GRAM1-SITE-CHARTS-V38R1-SUDO-PROBE-LINECOUNT-FIX-20260801T124200Z\",\"duration_seconds\":8.869,\"gitea_changed\":false,\"mutation_outcome\":\"MUTATED\",\"old_hashes\":{\"app.py\":\"3b55b78c015173eea66b67afb8fb9371f0d7d2e38a7679d4c433749f4c07301d\",\"templates/index.html\":\"541157608706ebb8d4a415a13ee1d1972947bc5b6cbe26c0eae36b6cabc9b7a5\",\"worker.py\":\"4a7b16ece826fe2d938f392db6b0b5ca028dcb6ff02fdff4ab431f114edf0e5c\"},\"production_site_changed\":true,\"rc\":0,\"rollback_restored\":null,\"rollback_started\":false,\"schema\":1,\"semantic_checks\":{\"details\":true,\"dom_ready\":true,\"hidden_legacy_status\":true,\"images\":true,\"legacy_sink\":true,\"new_script\":true,\"new_style\":true,\"old_marker_removed\":true,\"one_initial_open\":true,\"single_open_logic\":true,\"valid_html_boundary\":true,\"visible_heading\":true,\"visible_root\":true},\"status\":\"OK\",\"target_hashes\":{\"app.py\":\"3b55b78c015173eea66b67afb8fb9371f0d7d2e38a7679d4c433749f4c07301d\",\"templates/index.html\":\"d60f575395d203b3d638c2416daa1f981a4a827b9d61caf2d1b90bf0e8063d65\",\"worker.py\":\"4a7b16ece826fe2d938f392db6b0b5ca028dcb6ff02fdff4ab431f114edf0e5c\"}},\"rollback_restored\":null,\"rollback_started\":false,\"schema\":1,\"selected_method\":\"ALIAS_PINNED_AS_DEBIAN\",\"ssh_method_probes\":[{\"duration_seconds\":0.125,\"identity_count\":null,\"identity_sudo_read_ok\":true,\"name\":\"ALIAS_PINNED_AS_DEBIAN\",\"rc\":0,\"stderr\":\"\"},{\"duration_seconds\":0.125,\"identity_count\":2,\"identity_sudo_read_ok\":true,\"name\":\"DIRECT_PINNED_AS_DEBIAN_NO_PROXY\",\"rc\":0,\"stderr\":\"\"}],\"status\":\"OK\"}\n"
}
