CHAT_OUTPUT_BEGIN
COMMAND_ID=HOMELAB-CLUSTER-KB-V1-READER-V3-SANITIZED-BYTECODE-BRANCH-TRACE-READ-ONLY-20260805T095300Z
STATUS=OK
RC=0
HOST=pve01
MODE=verify
COMPONENT=cluster-knowledge-base-error-system
REFERENCE_REGISTER_CHECK=OK
REFERENCE_SHA256=5763f2f8edc75fcf6f3951f8c95896d1cc112ceccb6cf5b64a383f540a4deb8e
ERROR_REGISTER_CHECK=OK
ERROR_REGISTER_SHA256=24934a2c7fa5c26f6e828583c4aefac7f143b40c0171736ed7571e617d55ab83
COMMAND_SHA256=67e1eb945e8d38ccd188e516e419f194734c9d3b71ccb78ccd7ceba8df75f768
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
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=1c4ceb575201d7aa2a512efe92329d7faea09c277cbcc247c5fae4cea9b35780
SANITIZED_OUTPUT_SHA256=1c4ceb575201d7aa2a512efe92329d7faea09c277cbcc247c5fae4cea9b35780
OUTPUT_BEGIN
HOMELAB_RESULT_CONTRACT={"changes_made":false,"command_id":"HOMELAB-CLUSTER-KB-V1-READER-V3-SANITIZED-BYTECODE-BRANCH-TRACE-READ-ONLY-20260805T095300Z","command_rc":0,"mutation_outcome":"NO_MUTATION","output_truncated_in_json":false,"rc":0,"rollback_restored":null,"rollback_started":false,"status":"OK","version":1}
{"changes_made":false,"command_id":"HOMELAB-CLUSTER-KB-V1-READER-V3-SANITIZED-BYTECODE-BRANCH-TRACE-READ-ONLY-20260805T095300Z","command_rc":0,"correction_of_previous_logic_gap":{"exact_fix":"compile only the SHA-verified Reader Python source, derive sanitized route operations from bytecode branch constants intersected with AST path literals, and execute only those exact operations inside the fake-executor sandbox","proven_gap":"the previous sandbox used only a generic synthetic suffix even though exact compiled branch constants contained the allowed post-capability operations; all candidates therefore hit the 404 branch","regression_test":"a handler whose exact feed branch calls pvesh get through a global helper must yield a redacted accepted feed route, JSON response schema, and read-only executor proof without source, capability or address disclosure"},"error_fingerprint":"f98fa5c6dec20928ee530acb4189a9ee8dceb9eeb1d09ace9b218f6762352eda","latest_exact_result_basis":{"capsule_sha256":"e190133443593432f8052981682b70ae5a8f7b558a8e496bacd0cc5f0c6badd0","changes_made":false,"command_id":"HOMELAB-CLUSTER-KB-V1-READER-V3-RESPONSE-SCHEMA-TRACE-READ-ONLY-20260805T093700Z","command_rc":0,"control_plane_error":null,"error_fingerprint":"4f622d4fa3cce396ac26ca80b4d17c497f430bdde1687512541593396feb3a38","mutation_outcome":"NO_MUTATION","next_action":"RUN_ONE_READ_ONLY_READER_V3_SANITIZED_BYTECODE_BRANCH_TRACE","output_complete":true,"output_sha256":"656ff305c3362e8232fa3f1a8867a106947115cb2946a6f0f5bd67b0dac1adcc","output_truncated_in_json":false,"rc":0,"rollback_restored":null,"rollback_started":false,"root_cause_classification":"READER_V3_RESPONSE_SCHEMA_TRACE_INCONCLUSIVE","runner_document_rc":0,"runner_json_sha256":"277aa79e142e66d7d559f40e67f008d8449e7ba9a546d4205a672084ac41303b","runner_rc":0,"runner_text_sha256":"a5f95a77546bc9e3b4f2873955ca93f52ec0d0c9763bdcb0a64f7c02908599dd","runner_wrapper_matches_document":true,"status":"OK"},"mutation_outcome":"NO_MUTATION","next_action":"RUN_ONE_READ_ONLY_READER_V3_EXECUTOR_ARGUMENT_ORIGIN_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"},{"id":"reader-generic-suffix-missed-exact-operation-20260805","prevention":"derive route operations from exact compiled branch constants and intersect them with AST path literals before sandbox execution"}]},"prevention_test":{"must_run_before_future_cluster_or_gitea_commands":true,"name":"reader_v3_sanitized_bytecode_branch_preflight","requirements":["verify exact Reader source SHA","bind process to exact systemd ControlGroup","compile only the Python server source","intersect bytecode branch constants with AST path literals","execute only exact derived operations inside a fake-executor sandbox","prove pvesh get or another classified read-only executor before any live route probe","never output capability values, private addresses, raw source, disassembly 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":12329,"compacted":false,"max_bytes":36000},"rollback_restored":null,"rollback_started":false,"root_cause_classification":"READER_V3_EXACT_OPERATION_ACCEPTED_BUT_READ_ONLY_INVENTORY_SCHEMA_NOT_PROVEN","sandbox_exact_operation_trace":{"accepted_count":1,"accepted_operation_count":1,"accepted_operations":["health"],"candidate_count":5,"live_probe_contract_ready":false,"read_only_inventory_operation_count":0,"read_only_inventory_operations":[],"trace_count":5,"traces":[{"body_bytes":10,"body_sha256":"709009e02c8e364113b28205aadde30cce270d709073f28153c85fdc5036c96d","candidate_variant":"capability-root","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":"/<capability>/","source_operation":null,"status":404},{"body_bytes":13,"body_sha256":"326ce78e3deb6574ce072bbe8379c0e4deb1cb12c160a0f1a8161f8ddc6f4bd7","candidate_variant":"exact-operation","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":"/<capability>/feed","source_operation":"feed","status":500},{"body_bytes":10,"body_sha256":"709009e02c8e364113b28205aadde30cce270d709073f28153c85fdc5036c96d","candidate_variant":"trailing-slash-control","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":"/<capability>/feed/","source_operation":"feed","status":404},{"body_bytes":28,"body_sha256":"d586dec8dc8bb3079d14c0829a1e0fe82817fa21e5080ef7f4233473dfc97689","candidate_variant":"exact-operation","content_type":"application/json; charset=utf-8","error_count":0,"executor_call_count":0,"executor_calls":[],"executor_calls_all_read_only":false,"json":{"top_key_count":2,"top_keys":["status","version"],"type":"dict"},"response_header_names":["cache-control","content-length","content-type","etag","expires","pragma","surrogate-control","x-homelab-generation","x-robots-tag"],"route_template":"/<capability>/health","source_operation":"health","status":200},{"body_bytes":10,"body_sha256":"709009e02c8e364113b28205aadde30cce270d709073f28153c85fdc5036c96d","candidate_variant":"trailing-slash-control","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":"/<capability>/health/","source_operation":"health","status":404}]},"sanitized_bytecode_branch_trace":{"branch_instruction_count":14,"branch_literal_count":7,"branch_literal_templates":["X-Homelab-Generation","X-Robots-Tag","feed","health","health-v3","include_body","results"],"bytecode_disassembly_emitted":false,"bytecode_literal_count":28,"call_instruction_count":53,"code_object_count":8,"compile_ok":true,"exact_branch_operation_count":2,"exact_compiled_operation_count":2,"operation_suffixes":["feed","health"],"operation_suffixes_sha256":"7b2583665af60a5f63c575c89ecaff1cd688710d29507b6d79238e5d9ca5e58b","raw_source_emitted":false,"source_literal_count":2},"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_selection":{"raw_source_emitted":false,"selected_path":"/usr/local/sbin/homelab-reader-server-v3","systemd_unit_excluded":true},"source_state":"MATCH","static_response_trace":{"ast_parse_ok":true,"capability_prefix_count":1,"capability_prefix_templates":["/<capability>/"],"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.005,"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"}}}

OUTPUT_END
CHAT_OUTPUT_END
