tests/gateway/test_config_driven_access_policy.py::test_base_adapter_defaults_to_not_owning_access_policy tests/gateway/test_config_driven_access_policy.py::test_own_policy_adapters_declare_the_flag[gateway.platforms.wecom-WeComAdapter] tests/gateway/test_config_driven_access_policy.py::test_own_policy_adapters_declare_the_flag[gateway.platforms.weixin-WeixinAdapter] tests/gateway/test_config_driven_access_policy.py::test_own_policy_adapters_declare_the_flag[gateway.platforms.yuanbao-YuanbaoAdapter] tests/gateway/test_config_driven_access_policy.py::test_own_policy_adapters_declare_the_flag[gateway.platforms.qqbot.adapter-QQAdapter] tests/gateway/test_config_driven_access_policy.py::test_own_policy_adapters_declare_the_flag[gateway.platforms.whatsapp-WhatsAppAdapter] tests/gateway/test_config_driven_access_policy.py::test_own_policy_allowlist_authorized_without_env_allowlist[Platform.WECOM] tests/gateway/test_config_driven_access_policy.py::test_own_policy_allowlist_authorized_without_env_allowlist[Platform.WEIXIN] tests/gateway/test_config_driven_access_policy.py::test_own_policy_allowlist_authorized_without_env_allowlist[Platform.YUANBAO] tests/gateway/test_config_driven_access_policy.py::test_own_policy_allowlist_authorized_without_env_allowlist[Platform.QQBOT] tests/gateway/test_config_driven_access_policy.py::test_own_policy_allowlist_authorized_without_env_allowlist[Platform.WHATSAPP] tests/gateway/test_config_driven_access_policy.py::test_own_policy_open_dm_not_authorized_without_allowlist[Platform.WECOM] tests/gateway/test_config_driven_access_policy.py::test_own_policy_open_dm_not_authorized_without_allowlist[Platform.WEIXIN] tests/gateway/test_config_driven_access_policy.py::test_own_policy_open_dm_not_authorized_without_allowlist[Platform.YUANBAO] tests/gateway/test_config_driven_access_policy.py::test_own_policy_open_dm_not_authorized_without_allowlist[Platform.QQBOT] tests/gateway/test_config_driven_access_policy.py::test_own_policy_open_dm_not_authorized_without_allowlist[Platform.WHATSAPP] tests/gateway/test_config_driven_access_policy.py::test_own_policy_default_open_dm_is_fail_closed[Platform.WECOM] tests/gateway/test_config_driven_access_policy.py::test_own_policy_default_open_dm_is_fail_closed[Platform.WEIXIN] tests/gateway/test_config_driven_access_policy.py::test_own_policy_default_open_dm_is_fail_closed[Platform.YUANBAO] tests/gateway/test_config_driven_access_policy.py::test_own_policy_default_open_dm_is_fail_closed[Platform.QQBOT] tests/gateway/test_config_driven_access_policy.py::test_own_policy_default_open_dm_is_fail_closed[Platform.WHATSAPP] tests/gateway/test_config_driven_access_policy.py::test_own_policy_allowlist_authorized_for_group_chat[Platform.WECOM] tests/gateway/test_config_driven_access_policy.py::test_own_policy_allowlist_authorized_for_group_chat[Platform.WEIXIN] tests/gateway/test_config_driven_access_policy.py::test_own_policy_allowlist_authorized_for_group_chat[Platform.YUANBAO] tests/gateway/test_config_driven_access_policy.py::test_own_policy_allowlist_authorized_for_group_chat[Platform.QQBOT] tests/gateway/test_config_driven_access_policy.py::test_own_policy_allowlist_authorized_for_group_chat[Platform.WHATSAPP] tests/gateway/test_config_driven_access_policy.py::test_own_policy_open_group_not_authorized_without_allowlist[Platform.WECOM] tests/gateway/test_config_driven_access_policy.py::test_own_policy_open_group_not_authorized_without_allowlist[Platform.WEIXIN] tests/gateway/test_config_driven_access_policy.py::test_own_policy_open_group_not_authorized_without_allowlist[Platform.YUANBAO] tests/gateway/test_config_driven_access_policy.py::test_own_policy_open_group_not_authorized_without_allowlist[Platform.QQBOT] tests/gateway/test_config_driven_access_policy.py::test_own_policy_open_group_not_authorized_without_allowlist[Platform.WHATSAPP] tests/gateway/test_config_driven_access_policy.py::test_wecom_open_group_with_per_group_sender_allowlist_is_authorized tests/gateway/test_config_driven_access_policy.py::test_wecom_open_group_with_wildcard_sender_allowlist_is_authorized tests/gateway/test_config_driven_access_policy.py::test_non_owning_platform_still_default_denies tests/gateway/test_config_driven_access_policy.py::test_env_allowlist_still_takes_precedence_for_own_policy_platform tests/gateway/test_config_driven_access_policy.py::test_unknown_adapter_does_not_crash_trust_check tests/gateway/test_config_driven_access_policy.py::test_pairing_dm_policy_not_blanket_authorized[Platform.WECOM] tests/gateway/test_config_driven_access_policy.py::test_pairing_dm_policy_not_blanket_authorized[Platform.WEIXIN] tests/gateway/test_config_driven_access_policy.py::test_pairing_dm_policy_authorizes_paired_user tests/gateway/test_config_driven_access_policy.py::test_pairing_carveout_reads_adapter_when_env_set tests/gateway/test_config_driven_access_policy.py::test_pairing_dm_policy_group_chat_still_trusted tests/gateway/test_config_driven_access_policy.py::test_unauthorized_dm_behavior_follows_config_dm_policy[allowlist-ignore] tests/gateway/test_config_driven_access_policy.py::test_unauthorized_dm_behavior_follows_config_dm_policy[disabled-ignore] tests/gateway/test_config_driven_access_policy.py::test_unauthorized_dm_behavior_follows_config_dm_policy[pairing-pair] tests/gateway/test_config_driven_access_policy.py::test_unauthorized_dm_behavior_open_policy_keeps_default