diff --git a/.openclaw-sync/source.json b/.openclaw-sync/source.json
index 5ea78221c..1db52a3a5 100644
--- a/.openclaw-sync/source.json
+++ b/.openclaw-sync/source.json
@@ -1,5 +1,5 @@
{
"repository": "openclaw/openclaw",
- "sha": "05fce28ec0678a402dc6df41d2ffa072e9c8142d",
- "syncedAt": "2026-04-27T11:27:08.150Z"
+ "sha": "db087a4be7b22fb8891a4c3001d1eaad9f0308d7",
+ "syncedAt": "2026-04-27T11:28:55.412Z"
}
diff --git a/docs/gateway/doctor.md b/docs/gateway/doctor.md
index 1256159d6..19b4b443a 100644
--- a/docs/gateway/doctor.md
+++ b/docs/gateway/doctor.md
@@ -328,7 +328,7 @@ That stages grounded durable candidates into the short-term dreaming store while
Doctor verifies runtime dependencies only for bundled plugins that are active in the current config or enabled by their bundled manifest default, for example `plugins.entries.discord.enabled: true`, legacy `channels.discord.enabled: true`, or a default-enabled bundled provider. If any are missing, doctor reports the packages and installs them in `openclaw doctor --fix` / `openclaw doctor --repair` mode. External plugins still use `openclaw plugins install` / `openclaw plugins update`; doctor does not install dependencies for arbitrary plugin paths.
- The Gateway and local CLI can also repair active bundled plugin runtime dependencies on demand before importing a bundled plugin. These installs are scoped to the plugin runtime install root, run with scripts disabled, do not write a package lock, and are guarded by an install-root lock so concurrent CLI or Gateway starts do not mutate the same `node_modules` tree at the same time.
+ During doctor repair, bundled runtime-dependency npm installs report spinner progress in TTY sessions and periodic line progress in piped/headless output. The Gateway and local CLI can also repair active bundled plugin runtime dependencies on demand before importing a bundled plugin. These installs are scoped to the plugin runtime install root, run with scripts disabled, do not write a package lock, and are guarded by an install-root lock so concurrent CLI or Gateway starts do not mutate the same `node_modules` tree at the same time.