fix: doctor plugin-id mapping for channel auto-enable (#25275) (thanks @zerone0x)

This commit is contained in:
Peter Steinberger
2026-02-24 14:35:25 +00:00
parent 2da0ec606d
commit 521b480466
3 changed files with 3 additions and 5 deletions

View File

@@ -21,6 +21,7 @@ Docs: https://docs.openclaw.ai
- macOS/Menu bar: stop reusing the injector delegate for the "Usage cost (30 days)" submenu to prevent recursive submenu injection loops when opening cost history. (#25341) Thanks @yingchunbai.
- Control UI/Chat images: harden image-open clicks against reverse tabnabbing by using opener isolation (`noopener,noreferrer` plus `window.opener = null`). (#18685) Thanks @Mariana-Codebase.
- CLI/Doctor: correct stale recovery hints to use valid commands (`openclaw gateway status --deep` and `openclaw configure --section model`). (#24485) Thanks @chilu18.
- Doctor/Plugins: auto-enable now resolves third-party channel plugins by manifest plugin id (not channel id), preventing invalid `plugins.entries.<channelId>` writes when ids differ. (#25275) Thanks @zerone0x.
## 2026.2.23

View File

@@ -4,9 +4,7 @@ import { validateConfigObject } from "./config.js";
import { applyPluginAutoEnable } from "./plugin-auto-enable.js";
/** Helper to build a minimal PluginManifestRegistry for testing. */
function makeRegistry(
plugins: Array<{ id: string; channels: string[] }>,
): PluginManifestRegistry {
function makeRegistry(plugins: Array<{ id: string; channels: string[] }>): PluginManifestRegistry {
return {
plugins: plugins.map((p) => ({
id: p.id,

View File

@@ -502,8 +502,7 @@ export function applyPluginAutoEnable(params: {
manifestRegistry?: PluginManifestRegistry;
}): PluginAutoEnableResult {
const env = params.env ?? process.env;
const registry =
params.manifestRegistry ?? loadPluginManifestRegistry({ config: params.config });
const registry = params.manifestRegistry ?? loadPluginManifestRegistry({ config: params.config });
const configured = resolveConfiguredPlugins(params.config, env, registry);
if (configured.length === 0) {
return { config: params.config, changes: [] };