TCS 0.1; PROTOCOL TCS-HOST-STRUCTURED-OBJECT-TREE-OBSERVATION-0001 { header { schema = "tcs.protocol/v1"; name_zh = "宿主结构化对象树只读观察协议"; name_en = "Host Structured Object Tree Read Only Observation Protocol"; version = "0.1.0"; language = "TCS/0.1"; profile = "HLDP-NP/1"; lifecycle = "CANDIDATE"; canonical_uri = "language/protocols/TCS-HOST-STRUCTURED-OBJECT-TREE-OBSERVATION-0001.tcs"; compatibility = ["TCS-COMPILER-STAGE6-HOST-OBJECT-OBSERVATION-0001", "GIR/1"]; } source { reasoning_anchor_sha256 = "987600f9f2a52821425d9e5a3d3b5350415912588cf522ef3384d282cb0a26bf"; engineering_anchor_sha256 = "a3dd8dbd2203b631bdb23f2693eb314d4ef86af68fdeaee8835e3cf0861ddd23"; comparison = "PASS_TCS_BRAIN_AND_SHARED_COMPUTER_REQUIRE_SAME_CANONICAL_WORLD_WITHOUT_OLD_LANGUAGE_SEMANTIC_AUTHORITY"; } primitive { operation = "CORE.OBSERVE_HOST_OBJECT_TREE"; host_role = "MECHANICAL_READ_ONLY_ADAPTER"; semantic_owner = "CALLING_TCS_GIR"; first_adapter = "MACOS_ACCESSIBILITY"; natural_language_interpretation = false; product_action = false; } request { platform = "MACOS"; root = "FOCUSED_APPLICATION"; mode = "READ_ONLY"; trust_prompt = false; max_depth_min = 0; max_depth_max = 4; max_nodes_min = 1; max_nodes_max = 512; attributes = ["ROLE", "SUBROLE", "TITLE_HASH", "VALUE_KIND", "ENABLED", "FOCUSED", "CHILDREN"]; } identity { snapshot_id = "SHA256_HOST_BINARY_PID_AND_OBSERVATION_TIME"; object_id = "SHA256_HOST_SNAPSHOT_PID_AX_PATH_ROLE_AND_SUBROLE"; tree_hash = "SHA256_CANONICAL_OBSERVED_TREE"; scope = "ONE_SNAPSHOT_ONE_HOST_ADAPTER"; coordinates_are_identity = false; screenshot_is_identity = false; missing_role = "PRESERVE_UNKNOWN_NO_GUESS"; } output { states = ["OBSERVED_TARGET_READBACK_VERIFIED", "HALTED_ACCESSIBILITY_PERMISSION_NOT_GRANTED", "HALTED_NO_FOCUSED_APPLICATION", "HALTED_OBSERVATION_ERROR"]; tree_hash_required_when_observed = true; permission_prompted = false; desktop_action_attempted = false; network_action = false; host_semantic_authority = false; } permission { current_stage_may_read_trust_state = true; current_stage_may_open_system_settings = false; current_stage_may_request_tcc_prompt = false; current_stage_may_execute_ax_action = false; separate_direct_human_permission_required_after_denial = true; } privacy { title_plaintext_persisted = false; title_projection = ["TITLE_PRESENT", "TITLE_SHA256"]; value_plaintext_persisted = false; value_projection = "VALUE_KIND_ONLY"; raw_accessibility_tree_committed_to_git = false; local_raw_diagnostic_if_created = "MOVE_TO_ACCOUNT_ONLY_PRIVATE_EVIDENCE_AND_NEVER_REMOTE"; } failure { unsupported_platform = "TCS-E2101"; invalid_scope = "TCS-E4002"; accessibility_not_granted = "TCS-HOST-E4003"; observation_failed = "TCS-HOST-E5102"; write_or_action_request = "TCS-E4001"; fail_closed = true; } boundary { tcs_is_product_semantic_source = true; rust_swift_objc_or_os_api_is_mechanical_projection_only = true; no_old_language_ui_or_product_rule = true; no_control_permission_inference = true; no_real_action_completion_claim = true; } }