Commit graph

3 commits

Author SHA1 Message Date
teknium1
91da240eb8
fix: retarget _send_dingtalk/_send_matrix tests to plugin _standalone_send + restore dingtalk token redaction
CI (test shard 6) caught tests/tools/test_send_message_missing_platforms.py
importing the removed _send_dingtalk/_send_matrix helpers. Added thin
pre-migration-shaped shims around the plugins' _standalone_send (same pattern
mattermost/HA used in this file). Also restored access_token redaction in the
dingtalk plugin's _standalone_send error path (the legacy _send_dingtalk
returned via _error() which redacts URL secrets; the bare plugin return leaked
the webhook access_token in exception text) by reusing send_message_tool._error
via lazy import.
2026-06-07 06:23:08 -07:00
teknium1
f080fedf13
test+fix: rewrite migrated-platform test imports; fix connected-check discovery, telegram extra precedence, prompt_choice import
- Sweep test imports gateway.platforms.{telegram,feishu,matrix,dingtalk,whatsapp}
  (+ telegram_network / feishu satellites) -> plugins.platforms.<x>.adapter
  across ~68 test files; both 'from X import' and 'from gateway.platforms import X'
  forms.
- _is_platform_connected now forces discover_plugins() before the registry
  lookup so get_connected_platforms() works on directly-constructed GatewayConfig
  (fixes dingtalk-recognised tests after its checker moved to the plugin).
- telegram _apply_yaml_config no longer re-emits generic shared-config keys
  (reply_prefix etc.) that _merge_platform_map already merges with top-level
  precedence, while still passing through telegram-specific extras (base_url).
- prompt_choice lives in hermes_cli.setup, not cli_output — fixed the import in
  feishu/dingtalk interactive_setup and the test patch target.
- test_setup_feishu rewritten to drive interactive_setup via the plugin.
2026-06-07 06:23:08 -07:00
teknium1
984d78d57d
refactor(gateway): migrate dingtalk + whatsapp adapters to bundled plugins
WIP toward #41112 — full transition of all gateway channels to plugins.
dingtalk and whatsapp adapters relocated to plugins/platforms/<name>/ with
register() + standalone_sender_fn / apply_yaml_config_fn / setup_fn /
is_connected hooks. Core touchpoints stripped: run.py factory elifs,
config.py YAML bridges + _PLATFORM_CONNECTED_CHECKERS entries, gateway.py
static _PLATFORMS dicts + setup-map entries + _setup_* fns, send_message_tool
dispatch (now via _registry_standalone_send) + _send_* helpers.

matrix, feishu, telegram still to come in this branch.
2026-06-07 06:23:08 -07:00