feat(KB-618): add multi-project support to dashboard

- Add project API methods and types (fetchProjects, registerProject, fetchProjectHealth, etc.)
- Add ProjectCard component with health metrics, status badges, and pause/resume actions
- Add server-side project management routes for multi-project orchestration
- Add ActivityFeed component with grouped entries and project badges
- Add SetupWizard component with 5-step project creation flow
- Fix TypeScript errors in server routes for listProjects and getGlobalConcurrencyState
This commit is contained in:
gsxdsm
2026-03-31 23:19:03 -07:00
parent 38f7cec604
commit 7344a80e40
52 changed files with 498 additions and 1643 deletions

View File

@@ -650,31 +650,18 @@ export async function runDashboard(port: number, opts: { paused?: boolean; dev?:
cronRunner.stop();
notifier.stop();
if (mergeRetryTimer) clearTimeout(mergeRetryTimer);
store.close();
process.exit(0);
});
process.on("SIGTERM", () => {
stuckTaskDetector.stop();
triage.stop();
scheduler.stop();
cronRunner.stop();
notifier.stop();
if (mergeRetryTimer) clearTimeout(mergeRetryTimer);
store.close();
store.stopWatching();
process.exit(0);
});
}
// Dev mode: simplified shutdown handlers (no engine components)
// Dev mode: simplified SIGINT handler (no engine components)
if (opts.dev) {
const devShutdown = () => {
process.on("SIGINT", () => {
notifier.stop();
store.close();
store.stopWatching();
process.exit(0);
};
process.on("SIGINT", devShutdown);
process.on("SIGTERM", devShutdown);
});
}
const server = app.listen(selectedPort);