openclaw - 💡(How to fix) Fix Auto-update leaves stale chunk reference: conversation-runtime imports missing inbound.runtime-*.js → Telegram inbound dead until restart [2 comments, 3 participants]

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…
GitHub stats
openclaw/openclaw#75206Fetched 2026-05-01 05:36:51
View on GitHub
Comments
2
Participants
3
Timeline
2
Reactions
2
Author
Timeline (top)
commented ×2

Error Message

Apr 30 12:15:51 [telegram] bot error: Error [ERR_MODULE_NOT_FOUND]: Cannot find module
'/home/openclaw/.npm-global/lib/node_modules/openclaw/dist/inbound.runtime-DEk_2xSV.js'
imported from '/home/openclaw/.npm-global/lib/node_modules/openclaw/dist/conversation-runtime-DZww4kYq.js'
    at finalizeResolution (node:internal/modules/esm/resolve:275:11)

Recurred at 14:54:25, 14:54:42, 14:55:06 UTC. Each timestamp = an inbound user message that was silently dropped.

Root Cause

Root cause (suspected)

conversation-runtime-DZww4kYq.js was emitted with a hard-coded import to chunk inbound.runtime-DEk_2xSV.js, but the v2026.4.27 build only contains:

  • inbound.runtime-B7N1Yxh6.js
  • inbound.runtime-LSHe2Sau.js

Code Example

Apr 30 12:15:51 [telegram] bot error: Error [ERR_MODULE_NOT_FOUND]: Cannot find module
'/home/openclaw/.npm-global/lib/node_modules/openclaw/dist/inbound.runtime-DEk_2xSV.js'
imported from '/home/openclaw/.npm-global/lib/node_modules/openclaw/dist/conversation-runtime-DZww4kYq.js'
    at finalizeResolution (node:internal/modules/esm/resolve:275:11)
RAW_BUFFERClick to expand / collapse

Symptom

After auto-update from v2026.4.24 → v2026.4.27, Telegram bot threw ERR_MODULE_NOT_FOUND on every inbound update for ~5 hours. No messages were delivered to the agent until a manual gateway restart pulled fresh dist files.

Logs

Apr 30 12:15:51 [telegram] bot error: Error [ERR_MODULE_NOT_FOUND]: Cannot find module
'/home/openclaw/.npm-global/lib/node_modules/openclaw/dist/inbound.runtime-DEk_2xSV.js'
imported from '/home/openclaw/.npm-global/lib/node_modules/openclaw/dist/conversation-runtime-DZww4kYq.js'
    at finalizeResolution (node:internal/modules/esm/resolve:275:11)

Recurred at 14:54:25, 14:54:42, 14:55:06 UTC. Each timestamp = an inbound user message that was silently dropped.

Root cause (suspected)

conversation-runtime-DZww4kYq.js was emitted with a hard-coded import to chunk inbound.runtime-DEk_2xSV.js, but the v2026.4.27 build only contains:

  • inbound.runtime-B7N1Yxh6.js
  • inbound.runtime-LSHe2Sau.js

Chunk-hash mismatch — either the bundler emitted stale references, or auto-update did not atomically replace all chunks.

Resolution observed

Manual gateway restart reloaded fresh dist files. Telegram inbound recovered immediately.

Environment

  • Host: Ubuntu, Node 22.22.1
  • OpenClaw: v2026.4.27 (auto-updated from 2026.4.24 same day)
  • Channel: telegram
  • Install: npm global

Impact

High. Auto-update is supposed to be safe; this leaves the agent silently unable to receive any Telegram messages until something else triggers a restart. No alert path catches it unless something is specifically watching for bot error in the journal.

Suggested fixes

  1. After auto-update, validate all dist chunk imports resolve before swapping the symlink / version.
  2. On Telegram ERR_MODULE_NOT_FOUND from a runtime chunk, force a gateway restart automatically.
  3. Treat any inbound-channel runtime error as a P0 alert (out-of-band, not just a journal line).

extent analysis

TL;DR

Validate dist chunk imports after auto-update to prevent ERR_MODULE_NOT_FOUND errors.

Guidance

  • Verify that the auto-update process correctly replaces all chunk files to prevent stale references.
  • Consider implementing a post-update check to ensure all dist chunk imports resolve before swapping the symlink or version.
  • Force a gateway restart automatically on Telegram ERR_MODULE_NOT_FOUND errors from a runtime chunk to minimize downtime.
  • Treat inbound-channel runtime errors as high-priority alerts to quickly identify and address issues.

Example

No code snippet is provided as it is not clearly supported by the issue.

Notes

The suggested fixes assume that the issue is caused by a chunk-hash mismatch due to the auto-update process. However, the root cause may be more complex, and additional investigation may be necessary.

Recommendation

Apply workaround: Force a gateway restart automatically on Telegram ERR_MODULE_NOT_FOUND errors from a runtime chunk. This will minimize downtime until a more permanent fix can be implemented.

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

openclaw - 💡(How to fix) Fix Auto-update leaves stale chunk reference: conversation-runtime imports missing inbound.runtime-*.js → Telegram inbound dead until restart [2 comments, 3 participants]