Skip to content

feat(telegram): edit gateway status updates - #30090

Closed
qike-ms wants to merge 3 commits into
NousResearch:mainfrom
qike-ms:codex/t_615ea0da/telegram-progress-edit-20260521210851
Closed

feat(telegram): edit gateway status updates#30090
qike-ms wants to merge 3 commits into
NousResearch:mainfrom
qike-ms:codex/t_615ea0da/telegram-progress-edit-20260521210851

Conversation

@qike-ms

@qike-ms qike-ms commented May 21, 2026

Copy link
Copy Markdown

Closes #30045

Summary

  • add Telegram send_or_update_status(chat_id, thread_id, status_key, text) with per-key bot-message mapping, bounded status text, per-key concurrency locks, and fallback send-new on permanent edit failures
  • route gateway progress/status/todo updates through the status API when supported, preserving non-Telegram behavior and normal final/media/error sends
  • add focused Telegram adapter and gateway integration coverage, including scoping, transient/permanent edit failures, long progress tail preservation, cleanup dedupe, concurrent same-key calls, and interim assistant normal-send behavior

Tests

  • scripts/run_tests.sh tests/gateway/test_telegram_status_update.py tests/gateway/test_telegram_status_gateway_integration.py tests/gateway/test_run_progress_interrupt.py
  • python -m py_compile gateway/platforms/telegram.py gateway/run.py cron/scheduler.py tests/gateway/test_telegram_status_update.py tests/gateway/test_telegram_status_gateway_integration.py
  • codex review --uncommitted
  • opencode review (no findings after review fixes)

Qi Ke added 3 commits May 19, 2026 05:39
Adds a new /dashboard slash command (Info category) surfaced in both the
interactive CLI and the messaging gateway. Reads a list of {name, url}
dicts from CLI config key `dashboard.fleet_hosts`.

- CLI: prints a plain-text bullet list of host names and URLs.
- Gateway/Telegram: emits an InlineKeyboardMarkup with one URL button
  per host (via a new pure helper `_build_dashboard_keyboard`).
- Gateway/other platforms: falls back to a Markdown bullet list.

Defaults the `dashboard.fleet_hosts` key to an empty list in
`hermes_cli/config.DEFAULT_CONFIG` so the surface is opt-in and harmless
when unconfigured.

Refs legion-wiki RFD-0002 §11 (fleet dashboard quick-links).
…hosts

Per qike-ms terminology decision: aggregator surfaces per-agent dashboards,
not host metrics. Rename config key fleet_hosts -> agent_hosts and all
user-facing strings to 'Agents Dashboard(s)'.

Tests unchanged (helper-level).

Machine: m5
Agent: hermes
Session: cron_3dd1d460b779_20260519_235719
Machine: m5
Agent: codex
Session: 20260521_181316_535432
@alt-glitch alt-glitch added type/feature New feature or request comp/gateway Gateway runner, session dispatch, delivery platform/telegram Telegram bot adapter P2 Medium — degraded but workaround exists labels May 21, 2026
@qike-ms

qike-ms commented May 22, 2026

Copy link
Copy Markdown
Author

Closing: opened before independent verification and PR hygiene checks. It is merge-conflicting and includes unrelated commits from the source branch. Will reopen only after rebasing to main, running focused tests, and completing required reviews.

@qike-ms qike-ms closed this May 22, 2026
@qike-ms
qike-ms deleted the codex/t_615ea0da/telegram-progress-edit-20260521210851 branch May 22, 2026 00:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp/gateway Gateway runner, session dispatch, delivery P2 Medium — degraded but workaround exists platform/telegram Telegram bot adapter type/feature New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: update Telegram status messages instead of appending progress spam

2 participants