openclaw - 💡(How to fix) Fix [Bug]: Gateway crash loop in 2026.4.24 — mDNS advertiser causes unhandled promise rejection [1 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

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…
GitHub stats
openclaw/openclaw#72647Fetched 2026-04-28 06:33:39
View on GitHub
Comments
1
Participants
2
Timeline
4
Reactions
0
Participants
Timeline (top)
labeled ×2closed ×1commented ×1

after the upgrade from 2026.4.15 to 2026.4.24

Bug Report

Version 2026.4.24 introduced mDNS/Bonjour service advertisement (via the ciao library) that defaults to "minimal" mode even without any config. The ciao advertiser gets stuck in announcing/probing state (likely because openclaw.local mDNS hostname resolution fails on the network), triggering an unhandled promise rejection that crashes and restarts the gateway process every ~30 seconds.

Symptoms

• Gateway crashes every ~30 seconds in a loop • openclaw status times out during crash windows • Control UI and channel connections become unreachable

Fix

Add to openclaw.json:

"discovery": { "mdns": { "mode": "off" } }

Gateway no longer crashes, all connections work normally. Tailscale is off, so no loss of discovery functionality.

Environment

• Linux 6.17.0-22-generic (x64) • Node 24.14.1 • No Tailscale • No mDNS infrastructure on network • OpenClaw 2026.4.24

Recommendation

  1. Default mdns.mode should be "off" or handle mDNS failure gracefully without crashing
  2. If mDNS is needed, detect whether it is available before enabling it
  3. Consider auto-detecting Tailscale or local mDNS availability

Root Cause

Version 2026.4.24 introduced mDNS/Bonjour service advertisement (via the ciao library) that defaults to "minimal" mode even without any config. The ciao advertiser gets stuck in announcing/probing state (likely because openclaw.local mDNS hostname resolution fails on the network), triggering an unhandled promise rejection that crashes and restarts the gateway process every ~30 seconds.

RAW_BUFFERClick to expand / collapse

Bug type

Regression (worked before, now fails)

Beta release blocker

No

Summary

after the upgrade from 2026.4.15 to 2026.4.24

Bug Report

Version 2026.4.24 introduced mDNS/Bonjour service advertisement (via the ciao library) that defaults to "minimal" mode even without any config. The ciao advertiser gets stuck in announcing/probing state (likely because openclaw.local mDNS hostname resolution fails on the network), triggering an unhandled promise rejection that crashes and restarts the gateway process every ~30 seconds.

Symptoms

• Gateway crashes every ~30 seconds in a loop • openclaw status times out during crash windows • Control UI and channel connections become unreachable

Fix

Add to openclaw.json:

"discovery": { "mdns": { "mode": "off" } }

Gateway no longer crashes, all connections work normally. Tailscale is off, so no loss of discovery functionality.

Environment

• Linux 6.17.0-22-generic (x64) • Node 24.14.1 • No Tailscale • No mDNS infrastructure on network • OpenClaw 2026.4.24

Recommendation

  1. Default mdns.mode should be "off" or handle mDNS failure gracefully without crashing
  2. If mDNS is needed, detect whether it is available before enabling it
  3. Consider auto-detecting Tailscale or local mDNS availability

Steps to reproduce

on "Ubuntu 24.04.4 LTS" openclaw v2026.4.15 upgraded to v 2026.4.24, and "openclaw status" from terminal shows cannot connect to the openclaw gateway, not responding:

Gateway │ local · ws://127.0.0.1:18789 (local loopback) · unreachable (timeout)

Expected behavior

Gateway │ local · ws://127.0.0.1:18789 (local loopback) · reachable 46ms

Actual behavior

openclaw status > >

Gateway │ local · ws://127.0.0.1:18789 (local loopback) · unreachable (timeout)

OpenClaw version

2026.4.24

Operating system

DISTRIB_ID=Ubuntu DISTRIB_RELEASE=24.04 DISTRIB_CODENAME=noble DISTRIB_DESCRIPTION="Ubuntu 24.04.4 LTS"

Install method

npm global

Model

local LM Studio, qwen3.6-35b-a3b_q4_k_m

Provider / routing chain

openclaw PC > LAN> LM Studio pc

Additional provider/model setup details

No response

Logs, screenshots, and evidence

Impact and severity

No response

Additional information

No response

extent analysis

TL;DR

Disable mDNS in OpenClaw by setting "mdns.mode" to "off" in openclaw.json to prevent gateway crashes.

Guidance

  • To fix the issue, add the following configuration to openclaw.json: "discovery": { "mdns": { "mode": "off" } }.
  • Verify that the gateway no longer crashes and connections are reachable by running openclaw status and checking the gateway status.
  • If mDNS is required, consider detecting its availability before enabling it to prevent similar issues in the future.
  • Note that disabling mDNS will not affect functionality since Tailscale is off.

Example

{
  "discovery": {
    "mdns": {
      "mode": "off"
    }
  }
}

Notes

This fix assumes that mDNS is not necessary for the current setup, as Tailscale is off and there is no mDNS infrastructure on the network.

Recommendation

Apply workaround: Disable mDNS in OpenClaw by setting "mdns.mode" to "off" in openclaw.json, as this is a simple and effective solution to prevent gateway crashes.

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…

FAQ

Expected behavior

Gateway │ local · ws://127.0.0.1:18789 (local loopback) · reachable 46ms

Still need to ship something?

×6

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

Back to top recommendations

TRENDING

openclaw - 💡(How to fix) Fix [Bug]: Gateway crash loop in 2026.4.24 — mDNS advertiser causes unhandled promise rejection [1 comments, 2 participants]