fix: add pre-restart delay to prevent MCP server failures on plugin updates

Add 2-second delay before worker restart in ensureWorkerVersionMatches() to
give files time to sync. Fixes issue where MCP server would fail after plugin
updates because restart happened too quickly.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Alex Newman
2025-12-14 23:38:40 -05:00
parent a6737c122f
commit 47cb403889
15 changed files with 46 additions and 42 deletions
+4 -1
View File
@@ -131,6 +131,9 @@ async function ensureWorkerVersionMatches(): Promise<void> {
workerVersion
});
// Give files time to sync before restart
await new Promise(resolve => setTimeout(resolve, getTimeout(HOOK_TIMEOUTS.PRE_RESTART_SETTLE_DELAY)));
// Restart the worker
await ProcessManager.restart(getWorkerPort());
@@ -142,7 +145,7 @@ async function ensureWorkerVersionMatches(): Promise<void> {
logger.error('SYSTEM', 'Worker failed to restart after version mismatch', {
expectedVersion: pluginVersion,
runningVersion: workerVersion,
port
port: getWorkerPort()
});
}
}