@luckydraw/cumulus 0.28.5 → 0.28.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/gateway/daemon.js +122 -55
- package/dist/gateway/daemon.js.map +1 -1
- package/dist/gateway/server.d.ts +5 -0
- package/dist/gateway/server.d.ts.map +1 -1
- package/dist/gateway/server.js +31 -0
- package/dist/gateway/server.js.map +1 -1
- package/dist/gateway/static/widget.js +218 -44
- package/dist/lib/gateway.d.ts.map +1 -1
- package/dist/lib/gateway.js +25 -17
- package/dist/lib/gateway.js.map +1 -1
- package/package.json +1 -1
package/dist/gateway/daemon.js
CHANGED
|
@@ -334,6 +334,52 @@ async function cmdStart(args) {
|
|
|
334
334
|
console.log(`[Gateway] Log level: ${args.logLevel ?? 'info'}`);
|
|
335
335
|
console.log(`[Gateway] Press Ctrl+C to stop`);
|
|
336
336
|
}
|
|
337
|
+
// ─── Graceful restart (shared by SIGHUP and admin endpoint) ────────
|
|
338
|
+
const gracefulRestart = async () => {
|
|
339
|
+
const activeCount = getActiveSubprocessCount();
|
|
340
|
+
logger.info('Graceful restart initiated', { activeSubprocesses: activeCount });
|
|
341
|
+
if (foreground)
|
|
342
|
+
console.log(`\n[Gateway] Graceful restart (${activeCount} active streams)`);
|
|
343
|
+
if (activeCount === 0) {
|
|
344
|
+
logger.info('No active streams, exiting for restart');
|
|
345
|
+
if (foreground)
|
|
346
|
+
console.log('[Gateway] No active streams — restarting now');
|
|
347
|
+
removePidFile();
|
|
348
|
+
logger.close();
|
|
349
|
+
process.exit(0);
|
|
350
|
+
return;
|
|
351
|
+
}
|
|
352
|
+
logger.info('Waiting for active subprocesses to drain before restart...', {
|
|
353
|
+
count: activeCount,
|
|
354
|
+
});
|
|
355
|
+
if (foreground)
|
|
356
|
+
console.log(`[Gateway] Waiting for ${activeCount} active stream(s) to complete...`);
|
|
357
|
+
const drained = await drainActiveSubprocesses(120_000);
|
|
358
|
+
const remaining = getActiveSubprocessCount();
|
|
359
|
+
logger.info('Drain complete, exiting for restart', { drained, remaining });
|
|
360
|
+
if (foreground)
|
|
361
|
+
console.log(`[Gateway] Drained ${drained} streams (${remaining} remaining) — restarting`);
|
|
362
|
+
if (remaining > 0) {
|
|
363
|
+
const interruptedThreads = getActiveThreadNames();
|
|
364
|
+
const threadsPath = path.join(CUMULUS_DIR, 'active-threads.json');
|
|
365
|
+
const record = interruptedThreads.map(name => ({
|
|
366
|
+
threadName: name,
|
|
367
|
+
timestamp: new Date().toISOString(),
|
|
368
|
+
}));
|
|
369
|
+
try {
|
|
370
|
+
fs.writeFileSync(threadsPath, JSON.stringify(record, null, 2));
|
|
371
|
+
logger.info('Recorded interrupted threads for auto-resume', {
|
|
372
|
+
threads: interruptedThreads,
|
|
373
|
+
});
|
|
374
|
+
}
|
|
375
|
+
catch (err) {
|
|
376
|
+
logger.error('Failed to write active-threads.json', { error: String(err) });
|
|
377
|
+
}
|
|
378
|
+
}
|
|
379
|
+
removePidFile();
|
|
380
|
+
logger.close();
|
|
381
|
+
process.exit(0);
|
|
382
|
+
};
|
|
337
383
|
// ─── Signal handlers ────────────────────────────────────
|
|
338
384
|
let shuttingDown = false;
|
|
339
385
|
const shutdown = async (signal) => {
|
|
@@ -434,54 +480,17 @@ async function cmdStart(args) {
|
|
|
434
480
|
};
|
|
435
481
|
process.on('SIGTERM', () => shutdown('SIGTERM'));
|
|
436
482
|
process.on('SIGINT', () => shutdown('SIGINT'));
|
|
437
|
-
// SIGHUP = graceful restart (
|
|
438
|
-
process.
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
console.log(`\n[Gateway] SIGHUP received — graceful restart (${activeCount} active streams)`);
|
|
443
|
-
if (activeCount === 0) {
|
|
444
|
-
// No active streams — exit immediately, systemd restarts with fresh code
|
|
445
|
-
logger.info('No active streams, exiting for restart');
|
|
446
|
-
if (foreground)
|
|
447
|
-
console.log('[Gateway] No active streams — restarting now');
|
|
448
|
-
removePidFile();
|
|
449
|
-
logger.close();
|
|
450
|
-
process.exit(0);
|
|
451
|
-
return;
|
|
452
|
-
}
|
|
453
|
-
// Active streams exist — drain them first
|
|
454
|
-
logger.info('Waiting for active subprocesses to drain before restart...', {
|
|
455
|
-
count: activeCount,
|
|
483
|
+
// SIGHUP = graceful restart (Unix only — Windows uses POST /api/admin/restart)
|
|
484
|
+
if (process.platform !== 'win32') {
|
|
485
|
+
process.on('SIGHUP', () => {
|
|
486
|
+
logger.info('SIGHUP received — triggering graceful restart');
|
|
487
|
+
gracefulRestart();
|
|
456
488
|
});
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
if (foreground)
|
|
463
|
-
console.log(`[Gateway] Drained ${drained} streams (${remaining} remaining) — restarting`);
|
|
464
|
-
// Record any threads that didn't complete for auto-resume
|
|
465
|
-
if (remaining > 0) {
|
|
466
|
-
const interruptedThreads = getActiveThreadNames();
|
|
467
|
-
const activeThreadsPath = path.join(CUMULUS_DIR, 'active-threads.json');
|
|
468
|
-
const record = interruptedThreads.map(name => ({
|
|
469
|
-
threadName: name,
|
|
470
|
-
timestamp: new Date().toISOString(),
|
|
471
|
-
}));
|
|
472
|
-
try {
|
|
473
|
-
fs.writeFileSync(activeThreadsPath, JSON.stringify(record, null, 2));
|
|
474
|
-
logger.info('Recorded interrupted threads for auto-resume', {
|
|
475
|
-
threads: interruptedThreads,
|
|
476
|
-
});
|
|
477
|
-
}
|
|
478
|
-
catch (err) {
|
|
479
|
-
logger.error('Failed to write active-threads.json', { error: String(err) });
|
|
480
|
-
}
|
|
481
|
-
}
|
|
482
|
-
removePidFile();
|
|
483
|
-
logger.close();
|
|
484
|
-
process.exit(0);
|
|
489
|
+
}
|
|
490
|
+
// Wire admin REST endpoints (works on all platforms including Windows)
|
|
491
|
+
handle.setAdminCallbacks({
|
|
492
|
+
restart: () => gracefulRestart(),
|
|
493
|
+
shutdown: () => shutdown('admin-api'),
|
|
485
494
|
});
|
|
486
495
|
// ─── Recover partial streaming responses from previous crash/restart ────────
|
|
487
496
|
try {
|
|
@@ -592,7 +601,7 @@ async function cmdStart(args) {
|
|
|
592
601
|
}
|
|
593
602
|
}, 5000);
|
|
594
603
|
}
|
|
595
|
-
function cmdStop() {
|
|
604
|
+
async function cmdStop() {
|
|
596
605
|
const pid = readPidFile();
|
|
597
606
|
if (pid === null) {
|
|
598
607
|
console.log('No PID file found — gateway is not running.');
|
|
@@ -603,15 +612,73 @@ function cmdStop() {
|
|
|
603
612
|
removePidFile();
|
|
604
613
|
process.exit(0);
|
|
605
614
|
}
|
|
606
|
-
|
|
615
|
+
// On Windows, use the admin REST endpoint (no SIGTERM support)
|
|
616
|
+
// On Unix, prefer SIGTERM for direct process control
|
|
617
|
+
if (process.platform === 'win32') {
|
|
618
|
+
console.log(`Stopping gateway (PID ${pid}) via admin endpoint...`);
|
|
619
|
+
try {
|
|
620
|
+
// Try to read port from config to hit the admin endpoint
|
|
621
|
+
const configPath = getConfigPath();
|
|
622
|
+
let port = 8090; // default
|
|
623
|
+
try {
|
|
624
|
+
const raw = JSON.parse(fs.readFileSync(configPath, 'utf-8'));
|
|
625
|
+
if (raw.port)
|
|
626
|
+
port = raw.port;
|
|
627
|
+
}
|
|
628
|
+
catch {
|
|
629
|
+
// Use default port
|
|
630
|
+
}
|
|
631
|
+
const apiKey = await getFirstApiKey(configPath);
|
|
632
|
+
const http = await import('http');
|
|
633
|
+
await new Promise((resolve, reject) => {
|
|
634
|
+
const req = http.request({
|
|
635
|
+
hostname: '127.0.0.1',
|
|
636
|
+
port,
|
|
637
|
+
path: '/api/admin/shutdown',
|
|
638
|
+
method: 'POST',
|
|
639
|
+
headers: { 'X-API-Key': apiKey },
|
|
640
|
+
}, res => {
|
|
641
|
+
if (res.statusCode === 200) {
|
|
642
|
+
console.log('Shutdown request sent. Gateway will shut down gracefully.');
|
|
643
|
+
resolve();
|
|
644
|
+
}
|
|
645
|
+
else {
|
|
646
|
+
reject(new Error(`Admin endpoint returned ${res.statusCode}`));
|
|
647
|
+
}
|
|
648
|
+
});
|
|
649
|
+
req.on('error', reject);
|
|
650
|
+
req.end();
|
|
651
|
+
});
|
|
652
|
+
}
|
|
653
|
+
catch (err) {
|
|
654
|
+
console.error(`Failed to stop gateway via admin endpoint: ${err}`);
|
|
655
|
+
console.error('Try terminating the process manually (Task Manager).');
|
|
656
|
+
process.exit(1);
|
|
657
|
+
}
|
|
658
|
+
}
|
|
659
|
+
else {
|
|
660
|
+
console.log(`Stopping gateway (PID ${pid})...`);
|
|
661
|
+
try {
|
|
662
|
+
process.kill(pid, 'SIGTERM');
|
|
663
|
+
console.log('SIGTERM sent. Gateway will shut down gracefully.');
|
|
664
|
+
}
|
|
665
|
+
catch (err) {
|
|
666
|
+
console.error(`Failed to stop process ${pid}: ${err}`);
|
|
667
|
+
process.exit(1);
|
|
668
|
+
}
|
|
669
|
+
}
|
|
670
|
+
}
|
|
671
|
+
/** Read first API key from config file (for admin endpoint auth) */
|
|
672
|
+
async function getFirstApiKey(configPath) {
|
|
607
673
|
try {
|
|
608
|
-
|
|
609
|
-
|
|
674
|
+
const raw = JSON.parse(fs.readFileSync(configPath, 'utf-8'));
|
|
675
|
+
if (Array.isArray(raw.apiKeys) && raw.apiKeys.length > 0)
|
|
676
|
+
return raw.apiKeys[0];
|
|
610
677
|
}
|
|
611
|
-
catch
|
|
612
|
-
|
|
613
|
-
process.exit(1);
|
|
678
|
+
catch {
|
|
679
|
+
// fall through
|
|
614
680
|
}
|
|
681
|
+
return '';
|
|
615
682
|
}
|
|
616
683
|
function cmdStatus() {
|
|
617
684
|
const pid = readPidFile();
|
|
@@ -661,7 +728,7 @@ async function main() {
|
|
|
661
728
|
await cmdStart(args);
|
|
662
729
|
break;
|
|
663
730
|
case 'stop':
|
|
664
|
-
cmdStop();
|
|
731
|
+
await cmdStop();
|
|
665
732
|
break;
|
|
666
733
|
case 'status':
|
|
667
734
|
cmdStatus();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon.js","sourceRoot":"","sources":["../../src/gateway/daemon.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"daemon.js","sourceRoot":"","sources":["../../src/gateway/daemon.ts"],"names":[],"mappings":"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"}
|
package/dist/gateway/server.d.ts
CHANGED
|
@@ -61,6 +61,11 @@ export interface GatewayServerHandle {
|
|
|
61
61
|
setScheduler: (s: {
|
|
62
62
|
reloadThread: (name: string) => void;
|
|
63
63
|
}) => void;
|
|
64
|
+
/** Set shutdown/restart callbacks — used by admin REST endpoints (cross-platform restart) */
|
|
65
|
+
setAdminCallbacks: (cbs: {
|
|
66
|
+
restart: () => void;
|
|
67
|
+
shutdown: () => void;
|
|
68
|
+
}) => void;
|
|
64
69
|
}
|
|
65
70
|
/**
|
|
66
71
|
* Format an agent message for a specific recipient, applying visibility rules.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/gateway/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAaH,OAAO,EAAE,gBAAgB,EAAgC,MAAM,oBAAoB,CAAC;AACpF,OAAO,EAKL,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACzB,MAAM,mBAAmB,CAAC;AAU3B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAO/C,OAAO,EAML,KAAK,WAAW,EACjB,MAAM,WAAW,CAAC;AAInB,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,2FAA2F;IAC3F,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mFAAmF;IACnF,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACjD,iEAAiE;IACjE,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,iFAAiF;IACjF,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,8FAA8F;IAC9F,iBAAiB,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IACjF,8CAA8C;IAC9C,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,qCAAqC;IACrC,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,gDAAgD;IAChD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oDAAoD;IACpD,MAAM,CAAC,EAAE,OAAO,aAAa,EAAE,UAAU,EAAE,CAAC;IAC5C,iDAAiD;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,iFAAiF;IACjF,MAAM,EAAE,OAAO,MAAM,EAAE,MAAM,CAAC;IAC9B,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,wDAAwD;IACxD,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC5C,4CAA4C;IAC5C,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,sFAAsF;IACtF,oBAAoB,EAAE,CAAC,EAAE,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,KAAK,IAAI,CAAC;IACjG,iFAAiF;IACjF,YAAY,EAAE,CAAC,CAAC,EAAE;QAAE,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;KAAE,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/gateway/server.ts"],"names":[],"mappings":"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"}
|
package/dist/gateway/server.js
CHANGED
|
@@ -1375,6 +1375,7 @@ export async function startGatewayServer(options) {
|
|
|
1375
1375
|
const { port, ...pipelineOpts } = options;
|
|
1376
1376
|
let currentApiKeys = options.apiKeys;
|
|
1377
1377
|
let scheduler;
|
|
1378
|
+
let adminCallbacks;
|
|
1378
1379
|
// Create or use provided executor registry
|
|
1379
1380
|
const executorRegistry = options.executorRegistry || new ExecutorRegistry();
|
|
1380
1381
|
pipelineOpts.executorRegistry = executorRegistry;
|
|
@@ -1425,6 +1426,33 @@ export async function startGatewayServer(options) {
|
|
|
1425
1426
|
if (!authenticate(req, res, currentApiKeys))
|
|
1426
1427
|
return;
|
|
1427
1428
|
try {
|
|
1429
|
+
// POST /api/admin/restart — platform-agnostic graceful restart
|
|
1430
|
+
if (routePath === '/api/admin/restart' && req.method === 'POST') {
|
|
1431
|
+
if (!adminCallbacks) {
|
|
1432
|
+
jsonResponse(res, 503, { error: 'Admin callbacks not configured' });
|
|
1433
|
+
return;
|
|
1434
|
+
}
|
|
1435
|
+
jsonResponse(res, 200, {
|
|
1436
|
+
status: 'restarting',
|
|
1437
|
+
activeSubprocesses: getActiveSubprocessCount(),
|
|
1438
|
+
});
|
|
1439
|
+
// Defer to next tick so the response is sent before process exits
|
|
1440
|
+
setImmediate(() => adminCallbacks.restart());
|
|
1441
|
+
return;
|
|
1442
|
+
}
|
|
1443
|
+
// POST /api/admin/shutdown — platform-agnostic graceful shutdown
|
|
1444
|
+
if (routePath === '/api/admin/shutdown' && req.method === 'POST') {
|
|
1445
|
+
if (!adminCallbacks) {
|
|
1446
|
+
jsonResponse(res, 503, { error: 'Admin callbacks not configured' });
|
|
1447
|
+
return;
|
|
1448
|
+
}
|
|
1449
|
+
jsonResponse(res, 200, {
|
|
1450
|
+
status: 'shutting_down',
|
|
1451
|
+
activeSubprocesses: getActiveSubprocessCount(),
|
|
1452
|
+
});
|
|
1453
|
+
setImmediate(() => adminCallbacks.shutdown());
|
|
1454
|
+
return;
|
|
1455
|
+
}
|
|
1428
1456
|
// POST /api/thread/:name/message
|
|
1429
1457
|
if (routePath === '/api/thread/:name/message' && req.method === 'POST') {
|
|
1430
1458
|
await handlePostMessage(params.name, req, res, pipelineOpts);
|
|
@@ -1639,6 +1667,9 @@ export async function startGatewayServer(options) {
|
|
|
1639
1667
|
setScheduler: (s) => {
|
|
1640
1668
|
scheduler = s;
|
|
1641
1669
|
},
|
|
1670
|
+
setAdminCallbacks: (cbs) => {
|
|
1671
|
+
adminCallbacks = cbs;
|
|
1672
|
+
},
|
|
1642
1673
|
close: async () => {
|
|
1643
1674
|
// Abort any in-flight message processing
|
|
1644
1675
|
threadQueues.clear();
|