hermes-agent/gateway
LeonSGP43 dbd8704673 fix(slack): clear stuck assistant status on /stop and via explicit metadata
Salvaged from #32340 by @LeonSGP43, adapted to the workspace-scoped
status tracking that landed in #63709:

- /stop with no running agent now best-effort clears the platform
  status indicator, so a phantom 'is thinking...' left by a gateway
  restart or a turn that died without a final send can always be
  dismissed (#32295).
- SlackAdapter.stop_typing clears an untracked thread when the caller
  names it explicitly in metadata — clearing an unset status is a
  harmless no-op on Slack's side. The fallback is skipped when multiple
  Slack Connect workspaces track the same channel+thread and no team_id
  is given, preserving #63709's cross-workspace safety guarantee.
2026-07-14 21:31:32 -07:00
..
assets chore: limit generic status phrases to long-running notifications 2026-07-05 06:29:26 -07:00
builtin_hooks
…
platforms fix(slack): complete agent view workspace routing 2026-07-14 13:58:36 -07:00
relay feat(relay): consume channel context from the connector (#64649) 2026-07-15 09:31:34 +10:00
__init__.py
…
authz_mixin.py fix(gateway): per-profile pairing whitelist isolation in multiplex mode (#53045 salvage) (#59330) 2026-07-07 18:25:52 +10:00
cgroup_cleanup.py
…
channel_directory.py fix(gateway): offload channel directory session scans 2026-07-09 06:27:04 -07:00
code_skew.py
…
config.py fix(gateway): tolerate scalar gateway config block 2026-07-09 18:23:27 -07:00
cwd_placeholder.py fix(gateway): resolve terminal.cwd placeholders per backend and mount mode 2026-07-04 13:28:47 -07:00
dead_targets.py
…
delivery.py
…
display_config.py fix: normalize display boolean strings 2026-07-05 06:29:26 -07:00
drain_control.py
…
hooks.py
…
kanban_watchers.py
…
memory_monitor.py
…
message_timestamps.py
…
mirror.py refactor: consolidate gateway session metadata into state.db (#58899) 2026-07-05 14:01:03 -07:00
pairing.py fix: merge split gateway pairing stores 2026-07-07 02:18:17 -07:00
platform_registry.py
…
readiness.py fix(gateway): ground readiness in live runtime state 2026-07-11 08:42:21 -07:00
response_filters.py fix(gateway): tolerate punctuation on silence markers 2026-07-05 02:12:26 -07:00
restart.py
…
restart_loop_guard.py
…
rich_sent_store.py
…
run.py fix(gateway): resume typing after clarify reply 2026-07-14 21:31:32 -07:00
runtime_footer.py
…
scale_to_zero.py
…
session.py fix(gateway): never prune sessions when active-process check fails 2026-07-14 17:13:20 +05:30
session_context.py fix(delegation): route async results to origin session 2026-07-08 07:06:15 -07:00
shutdown_forensics.py
…
slash_access.py
…
slash_commands.py fix(slack): clear stuck assistant status on /stop and via explicit metadata 2026-07-14 21:31:32 -07:00
status.py fix(dashboard): cache gateway PID status probes 2026-07-09 01:19:07 +05:30
status_phrases.py chore: limit generic status phrases to long-running notifications 2026-07-05 06:29:26 -07:00
sticker_cache.py
…
stream_consumer.py fix(telegram): harden flood fallback recovery 2026-07-11 11:13:50 +05:30
stream_dispatch.py
…
stream_events.py
…
whatsapp_identity.py
…