diff --git a/runtime/history/HOMELAB-CLUSTER-ADMIN-UPDATES-DISCOVERY-V1-READ-ONLY-20260805T094500Z.json b/runtime/history/HOMELAB-CLUSTER-ADMIN-UPDATES-DISCOVERY-V1-READ-ONLY-20260805T094500Z.json new file mode 100644 index 0000000..18f0b30 --- /dev/null +++ b/runtime/history/HOMELAB-CLUSTER-ADMIN-UPDATES-DISCOVERY-V1-READ-ONLY-20260805T094500Z.json @@ -0,0 +1,38 @@ +{ + "schema_version": 1, + "channel": "homelab-runtime", + "command_id": "HOMELAB-CLUSTER-ADMIN-UPDATES-DISCOVERY-V1-READ-ONLY-20260805T094500Z", + "status": "FAIL", + "rc": 1, + "host": "pve01", + "mode": "verify", + "component": "homelab-cluster-admin-update-visibility", + "started_at_utc": "2026-08-05T10:01:41Z", + "finished_at_utc": "2026-08-05T10:01:42Z", + "reference_register_checked": true, + "reference_sha256": "5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e", + "error_register_checked": true, + "error_register_sha256": "24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83", + "command_sha256": "0270e110f5c0a2be2ceca6c9dec276b007dd42ac956928ee69a053efe97b2edb", + "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": "1eb35f0774e26589f4ca703a49ca0b56a21e6cd3aad2e6f4cc351f117c506a5c", + "sanitized_output_sha256": "1eb35f0774e26589f4ca703a49ca0b56a21e6cd3aad2e6f4cc351f117c506a5c", + "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-DISCOVERY-V1-READ-ONLY-20260805T094500Z\",\"command_rc\":1,\"control_plane_error\":null,\"mutation_outcome\":\"NO_MUTATION\",\"rc\":1,\"rollback_restored\":false,\"rollback_started\":false,\"schema\":1,\"status\":\"FAIL\"}\n{\"changes_made\":false,\"command_id\":\"HOMELAB-CLUSTER-ADMIN-UPDATES-DISCOVERY-V1-READ-ONLY-20260805T094500Z\",\"error\":\"pvesh /nodes did not return an array\",\"error_type\":\"RuntimeError\",\"mutation_outcome\":\"NO_MUTATION\",\"read_only\":true,\"rollback_restored\":false,\"rollback_started\":false,\"schema\":1,\"status\":\"FAIL\"}\n" +} diff --git a/runtime/history/HOMELAB-CLUSTER-ADMIN-UPDATES-DISCOVERY-V1-READ-ONLY-20260805T094500Z.txt b/runtime/history/HOMELAB-CLUSTER-ADMIN-UPDATES-DISCOVERY-V1-READ-ONLY-20260805T094500Z.txt new file mode 100644 index 0000000..ff49310 --- /dev/null +++ b/runtime/history/HOMELAB-CLUSTER-ADMIN-UPDATES-DISCOVERY-V1-READ-ONLY-20260805T094500Z.txt @@ -0,0 +1,34 @@ +CHAT_OUTPUT_BEGIN +COMMAND_ID=HOMELAB-CLUSTER-ADMIN-UPDATES-DISCOVERY-V1-READ-ONLY-20260805T094500Z +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=0270e110f5c0a2be2ceca6c9dec276b007dd42ac956928ee69a053efe97b2edb +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=1eb35f0774e26589f4ca703a49ca0b56a21e6cd3aad2e6f4cc351f117c506a5c +SANITIZED_OUTPUT_SHA256=1eb35f0774e26589f4ca703a49ca0b56a21e6cd3aad2e6f4cc351f117c506a5c +OUTPUT_BEGIN +HOMELAB_RESULT_CONTRACT={"changes_made":false,"command_id":"HOMELAB-CLUSTER-ADMIN-UPDATES-DISCOVERY-V1-READ-ONLY-20260805T094500Z","command_rc":1,"control_plane_error":null,"mutation_outcome":"NO_MUTATION","rc":1,"rollback_restored":false,"rollback_started":false,"schema":1,"status":"FAIL"} +{"changes_made":false,"command_id":"HOMELAB-CLUSTER-ADMIN-UPDATES-DISCOVERY-V1-READ-ONLY-20260805T094500Z","error":"pvesh /nodes did not return an array","error_type":"RuntimeError","mutation_outcome":"NO_MUTATION","read_only":true,"rollback_restored":false,"rollback_started":false,"schema":1,"status":"FAIL"} + +OUTPUT_END +CHAT_OUTPUT_END diff --git a/runtime/latest.json b/runtime/latest.json index 8f8d870..18f0b30 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-READER-V3-RESPONSE-SCHEMA-TRACE-READ-ONLY-20260805T093700Z", - "status": "OK", - "rc": 0, + "command_id": "HOMELAB-CLUSTER-ADMIN-UPDATES-DISCOVERY-V1-READ-ONLY-20260805T094500Z", + "status": "FAIL", + "rc": 1, "host": "pve01", "mode": "verify", - "component": "cluster-knowledge-base-error-system", - "started_at_utc": "2026-08-05T09:51:59Z", - "finished_at_utc": "2026-08-05T09:51:59Z", + "component": "homelab-cluster-admin-update-visibility", + "started_at_utc": "2026-08-05T10:01:41Z", + "finished_at_utc": "2026-08-05T10:01:42Z", "reference_register_checked": true, "reference_sha256": "5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e", "error_register_checked": true, "error_register_sha256": "24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83", - "command_sha256": "37caeaf4ee6ff07a78c0b7f3f4596190ba686a4c4a2139efa20f045a85b10e45", + "command_sha256": "0270e110f5c0a2be2ceca6c9dec276b007dd42ac956928ee69a053efe97b2edb", "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": "656ff305c3362e8232fa3f1a8867a106947115cb2946a6f0f5bd67b0dac1adcc", - "sanitized_output_sha256": "656ff305c3362e8232fa3f1a8867a106947115cb2946a6f0f5bd67b0dac1adcc", + "raw_evidence_sha256": "1eb35f0774e26589f4ca703a49ca0b56a21e6cd3aad2e6f4cc351f117c506a5c", + "sanitized_output_sha256": "1eb35f0774e26589f4ca703a49ca0b56a21e6cd3aad2e6f4cc351f117c506a5c", "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-READER-V3-RESPONSE-SCHEMA-TRACE-READ-ONLY-20260805T093700Z\",\"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{\"ast_source_selection\":{\"selected_path\":\"/usr/local/sbin/homelab-reader-server-v3\",\"systemd_unit_excluded\":true},\"changes_made\":false,\"command_id\":\"HOMELAB-CLUSTER-KB-V1-READER-V3-RESPONSE-SCHEMA-TRACE-READ-ONLY-20260805T093700Z\",\"command_rc\":0,\"correction_of_previous_logic_gap\":{\"exact_fix\":\"trace the exact handler response branch in a sandbox with a synthetic suffix and fake executors; perform no network call and no real pvesh/subprocess execution\",\"proven_gap\":\"capability-only and capability-with-empty-suffix routes were probed although the exact handler required a post-prefix operation; every live probe therefore returned 404\",\"regression_test\":\"an exact handler that maps // to pvesh get must produce a redacted accepted trace, a pvesh_get read-only proof and no capability disclosure\"},\"error_fingerprint\":\"4f622d4fa3cce396ac26ca80b4d17c497f430bdde1687512541593396feb3a38\",\"latest_exact_result_basis\":{\"capsule_sha256\":\"b0c0aaf678487c522a761bac831d1312df3e30815f6a6f79fa03ad16ccc28887\",\"changes_made\":false,\"command_id\":\"HOMELAB-CLUSTER-KB-V1-READER-V3-HELPER-CONTRACT-READ-ONLY-20260805T085900Z\",\"command_rc\":0,\"control_plane_error\":null,\"error_fingerprint\":\"27ca4a7a83a33494c7c40dd173cbca17a1885d66fbed4ce2272a6c61ebb58387\",\"mutation_outcome\":\"NO_MUTATION\",\"next_action\":\"RUN_ONE_READ_ONLY_READER_V3_RESPONSE_SCHEMA_TRACE\",\"output_complete\":true,\"output_sha256\":\"b829e8f514d0be81fc40bbbeb82d9196862a423ddfe6985bc17e3792c49584e2\",\"output_truncated_in_json\":false,\"rc\":0,\"rollback_restored\":null,\"rollback_started\":false,\"root_cause_classification\":\"READER_V3_EXACT_AUTH_AND_ROUTE_CONTRACT_PROBED_BUT_NO_AUTHORITATIVE_JSON_RESPONSE\",\"runner_document_rc\":0,\"runner_json_sha256\":\"a2e5ac61921edea1b689f1a5275860aacc4f4e1dedc6b431ff4de04e39db2979\",\"runner_rc\":0,\"runner_text_sha256\":\"36224b6247e04972f74927b7be86fb480c56f26d8068dc4614c0c637e4617408\",\"runner_wrapper_matches_document\":true,\"status\":\"OK\"},\"mutation_outcome\":\"NO_MUTATION\",\"next_action\":\"RUN_ONE_READ_ONLY_READER_V3_SANITIZED_BYTECODE_BRANCH_TRACE\",\"output_truncated_in_json\":false,\"owned_listeners\":[{\"address_class\":\"private\",\"address_sha256\":\"fb345731d21c612ed2cb13088c10fd26bac959c79a7634cb55e23ee6bfb428d9\",\"family\":\"ipv4\",\"inode\":\"24795\",\"port\":18788}],\"pre_command_known_error_gate\":{\"checked\":true,\"items\":[{\"id\":\"candidate-scan-limit-20260805\",\"prevention\":\"exact files only; bounded AST, simulation, response and output limits\"},{\"id\":\"runner-wrapper-mismatch-20260805\",\"prevention\":\"single compact JSON below 42000 bytes; no raw source, secret or response body\"},{\"id\":\"gitea-owner-hardcoded-20260805\",\"prevention\":\"no repository owner, guest ID or repository URL is assumed\"},{\"id\":\"gitea-git-auth-unavailable-20260805\",\"prevention\":\"no Git or Gitea authentication attempt\"},{\"id\":\"pvesh-adapter-context-unreadable-20260805\",\"prevention\":\"the payload does not call pvesh or any real executor\"},{\"id\":\"gitea-process-self-match-20260805\",\"prevention\":\"Reader identity is bound to exact systemd ControlGroup\"},{\"id\":\"sanitize-non-string-attributeerror-20260805\",\"prevention\":\"sanitize converts Any to str; embedded bool test\"},{\"id\":\"reader-path-env-misclassified-as-route-20260805\",\"prevention\":\"PATH and filesystem-like values are excluded from request candidates\"},{\"id\":\"reader-loopback-only-probe-20260805\",\"prevention\":\"owned listeners are inspected but no network connection is made\"},{\"id\":\"reader-capability-not-secret-20260805\",\"prevention\":\"capability values are redacted before every output projection\"},{\"id\":\"reader-systemd-unit-parsed-as-python-20260805\",\"prevention\":\"only the exact Python server source is parsed or compiled\"},{\"id\":\"reader-helper-contract-coverage-gap-20260805\",\"prevention\":\"all handler methods reachable from do_GET/do_HEAD are traced\"},{\"id\":\"reader-capability-root-empty-suffix-404-20260805\",\"prevention\":\"never infer inventory from capability-only paths; trace the exact post-prefix suffix and response branch with fake executors first\"}]},\"prevention_test\":{\"must_run_before_future_cluster_or_gitea_commands\":true,\"name\":\"reader_v3_response_schema_trace_preflight\",\"requirements\":[\"verify exact Reader source SHA\",\"bind process to exact systemd ControlGroup\",\"exclude systemd unit from Python compilation\",\"trace a synthetic post-capability suffix only inside a sandbox\",\"replace every executor and open primitive with fakes\",\"prove read-only executor semantics before any live route probe\",\"never output capability values, private addresses, raw source or response bodies\"]},\"process_environment\":{\"capability_name_present\":true,\"names\":[\"HOME\",\"HOMELAB_READER_CAPABILITY\",\"HOMELAB_READER_PORT\",\"INVOCATION_ID\",\"JOURNAL_STREAM\",\"LANG\",\"LOGNAME\",\"MEMORY_PRESSURE_WATCH\",\"MEMORY_PRESSURE_WRITE\",\"PATH\",\"SHELL\",\"SYSTEMD_EXEC_PID\",\"USER\"],\"secret_name_count\":1},\"rc\":0,\"read_only\":true,\"ready_for_live_inventory_probe\":false,\"real_executor_calls_made\":false,\"real_network_requests_made\":false,\"result_projection\":{\"bytes_before_projection\":9943,\"compacted\":false,\"max_bytes\":36000},\"rollback_restored\":null,\"rollback_started\":false,\"root_cause_classification\":\"READER_V3_RESPONSE_SCHEMA_TRACE_INCONCLUSIVE\",\"sandbox_response_trace\":{\"accepted_count\":0,\"candidate_count\":3,\"generic_suffix_accepted_count\":0,\"generic_suffix_read_only_executor_count\":0,\"live_probe_contract_ready\":false,\"trace_count\":3,\"traces\":[{\"body_bytes\":10,\"body_sha256\":\"709009e02c8e364113b28205aadde30cce270d709073f28153c85fdc5036c96d\",\"content_type\":\"text/plain; charset=utf-8\",\"error_count\":0,\"executor_call_count\":0,\"executor_calls\":[],\"executor_calls_all_read_only\":false,\"json\":null,\"response_header_names\":[\"cache-control\",\"content-length\",\"content-type\",\"expires\",\"pragma\",\"surrogate-control\",\"x-robots-tag\"],\"route_template\":\"//\",\"status\":404},{\"body_bytes\":10,\"body_sha256\":\"709009e02c8e364113b28205aadde30cce270d709073f28153c85fdc5036c96d\",\"content_type\":\"text/plain; charset=utf-8\",\"error_count\":0,\"executor_call_count\":0,\"executor_calls\":[],\"executor_calls_all_read_only\":false,\"json\":null,\"response_header_names\":[\"cache-control\",\"content-length\",\"content-type\",\"expires\",\"pragma\",\"surrogate-control\",\"x-robots-tag\"],\"route_template\":\"//\",\"status\":404},{\"body_bytes\":10,\"body_sha256\":\"709009e02c8e364113b28205aadde30cce270d709073f28153c85fdc5036c96d\",\"content_type\":\"text/plain; charset=utf-8\",\"error_count\":0,\"executor_call_count\":0,\"executor_calls\":[],\"executor_calls_all_read_only\":false,\"json\":null,\"response_header_names\":[\"cache-control\",\"content-length\",\"content-type\",\"expires\",\"pragma\",\"surrogate-control\",\"x-robots-tag\"],\"route_template\":\"///\",\"status\":404}]},\"schema\":1,\"source_files\":[{\"actual_sha256\":\"d672b74b390efa787ffd5a090e8c8eea8fdf038075421231a9d9b3053ea926b1\",\"bytes\":580,\"expected_sha256\":\"d672b74b390efa787ffd5a090e8c8eea8fdf038075421231a9d9b3053ea926b1\",\"matches_expected\":true,\"path\":\"/etc/systemd/system/homelab-reader-v3.service\"},{\"actual_sha256\":\"092780e76ff18dfe2920c51f8b97dd09d194fd6cbdb59c3755c9fbf6530f3536\",\"bytes\":3539,\"expected_sha256\":\"092780e76ff18dfe2920c51f8b97dd09d194fd6cbdb59c3755c9fbf6530f3536\",\"matches_expected\":true,\"path\":\"/usr/local/sbin/homelab-reader-server-v3\"}],\"source_state\":\"MATCH\",\"static_response_trace\":{\"ast_parse_ok\":true,\"capability_prefix_count\":1,\"capability_prefix_templates\":[\"//\"],\"executor_callsite_count\":0,\"executor_callsites\":[],\"handler_count\":1,\"handlers\":[{\"name_sha256\":\"53cae329634a4eaa67f565e1de442e3ed98d11f793681c424a168743651dfb67\",\"reachable_method_count\":4}],\"reachable_methods\":[\"do_GET\",\"do_HEAD\",\"handle_reader\",\"reply\"],\"resolved_scope_names\":[\"CAPABILITY\",\"PORT\"],\"response_callsite_count\":10,\"response_callsites\":[{\"arg_count\":3,\"call\":\"reply\",\"evidence_sha256\":\"77d365a0c27eb0fe26c4f2cbb8bd45b0bc259b01eefe2e6dba00535e1cfd0d25\",\"method\":\"handle_reader\"},{\"arg_count\":3,\"call\":\"reply\",\"evidence_sha256\":\"77d365a0c27eb0fe26c4f2cbb8bd45b0bc259b01eefe2e6dba00535e1cfd0d25\",\"method\":\"handle_reader\"},{\"arg_count\":5,\"call\":\"reply\",\"evidence_sha256\":\"b99d9fa0cdc7a28c6e35d5b156081da12ba8b1545d5d54f3438429d7a3f29768\",\"method\":\"handle_reader\"},{\"arg_count\":5,\"call\":\"reply\",\"evidence_sha256\":\"0a7d83afc7fee504cc0ecaf6d11c237a6500c636ccb22d0318cd17b967c9d4c4\",\"method\":\"handle_reader\"},{\"arg_count\":3,\"call\":\"reply\",\"evidence_sha256\":\"77d365a0c27eb0fe26c4f2cbb8bd45b0bc259b01eefe2e6dba00535e1cfd0d25\",\"method\":\"handle_reader\"},{\"arg_count\":5,\"call\":\"reply\",\"evidence_sha256\":\"2174dd0ec6bfea4be6dfea06e7d7597b87c3c1dd1035788fcfe13667539d252b\",\"method\":\"handle_reader\"},{\"arg_count\":3,\"call\":\"reply\",\"evidence_sha256\":\"c715a75a14cdd51442830a80cd85de1fdb81b0faa03474cf61b6ea023a6c3aed\",\"method\":\"handle_reader\"},{\"arg_count\":3,\"call\":\"reply\",\"evidence_sha256\":\"c096c351e7c8ead4129a1b60e97cb2da046bd7e19d66368edc46ebc13c955bcb\",\"method\":\"handle_reader\"},{\"arg_count\":3,\"call\":\"reply\",\"evidence_sha256\":\"c715a75a14cdd51442830a80cd85de1fdb81b0faa03474cf61b6ea023a6c3aed\",\"method\":\"handle_reader\"},{\"arg_count\":1,\"call\":\"send_response\",\"evidence_sha256\":\"fb7751c9820c4747270a729210fc1dbcfb87d0a9530211c65f51cb29b81defe2\",\"method\":\"reply\"}],\"self_call_edges\":[{\"from\":\"do_GET\",\"to\":\"handle_reader\"},{\"from\":\"do_HEAD\",\"to\":\"handle_reader\"},{\"from\":\"handle_reader\",\"to\":\"reply\"}],\"source_suffix_literal_count\":2,\"source_suffix_literal_templates\":[\"feed\",\"health\"]},\"status\":\"OK\",\"systemd_identity\":{\"identity_valid\":true,\"pid_count\":1,\"probe\":{\"duration_seconds\":0.007,\"rc\":0,\"stderr_bytes\":0,\"stderr_sha256\":\"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\",\"stderr_truncated\":false,\"stdout_bytes\":375,\"stdout_sha256\":\"49094d65d3787c1479e6408e1fefb7af3758d0fa55e1d37bf22907442aab35e9\",\"stdout_truncated\":false},\"properties\":{\"ActiveState\":\"active\",\"ControlGroup\":\"/system.slice/homelab-reader-v3.service\",\"ExecStart_present\":true,\"ExecStart_sha256\":\"2500fde09569176736b4f2f1dd29d6289b6a6ae6a59b52b6a3c31f797f567379\",\"FragmentPath\":\"/etc/systemd/system/homelab-reader-v3.service\",\"LoadState\":\"loaded\",\"MainPID\":\"1282\",\"SubState\":\"running\"}}}\n" + "output": "HOMELAB_RESULT_CONTRACT={\"changes_made\":false,\"command_id\":\"HOMELAB-CLUSTER-ADMIN-UPDATES-DISCOVERY-V1-READ-ONLY-20260805T094500Z\",\"command_rc\":1,\"control_plane_error\":null,\"mutation_outcome\":\"NO_MUTATION\",\"rc\":1,\"rollback_restored\":false,\"rollback_started\":false,\"schema\":1,\"status\":\"FAIL\"}\n{\"changes_made\":false,\"command_id\":\"HOMELAB-CLUSTER-ADMIN-UPDATES-DISCOVERY-V1-READ-ONLY-20260805T094500Z\",\"error\":\"pvesh /nodes did not return an array\",\"error_type\":\"RuntimeError\",\"mutation_outcome\":\"NO_MUTATION\",\"read_only\":true,\"rollback_restored\":false,\"rollback_started\":false,\"schema\":1,\"status\":\"FAIL\"}\n" } diff --git a/runtime/latest.txt b/runtime/latest.txt index c2579ba..ff49310 100644 --- a/runtime/latest.txt +++ b/runtime/latest.txt @@ -1,22 +1,22 @@ CHAT_OUTPUT_BEGIN -COMMAND_ID=HOMELAB-CLUSTER-KB-V1-READER-V3-RESPONSE-SCHEMA-TRACE-READ-ONLY-20260805T093700Z -STATUS=OK -RC=0 +COMMAND_ID=HOMELAB-CLUSTER-ADMIN-UPDATES-DISCOVERY-V1-READ-ONLY-20260805T094500Z +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=37caeaf4ee6ff07a78c0b7f3f4596190ba686a4c4a2139efa20f045a85b10e45 +COMMAND_SHA256=0270e110f5c0a2be2ceca6c9dec276b007dd42ac956928ee69a053efe97b2edb 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=656ff305c3362e8232fa3f1a8867a106947115cb2946a6f0f5bd67b0dac1adcc -SANITIZED_OUTPUT_SHA256=656ff305c3362e8232fa3f1a8867a106947115cb2946a6f0f5bd67b0dac1adcc +RAW_EVIDENCE_SHA256=1eb35f0774e26589f4ca703a49ca0b56a21e6cd3aad2e6f4cc351f117c506a5c +SANITIZED_OUTPUT_SHA256=1eb35f0774e26589f4ca703a49ca0b56a21e6cd3aad2e6f4cc351f117c506a5c OUTPUT_BEGIN -HOMELAB_RESULT_CONTRACT={"changes_made":false,"command_id":"HOMELAB-CLUSTER-KB-V1-READER-V3-RESPONSE-SCHEMA-TRACE-READ-ONLY-20260805T093700Z","command_rc":0,"mutation_outcome":"NO_MUTATION","output_truncated_in_json":false,"rc":0,"rollback_restored":null,"rollback_started":false,"status":"OK","version":1} -{"ast_source_selection":{"selected_path":"/usr/local/sbin/homelab-reader-server-v3","systemd_unit_excluded":true},"changes_made":false,"command_id":"HOMELAB-CLUSTER-KB-V1-READER-V3-RESPONSE-SCHEMA-TRACE-READ-ONLY-20260805T093700Z","command_rc":0,"correction_of_previous_logic_gap":{"exact_fix":"trace the exact handler response branch in a sandbox with a synthetic suffix and fake executors; perform no network call and no real pvesh/subprocess execution","proven_gap":"capability-only and capability-with-empty-suffix routes were probed although the exact handler required a post-prefix operation; every live probe therefore returned 404","regression_test":"an exact handler that maps // to pvesh get must produce a redacted accepted trace, a pvesh_get read-only proof and no capability disclosure"},"error_fingerprint":"4f622d4fa3cce396ac26ca80b4d17c497f430bdde1687512541593396feb3a38","latest_exact_result_basis":{"capsule_sha256":"b0c0aaf678487c522a761bac831d1312df3e30815f6a6f79fa03ad16ccc28887","changes_made":false,"command_id":"HOMELAB-CLUSTER-KB-V1-READER-V3-HELPER-CONTRACT-READ-ONLY-20260805T085900Z","command_rc":0,"control_plane_error":null,"error_fingerprint":"27ca4a7a83a33494c7c40dd173cbca17a1885d66fbed4ce2272a6c61ebb58387","mutation_outcome":"NO_MUTATION","next_action":"RUN_ONE_READ_ONLY_READER_V3_RESPONSE_SCHEMA_TRACE","output_complete":true,"output_sha256":"b829e8f514d0be81fc40bbbeb82d9196862a423ddfe6985bc17e3792c49584e2","output_truncated_in_json":false,"rc":0,"rollback_restored":null,"rollback_started":false,"root_cause_classification":"READER_V3_EXACT_AUTH_AND_ROUTE_CONTRACT_PROBED_BUT_NO_AUTHORITATIVE_JSON_RESPONSE","runner_document_rc":0,"runner_json_sha256":"a2e5ac61921edea1b689f1a5275860aacc4f4e1dedc6b431ff4de04e39db2979","runner_rc":0,"runner_text_sha256":"36224b6247e04972f74927b7be86fb480c56f26d8068dc4614c0c637e4617408","runner_wrapper_matches_document":true,"status":"OK"},"mutation_outcome":"NO_MUTATION","next_action":"RUN_ONE_READ_ONLY_READER_V3_SANITIZED_BYTECODE_BRANCH_TRACE","output_truncated_in_json":false,"owned_listeners":[{"address_class":"private","address_sha256":"fb345731d21c612ed2cb13088c10fd26bac959c79a7634cb55e23ee6bfb428d9","family":"ipv4","inode":"24795","port":18788}],"pre_command_known_error_gate":{"checked":true,"items":[{"id":"candidate-scan-limit-20260805","prevention":"exact files only; bounded AST, simulation, response and output limits"},{"id":"runner-wrapper-mismatch-20260805","prevention":"single compact JSON below 42000 bytes; no raw source, secret or response body"},{"id":"gitea-owner-hardcoded-20260805","prevention":"no repository owner, guest ID or repository URL is assumed"},{"id":"gitea-git-auth-unavailable-20260805","prevention":"no Git or Gitea authentication attempt"},{"id":"pvesh-adapter-context-unreadable-20260805","prevention":"the payload does not call pvesh or any real executor"},{"id":"gitea-process-self-match-20260805","prevention":"Reader identity is bound to exact systemd ControlGroup"},{"id":"sanitize-non-string-attributeerror-20260805","prevention":"sanitize converts Any to str; embedded bool test"},{"id":"reader-path-env-misclassified-as-route-20260805","prevention":"PATH and filesystem-like values are excluded from request candidates"},{"id":"reader-loopback-only-probe-20260805","prevention":"owned listeners are inspected but no network connection is made"},{"id":"reader-capability-not-secret-20260805","prevention":"capability values are redacted before every output projection"},{"id":"reader-systemd-unit-parsed-as-python-20260805","prevention":"only the exact Python server source is parsed or compiled"},{"id":"reader-helper-contract-coverage-gap-20260805","prevention":"all handler methods reachable from do_GET/do_HEAD are traced"},{"id":"reader-capability-root-empty-suffix-404-20260805","prevention":"never infer inventory from capability-only paths; trace the exact post-prefix suffix and response branch with fake executors first"}]},"prevention_test":{"must_run_before_future_cluster_or_gitea_commands":true,"name":"reader_v3_response_schema_trace_preflight","requirements":["verify exact Reader source SHA","bind process to exact systemd ControlGroup","exclude systemd unit from Python compilation","trace a synthetic post-capability suffix only inside a sandbox","replace every executor and open primitive with fakes","prove read-only executor semantics before any live route probe","never output capability values, private addresses, raw source or response bodies"]},"process_environment":{"capability_name_present":true,"names":["HOME","HOMELAB_READER_CAPABILITY","HOMELAB_READER_PORT","INVOCATION_ID","JOURNAL_STREAM","LANG","LOGNAME","MEMORY_PRESSURE_WATCH","MEMORY_PRESSURE_WRITE","PATH","SHELL","SYSTEMD_EXEC_PID","USER"],"secret_name_count":1},"rc":0,"read_only":true,"ready_for_live_inventory_probe":false,"real_executor_calls_made":false,"real_network_requests_made":false,"result_projection":{"bytes_before_projection":9943,"compacted":false,"max_bytes":36000},"rollback_restored":null,"rollback_started":false,"root_cause_classification":"READER_V3_RESPONSE_SCHEMA_TRACE_INCONCLUSIVE","sandbox_response_trace":{"accepted_count":0,"candidate_count":3,"generic_suffix_accepted_count":0,"generic_suffix_read_only_executor_count":0,"live_probe_contract_ready":false,"trace_count":3,"traces":[{"body_bytes":10,"body_sha256":"709009e02c8e364113b28205aadde30cce270d709073f28153c85fdc5036c96d","content_type":"text/plain; charset=utf-8","error_count":0,"executor_call_count":0,"executor_calls":[],"executor_calls_all_read_only":false,"json":null,"response_header_names":["cache-control","content-length","content-type","expires","pragma","surrogate-control","x-robots-tag"],"route_template":"//","status":404},{"body_bytes":10,"body_sha256":"709009e02c8e364113b28205aadde30cce270d709073f28153c85fdc5036c96d","content_type":"text/plain; charset=utf-8","error_count":0,"executor_call_count":0,"executor_calls":[],"executor_calls_all_read_only":false,"json":null,"response_header_names":["cache-control","content-length","content-type","expires","pragma","surrogate-control","x-robots-tag"],"route_template":"//","status":404},{"body_bytes":10,"body_sha256":"709009e02c8e364113b28205aadde30cce270d709073f28153c85fdc5036c96d","content_type":"text/plain; charset=utf-8","error_count":0,"executor_call_count":0,"executor_calls":[],"executor_calls_all_read_only":false,"json":null,"response_header_names":["cache-control","content-length","content-type","expires","pragma","surrogate-control","x-robots-tag"],"route_template":"///","status":404}]},"schema":1,"source_files":[{"actual_sha256":"d672b74b390efa787ffd5a090e8c8eea8fdf038075421231a9d9b3053ea926b1","bytes":580,"expected_sha256":"d672b74b390efa787ffd5a090e8c8eea8fdf038075421231a9d9b3053ea926b1","matches_expected":true,"path":"/etc/systemd/system/homelab-reader-v3.service"},{"actual_sha256":"092780e76ff18dfe2920c51f8b97dd09d194fd6cbdb59c3755c9fbf6530f3536","bytes":3539,"expected_sha256":"092780e76ff18dfe2920c51f8b97dd09d194fd6cbdb59c3755c9fbf6530f3536","matches_expected":true,"path":"/usr/local/sbin/homelab-reader-server-v3"}],"source_state":"MATCH","static_response_trace":{"ast_parse_ok":true,"capability_prefix_count":1,"capability_prefix_templates":["//"],"executor_callsite_count":0,"executor_callsites":[],"handler_count":1,"handlers":[{"name_sha256":"53cae329634a4eaa67f565e1de442e3ed98d11f793681c424a168743651dfb67","reachable_method_count":4}],"reachable_methods":["do_GET","do_HEAD","handle_reader","reply"],"resolved_scope_names":["CAPABILITY","PORT"],"response_callsite_count":10,"response_callsites":[{"arg_count":3,"call":"reply","evidence_sha256":"77d365a0c27eb0fe26c4f2cbb8bd45b0bc259b01eefe2e6dba00535e1cfd0d25","method":"handle_reader"},{"arg_count":3,"call":"reply","evidence_sha256":"77d365a0c27eb0fe26c4f2cbb8bd45b0bc259b01eefe2e6dba00535e1cfd0d25","method":"handle_reader"},{"arg_count":5,"call":"reply","evidence_sha256":"b99d9fa0cdc7a28c6e35d5b156081da12ba8b1545d5d54f3438429d7a3f29768","method":"handle_reader"},{"arg_count":5,"call":"reply","evidence_sha256":"0a7d83afc7fee504cc0ecaf6d11c237a6500c636ccb22d0318cd17b967c9d4c4","method":"handle_reader"},{"arg_count":3,"call":"reply","evidence_sha256":"77d365a0c27eb0fe26c4f2cbb8bd45b0bc259b01eefe2e6dba00535e1cfd0d25","method":"handle_reader"},{"arg_count":5,"call":"reply","evidence_sha256":"2174dd0ec6bfea4be6dfea06e7d7597b87c3c1dd1035788fcfe13667539d252b","method":"handle_reader"},{"arg_count":3,"call":"reply","evidence_sha256":"c715a75a14cdd51442830a80cd85de1fdb81b0faa03474cf61b6ea023a6c3aed","method":"handle_reader"},{"arg_count":3,"call":"reply","evidence_sha256":"c096c351e7c8ead4129a1b60e97cb2da046bd7e19d66368edc46ebc13c955bcb","method":"handle_reader"},{"arg_count":3,"call":"reply","evidence_sha256":"c715a75a14cdd51442830a80cd85de1fdb81b0faa03474cf61b6ea023a6c3aed","method":"handle_reader"},{"arg_count":1,"call":"send_response","evidence_sha256":"fb7751c9820c4747270a729210fc1dbcfb87d0a9530211c65f51cb29b81defe2","method":"reply"}],"self_call_edges":[{"from":"do_GET","to":"handle_reader"},{"from":"do_HEAD","to":"handle_reader"},{"from":"handle_reader","to":"reply"}],"source_suffix_literal_count":2,"source_suffix_literal_templates":["feed","health"]},"status":"OK","systemd_identity":{"identity_valid":true,"pid_count":1,"probe":{"duration_seconds":0.007,"rc":0,"stderr_bytes":0,"stderr_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","stderr_truncated":false,"stdout_bytes":375,"stdout_sha256":"49094d65d3787c1479e6408e1fefb7af3758d0fa55e1d37bf22907442aab35e9","stdout_truncated":false},"properties":{"ActiveState":"active","ControlGroup":"/system.slice/homelab-reader-v3.service","ExecStart_present":true,"ExecStart_sha256":"2500fde09569176736b4f2f1dd29d6289b6a6ae6a59b52b6a3c31f797f567379","FragmentPath":"/etc/systemd/system/homelab-reader-v3.service","LoadState":"loaded","MainPID":"1282","SubState":"running"}}} +HOMELAB_RESULT_CONTRACT={"changes_made":false,"command_id":"HOMELAB-CLUSTER-ADMIN-UPDATES-DISCOVERY-V1-READ-ONLY-20260805T094500Z","command_rc":1,"control_plane_error":null,"mutation_outcome":"NO_MUTATION","rc":1,"rollback_restored":false,"rollback_started":false,"schema":1,"status":"FAIL"} +{"changes_made":false,"command_id":"HOMELAB-CLUSTER-ADMIN-UPDATES-DISCOVERY-V1-READ-ONLY-20260805T094500Z","error":"pvesh /nodes did not return an array","error_type":"RuntimeError","mutation_outcome":"NO_MUTATION","read_only":true,"rollback_restored":false,"rollback_started":false,"schema":1,"status":"FAIL"} OUTPUT_END CHAT_OUTPUT_END