1
0
Files
homelab-public-context/runtime/latest.txt
T

35 lines
23 KiB
Plaintext

CHAT_OUTPUT_BEGIN
COMMAND_ID=HOMELAB-CLUSTER-KB-V1-READER-V3-FAKE-DEPENDENCY-CONTRACT-FIX-READ-ONLY-20260805T104000Z
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=27e9d986cc5280c8fee14ef647fd09b807bf939336d0dbd7f4d38c54286ab54c
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=8b175d403825bf21d0222a3ecb18a502790378b739bf85e140c62740af58fb89
SANITIZED_OUTPUT_SHA256=8b175d403825bf21d0222a3ecb18a502790378b739bf85e140c62740af58fb89
OUTPUT_BEGIN
HOMELAB_RESULT_CONTRACT={"changes_made":false,"command_id":"HOMELAB-CLUSTER-KB-V1-READER-V3-FAKE-DEPENDENCY-CONTRACT-FIX-READ-ONLY-20260805T104000Z","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-FAKE-DEPENDENCY-CONTRACT-FIX-READ-ONLY-20260805T104000Z","command_rc":0,"correction_of_previous_logic_gap":{"exact_fix":"derive manifest keys and access modes from the exact handler AST, test bounded string-list, rich-object-list, mapping, scalar and top-level mapping fixtures, and require two distinct read-only paths including the regex-matched result file","proven_gap":"the prior result proved RESULT_RE fullmatch but all successful production fixtures still read only MANIFEST; the fake manifest container shape did not match the exact Reader dependency contract","regression_test":"an exact handler using a non-default manifest key and dict.items must select a source-derived mapping fixture, read both MANIFEST and the RESULT_RE-matched file, return structured JSON, and keep all real effects blocked"},"error_fingerprint":"f625204be2a45aca4b0e31f18a66146eee3d05ca9cb2d6705b9a821bfc0e993e","latest_exact_result_basis":{"capsule_sha256":"c1bf540b8af3111c34ac23fd1ed5ce1d9115a6dafdfa9f47d8559afe2a9d4789","changes_made":false,"command_id":"HOMELAB-CLUSTER-KB-V1-READER-V3-UNRESOLVED-GLOBAL-BINDING-TRACE-READ-ONLY-20260805T102300Z","command_rc":0,"control_plane_error":null,"error_fingerprint":"1f7e91361842a64a5cf2549e37a5014cd149154bee51dbcd3b7ac635e0924047","mutation_outcome":"NO_MUTATION","next_action":"RUN_ONE_READ_ONLY_READER_V3_FAKE_DEPENDENCY_CONTRACT_FIX","output_complete":true,"output_sha256":"f64e9bbd9b05f8462d1484d5bf437d49efc42cc50a20a6d81ff7a7b46e293ef9","output_truncated_in_json":false,"rc":0,"rollback_restored":null,"rollback_started":false,"root_cause_classification":"READER_V3_FEED_CAUGHT_EXCEPTION_ORIGIN_PROVEN","runner_document_rc":0,"runner_json_sha256":"c67a7a94816c1c30c1b5b7a718139108cc6319c6ae55387e6186db2604ed7778","runner_rc":0,"runner_text_sha256":"fbed4d1ad2f339c147bdc014aa6f4cf279d72ee765be85d10cef8041cfe64563","runner_wrapper_matches_document":true,"status":"OK"},"mutation_outcome":"NO_MUTATION","next_action":"RUN_ONE_READ_ONLY_READER_V3_EXACT_MANIFEST_SCHEMA_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"},{"id":"reader-feed-500-without-origin-20260805","prevention":"before any live feed request, trace global helper reachability, exact executor/file argument origins and caught sandbox exceptions; health alone never proves inventory safety"},{"id":"reader-sandbox-global-binding-undefined-20260805","prevention":"materialize reachable module globals only through a strict AST allowlist; Path joins and re.compile are allowed, arbitrary calls are blocked, and MANIFEST/RESULTS/RESULT_RE are regression-tested before any live request"},{"id":"reader-negative-control-exception-polluted-classification-20260805","prevention":"negative-control exceptions are reported separately and can never determine the production readiness classification"},{"id":"reader-result-regex-candidate-not-proven-20260805","prevention":"derive one bounded matching filename from the exact compiled RESULT_RE in memory, verify fullmatch, and emit only length and hashes"},{"id":"reader-fake-dependency-contract-incomplete-20260805","prevention":"derive manifest access keys and container shapes from the exact handler AST, test bounded list/object/map/scalar fixtures, and require two distinct read-only file paths before any live request"}]},"prevention_test":{"must_run_before_future_cluster_or_gitea_commands":true,"name":"reader_v3_fake_dependency_contract_preflight","requirements":["verify exact Reader source SHA and systemd identity","materialize reachable module globals only through the strict AST allowlist","require MANIFEST, RESULTS and RESULT_RE to be bound when referenced by the feed path","derive manifest keys and access modes from the exact handler AST","test bounded string-list, rich-list, mapping, scalar and top-level mapping fixture shapes","derive and fullmatch one bounded RESULT_RE filename without emitting regex text or candidate text","keep negative-control exceptions separate from production readiness","require two distinct fake read-only file paths including the result file and structured JSON before any live request","block arbitrary assignment calls and every real network, executor or filesystem mutation","never output capability values, private addresses, raw source, regex text 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_file_mutations_made":false,"real_network_requests_made":false,"result_projection":{"bytes_before_projection":33249,"compacted":false,"max_bytes":36000},"rollback_restored":null,"rollback_started":false,"root_cause_classification":"READER_V3_FEED_CAUGHT_EXCEPTION_ORIGIN_PROVEN","sandbox_global_binding_trace":{"caught_exception_types":["AttributeError"],"live_probe_contract_ready":false,"manifest_contract":{"access_modes":[],"key_count":0,"keys":[],"manifest_variable_count":1,"raw_source_emitted":false},"negative_control_exception_types":["NameError"],"ready_variant_count":0,"ready_variant_names":[],"regex_matching_variant_count":8,"result_file_read_variant_count":0,"tested_profile_names":["control","source-keys-string-list","source-keys-rich-list","source-keys-map","source-keys-scalar","top-level-result-map","manifest-object-results","manifest-list","result-object"],"variant_count":9,"variant_evidence_count":6,"variants":[{"all_effects_read_only":false,"body_bytes":13,"body_sha256":"326ce78e3deb6574ce072bbe8379c0e4deb1cb12c160a0f1a8161f8ddc6f4bd7","caught_exception_count":1,"caught_exceptions":[{"line":60,"message":"name 'MANIFEST' is not defined","message_sha256":"7ffaa9a9433abf55defe29684eca6160f703dc251b5b9ab47ccbd33b3dd3411c","symbol":"handle_reader","type":"NameError"}],"content_type":"text/plain; charset=utf-8","data_source_call_count":0,"distinct_read_path_count":0,"effect_call_count":0,"effects":[],"handler_error_count":0,"json":null,"live_probe_contract_ready":false,"manifest_contract":{"access_modes":[],"key_count":0,"keys":[],"manifest_variable_count":1,"raw_source_emitted":false},"module_projection":{"excluded_assignment_count":6,"excluded_assignment_names":["CAPABILITY","MANIFEST","PORT","RESULTS","RESULT_RE","ROOT"],"include_safe_assignments":false,"included_assignment_count":0,"included_assignment_names":[]},"regex_candidate_contract":{"candidate_fullmatch":false,"candidate_generated":false,"candidate_length":null,"candidate_sha256":null,"compiled_pattern_present":false,"pattern_sha256":null,"pattern_text_emitted":false},"response_header_names":["cache-control","content-length","content-type","expires","pragma","surrogate-control","x-robots-tag"],"result_file_read_proven":false,"route_template":"/<capability>/feed","source_call_count":3,"source_calls":[{"line":42,"symbol":"do_GET"},{"line":45,"symbol":"handle_reader"},{"line":23,"symbol":"reply"}],"status":500,"variant":"definitions-plus-resolved-scope-control"},{"all_effects_read_only":true,"body_bytes":13,"body_sha256":"326ce78e3deb6574ce072bbe8379c0e4deb1cb12c160a0f1a8161f8ddc6f4bd7","caught_exception_count":1,"caught_exceptions":[{"line":62,"message":"'list' object has no attribute 'get'","message_sha256":"73c2dbfd4deaed7a7fafa1d233c6631ae8d7650f0d5f3bce5a9da6386d739734","symbol":"handle_reader","type":"AttributeError"}],"content_type":"text/plain; charset=utf-8","data_source_call_count":1,"distinct_read_path_count":1,"effect_call_count":1,"effects":[{"kind":"path.read_bytes","mode":"r","origin_type":"file","path_class":"/var","path_sha256":"e3e86f7cca26be90bb29b569ebbc865b3b544ad6f47fb1e976afae301aa02aca","read_only_basis":"file_read","read_only_proven":true}],"handler_error_count":0,"json":null,"live_probe_contract_ready":false,"manifest_contract":{"access_modes":[],"key_count":0,"keys":[],"manifest_variable_count":1,"raw_source_emitted":false},"module_projection":{"excluded_assignment_count":0,"excluded_assignment_names":[],"include_safe_assignments":true,"included_assignment_count":6,"included_assignment_names":["CAPABILITY","MANIFEST","PORT","RESULTS","RESULT_RE","ROOT"]},"regex_candidate_contract":{"candidate_fullmatch":true,"candidate_generated":true,"candidate_length":70,"candidate_sha256":"27a097a71de27938e5281eb61506b29a833e1cb65c0ec59f4d8eaff7108a1b20","compiled_pattern_present":true,"pattern_sha256":"cc0d3d6eeabb57c6262c3e83d6561e587ad62b5f370dab9cbf080b67c533b47c","pattern_text_emitted":false},"response_header_names":["cache-control","content-length","content-type","expires","pragma","surrogate-control","x-robots-tag"],"result_file_read_proven":false,"route_template":"/<capability>/feed","source_call_count":3,"source_calls":[{"line":42,"symbol":"do_GET"},{"line":45,"symbol":"handle_reader"},{"line":23,"symbol":"reply"}],"status":500,"variant":"manifest-list"},{"all_effects_read_only":true,"body_bytes":413,"body_sha256":"c9a7f661d84dc4e503844d1418a169a221d1d65d7da9f7f8b42753cdb535d8b9","caught_exception_count":0,"caught_exceptions":[],"content_type":"application/json; charset=utf-8","data_source_call_count":1,"distinct_read_path_count":1,"effect_call_count":1,"effects":[{"kind":"path.read_bytes","mode":"r","origin_type":"file","path_class":"/var","path_sha256":"e3e86f7cca26be90bb29b569ebbc865b3b544ad6f47fb1e976afae301aa02aca","read_only_basis":"file_read","read_only_proven":true}],"handler_error_count":0,"json":{"top_key_count":9,"top_keys":["entries","files","generation","items","rc","results","schema","status","version"],"type":"dict"},"live_probe_contract_ready":false,"manifest_contract":{"access_modes":[],"key_count":0,"keys":[],"manifest_variable_count":1,"raw_source_emitted":false},"module_projection":{"excluded_assignment_count":0,"excluded_assignment_names":[],"include_safe_assignments":true,"included_assignment_count":6,"included_assignment_names":["CAPABILITY","MANIFEST","PORT","RESULTS","RESULT_RE","ROOT"]},"regex_candidate_contract":{"candidate_fullmatch":true,"candidate_generated":true,"candidate_length":70,"candidate_sha256":"27a097a71de27938e5281eb61506b29a833e1cb65c0ec59f4d8eaff7108a1b20","compiled_pattern_present":true,"pattern_sha256":"cc0d3d6eeabb57c6262c3e83d6561e587ad62b5f370dab9cbf080b67c533b47c","pattern_text_emitted":false},"response_header_names":["cache-control","content-length","content-type","etag","expires","pragma","surrogate-control","x-homelab-generation","x-robots-tag"],"result_file_read_proven":false,"route_template":"/<capability>/feed","source_call_count":3,"source_calls":[{"line":42,"symbol":"do_GET"},{"line":45,"symbol":"handle_reader"},{"line":23,"symbol":"reply"}],"status":200,"variant":"source-keys-string-list"},{"all_effects_read_only":true,"body_bytes":2569,"body_sha256":"7f6beff186df6e00795b3d931fbfd0e12eb00bfc2676840f3c2bd43a9fc09631","caught_exception_count":0,"caught_exceptions":[],"content_type":"application/json; charset=utf-8","data_source_call_count":1,"distinct_read_path_count":1,"effect_call_count":1,"effects":[{"kind":"path.read_bytes","mode":"r","origin_type":"file","path_class":"/var","path_sha256":"e3e86f7cca26be90bb29b569ebbc865b3b544ad6f47fb1e976afae301aa02aca","read_only_basis":"file_read","read_only_proven":true}],"handler_error_count":0,"json":{"top_key_count":9,"top_keys":["entries","files","generation","items","rc","results","schema","status","version"],"type":"dict"},"live_probe_contract_ready":false,"manifest_contract":{"access_modes":[],"key_count":0,"keys":[],"manifest_variable_count":1,"raw_source_emitted":false},"module_projection":{"excluded_assignment_count":0,"excluded_assignment_names":[],"include_safe_assignments":true,"included_assignment_count":6,"included_assignment_names":["CAPABILITY","MANIFEST","PORT","RESULTS","RESULT_RE","ROOT"]},"regex_candidate_contract":{"candidate_fullmatch":true,"candidate_generated":true,"candidate_length":70,"candidate_sha256":"27a097a71de27938e5281eb61506b29a833e1cb65c0ec59f4d8eaff7108a1b20","compiled_pattern_present":true,"pattern_sha256":"cc0d3d6eeabb57c6262c3e83d6561e587ad62b5f370dab9cbf080b67c533b47c","pattern_text_emitted":false},"response_header_names":["cache-control","content-length","content-type","etag","expires","pragma","surrogate-control","x-homelab-generation","x-robots-tag"],"result_file_read_proven":false,"route_template":"/<capability>/feed","source_call_count":3,"source_calls":[{"line":42,"symbol":"do_GET"},{"line":45,"symbol":"handle_reader"},{"line":23,"symbol":"reply"}],"status":200,"variant":"source-keys-rich-list"},{"all_effects_read_only":true,"body_bytes":2861,"body_sha256":"f4c751cad191814cccfebb086aea7c85cd611fd1d47c91def1326919cbe11a0d","caught_exception_count":0,"caught_exceptions":[],"content_type":"application/json; charset=utf-8","data_source_call_count":1,"distinct_read_path_count":1,"effect_call_count":1,"effects":[{"kind":"path.read_bytes","mode":"r","origin_type":"file","path_class":"/var","path_sha256":"e3e86f7cca26be90bb29b569ebbc865b3b544ad6f47fb1e976afae301aa02aca","read_only_basis":"file_read","read_only_proven":true}],"handler_error_count":0,"json":{"top_key_count":9,"top_keys":["entries","files","generation","items","rc","results","schema","status","version"],"type":"dict"},"live_probe_contract_ready":false,"manifest_contract":{"access_modes":[],"key_count":0,"keys":[],"manifest_variable_count":1,"raw_source_emitted":false},"module_projection":{"excluded_assignment_count":0,"excluded_assignment_names":[],"include_safe_assignments":true,"included_assignment_count":6,"included_assignment_names":["CAPABILITY","MANIFEST","PORT","RESULTS","RESULT_RE","ROOT"]},"regex_candidate_contract":{"candidate_fullmatch":true,"candidate_generated":true,"candidate_length":70,"candidate_sha256":"27a097a71de27938e5281eb61506b29a833e1cb65c0ec59f4d8eaff7108a1b20","compiled_pattern_present":true,"pattern_sha256":"cc0d3d6eeabb57c6262c3e83d6561e587ad62b5f370dab9cbf080b67c533b47c","pattern_text_emitted":false},"response_header_names":["cache-control","content-length","content-type","etag","expires","pragma","surrogate-control","x-homelab-generation","x-robots-tag"],"result_file_read_proven":false,"route_template":"/<capability>/feed","source_call_count":3,"source_calls":[{"line":42,"symbol":"do_GET"},{"line":45,"symbol":"handle_reader"},{"line":23,"symbol":"reply"}],"status":200,"variant":"source-keys-map"},{"all_effects_read_only":true,"body_bytes":405,"body_sha256":"7d51795cb0f426b85ebf5252a4aa8ca2586992c1af24c0929b831d1e315829f6","caught_exception_count":0,"caught_exceptions":[],"content_type":"application/json; charset=utf-8","data_source_call_count":1,"distinct_read_path_count":1,"effect_call_count":1,"effects":[{"kind":"path.read_bytes","mode":"r","origin_type":"file","path_class":"/var","path_sha256":"e3e86f7cca26be90bb29b569ebbc865b3b544ad6f47fb1e976afae301aa02aca","read_only_basis":"file_read","read_only_proven":true}],"handler_error_count":0,"json":{"top_key_count":9,"top_keys":["entries","files","generation","items","rc","results","schema","status","version"],"type":"dict"},"live_probe_contract_ready":false,"manifest_contract":{"access_modes":[],"key_count":0,"keys":[],"manifest_variable_count":1,"raw_source_emitted":false},"module_projection":{"excluded_assignment_count":0,"excluded_assignment_names":[],"include_safe_assignments":true,"included_assignment_count":6,"included_assignment_names":["CAPABILITY","MANIFEST","PORT","RESULTS","RESULT_RE","ROOT"]},"regex_candidate_contract":{"candidate_fullmatch":true,"candidate_generated":true,"candidate_length":70,"candidate_sha256":"27a097a71de27938e5281eb61506b29a833e1cb65c0ec59f4d8eaff7108a1b20","compiled_pattern_present":true,"pattern_sha256":"cc0d3d6eeabb57c6262c3e83d6561e587ad62b5f370dab9cbf080b67c533b47c","pattern_text_emitted":false},"response_header_names":["cache-control","content-length","content-type","etag","expires","pragma","surrogate-control","x-homelab-generation","x-robots-tag"],"result_file_read_proven":false,"route_template":"/<capability>/feed","source_call_count":3,"source_calls":[{"line":42,"symbol":"do_GET"},{"line":45,"symbol":"handle_reader"},{"line":23,"symbol":"reply"}],"status":200,"variant":"source-keys-scalar"}]},"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_executor_argument_origin_trace":{"all_resolved_origins_read_only":true,"call_edge_count":3,"call_edges":[{"from":"Handler.do_GET","to":"Handler.handle_reader"},{"from":"Handler.do_HEAD","to":"Handler.handle_reader"},{"from":"Handler.handle_reader","to":"Handler.reply"}],"handler_roots":["Handler.do_GET","Handler.do_HEAD"],"raw_source_emitted":false,"reachable_data_origin_count":2,"reachable_data_origins":[{"argument_origin_names":[],"argument_resolved":false,"call":"MANIFEST.read_bytes","evidence_sha256":"3b9f9140c901f027be26f124b8c983ccfddbb3a62b03a416b5e7bfbb19f9fe59","kind":"file","mode":"r","origin_symbol":"Handler.handle_reader","path_class":null,"path_sha256":null,"read_only_basis":"file_read","read_only_proven":true},{"argument_origin_names":[],"argument_resolved":false,"call":"target.read_bytes","evidence_sha256":"aa896c2be567c54cf2da0cf24792da33575188def3c5d95fda4745ed3de4fdaf","kind":"file","mode":"r","origin_symbol":"Handler.handle_reader","path_class":null,"path_sha256":null,"read_only_basis":"file_read","read_only_proven":true}],"reachable_symbol_count":4,"reachable_symbols":["Handler.do_GET","Handler.do_HEAD","Handler.handle_reader","Handler.reply"],"unresolved_origin_count":2},"static_response_trace":{"ast_parse_ok":true,"capability_prefix_count":1,"capability_prefix_templates":["/<capability>/"],"handler_count":1,"reachable_methods":["do_GET","do_HEAD","handle_reader","reply"],"resolved_scope_names":["CAPABILITY","PORT"],"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