qwen-code/packages
Zqc 151d269413
feat: extension file reload — watch for plugin changes and hot-reload runtime (#6347)
* feat: extension file reload — watch for plugin changes and hot-reload runtime

- Extract refreshExtensionRuntime to centralize MCP, skills, subagents, hooks, and memory refresh
- Add ExtensionFileWatcher (chokidar) for auto-detecting extension file changes
- Add ExtensionRefreshState with per-session scoped instance and mutation suppression
- Replace monkey-patching with ExtensionManager native mutation listeners
- Add /reload-plugins slash command with i18n-aware summary across all 9 locales
- Add auto-refresh of extension content (commands/skills/agents) on file change
- Add HookRegistry.reloadConfiguredHooks() with correct error recovery
- Fix async mutation pairing via id-based Map instead of LIFO stack
- Fix bootstrap watcher close() UB with queueMicrotask deferral
- Fix concurrent refresh with runningRef/pendingRef guard
- Fix error propagation from refreshExtensionContentRuntime to UI
- Fix isIgnored cross-platform path splitting (path.sep → regex)
- Fix wrong ExtensionMutationEvent type via import from core
- Fix addItem on unmounted component with mountedRef guard
- Set followSymlinks: false on chokidar watchers

* fix: address extension reload review feedback

* docs: expand extension file reload design

* fix: harden extension reload watcher state

* fix(core): tag extension refresh legs

* fix(cli): harden extension reload state handling

* fix(cli): clarify extension reload failure state

* fix(cli): tighten extension reload boundaries

* chore: resolve main conflicts for extension reload

* chore: drop unrelated merge formatting changes

* fix(core): harden extension refresh edge cases

---------

Co-authored-by: 俊良 <zzj542558@alibaba-inc.com>
Co-authored-by: 易良 <1204183885@qq.com>
Co-authored-by: qwen-code-dev-bot <qwen-code-dev-bot@users.noreply.github.com>
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-07-08 11:16:21 +00:00
..
acp-bridge fix(memory): allow forget to remove user managed memory (#6432) 2026-07-08 09:51:36 +00:00
audio-capture chore(release): v0.19.7 (#6484) 2026-07-07 17:25:48 +00:00
channels fix(channel): Relay ACP permission requests (#6446) 2026-07-08 03:27:25 +00:00
chrome-extension chore(release): v0.19.7 (#6484) 2026-07-07 17:25:48 +00:00
cli feat: extension file reload — watch for plugin changes and hot-reload runtime (#6347) 2026-07-08 11:16:21 +00:00
core feat: extension file reload — watch for plugin changes and hot-reload runtime (#6347) 2026-07-08 11:16:21 +00:00
cua-driver fix(cua-driver): migrate Windows scripts + README rewrite (#6515) 2026-07-08 06:07:11 +00:00
desktop fix(desktop): preserve glued automation history records (#6344) 2026-07-05 23:53:49 +00:00
mobile-mcp chore(release): v0.19.7 (#6484) 2026-07-07 17:25:48 +00:00
sdk-java fix(core): Align MCP OAuth guidance and docs (#5589) 2026-06-24 07:09:53 +08:00
sdk-python doc[sdk-python] Expand Python SDK usage documentation (#3995) 2026-05-12 15:27:00 +08:00
sdk-typescript feat(cli): Enable multi-workspace session routing (#6511) 2026-07-08 10:06:31 +00:00
vscode-ide-companion chore(release): v0.19.7 (#6484) 2026-07-07 17:25:48 +00:00
web-shell fix(web-shell): i18n for ~43 hardcoded English strings across 15 files (#6516) 2026-07-08 08:46:37 +00:00
web-templates chore(release): v0.19.7 (#6484) 2026-07-07 17:25:48 +00:00
webui feat(serve): Bound replay snapshot history (#6482) 2026-07-08 06:53:58 +00:00
zed-extension chore(deps): upgrade ink 6.2.3 → 7.0.2 + bump Node engine to 22 (#3860) 2026-05-11 17:29:50 +08:00