@zixt/host 0.0.34 → 0.0.36
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/index.js +49 -17
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -31,7 +31,7 @@ import { homedir } from "node:os";
|
|
|
31
31
|
// package.json
|
|
32
32
|
var package_default = {
|
|
33
33
|
name: "@zixt/host",
|
|
34
|
-
version: "0.0.
|
|
34
|
+
version: "0.0.36",
|
|
35
35
|
type: "module",
|
|
36
36
|
exports: {
|
|
37
37
|
".": "./src/client.ts",
|
|
@@ -16021,6 +16021,9 @@ var CreateTaskInput = external_exports.object({
|
|
|
16021
16021
|
}
|
|
16022
16022
|
});
|
|
16023
16023
|
var CreateTaskRequest = CreateTaskInput.safeExtend({ requestId: external_exports.uuid() });
|
|
16024
|
+
var RenameTaskRequest = external_exports.object({
|
|
16025
|
+
title: Task.shape.title.trim()
|
|
16026
|
+
});
|
|
16024
16027
|
var PostTaskMessageRequest = external_exports.object({
|
|
16025
16028
|
/** May be empty only when the message carries attachments (TS-15). */
|
|
16026
16029
|
text: external_exports.string().max(1e5),
|
|
@@ -19437,6 +19440,25 @@ var heartbeatActive = false;
|
|
|
19437
19440
|
var heartbeatUsesIpc = false;
|
|
19438
19441
|
var heartbeatHasDurableOwner = false;
|
|
19439
19442
|
var readinessReporter = null;
|
|
19443
|
+
function createWorkerWatchdogSendDrain() {
|
|
19444
|
+
let pending = 0;
|
|
19445
|
+
const drained = [];
|
|
19446
|
+
return {
|
|
19447
|
+
begin: () => {
|
|
19448
|
+
pending++;
|
|
19449
|
+
let completed = false;
|
|
19450
|
+
return () => {
|
|
19451
|
+
if (completed) return;
|
|
19452
|
+
completed = true;
|
|
19453
|
+
pending--;
|
|
19454
|
+
if (pending === 0) drained.splice(0).forEach((resolve14) => resolve14());
|
|
19455
|
+
};
|
|
19456
|
+
},
|
|
19457
|
+
drain: async () => {
|
|
19458
|
+
if (pending > 0) await new Promise((resolve14) => drained.push(resolve14));
|
|
19459
|
+
}
|
|
19460
|
+
};
|
|
19461
|
+
}
|
|
19440
19462
|
function startWorkerWatchdogHeartbeat(env = process.env, argv = process.argv.slice(2)) {
|
|
19441
19463
|
const ownership = consumeWorkerOwnershipArguments(argv, env);
|
|
19442
19464
|
const nonce = env[WORKER_WATCHDOG_NONCE_ENV];
|
|
@@ -19445,7 +19467,7 @@ function startWorkerWatchdogHeartbeat(env = process.env, argv = process.argv.sli
|
|
|
19445
19467
|
heartbeatUsesIpc = false;
|
|
19446
19468
|
heartbeatHasDurableOwner = false;
|
|
19447
19469
|
readinessReporter = null;
|
|
19448
|
-
return { active: false, argv: ownership.argv, stop() {
|
|
19470
|
+
return { active: false, argv: ownership.argv, async stop() {
|
|
19449
19471
|
} };
|
|
19450
19472
|
}
|
|
19451
19473
|
const heartbeatFile = env[WORKER_WATCHDOG_FILE_ENV];
|
|
@@ -19456,7 +19478,7 @@ function startWorkerWatchdogHeartbeat(env = process.env, argv = process.argv.sli
|
|
|
19456
19478
|
heartbeatUsesIpc = false;
|
|
19457
19479
|
heartbeatHasDurableOwner = false;
|
|
19458
19480
|
readinessReporter = null;
|
|
19459
|
-
return { active: false, argv: ownership.argv, stop() {
|
|
19481
|
+
return { active: false, argv: ownership.argv, async stop() {
|
|
19460
19482
|
} };
|
|
19461
19483
|
}
|
|
19462
19484
|
const boundaryPidValue = !ipc ? env[WORKER_WATCHDOG_BOUNDARY_PID_ENV] : void 0;
|
|
@@ -19467,7 +19489,7 @@ function startWorkerWatchdogHeartbeat(env = process.env, argv = process.argv.sli
|
|
|
19467
19489
|
heartbeatUsesIpc = false;
|
|
19468
19490
|
heartbeatHasDurableOwner = false;
|
|
19469
19491
|
readinessReporter = null;
|
|
19470
|
-
return { active: false, argv: ownership.argv, stop() {
|
|
19492
|
+
return { active: false, argv: ownership.argv, async stop() {
|
|
19471
19493
|
} };
|
|
19472
19494
|
}
|
|
19473
19495
|
if (ipc && (!ownership.requested || !ownership.valid || !recordWorkerOwnership(env[WORKER_OWNERSHIP_FILE_ENV], nonce))) {
|
|
@@ -19475,11 +19497,12 @@ function startWorkerWatchdogHeartbeat(env = process.env, argv = process.argv.sli
|
|
|
19475
19497
|
heartbeatUsesIpc = false;
|
|
19476
19498
|
heartbeatHasDurableOwner = false;
|
|
19477
19499
|
readinessReporter = null;
|
|
19478
|
-
return { active: false, argv: ownership.argv, stop() {
|
|
19500
|
+
return { active: false, argv: ownership.argv, async stop() {
|
|
19479
19501
|
} };
|
|
19480
19502
|
}
|
|
19481
19503
|
let stopped = false;
|
|
19482
19504
|
let sendPending = false;
|
|
19505
|
+
const sendDrain = createWorkerWatchdogSendDrain();
|
|
19483
19506
|
let sequence = 0;
|
|
19484
19507
|
let readinessSequence = 0;
|
|
19485
19508
|
const reportReadiness = () => {
|
|
@@ -19493,26 +19516,32 @@ function startWorkerWatchdogHeartbeat(env = process.env, argv = process.argv.sli
|
|
|
19493
19516
|
sequence: ++readinessSequence,
|
|
19494
19517
|
heartbeatSequence: sequence
|
|
19495
19518
|
};
|
|
19519
|
+
const sendComplete = sendDrain.begin();
|
|
19496
19520
|
try {
|
|
19497
19521
|
process.send(message, (error52) => {
|
|
19522
|
+
sendComplete();
|
|
19498
19523
|
if (error52) stop();
|
|
19499
19524
|
});
|
|
19500
19525
|
return true;
|
|
19501
19526
|
} catch {
|
|
19527
|
+
sendComplete();
|
|
19502
19528
|
stop();
|
|
19503
19529
|
return false;
|
|
19504
19530
|
}
|
|
19505
19531
|
};
|
|
19506
|
-
const stop = () => {
|
|
19507
|
-
if (stopped)
|
|
19508
|
-
|
|
19509
|
-
|
|
19510
|
-
|
|
19511
|
-
|
|
19512
|
-
|
|
19513
|
-
|
|
19514
|
-
|
|
19532
|
+
const stop = async () => {
|
|
19533
|
+
if (!stopped) {
|
|
19534
|
+
stopped = true;
|
|
19535
|
+
heartbeatActive = false;
|
|
19536
|
+
heartbeatUsesIpc = false;
|
|
19537
|
+
heartbeatHasDurableOwner = false;
|
|
19538
|
+
if (readinessReporter === reportReadiness) readinessReporter = null;
|
|
19539
|
+
clearInterval(timer);
|
|
19540
|
+
process.off("disconnect", onDisconnect);
|
|
19541
|
+
}
|
|
19542
|
+
await sendDrain.drain();
|
|
19515
19543
|
};
|
|
19544
|
+
const onDisconnect = () => void stop();
|
|
19516
19545
|
const send = () => {
|
|
19517
19546
|
if (stopped || sendPending) return;
|
|
19518
19547
|
sendPending = true;
|
|
@@ -19528,12 +19557,15 @@ function startWorkerWatchdogHeartbeat(env = process.env, argv = process.argv.sli
|
|
|
19528
19557
|
stop();
|
|
19529
19558
|
return;
|
|
19530
19559
|
}
|
|
19560
|
+
const sendComplete = sendDrain.begin();
|
|
19531
19561
|
try {
|
|
19532
19562
|
process.send(message, (error52) => {
|
|
19563
|
+
sendComplete();
|
|
19533
19564
|
sendPending = false;
|
|
19534
19565
|
if (error52) stop();
|
|
19535
19566
|
});
|
|
19536
19567
|
} catch {
|
|
19568
|
+
sendComplete();
|
|
19537
19569
|
sendPending = false;
|
|
19538
19570
|
stop();
|
|
19539
19571
|
}
|
|
@@ -19550,9 +19582,9 @@ function startWorkerWatchdogHeartbeat(env = process.env, argv = process.argv.sli
|
|
|
19550
19582
|
const timer = setInterval(send, WORKER_HEARTBEAT_MS);
|
|
19551
19583
|
timer.unref?.();
|
|
19552
19584
|
send();
|
|
19553
|
-
if (stopped) return { active: false, argv: ownership.argv, stop() {
|
|
19585
|
+
if (stopped) return { active: false, argv: ownership.argv, async stop() {
|
|
19554
19586
|
} };
|
|
19555
|
-
if (ipc) process.once("disconnect",
|
|
19587
|
+
if (ipc) process.once("disconnect", onDisconnect);
|
|
19556
19588
|
heartbeatUsesIpc = ipc;
|
|
19557
19589
|
heartbeatHasDurableOwner = ipc;
|
|
19558
19590
|
heartbeatActive = true;
|
|
@@ -37451,7 +37483,7 @@ function shutdown(exitCode = 0) {
|
|
|
37451
37483
|
},
|
|
37452
37484
|
recoveringLiveRuns ? 3e4 : 2e3
|
|
37453
37485
|
).unref();
|
|
37454
|
-
void client.stop().then(() => process.exit(exitCode));
|
|
37486
|
+
void workerWatchdog.stop().then(() => client.stop()).then(() => process.exit(exitCode));
|
|
37455
37487
|
}
|
|
37456
37488
|
stopUpdateWatch = !packagedBuild ? () => {
|
|
37457
37489
|
} : watchForUpdates({
|