Skip to content

Commit 2542e72

Browse files
committed
fix: address onboarding merge blockers
1 parent bdac90d commit 2542e72

File tree

3 files changed

+25
-10
lines changed

3 files changed

+25
-10
lines changed

client/app.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9347,8 +9347,8 @@ class ClaudeOrchestrator {
93479347
})();
93489348

93499349
const setBootstrapPending = (pending) => {
9350-
if (!isWindowsHost) return;
93519350
if (pending) {
9351+
if (!isWindowsHost) return;
93529352
body?.classList?.add?.('dependency-onboarding-booting');
93539353
body?.classList?.remove?.('dependency-onboarding-active');
93549354
return;
@@ -10158,7 +10158,6 @@ class ClaudeOrchestrator {
1015810158
}
1015910159
const view = render();
1016010160
applyOnboardingLockUI();
10161-
if (view.req?.coreReady) writeDismissed(false);
1016210161

1016310162
const hasCompletedOnboarding = readCompleted();
1016410163
const coreReady = !!view.req?.coreReady;

server/index.js

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -454,19 +454,29 @@ workspaceSystemReady = initializeWorkspaceSystem()
454454
logger.info('Workspace system initialized');
455455
return true;
456456
})
457-
.then(() => loadPlugins())
458-
.then((status) => {
459-
logger.info('Plugin loader finished', {
460-
loaded: Array.isArray(status?.loaded) ? status.loaded.length : 0,
461-
failed: Array.isArray(status?.failed) ? status.failed.length : 0
462-
});
463-
return true;
464-
})
465457
.catch(error => {
466458
logger.error('Workspace system initialization failed', { error: error.message, stack: error.stack });
467459
return false;
468460
});
469461

462+
workspaceSystemReady
463+
.then((workspaceReady) => {
464+
if (!workspaceReady) return null;
465+
return loadPlugins()
466+
.then((status) => {
467+
logger.info('Plugin loader finished', {
468+
loaded: Array.isArray(status?.loaded) ? status.loaded.length : 0,
469+
failed: Array.isArray(status?.failed) ? status.failed.length : 0
470+
});
471+
return status;
472+
})
473+
.catch((error) => {
474+
logger.error('Plugin loader failed', { error: error.message, stack: error.stack });
475+
return null;
476+
});
477+
})
478+
.catch(() => null);
479+
470480
// WebSocket connection handling
471481
io.on('connection', (socket) => {
472482
logger.info('Client connected', { socketId: socket.id });

server/sessionManager.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2373,6 +2373,9 @@ class SessionManager extends EventEmitter {
23732373
let stdout = '';
23742374
child.stdout.on('data', (d) => { stdout += d; });
23752375
const timer = setTimeout(() => child.kill(), 2000);
2376+
child.on('error', () => {
2377+
clearTimeout(timer);
2378+
});
23762379
child.on('close', () => {
23772380
clearTimeout(timer);
23782381
const processCount = parseInt(String(stdout || '').trim(), 10);
@@ -2397,6 +2400,9 @@ class SessionManager extends EventEmitter {
23972400
let stdout = '';
23982401
child.stdout.on('data', (d) => { stdout += d; });
23992402
const timer = setTimeout(() => child.kill(), 2000);
2403+
child.on('error', () => {
2404+
clearTimeout(timer);
2405+
});
24002406
child.on('close', (code) => {
24012407
clearTimeout(timer);
24022408
// pgrep exits with code 1 when no child process matches; treat as zero children.

0 commit comments

Comments
 (0)