hermes-agent/website/i18n/zh-Hans/docusaurus-plugin-content-docs/current/user-guide/messaging
Frowtek 222772ad61 fix(gateway): bridge nested DingTalk allowed_users into auth env
The DingTalk docs offer gateway.platforms.dingtalk.extra.allowed_users
as the config.yaml alternative to DINGTALK_ALLOWED_USERS. The adapter
honors it (_load_allowed_users reads PlatformConfig.extra), but gateway
authorization (_is_user_authorized in gateway/authz_mixin.py) only
consults the env var, and load_gateway_config() bridged the allowlist
to the env var only from a top-level dingtalk: block. A nested-only
allowlist therefore passed the adapter and was then denied at the
gateway - listed users fell through to pairing/default-deny in DMs.

Extend the DingTalk YAML->env bridge to fall back to the merged nested
platform config (gateway.platforms / platforms), mirroring the existing
platforms.discord.extra.allow_from precedent. Precedence is unchanged:
an explicit DINGTALK_ALLOWED_USERS env var still wins, then the
top-level dingtalk: block, then the nested extra.

Also correct the docs' claim that the two allowlists are "merged" when
both are set - that behavior never existed (the doc line came from a
docs-only sweep); the effective result is the intersection of the two
gates, so the docs now recommend configuring one or the other.

Repro (before): config.yaml containing only the nested allowlist ->
adapter._is_user_allowed("user-id-1") is True but
runner._is_user_authorized(...) is False. After: both True; unlisted
users are still denied.
2026-07-20 05:39:24 -07:00
..
bluebubbles.md
dingtalk.md fix(gateway): bridge nested DingTalk allowed_users into auth env 2026-07-20 05:39:24 -07:00
discord.md fix(discord): harden reconnect message recovery 2026-07-18 14:01:33 -07:00
email.md
feishu.md
google_chat.md
homeassistant.md
index.md feat(gateway): default session auto-reset to off (mode: none) (#60194) 2026-07-07 05:11:10 -07:00
line.md docs(i18n): port deep-audit corrections to zh-Hans mirror (#41104) 2026-06-07 01:57:18 -07:00
matrix.md docs: stop recommending pip install; curl installer is the only supported path (#51743) 2026-06-24 00:14:32 -07:00
mattermost.md
msgraph-webhook.md docs(i18n): port deep-audit corrections to zh-Hans mirror (#41104) 2026-06-07 01:57:18 -07:00
ntfy.md docs(i18n): port deep-audit corrections to zh-Hans mirror (#41104) 2026-06-07 01:57:18 -07:00
open-webui.md chore(scripts): drop Open WebUI local bootstrap script (#56178) 2026-07-01 01:30:40 -07:00
qqbot.md
signal.md
simplex.md docs(i18n): port deep-audit corrections to zh-Hans mirror (#41104) 2026-06-07 01:57:18 -07:00
slack.md feat(cron/slack): flat in-channel continuable cron delivery surface 2026-07-01 03:16:13 -07:00
sms.md docs: stop recommending pip install; curl installer is the only supported path (#51743) 2026-06-24 00:14:32 -07:00
teams-meetings.md
teams.md
telegram.md fix(telegram): make Bot API 10.1 rich messages opt-in (default off) 2026-06-21 12:03:24 -07:00
webhooks.md docs(webhook): complete filters + route-scripts coverage across doc surfaces (#60983) 2026-07-08 11:56:24 -07:00
wecom-callback.md
wecom.md
weixin.md docs: stop recommending pip install; curl installer is the only supported path (#51743) 2026-06-24 00:14:32 -07:00
whatsapp.md
yuanbao.md