diff --git a/runtime/history/HOMELAB-CLUSTER-ADMIN-UPDATES-V16-REMOTE-EXACT-MAP-READ-ONLY-20260805T131500Z.json b/runtime/history/HOMELAB-CLUSTER-ADMIN-UPDATES-V16-REMOTE-EXACT-MAP-READ-ONLY-20260805T131500Z.json new file mode 100644 index 0000000..93b227d --- /dev/null +++ b/runtime/history/HOMELAB-CLUSTER-ADMIN-UPDATES-V16-REMOTE-EXACT-MAP-READ-ONLY-20260805T131500Z.json @@ -0,0 +1,38 @@ +{ + "schema_version": 1, + "channel": "homelab-runtime", + "command_id": "HOMELAB-CLUSTER-ADMIN-UPDATES-V16-REMOTE-EXACT-MAP-READ-ONLY-20260805T131500Z", + "status": "FAIL", + "rc": 1, + "host": "pve01", + "mode": "verify", + "component": "homelab-cluster-admin-update-visibility", + "started_at_utc": "2026-08-05T13:08:51Z", + "finished_at_utc": "2026-08-05T13:08:51Z", + "reference_register_checked": true, + "reference_sha256": "5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e", + "error_register_checked": true, + "error_register_sha256": "24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83", + "command_sha256": "35e3ddcf3593c25b9b25c31117a6cd07463d711b7040ca678f1f1bebb5a5d3b3", + "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": 1, + "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": "79d48e3d3c68f30fb0ca4b1e8c3404d969019875f952b54f25a1041861e90fe5", + "sanitized_output_sha256": "79d48e3d3c68f30fb0ca4b1e8c3404d969019875f952b54f25a1041861e90fe5", + "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\":\"HOMELAB-CLUSTER-ADMIN-UPDATES-V16-REMOTE-EXACT-MAP-READ-ONLY-20260805T131500Z\",\"command_rc\":1,\"control_plane_error\":null,\"mutation_outcome\":\"NO_MUTATION\",\"rc\":1,\"rollback_restored\":false,\"rollback_started\":false,\"status\":\"FAIL\",\"version\":1}\n{\"changes_made\":false,\"command_id\":\"HOMELAB-CLUSTER-ADMIN-UPDATES-V16-REMOTE-EXACT-MAP-READ-ONLY-20260805T131500Z\",\"error\":\"V15 report bytes mismatch expected=85056 actual=85006\",\"error_type\":\"RuntimeError\",\"mutation_outcome\":\"NO_MUTATION\",\"read_only\":true,\"rollback_restored\":false,\"rollback_started\":false,\"schema\":16,\"status\":\"FAIL\"}\n" +} diff --git a/runtime/history/HOMELAB-CLUSTER-ADMIN-UPDATES-V16-REMOTE-EXACT-MAP-READ-ONLY-20260805T131500Z.txt b/runtime/history/HOMELAB-CLUSTER-ADMIN-UPDATES-V16-REMOTE-EXACT-MAP-READ-ONLY-20260805T131500Z.txt new file mode 100644 index 0000000..0a6d51a --- /dev/null +++ b/runtime/history/HOMELAB-CLUSTER-ADMIN-UPDATES-V16-REMOTE-EXACT-MAP-READ-ONLY-20260805T131500Z.txt @@ -0,0 +1,34 @@ +CHAT_OUTPUT_BEGIN +COMMAND_ID=HOMELAB-CLUSTER-ADMIN-UPDATES-V16-REMOTE-EXACT-MAP-READ-ONLY-20260805T131500Z +STATUS=FAIL +RC=1 +HOST=pve01 +MODE=verify +COMPONENT=homelab-cluster-admin-update-visibility +REFERENCE_REGISTER_CHECK=OK +REFERENCE_SHA256=5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e +ERROR_REGISTER_CHECK=OK +ERROR_REGISTER_SHA256=24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83 +COMMAND_SHA256=35e3ddcf3593c25b9b25c31117a6cd07463d711b7040ca678f1f1bebb5a5d3b3 +DUPLICATE_FAILED_COMMAND_BLOCKED=false +EXECUTION_STARTED=true +CHANGE_DECLARED=false +RESULT_CONTRACT_VALID=true +RESULT_CONTRACT_STATUS=NOT_APPLICABLE +RESULT_CONTRACT_ERROR=NONE +COMMAND_RC=1 +CHANGES_MADE=false +ROLLBACK_STARTED=false +ROLLBACK_RESTORED=null +MUTATION_OUTCOME=NO_MUTATION +SANITIZED=yes +SECRETS_INCLUDED=no +PRIVATE_ADDRESSES_INCLUDED=no +RAW_EVIDENCE_SHA256=79d48e3d3c68f30fb0ca4b1e8c3404d969019875f952b54f25a1041861e90fe5 +SANITIZED_OUTPUT_SHA256=79d48e3d3c68f30fb0ca4b1e8c3404d969019875f952b54f25a1041861e90fe5 +OUTPUT_BEGIN +HOMELAB_RESULT_CONTRACT={"changes_made":false,"command_id":"HOMELAB-CLUSTER-ADMIN-UPDATES-V16-REMOTE-EXACT-MAP-READ-ONLY-20260805T131500Z","command_rc":1,"control_plane_error":null,"mutation_outcome":"NO_MUTATION","rc":1,"rollback_restored":false,"rollback_started":false,"status":"FAIL","version":1} +{"changes_made":false,"command_id":"HOMELAB-CLUSTER-ADMIN-UPDATES-V16-REMOTE-EXACT-MAP-READ-ONLY-20260805T131500Z","error":"V15 report bytes mismatch expected=85056 actual=85006","error_type":"RuntimeError","mutation_outcome":"NO_MUTATION","read_only":true,"rollback_restored":false,"rollback_started":false,"schema":16,"status":"FAIL"} + +OUTPUT_END +CHAT_OUTPUT_END diff --git a/runtime/latest.json b/runtime/latest.json index e399a6c..93b227d 100644 --- a/runtime/latest.json +++ b/runtime/latest.json @@ -1,19 +1,19 @@ { "schema_version": 1, "channel": "homelab-runtime", - "command_id": "HOMELAB-CLUSTER-KB-V1-EXACT-OUTPUT-PROJECTION-READ-ONLY-20260805T130500Z", - "status": "OK", - "rc": 0, + "command_id": "HOMELAB-CLUSTER-ADMIN-UPDATES-V16-REMOTE-EXACT-MAP-READ-ONLY-20260805T131500Z", + "status": "FAIL", + "rc": 1, "host": "pve01", "mode": "verify", - "component": "cluster-knowledge-base-error-system", - "started_at_utc": "2026-08-05T13:08:01Z", - "finished_at_utc": "2026-08-05T13:08:01Z", + "component": "homelab-cluster-admin-update-visibility", + "started_at_utc": "2026-08-05T13:08:51Z", + "finished_at_utc": "2026-08-05T13:08:51Z", "reference_register_checked": true, "reference_sha256": "5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e", "error_register_checked": true, "error_register_sha256": "24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83", - "command_sha256": "8d626b3d942e0c8ad8135e1fbf4148a82c5df736a52cc969eb0f6ae022f1ee59", + "command_sha256": "35e3ddcf3593c25b9b25c31117a6cd07463d711b7040ca678f1f1bebb5a5d3b3", "duplicate_failed_command_blocked": false, "block_reason": null, "execution_started": true, @@ -21,7 +21,7 @@ "result_contract_valid": true, "result_contract_status": null, "result_contract_error": null, - "command_rc": 0, + "command_rc": 1, "changes_made": false, "rollback_started": false, "rollback_restored": null, @@ -30,9 +30,9 @@ "secrets_included": false, "private_addresses_included": false, "raw_evidence_retained_locally": true, - "raw_evidence_sha256": "2a7ec04b2e7036e6cc5751216e516b7d78ef56dc135326379580ef58dbc66a29", - "sanitized_output_sha256": "2a7ec04b2e7036e6cc5751216e516b7d78ef56dc135326379580ef58dbc66a29", + "raw_evidence_sha256": "79d48e3d3c68f30fb0ca4b1e8c3404d969019875f952b54f25a1041861e90fe5", + "sanitized_output_sha256": "79d48e3d3c68f30fb0ca4b1e8c3404d969019875f952b54f25a1041861e90fe5", "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\":\"HOMELAB-CLUSTER-KB-V1-EXACT-OUTPUT-PROJECTION-READ-ONLY-20260805T130500Z\",\"command_rc\":0,\"mutation_outcome\":\"NO_MUTATION\",\"output_truncated_in_json\":false,\"rc\":0,\"rollback_restored\":null,\"rollback_started\":false,\"status\":\"OK\",\"version\":1}\n{\"bounded_adapter_scan\":null,\"changes_made\":false,\"command_id\":\"HOMELAB-CLUSTER-KB-V1-EXACT-OUTPUT-PROJECTION-READ-ONLY-20260805T130500Z\",\"command_rc\":0,\"evidence_bundle\":{\"bundle_bytes_ok\":true,\"bundle_sha256_ok\":true,\"exists\":true,\"member_count\":6,\"output_member_matches\":0,\"path_is_exact_from_previous_result\":true,\"runner_json_member_matches\":1,\"runner_text_member_matches\":1,\"unsafe_member_rejected\":false},\"files_written\":false,\"mutation_outcome\":\"NO_MUTATION\",\"network_requests_made\":false,\"next_action\":\"RUN_ONE_READ_ONLY_GITEA_DEFINED_CLUSTER_FACT_AND_DOCUMENT_GAP_ANALYSIS\",\"output_truncated_in_json\":false,\"pre_command_known_error_gate\":{\"checked\":true,\"count\":28,\"ids\":[\"candidate-file-limit-600-20260805\",\"runner-wrapper-mismatch-after-success-20260805\",\"canonical-cluster-handbook-ambiguous-20260805\",\"pvesh-adapter-context-unreadable-20260805\",\"homelab-ops-bare-repository-not-found-local-20260805\",\"gitea-network-fallback-stage-not-emitted-20260805\",\"gitea-owner-hardcoded-homelab-admin-20260805\",\"gitea-git-auth-required-or-credential-unavailable-20260805\",\"gitea-process-self-match-payload-name-20260805\",\"sanitize-bool-attributeerror-20260805\",\"reader-v3-path-misclassified-as-route-20260805\",\"reader-v3-loopback-assumption-20260805\",\"reader-v3-capability-not-treated-as-secret-20260805\",\"reader-v3-systemd-unit-fed-to-python-ast-20260805\",\"reader-v3-helper-control-flow-not-traced-20260805\",\"reader-v3-post-capability-operation-not-derived-20260805\",\"reader-v3-detected-operations-not-tested-20260805\",\"reader-v3-manifest-global-not-bound-in-sandbox-20260805\",\"reader-v3-result-file-second-source-not-read-20260805\",\"reader-v3-negative-control-mixed-with-production-20260805\",\"reader-v3-manifest-schema-guessed-20260805\",\"reader-result-output-bound-after-compaction-20260805\",\"reader-v3-generation-record-shape-guessed-20260805\",\"reader-v3-result-file-assumed-standalone-json-20260805\",\"reader-v3-gitea-detail-marker-false-inventory-20260805\",\"reverse-proxy-runtime-not-visible-on-host-20260805\",\"gitea-public-owner-not-anonymously-discoverable-20260805\",\"exact-output-long-line-not-projectable-by-portal-view-20260805\"]},\"projection\":{\"analysis_outcome\":{\"error_fingerprint\":\"26d65952ac8f64197a6fd76ec56e3b5ffda8c4838efe2af2947a603d01270b92\",\"next_action\":\"RUN_ONE_READ_ONLY_GITEA_DEFINED_CLUSTER_FACT_AND_DOCUMENT_GAP_ANALYSIS\",\"ready_for_gitea_defined_cluster_fact_analysis\":true,\"root_cause_classification\":\"GITEA_CLUSTER_HANDBOOK_AND_ERROR_SYSTEM_DEEPLY_ANALYZED\",\"status\":\"OK\"},\"canonical_handbook\":{\"candidates\":[{\"canonical_phrase_hits\":3,\"canonical_score\":227,\"content_sha256\":\"8051e3e761493a1b7088a0f3ed7e0aa9218673f453ca88171178364d26701f64\",\"headings\":[],\"inbound_reference_count\":8,\"path\":\"errors/regression-cases.json\"},{\"canonical_phrase_hits\":0,\"canonical_score\":74,\"content_sha256\":\"a49bcb32ac7212d7fb9768db8a277cb5525c873c84dd6fb633edae35dc6de532\",\"headings\":[],\"inbound_reference_count\":0,\"path\":\"tasks/cluster-cloud-quorum-vm160-canary-v1/phases/preflight.sh\"},{\"canonical_phrase_hits\":1,\"canonical_score\":56,\"content_sha256\":\"ac5dc881dcd9fcb72644bc893e866f463c9c2b9b4544e32434e21b5d34168fb5\",\"headings\":[],\"inbound_reference_count\":1,\"path\":\"inventory/access-paths.json\"},{\"canonical_phrase_hits\":0,\"canonical_score\":55,\"content_sha256\":\"666072447ba11d346772f62f274dadc974c4463e20f67e67f82f228f1fcf2ce8\",\"headings\":[],\"inbound_reference_count\":0,\"path\":\"tasks/cluster-cloud-quorum-vm160-canary-v1/phases/rollback.sh\"},{\"canonical_phrase_hits\":0,\"canonical_score\":54,\"content_sha256\":\"636254d2526f0f62184d47cdb4c30c2831b11869c2000c557666f60b55d7691b\",\"headings\":[],\"inbound_reference_count\":0,\"path\":\"tasks/cluster-cloud-quorum-vm160-canary-v1/task.json\"}],\"path\":\"errors/regression-cases.json\",\"status\":\"UNIQUE_CONFIRMED\"},\"documentation_coverage\":{\"access\":{\"file_count\":22,\"paths\":[\"changes/CR-2026-0018/regression-cases-draft.json\",\"docs/planned/skladchik-moderator-assistant.md\",\"errors/regression-cases.json\",\"inventory/access-paths.json\",\"tasks/cluster-cloud-quorum-vm160-canary-v1/phases/apply.sh\",\"tasks/cluster-cloud-quorum-vm160-canary-v1/phases/dry-run.sh\",\"tasks/cluster-cloud-quorum-vm160-canary-v1/phases/preflight.sh\",\"tasks/cluster-cloud-quorum-vm160-canary-v1/phases/prepare.sh\"]},\"backup\":{\"file_count\":29,\"paths\":[\"docs/ARCHITECTURE.md\",\"docs/skladchik-cookie-refresh.md\",\"errors/regression-cases.json\",\"observed/cluster-guests.json\",\"policies/cluster-cloud-quorum.json\",\"schemas/change.schema.json\",\"tasks/cluster-cloud-quorum-vm160-canary-v1/assets/pve02-vm160-preflight-probe.sh\",\"tasks/cluster-cloud-quorum-vm160-canary-v1/assets/vm160-cloud-quorum-worker.sh\"]},\"error_system\":{\"file_count\":44,\"paths\":[\".gitea/workflows/ci.yml\",\"changes/CR-2026-0018/caller-inventory-requirements.md\",\"changes/CR-2026-0018/regression-cases-draft.json\",\"changes/README.md\",\"docs/ARCHITECTURE.md\",\"docs/skladchik-cookie-refresh.md\",\"docs/WORKFLOW.md\",\"errors/regression-cases.json\"]},\"internal_external\":{\"file_count\":7,\"paths\":[\"changes/CR-2026-0018/regression-cases-draft.json\",\"errors/regression-cases.json\",\"policies/operating-policy.json\",\"tasks/homelab-logrotate-namespace-latch-clearance-v1/README.txt\",\"tests/test_cr_2026_0005.py\",\"tests/test_cr_2026_0011_skladchik_cookie_jar_reset.py\",\"tests/test_cr_2026_0012_skladchik_cookie_refresh_runbook.py\"]},\"repair\":{\"file_count\":31,\"paths\":[\"changes/CR-2026-0018/caller-inventory-requirements.md\",\"changes/README.md\",\"docs/ARCHITECTURE.md\",\"docs/skladchik-cookie-refresh.md\",\"docs/WORKFLOW.md\",\"errors/regression-cases.json\",\"policies/cluster-cloud-quorum.json\",\"policies/operating-policy.json\"]},\"services\":{\"file_count\":21,\"paths\":[\"changes/CR-2026-0018/caller-inventory-requirements.md\",\"docs/ARCHITECTURE.md\",\"docs/planned/skladchik-moderator-assistant.md\",\"errors/regression-cases.json\",\"observed/cluster-guests.json\",\"tasks/cluster-cloud-quorum-vm160-canary-v1/assets/vm160-cloud-quorum-worker.sh\",\"tasks/cluster-cloud-quorum-vm160-canary-v1/phases/apply.sh\",\"tasks/cluster-cloud-quorum-vm160-canary-v1/phases/dry-run.sh\"]}},\"enumeration\":{\"candidate_file_count\":50,\"fetch_failure_count\":0,\"fetched_file_count\":50,\"fetched_total_bytes\":173536,\"tree_blob_count\":125,\"tree_complete\":true,\"tree_directory_count\":36,\"tree_entry_count\":161},\"error_system_current\":{\"duplicate_error_ids\":[],\"duplicate_fingerprints\":[],\"enforcement_path_count\":7,\"enforcement_paths\":[\"schemas/change.schema.json\",\"schemas/context.schema.json\",\"tasks/cluster-cloud-quorum-vm160-canary-v1/assets/pve02-vm160-preflight-probe.sh\",\"tasks/cluster-cloud-quorum-vm160-canary-v1/phases/preflight.sh\",\"tasks/homelab-logrotate-namespace-latch-clearance-v1/phases/preflight.sh\",\"tasks/skladchik-reports-monitor-controlled-reauth-v1/assets/edge-preflight.sh\",\"tasks/skladchik-reports-monitor-controlled-reauth-v1/phases/preflight.sh\"],\"gate_signals\":{\"ci_workflow_present\":true,\"duplicate_failed_command_block_signal\":false,\"error_register_checked_signal\":false,\"fingerprint_signal\":false,\"preflight_references_error_register\":true,\"reference_register_checked_signal\":false,\"schema_validation_signal\":true,\"tests_present\":true},\"machine_parseable_registry_file_count\":2,\"prevention_evidence_count\":0,\"registry_path_count\":2,\"registry_paths\":[\"changes/CR-2026-0018/regression-cases-draft.json\",\"errors/regression-cases.json\"],\"regression_path_count\":2,\"regression_paths\":[\"changes/CR-2026-0018/regression-cases-draft.json\",\"errors/regression-cases.json\"],\"superseded_path_count\":0,\"superseded_paths\":[],\"test_path_count\":14,\"test_paths\":[\"tests/fixtures/gitea-legacy-auth-permission.json\",\"tests/test_cr_2026_0005.py\",\"tests/test_cr_2026_0006.py\",\"tests/test_cr_2026_0006_vm160_task.py\",\"tests/test_cr_2026_0007_skladchik_reauth.py\",\"tests/test_cr_2026_0007_skladchik_semantic_repair.py\",\"tests/test_cr_2026_0008_skladchik_snapshot_integrity.py\",\"tests/test_cr_2026_0009_skladchik_concurrency_guard.py\",\"tests/test_cr_2026_0011_skladchik_cookie_jar_reset.py\",\"tests/test_cr_2026_0012_skladchik_cookie_refresh_runbook.py\"],\"unique_error_id_count\":61,\"unique_fingerprint_count\":0,\"workflow_path_count\":1,\"workflow_paths\":[\".gitea/workflows/ci.yml\"]},\"gaps\":[\"no_static_evidence_error_fingerprint_gate\"],\"pre_command_gate\":{\"checked\":true,\"projection_command_known_error_count\":28,\"regression_tests_passed\":true,\"reported_error_count\":27},\"previous_exact_result\":{\"capsule_sha256\":\"031aa6c1029c24d8b7dac8192707376fa67ee93cdcfceedcfb768a0b7d4ceb8e\",\"command_id\":\"HOMELAB-CLUSTER-KB-V1-GITEA-REPOSITORY-CONTENT-DEEP-ANALYSIS-READ-ONLY-20260805T124500Z\",\"identity_fully_verified\":true,\"output_bytes\":27219,\"output_sha256\":\"ead28fd156e646c27f6e988c12ea1e89a498882f07071faacba670e87c8a7983\",\"runner_json_sha256\":\"e3211267d27f7497339cd34ecdbe0cce21d039965625ffd5f3236dc20513b082\",\"runner_text_sha256\":\"083286377044254ff016f0f9024655e228a67ae2737d7e1d9641996d5af8e09a\"},\"previous_result_contract\":{\"changes_made\":false,\"command_rc\":0,\"mutation_outcome\":\"NO_MUTATION\",\"output_truncated_in_json\":false,\"rc\":0,\"rollback_restored\":null,\"rollback_started\":false,\"status\":\"OK\"},\"recommended_error_system_v2\":{\"acceptance_criteria\":[\"zero hard-coded owner/path/host/version unless proven by exact prior evidence or current Gitea content\",\"zero mutation without byte-for-byte backup and tested rollback\",\"zero repeated known error fingerprint\",\"all command outputs bounded and non-truncated\",\"all new errors recorded before any subsequent command\"],\"components\":[{\"component\":\"machine_error_registry\",\"requirement\":\"one append-only machine-readable record per proven failure with stable id, normalized fingerprint, exact command/capsule/result SHA, root cause, correction and prevention test\"},{\"component\":\"pre_command_gate\",\"requirement\":\"before every .hcmd, read canonical cluster reference and entire active error registry; block duplicate failed fingerprints and commands that violate a prevention test\"},{\"component\":\"transaction_manifest\",\"requirement\":\"every mutation declares exact source SHA, candidate SHA, byte backup SHA, preconditions, atomic apply, verification and deterministic rollback\"},{\"component\":\"post_result_ingestion\",\"requirement\":\"after exact-result verification, automatically classify the outcome, append new proven failures, close corrected cases and link superseded commands\"},{\"component\":\"regression_suite\",\"requirement\":\"positive and negative fixtures for every recorded error; payload self-test and repository CI must pass before command publication\"},{\"component\":\"knowledge_freshness\",\"requirement\":\"canonical handbook stores last verified fact source, verification time, source SHA and stale/unknown markers; commands may not rely on stale or unknown values\"}],\"grounded_in_detected_gaps\":[\"no_static_evidence_error_fingerprint_gate\"],\"minimum_gate_order\":[\"verify previous exact result identity\",\"read canonical handbook at exact branch commit\",\"read active errors and prevention tests\",\"validate target facts from authoritative source\",\"run payload regression tests\",\"only then publish or execute the next command\"],\"name\":\"Error System V2: evidence-first command gate\",\"reuse_existing_error_root\":\"changes/CR-2026-0018\"},\"repository\":{\"branch_commit_sha\":\"fe1221b06643db3b00a621b0230f92a46a4edc2b\",\"default_branch\":\"main\",\"full_name\":\"homelab-admin/homelab-ops\",\"private\":true},\"source_result_projection\":{\"budget_bytes\":29232,\"bytes\":26771,\"max_bytes\":30000,\"steps\":[\"top_analyzed_files_12\",\"handbook_candidates_6\"]}},\"projection_bytes_before_final_wrapper\":11730,\"rc\":0,\"read_only\":true,\"regression_tests\":{\"duplicate_sha_string_rejected\":true,\"passed\":true,\"recursive_command_identity\":true,\"unique_sha_string_extraction\":true},\"rollback_restored\":null,\"rollback_started\":false,\"root_cause_classification\":\"EXACT_PRIOR_GITEA_DEEP_ANALYSIS_OUTPUT_PROJECTED\",\"schema\":1,\"status\":\"OK\"}\n" + "output": "HOMELAB_RESULT_CONTRACT={\"changes_made\":false,\"command_id\":\"HOMELAB-CLUSTER-ADMIN-UPDATES-V16-REMOTE-EXACT-MAP-READ-ONLY-20260805T131500Z\",\"command_rc\":1,\"control_plane_error\":null,\"mutation_outcome\":\"NO_MUTATION\",\"rc\":1,\"rollback_restored\":false,\"rollback_started\":false,\"status\":\"FAIL\",\"version\":1}\n{\"changes_made\":false,\"command_id\":\"HOMELAB-CLUSTER-ADMIN-UPDATES-V16-REMOTE-EXACT-MAP-READ-ONLY-20260805T131500Z\",\"error\":\"V15 report bytes mismatch expected=85056 actual=85006\",\"error_type\":\"RuntimeError\",\"mutation_outcome\":\"NO_MUTATION\",\"read_only\":true,\"rollback_restored\":false,\"rollback_started\":false,\"schema\":16,\"status\":\"FAIL\"}\n" } diff --git a/runtime/latest.txt b/runtime/latest.txt index e3f74ea..0a6d51a 100644 --- a/runtime/latest.txt +++ b/runtime/latest.txt @@ -1,22 +1,22 @@ CHAT_OUTPUT_BEGIN -COMMAND_ID=HOMELAB-CLUSTER-KB-V1-EXACT-OUTPUT-PROJECTION-READ-ONLY-20260805T130500Z -STATUS=OK -RC=0 +COMMAND_ID=HOMELAB-CLUSTER-ADMIN-UPDATES-V16-REMOTE-EXACT-MAP-READ-ONLY-20260805T131500Z +STATUS=FAIL +RC=1 HOST=pve01 MODE=verify -COMPONENT=cluster-knowledge-base-error-system +COMPONENT=homelab-cluster-admin-update-visibility REFERENCE_REGISTER_CHECK=OK REFERENCE_SHA256=5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e ERROR_REGISTER_CHECK=OK ERROR_REGISTER_SHA256=24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83 -COMMAND_SHA256=8d626b3d942e0c8ad8135e1fbf4148a82c5df736a52cc969eb0f6ae022f1ee59 +COMMAND_SHA256=35e3ddcf3593c25b9b25c31117a6cd07463d711b7040ca678f1f1bebb5a5d3b3 DUPLICATE_FAILED_COMMAND_BLOCKED=false EXECUTION_STARTED=true CHANGE_DECLARED=false RESULT_CONTRACT_VALID=true RESULT_CONTRACT_STATUS=NOT_APPLICABLE RESULT_CONTRACT_ERROR=NONE -COMMAND_RC=0 +COMMAND_RC=1 CHANGES_MADE=false ROLLBACK_STARTED=false ROLLBACK_RESTORED=null @@ -24,11 +24,11 @@ MUTATION_OUTCOME=NO_MUTATION SANITIZED=yes SECRETS_INCLUDED=no PRIVATE_ADDRESSES_INCLUDED=no -RAW_EVIDENCE_SHA256=2a7ec04b2e7036e6cc5751216e516b7d78ef56dc135326379580ef58dbc66a29 -SANITIZED_OUTPUT_SHA256=2a7ec04b2e7036e6cc5751216e516b7d78ef56dc135326379580ef58dbc66a29 +RAW_EVIDENCE_SHA256=79d48e3d3c68f30fb0ca4b1e8c3404d969019875f952b54f25a1041861e90fe5 +SANITIZED_OUTPUT_SHA256=79d48e3d3c68f30fb0ca4b1e8c3404d969019875f952b54f25a1041861e90fe5 OUTPUT_BEGIN -HOMELAB_RESULT_CONTRACT={"changes_made":false,"command_id":"HOMELAB-CLUSTER-KB-V1-EXACT-OUTPUT-PROJECTION-READ-ONLY-20260805T130500Z","command_rc":0,"mutation_outcome":"NO_MUTATION","output_truncated_in_json":false,"rc":0,"rollback_restored":null,"rollback_started":false,"status":"OK","version":1} -{"bounded_adapter_scan":null,"changes_made":false,"command_id":"HOMELAB-CLUSTER-KB-V1-EXACT-OUTPUT-PROJECTION-READ-ONLY-20260805T130500Z","command_rc":0,"evidence_bundle":{"bundle_bytes_ok":true,"bundle_sha256_ok":true,"exists":true,"member_count":6,"output_member_matches":0,"path_is_exact_from_previous_result":true,"runner_json_member_matches":1,"runner_text_member_matches":1,"unsafe_member_rejected":false},"files_written":false,"mutation_outcome":"NO_MUTATION","network_requests_made":false,"next_action":"RUN_ONE_READ_ONLY_GITEA_DEFINED_CLUSTER_FACT_AND_DOCUMENT_GAP_ANALYSIS","output_truncated_in_json":false,"pre_command_known_error_gate":{"checked":true,"count":28,"ids":["candidate-file-limit-600-20260805","runner-wrapper-mismatch-after-success-20260805","canonical-cluster-handbook-ambiguous-20260805","pvesh-adapter-context-unreadable-20260805","homelab-ops-bare-repository-not-found-local-20260805","gitea-network-fallback-stage-not-emitted-20260805","gitea-owner-hardcoded-homelab-admin-20260805","gitea-git-auth-required-or-credential-unavailable-20260805","gitea-process-self-match-payload-name-20260805","sanitize-bool-attributeerror-20260805","reader-v3-path-misclassified-as-route-20260805","reader-v3-loopback-assumption-20260805","reader-v3-capability-not-treated-as-secret-20260805","reader-v3-systemd-unit-fed-to-python-ast-20260805","reader-v3-helper-control-flow-not-traced-20260805","reader-v3-post-capability-operation-not-derived-20260805","reader-v3-detected-operations-not-tested-20260805","reader-v3-manifest-global-not-bound-in-sandbox-20260805","reader-v3-result-file-second-source-not-read-20260805","reader-v3-negative-control-mixed-with-production-20260805","reader-v3-manifest-schema-guessed-20260805","reader-result-output-bound-after-compaction-20260805","reader-v3-generation-record-shape-guessed-20260805","reader-v3-result-file-assumed-standalone-json-20260805","reader-v3-gitea-detail-marker-false-inventory-20260805","reverse-proxy-runtime-not-visible-on-host-20260805","gitea-public-owner-not-anonymously-discoverable-20260805","exact-output-long-line-not-projectable-by-portal-view-20260805"]},"projection":{"analysis_outcome":{"error_fingerprint":"26d65952ac8f64197a6fd76ec56e3b5ffda8c4838efe2af2947a603d01270b92","next_action":"RUN_ONE_READ_ONLY_GITEA_DEFINED_CLUSTER_FACT_AND_DOCUMENT_GAP_ANALYSIS","ready_for_gitea_defined_cluster_fact_analysis":true,"root_cause_classification":"GITEA_CLUSTER_HANDBOOK_AND_ERROR_SYSTEM_DEEPLY_ANALYZED","status":"OK"},"canonical_handbook":{"candidates":[{"canonical_phrase_hits":3,"canonical_score":227,"content_sha256":"8051e3e761493a1b7088a0f3ed7e0aa9218673f453ca88171178364d26701f64","headings":[],"inbound_reference_count":8,"path":"errors/regression-cases.json"},{"canonical_phrase_hits":0,"canonical_score":74,"content_sha256":"a49bcb32ac7212d7fb9768db8a277cb5525c873c84dd6fb633edae35dc6de532","headings":[],"inbound_reference_count":0,"path":"tasks/cluster-cloud-quorum-vm160-canary-v1/phases/preflight.sh"},{"canonical_phrase_hits":1,"canonical_score":56,"content_sha256":"ac5dc881dcd9fcb72644bc893e866f463c9c2b9b4544e32434e21b5d34168fb5","headings":[],"inbound_reference_count":1,"path":"inventory/access-paths.json"},{"canonical_phrase_hits":0,"canonical_score":55,"content_sha256":"666072447ba11d346772f62f274dadc974c4463e20f67e67f82f228f1fcf2ce8","headings":[],"inbound_reference_count":0,"path":"tasks/cluster-cloud-quorum-vm160-canary-v1/phases/rollback.sh"},{"canonical_phrase_hits":0,"canonical_score":54,"content_sha256":"636254d2526f0f62184d47cdb4c30c2831b11869c2000c557666f60b55d7691b","headings":[],"inbound_reference_count":0,"path":"tasks/cluster-cloud-quorum-vm160-canary-v1/task.json"}],"path":"errors/regression-cases.json","status":"UNIQUE_CONFIRMED"},"documentation_coverage":{"access":{"file_count":22,"paths":["changes/CR-2026-0018/regression-cases-draft.json","docs/planned/skladchik-moderator-assistant.md","errors/regression-cases.json","inventory/access-paths.json","tasks/cluster-cloud-quorum-vm160-canary-v1/phases/apply.sh","tasks/cluster-cloud-quorum-vm160-canary-v1/phases/dry-run.sh","tasks/cluster-cloud-quorum-vm160-canary-v1/phases/preflight.sh","tasks/cluster-cloud-quorum-vm160-canary-v1/phases/prepare.sh"]},"backup":{"file_count":29,"paths":["docs/ARCHITECTURE.md","docs/skladchik-cookie-refresh.md","errors/regression-cases.json","observed/cluster-guests.json","policies/cluster-cloud-quorum.json","schemas/change.schema.json","tasks/cluster-cloud-quorum-vm160-canary-v1/assets/pve02-vm160-preflight-probe.sh","tasks/cluster-cloud-quorum-vm160-canary-v1/assets/vm160-cloud-quorum-worker.sh"]},"error_system":{"file_count":44,"paths":[".gitea/workflows/ci.yml","changes/CR-2026-0018/caller-inventory-requirements.md","changes/CR-2026-0018/regression-cases-draft.json","changes/README.md","docs/ARCHITECTURE.md","docs/skladchik-cookie-refresh.md","docs/WORKFLOW.md","errors/regression-cases.json"]},"internal_external":{"file_count":7,"paths":["changes/CR-2026-0018/regression-cases-draft.json","errors/regression-cases.json","policies/operating-policy.json","tasks/homelab-logrotate-namespace-latch-clearance-v1/README.txt","tests/test_cr_2026_0005.py","tests/test_cr_2026_0011_skladchik_cookie_jar_reset.py","tests/test_cr_2026_0012_skladchik_cookie_refresh_runbook.py"]},"repair":{"file_count":31,"paths":["changes/CR-2026-0018/caller-inventory-requirements.md","changes/README.md","docs/ARCHITECTURE.md","docs/skladchik-cookie-refresh.md","docs/WORKFLOW.md","errors/regression-cases.json","policies/cluster-cloud-quorum.json","policies/operating-policy.json"]},"services":{"file_count":21,"paths":["changes/CR-2026-0018/caller-inventory-requirements.md","docs/ARCHITECTURE.md","docs/planned/skladchik-moderator-assistant.md","errors/regression-cases.json","observed/cluster-guests.json","tasks/cluster-cloud-quorum-vm160-canary-v1/assets/vm160-cloud-quorum-worker.sh","tasks/cluster-cloud-quorum-vm160-canary-v1/phases/apply.sh","tasks/cluster-cloud-quorum-vm160-canary-v1/phases/dry-run.sh"]}},"enumeration":{"candidate_file_count":50,"fetch_failure_count":0,"fetched_file_count":50,"fetched_total_bytes":173536,"tree_blob_count":125,"tree_complete":true,"tree_directory_count":36,"tree_entry_count":161},"error_system_current":{"duplicate_error_ids":[],"duplicate_fingerprints":[],"enforcement_path_count":7,"enforcement_paths":["schemas/change.schema.json","schemas/context.schema.json","tasks/cluster-cloud-quorum-vm160-canary-v1/assets/pve02-vm160-preflight-probe.sh","tasks/cluster-cloud-quorum-vm160-canary-v1/phases/preflight.sh","tasks/homelab-logrotate-namespace-latch-clearance-v1/phases/preflight.sh","tasks/skladchik-reports-monitor-controlled-reauth-v1/assets/edge-preflight.sh","tasks/skladchik-reports-monitor-controlled-reauth-v1/phases/preflight.sh"],"gate_signals":{"ci_workflow_present":true,"duplicate_failed_command_block_signal":false,"error_register_checked_signal":false,"fingerprint_signal":false,"preflight_references_error_register":true,"reference_register_checked_signal":false,"schema_validation_signal":true,"tests_present":true},"machine_parseable_registry_file_count":2,"prevention_evidence_count":0,"registry_path_count":2,"registry_paths":["changes/CR-2026-0018/regression-cases-draft.json","errors/regression-cases.json"],"regression_path_count":2,"regression_paths":["changes/CR-2026-0018/regression-cases-draft.json","errors/regression-cases.json"],"superseded_path_count":0,"superseded_paths":[],"test_path_count":14,"test_paths":["tests/fixtures/gitea-legacy-auth-permission.json","tests/test_cr_2026_0005.py","tests/test_cr_2026_0006.py","tests/test_cr_2026_0006_vm160_task.py","tests/test_cr_2026_0007_skladchik_reauth.py","tests/test_cr_2026_0007_skladchik_semantic_repair.py","tests/test_cr_2026_0008_skladchik_snapshot_integrity.py","tests/test_cr_2026_0009_skladchik_concurrency_guard.py","tests/test_cr_2026_0011_skladchik_cookie_jar_reset.py","tests/test_cr_2026_0012_skladchik_cookie_refresh_runbook.py"],"unique_error_id_count":61,"unique_fingerprint_count":0,"workflow_path_count":1,"workflow_paths":[".gitea/workflows/ci.yml"]},"gaps":["no_static_evidence_error_fingerprint_gate"],"pre_command_gate":{"checked":true,"projection_command_known_error_count":28,"regression_tests_passed":true,"reported_error_count":27},"previous_exact_result":{"capsule_sha256":"031aa6c1029c24d8b7dac8192707376fa67ee93cdcfceedcfb768a0b7d4ceb8e","command_id":"HOMELAB-CLUSTER-KB-V1-GITEA-REPOSITORY-CONTENT-DEEP-ANALYSIS-READ-ONLY-20260805T124500Z","identity_fully_verified":true,"output_bytes":27219,"output_sha256":"ead28fd156e646c27f6e988c12ea1e89a498882f07071faacba670e87c8a7983","runner_json_sha256":"e3211267d27f7497339cd34ecdbe0cce21d039965625ffd5f3236dc20513b082","runner_text_sha256":"083286377044254ff016f0f9024655e228a67ae2737d7e1d9641996d5af8e09a"},"previous_result_contract":{"changes_made":false,"command_rc":0,"mutation_outcome":"NO_MUTATION","output_truncated_in_json":false,"rc":0,"rollback_restored":null,"rollback_started":false,"status":"OK"},"recommended_error_system_v2":{"acceptance_criteria":["zero hard-coded owner/path/host/version unless proven by exact prior evidence or current Gitea content","zero mutation without byte-for-byte backup and tested rollback","zero repeated known error fingerprint","all command outputs bounded and non-truncated","all new errors recorded before any subsequent command"],"components":[{"component":"machine_error_registry","requirement":"one append-only machine-readable record per proven failure with stable id, normalized fingerprint, exact command/capsule/result SHA, root cause, correction and prevention test"},{"component":"pre_command_gate","requirement":"before every .hcmd, read canonical cluster reference and entire active error registry; block duplicate failed fingerprints and commands that violate a prevention test"},{"component":"transaction_manifest","requirement":"every mutation declares exact source SHA, candidate SHA, byte backup SHA, preconditions, atomic apply, verification and deterministic rollback"},{"component":"post_result_ingestion","requirement":"after exact-result verification, automatically classify the outcome, append new proven failures, close corrected cases and link superseded commands"},{"component":"regression_suite","requirement":"positive and negative fixtures for every recorded error; payload self-test and repository CI must pass before command publication"},{"component":"knowledge_freshness","requirement":"canonical handbook stores last verified fact source, verification time, source SHA and stale/unknown markers; commands may not rely on stale or unknown values"}],"grounded_in_detected_gaps":["no_static_evidence_error_fingerprint_gate"],"minimum_gate_order":["verify previous exact result identity","read canonical handbook at exact branch commit","read active errors and prevention tests","validate target facts from authoritative source","run payload regression tests","only then publish or execute the next command"],"name":"Error System V2: evidence-first command gate","reuse_existing_error_root":"changes/CR-2026-0018"},"repository":{"branch_commit_sha":"fe1221b06643db3b00a621b0230f92a46a4edc2b","default_branch":"main","full_name":"homelab-admin/homelab-ops","private":true},"source_result_projection":{"budget_bytes":29232,"bytes":26771,"max_bytes":30000,"steps":["top_analyzed_files_12","handbook_candidates_6"]}},"projection_bytes_before_final_wrapper":11730,"rc":0,"read_only":true,"regression_tests":{"duplicate_sha_string_rejected":true,"passed":true,"recursive_command_identity":true,"unique_sha_string_extraction":true},"rollback_restored":null,"rollback_started":false,"root_cause_classification":"EXACT_PRIOR_GITEA_DEEP_ANALYSIS_OUTPUT_PROJECTED","schema":1,"status":"OK"} +HOMELAB_RESULT_CONTRACT={"changes_made":false,"command_id":"HOMELAB-CLUSTER-ADMIN-UPDATES-V16-REMOTE-EXACT-MAP-READ-ONLY-20260805T131500Z","command_rc":1,"control_plane_error":null,"mutation_outcome":"NO_MUTATION","rc":1,"rollback_restored":false,"rollback_started":false,"status":"FAIL","version":1} +{"changes_made":false,"command_id":"HOMELAB-CLUSTER-ADMIN-UPDATES-V16-REMOTE-EXACT-MAP-READ-ONLY-20260805T131500Z","error":"V15 report bytes mismatch expected=85056 actual=85006","error_type":"RuntimeError","mutation_outcome":"NO_MUTATION","read_only":true,"rollback_restored":false,"rollback_started":false,"schema":16,"status":"FAIL"} OUTPUT_END CHAT_OUTPUT_END