hermes-agent/gateway/platforms
Teknium cd9a9cd8e5
fix(gateway): Slack approval UX in threads — block-size overflow + typed-prefix instruction text (#43444)
Two fixes for the reported Slack thread approval UX:

1. Slack Block Kit approval/confirm sends silently overflowed the
   3000-char section-block cap (flat 2900-char truncation + header +
   reason), so long execute_code approvals failed with invalid_blocks
   and fell back to the plain-text prompt with no buttons. Budget the
   command preview against the rendered fixed parts so blocks never
   exceed the cap (send_exec_approval + send_slash_confirm).

2. The text fallbacks told users to reply /approve — which Slack blocks
   inside threads and Matrix clients reserve client-side. Add a
   typed_command_prefix capability flag on BasePlatformAdapter
   (default "/"; Slack and Matrix set "!" to match their existing
   bang-prefix rewrite) and use it in the shared fallback prompt
   builders (exec approval, update prompt, destructive slash confirm,
   expensive-model confirm) plus Matrix's reaction-prompt text.
   The slash-confirm text-intercept now also accepts bang-prefixed
   replies (!always, !cancel) since those keywords aren't registered
   commands and the adapters' rewrite doesn't touch them.
2026-06-10 02:30:01 -07:00
..
qqbot
…
ADDING_A_PLATFORM.md
…
__init__.py
…
_http_client_limits.py
…
api_server.py fix(api-server): bind request session context for tools 2026-06-08 20:52:08 -07:00
base.py fix(gateway): Slack approval UX in threads — block-size overflow + typed-prefix instruction text (#43444) 2026-06-10 02:30:01 -07:00
bluebubbles.py
…
dingtalk.py
…
email.py
…
feishu.py feat(gateway): render terminal tool calls as native bash code blocks on markdown platforms (#41215) 2026-06-07 17:29:55 -07:00
feishu_comment.py
…
feishu_comment_rules.py
…
feishu_meeting_invite.py
…
helpers.py
…
matrix.py fix(gateway): Slack approval UX in threads — block-size overflow + typed-prefix instruction text (#43444) 2026-06-10 02:30:01 -07:00
msgraph_webhook.py
…
signal.py
…
signal_rate_limit.py
…
slack.py fix(gateway): Slack approval UX in threads — block-size overflow + typed-prefix instruction text (#43444) 2026-06-10 02:30:01 -07:00
sms.py
…
telegram.py fix(model): cover typed gateway /model path + async-safe pricing lookups 2026-06-10 00:24:06 -07:00
telegram_network.py
…
webhook.py
…
wecom.py
…
wecom_callback.py
…
wecom_crypto.py
…
weixin.py fix(weixin): add rate-limit circuit breaker 2026-06-07 22:10:17 -07:00
whatsapp.py feat(gateway): render terminal tool calls as native bash code blocks on markdown platforms (#41215) 2026-06-07 17:29:55 -07:00
yuanbao.py refactor(yuanbao): consolidate media resolution into dedicated pipeline middlewares 2026-06-09 03:17:00 -07:00
yuanbao_media.py
…
yuanbao_proto.py
…
yuanbao_sticker.py
…