{
  "schema_version": 1,
  "channel": "homelab-runtime",
  "command_id": "AUTOMATIC-RESULT-SLOT-DIRECTORY-PLAN-20260728T211711Z",
  "status": "OK",
  "rc": 0,
  "host": "pve01",
  "mode": "verify",
  "component": "automatic-result-slot-directory-plan",
  "started_at_utc": "2026-07-29T06:45:22Z",
  "finished_at_utc": "2026-07-29T06:45:27Z",
  "reference_register_checked": true,
  "reference_sha256": "5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e",
  "error_register_checked": true,
  "error_register_sha256": "24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83",
  "command_sha256": "90d33f2478b7c0262f1d3ce1f50c6e26a62a2e63eca47629d353d17fa9e3073d",
  "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": "1da7cdcba898ce19e7b17e93797195437dddb17c1b47bac773b6a5a4667ab5e4",
  "sanitized_output_sha256": "1da7cdcba898ce19e7b17e93797195437dddb17c1b47bac773b6a5a4667ab5e4",
  "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\":false,\"command_id\":\"AUTOMATIC-RESULT-SLOT-DIRECTORY-PLAN-20260728T211711Z\",\"rollback_restored\":null,\"rollback_started\":false,\"status\":\"OK\",\"version\":1}\n{\"PLAN_SHA256\":\"5aec676224fbb49f3dd0aa022f8d80880ae7ef8985fa12d5610ac8193c12be74\",\"adapter_changed\":false,\"backup_changed\":false,\"candidate\":{\"capsule_sha256\":\"b3ea8b30a2fb2020fb89cfeabcdc6a07b9436d38265f60fd40c91395bcb18ea1\",\"command_id\":\"AUTOMATIC-RESULT-POINTER-REDIRECT-APPLY-FIX2-20260728T210654Z\",\"exact_http\":200,\"fresh_probe_confirmed\":true,\"full_output_present\":true,\"level1_links\":256,\"level2_links\":256,\"level3_links\":256,\"root_links\":256,\"runner_json_sha256\":\"b1c62f37ef7953c7e645a6244daec586c2a2b248d682b4ecd79234995b834691\",\"slot_http\":200},\"changes_made\":false,\"cluster_changed\":false,\"command_id\":\"AUTOMATIC-RESULT-SLOT-DIRECTORY-PLAN-20260728T211711Z\",\"current_lookup_sha256\":\"7b54030bf2c77dfe97e2751ed725c9a5ba4829e079d78a7ddd31afb04f879d2e\",\"current_unit_sha256\":\"4a2da42926ff1f8b9ce0d87ff037d2d02ecc9db0e896ef63150e96b6a2edd44a\",\"edge_changed\":false,\"gitea_changed\":false,\"minio_changed\":false,\"plan\":{\"acceptance_tests\":[\"root and every directory page expose exactly 256 relative links\",\"four capsule bytes address 2^32 independent slot URLs\",\"slot pages are no-store and contain one exact-result link\",\"two fresh slots for one latest result have same revision and different probes\",\"following the exact link returns full sanitized output\",\"newer terminal fixture is visible through an unused slot without restart\",\"corrupt newest fixture returns 409 rather than old content\",\"candidate passes against the real production state directory\"],\"apply_scope\":{\"forbidden\":[\"modify Adapter\",\"modify Portal\",\"modify edge Nginx\",\"modify Gitea\",\"modify MinIO\",\"modify backups\",\"create second runner\"],\"modify\":[\"/usr/local/sbin/homelab-result-lookup\"],\"restart_only\":[\"homelab-result-lookup.service\"],\"unit_change_expected\":false},\"bootstrap_url\":\"https://git.gram1.ru/.well-known/homelab-runtime/result/0000000000000000000000000000000000000000000000000000000000000000/slots/index.html\",\"current_lookup_sha256\":\"7b54030bf2c77dfe97e2751ed725c9a5ba4829e079d78a7ddd31afb04f879d2e\",\"current_unit_sha256\":\"4a2da42926ff1f8b9ce0d87ff037d2d02ecc9db0e896ef63150e96b6a2edd44a\",\"objective\":\"Bypass the assistant web cache for stable URLs by exposing a static four-level directory of 2^32 never-before-used result slots. A slot page is selected from the first four capsule bytes and contains a server-generated exact-result link.\",\"operation\":\"AUTOMATIC_RESULT_SLOT_DIRECTORY\",\"read_only_plan\":true,\"schema\":1,\"target_lookup_sha256\":\"ae1109cc637fd8fe28def5c9e2539879ebc353790689269104008bfeb8a82b0d\",\"workflow\":[\"Open the static slot index once in a chat.\",\"Derive four hexadecimal bytes from the expected capsule SHA256.\",\"Click four directory/slot links.\",\"Read the slot page identity.\",\"Click its server-generated exact-result link.\",\"Verify command_id, capsule SHA, runner revision and full output.\",\"On a collision or stale slot, use the next final-byte link.\"]},\"portal_changed\":false,\"private_addresses_included\":false,\"rollback_started\":false,\"sanitized\":true,\"schema\":1,\"secrets_included\":false,\"status\":\"PLAN_READY\",\"target_lookup_sha256\":\"ae1109cc637fd8fe28def5c9e2539879ebc353790689269104008bfeb8a82b0d\"}\n"
}
