diegosouzapw/OmniRoute · error
Plugin '${name}' upgrade rejected: source version ${manifest
Error message
Plugin '${name}' upgrade rejected: source version ${manifest.version} is not newer than installed ${existing.version} What it means
Error "Plugin '${name}' upgrade rejected: source version ${manifest.version} is not newer than installed ${existing.version}" thrown in diegosouzapw/OmniRoute.
Source
Thrown at src/lib/plugins/manager.ts:293
throw new Error(
`No valid plugin found in ${sourceDir}: ${errors.map((e) => e.error).join(", ")}`
);
}
discovered = plugins[0];
}
const { name, manifest } = discovered;
// Must be already installed
if (!pluginExists(name)) {
throw new Error(`Plugin '${name}' is not installed — use install() instead`);
}
const existing = getPluginByName(name)!;
// Source must be strictly newer
if (compareSemver(manifest.version, existing.version) <= 0) {
throw new Error(
`Plugin '${name}' upgrade rejected: source version ${manifest.version} is not newer than installed ${existing.version}`
);
}
log.info("manager.upgrading", { name, from: existing.version, to: manifest.version });
// Deactivate if active before touching files
if (existing.status === "active") {
await this.deactivate(name);
}
// CRITICAL-3: Copy to staging dir first, validate manifest.main, then swap atomically.
const destDir = join(this.pluginDir, name);
const stagingDir = `${destDir}.staging-${randomUUID()}`;
await mkdir(dirname(destDir), { recursive: true });
await cp(discovered.pluginDir, stagingDir, { recursive: true });
try {View on GitHub (pinned to a179ffed5b)
When it happens
Trigger: Thrown at src/lib/plugins/manager.ts:293 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of diegosouzapw/OmniRoute@a179ffed5b (2026-08-25).
Data as JSON: /api/errors/a15066c3f32b6ade.
Report an issue: GitHub.