hermes - 💡(How to fix) Fix Bug: gateway_restart_notification config setting silently ignored

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Root Cause

The config loader in load_gateway_config() (lines 758–825) bridges specific keys from top-level platform sections (e.g. telegram:) in config.yaml into the internal platforms dict. The bridge list includes keys like require_mention, dm_policy, group_policy, etc., but gateway_restart_notification is missing from the bridge list.

This means:

  1. User sets gateway_restart_notification: false under telegram: in config.yaml
  2. The config loader never copies it into the platforms data
  3. PlatformConfig.from_dict() never sees it → defaults to True
  4. The suppression check at gateway/run.py line 2767 always evaluates to True (send notification)

Fix Action

Fix

Add gateway_restart_notification to the bridge list in load_gateway_config() (after line 800 in gateway/config.py):

if "gateway_restart_notification" in platform_cfg:
    bridged["gateway_restart_notification"] = platform_cfg["gateway_restart_notification"]

Code Example

Sent shutdown notification to active chat telegram:8639681357
Sent shutdown notification to home channel telegram:8639681357

---

if "gateway_restart_notification" in platform_cfg:
    bridged["gateway_restart_notification"] = platform_cfg["gateway_restart_notification"]
RAW_BUFFERClick to expand / collapse

Bug: gateway_restart_notification config setting has no effect

Problem

The PlatformConfig.gateway_restart_notification field exists on the dataclass (gateway/config.py line 281), is serialized by to_dict(), and is parsed by from_dict(). However, setting it in config.yaml has no effect — shutdown/restart notifications are always sent regardless of the setting.

Root Cause

The config loader in load_gateway_config() (lines 758–825) bridges specific keys from top-level platform sections (e.g. telegram:) in config.yaml into the internal platforms dict. The bridge list includes keys like require_mention, dm_policy, group_policy, etc., but gateway_restart_notification is missing from the bridge list.

This means:

  1. User sets gateway_restart_notification: false under telegram: in config.yaml
  2. The config loader never copies it into the platforms data
  3. PlatformConfig.from_dict() never sees it → defaults to True
  4. The suppression check at gateway/run.py line 2767 always evaluates to True (send notification)

Evidence

Gateway log shows notifications being sent despite gateway_restart_notification: false in config:

Sent shutdown notification to active chat telegram:8639681357
Sent shutdown notification to home channel telegram:8639681357

Fix

Add gateway_restart_notification to the bridge list in load_gateway_config() (after line 800 in gateway/config.py):

if "gateway_restart_notification" in platform_cfg:
    bridged["gateway_restart_notification"] = platform_cfg["gateway_restart_notification"]

Related Issues

  • #21871 — Feature request for a similar toggle (different approach, new config key rather than fixing the existing one)
  • #20103 — Feature request to suppress when no active sessions exist

Environment

  • Hermes Agent: v2026.5.12
  • Platform: Telegram gateway
  • OS: Proxmox LXC (Debian)

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING