mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-04-25 00:51:20 +00:00
fix(gateway): include QQBOT in allowlist-aware unauthorized DM map
Follow-up to #9337: _is_user_authorized maps Platform.QQBOT to QQ_ALLOWED_USERS, but the new platform_env_map inside _get_unauthorized_dm_behavior omitted it. A QQ operator with a strict user allowlist would therefore still have the gateway send pairing codes to strangers. Adds QQBOT to the env map and a regression test.
This commit is contained in:
parent
7282652655
commit
1ee3b79f1d
2 changed files with 21 additions and 0 deletions
|
|
@ -2988,6 +2988,7 @@ class GatewayRunner:
|
|||
Platform.WECOM_CALLBACK: "WECOM_CALLBACK_ALLOWED_USERS",
|
||||
Platform.WEIXIN: "WEIXIN_ALLOWED_USERS",
|
||||
Platform.BLUEBUBBLES: "BLUEBUBBLES_ALLOWED_USERS",
|
||||
Platform.QQBOT: "QQ_ALLOWED_USERS",
|
||||
}
|
||||
if os.getenv(platform_env_map.get(platform, ""), "").strip():
|
||||
return "ignore"
|
||||
|
|
|
|||
|
|
@ -450,3 +450,23 @@ def test_get_unauthorized_dm_behavior_no_allowlist_returns_pair(monkeypatch):
|
|||
|
||||
behavior = runner._get_unauthorized_dm_behavior(Platform.SIGNAL)
|
||||
assert behavior == "pair"
|
||||
|
||||
|
||||
def test_qqbot_with_allowlist_ignores_unauthorized_dm(monkeypatch):
|
||||
"""QQBOT is included in the allowlist-aware default (QQ_ALLOWED_USERS).
|
||||
|
||||
Regression guard: the initial #9337 fix omitted QQBOT from the env map
|
||||
inside _get_unauthorized_dm_behavior, even though _is_user_authorized
|
||||
mapped it to QQ_ALLOWED_USERS. Without QQBOT here, a QQ operator with a
|
||||
strict user allowlist would still get pairing codes sent to strangers.
|
||||
"""
|
||||
_clear_auth_env(monkeypatch)
|
||||
monkeypatch.setenv("QQ_ALLOWED_USERS", "allowed-openid-1")
|
||||
|
||||
config = GatewayConfig(
|
||||
platforms={Platform.QQBOT: PlatformConfig(enabled=True)},
|
||||
)
|
||||
runner, _adapter = _make_runner(Platform.QQBOT, config)
|
||||
|
||||
behavior = runner._get_unauthorized_dm_behavior(Platform.QQBOT)
|
||||
assert behavior == "ignore"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue