@moxt-ai/mobius 0.0.386 → 0.0.387
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/{chunk-FVYSQLQL.js → chunk-A62FEGIN.js} +11 -24
- package/dist/{chunk-FVYSQLQL.js.map → chunk-A62FEGIN.js.map} +3 -3
- package/dist/{chunk-Z6JG65YI.js → chunk-S7PKNDIS.js} +2 -2
- package/dist/{chunk-Z6JG65YI.js.map → chunk-S7PKNDIS.js.map} +1 -1
- package/dist/cli/handler/daemon/index.d.ts.map +1 -1
- package/dist/cli/handler/daemon/index.js +9 -4
- package/dist/cli/handler/daemon/index.js.map +1 -1
- package/dist/cli/handler/daemon/quit.d.ts.map +1 -1
- package/dist/cli/handler/daemon/quit.js +5 -4
- package/dist/cli/handler/daemon/quit.js.map +1 -1
- package/dist/cli/handler/daemon/release.js +1 -1
- package/dist/cli/handler/daemon/start.d.ts.map +1 -1
- package/dist/cli/handler/daemon/start.js +3 -3
- package/dist/cli/handler/daemon/start.js.map +1 -1
- package/dist/cli/handler/daemon/upgrade.d.ts.map +1 -1
- package/dist/cli/handler/daemon/upgrade.js +8 -24
- package/dist/cli/handler/daemon/upgrade.js.map +1 -1
- package/dist/cli/handler/pair/pair.js +3 -3
- package/dist/cli/handler/pair/pair.js.map +1 -1
- package/dist/cli/handler/pair/remove.js +1 -1
- package/dist/cli/handler/pair/stop.js +1 -1
- package/dist/cli/handler/version/index.d.ts.map +1 -1
- package/dist/cli/handler/version/index.js +6 -2
- package/dist/cli/handler/version/index.js.map +1 -1
- package/dist/{cli-NLIGRBEL.js → cli-43LPJ5ID.js} +412 -1143
- package/dist/cli-43LPJ5ID.js.map +7 -0
- package/dist/cli.js +1998 -6
- package/dist/cli.js.map +4 -4
- package/dist/daemon/control/protocol.d.ts +1 -133
- package/dist/daemon/control/protocol.d.ts.map +1 -1
- package/dist/daemon/control/protocol.js +4 -63
- package/dist/daemon/control/protocol.js.map +1 -1
- package/dist/daemon/lifecycle/daemon-client.d.ts +8 -0
- package/dist/daemon/lifecycle/daemon-client.d.ts.map +1 -0
- package/dist/daemon/lifecycle/daemon-client.js +154 -0
- package/dist/daemon/lifecycle/daemon-client.js.map +1 -0
- package/dist/daemon/lifecycle/{worker.d.ts → daemon.d.ts} +2 -2
- package/dist/daemon/lifecycle/daemon.d.ts.map +1 -0
- package/dist/daemon/lifecycle/daemon.js +266 -0
- package/dist/daemon/lifecycle/daemon.js.map +1 -0
- package/dist/daemon/lifecycle/unhandled-rejection.d.ts +1 -2
- package/dist/daemon/lifecycle/unhandled-rejection.d.ts.map +1 -1
- package/dist/daemon/lifecycle/unhandled-rejection.js +4 -7
- package/dist/daemon/lifecycle/unhandled-rejection.js.map +1 -1
- package/dist/daemon/upgrades/data.d.ts +0 -1
- package/dist/daemon/upgrades/data.d.ts.map +1 -1
- package/dist/daemon/upgrades/data.js +0 -5
- package/dist/daemon/upgrades/data.js.map +1 -1
- package/dist/engine/util/process/platform/windows.d.ts.map +1 -1
- package/dist/engine/util/process/platform/windows.js +7 -4
- package/dist/engine/util/process/platform/windows.js.map +1 -1
- package/dist/engine.js +2 -2
- package/dist/storage/daemon/daemon-lock.d.ts +9 -0
- package/dist/storage/daemon/daemon-lock.d.ts.map +1 -0
- package/dist/storage/daemon/{manager-lock.js → daemon-lock.js} +22 -7
- package/dist/storage/daemon/daemon-lock.js.map +1 -0
- package/dist/storage/state-root-layout.d.ts +0 -2
- package/dist/storage/state-root-layout.d.ts.map +1 -1
- package/dist/storage/state-root-layout.js +0 -2
- package/dist/storage/state-root-layout.js.map +1 -1
- package/package.json +1 -1
- package/dist/chunk-T2GPD4RK.js +0 -2002
- package/dist/chunk-T2GPD4RK.js.map +0 -7
- package/dist/cli/handler/daemon/manager.d.ts +0 -4
- package/dist/cli/handler/daemon/manager.d.ts.map +0 -1
- package/dist/cli/handler/daemon/manager.js +0 -9
- package/dist/cli/handler/daemon/manager.js.map +0 -1
- package/dist/cli/handler/daemon/worker.d.ts +0 -4
- package/dist/cli/handler/daemon/worker.d.ts.map +0 -1
- package/dist/cli/handler/daemon/worker.js +0 -7
- package/dist/cli/handler/daemon/worker.js.map +0 -1
- package/dist/cli-NLIGRBEL.js.map +0 -7
- package/dist/daemon/control/switch-status.d.ts +0 -4
- package/dist/daemon/control/switch-status.d.ts.map +0 -1
- package/dist/daemon/control/switch-status.js +0 -10
- package/dist/daemon/control/switch-status.js.map +0 -1
- package/dist/daemon/lifecycle/manager-client.d.ts +0 -8
- package/dist/daemon/lifecycle/manager-client.d.ts.map +0 -1
- package/dist/daemon/lifecycle/manager-client.js +0 -130
- package/dist/daemon/lifecycle/manager-client.js.map +0 -1
- package/dist/daemon/lifecycle/manager.d.ts +0 -3
- package/dist/daemon/lifecycle/manager.d.ts.map +0 -1
- package/dist/daemon/lifecycle/manager.js +0 -215
- package/dist/daemon/lifecycle/manager.js.map +0 -1
- package/dist/daemon/lifecycle/worker-lifecycle-log.d.ts +0 -14
- package/dist/daemon/lifecycle/worker-lifecycle-log.d.ts.map +0 -1
- package/dist/daemon/lifecycle/worker-lifecycle-log.js +0 -63
- package/dist/daemon/lifecycle/worker-lifecycle-log.js.map +0 -1
- package/dist/daemon/lifecycle/worker-process.d.ts +0 -26
- package/dist/daemon/lifecycle/worker-process.d.ts.map +0 -1
- package/dist/daemon/lifecycle/worker-process.js +0 -145
- package/dist/daemon/lifecycle/worker-process.js.map +0 -1
- package/dist/daemon/lifecycle/worker.d.ts.map +0 -1
- package/dist/daemon/lifecycle/worker.js +0 -213
- package/dist/daemon/lifecycle/worker.js.map +0 -1
- package/dist/daemon/upgrades/package.d.ts +0 -9
- package/dist/daemon/upgrades/package.d.ts.map +0 -1
- package/dist/daemon/upgrades/package.js +0 -157
- package/dist/daemon/upgrades/package.js.map +0 -1
- package/dist/daemon/upgrades/upgrade.d.ts +0 -21
- package/dist/daemon/upgrades/upgrade.d.ts.map +0 -1
- package/dist/daemon/upgrades/upgrade.js +0 -242
- package/dist/daemon/upgrades/upgrade.js.map +0 -1
- package/dist/storage/daemon/manager-lock.d.ts +0 -9
- package/dist/storage/daemon/manager-lock.d.ts.map +0 -1
- package/dist/storage/daemon/manager-lock.js.map +0 -1
- package/dist/storage/daemon/release-files.d.ts +0 -9
- package/dist/storage/daemon/release-files.d.ts.map +0 -1
- package/dist/storage/daemon/release-files.js +0 -14
- package/dist/storage/daemon/release-files.js.map +0 -1
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { InstallationDirectory } from "../../engine/storage/installation/installation-files.ts";
|
|
2
|
+
/**
|
|
3
|
+
* Takes the lock file that makes this process the only daemon. A lock left by a
|
|
4
|
+
* process that is gone is replaced. Returns the release function, or null when a live process holds it.
|
|
5
|
+
*/
|
|
6
|
+
export declare function acquireDaemonLock(stateDirectory: InstallationDirectory, filename?: "manager.lock" | "worker.lock"): Promise<(() => Promise<void>) | null>;
|
|
7
|
+
/** Keep the released lock filename; a dead owner does not keep the daemon alive. */
|
|
8
|
+
export declare function daemonLockExists(stateDirectory: InstallationDirectory, filename?: "manager.lock" | "worker.lock"): Promise<boolean>;
|
|
9
|
+
//# sourceMappingURL=daemon-lock.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"daemon-lock.d.ts","sourceRoot":"","sources":["../../../src/storage/daemon/daemon-lock.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yDAAyD,CAAC;AAGrG;;;GAGG;AACH,wBAAsB,iBAAiB,CACnC,cAAc,EAAE,qBAAqB,EACrC,QAAQ,GAAE,cAAc,GAAG,aAA8B,GAC1D,OAAO,CAAC,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CA0BvC;AAED,oFAAoF;AACpF,wBAAsB,gBAAgB,CAClC,cAAc,EAAE,qBAAqB,EACrC,QAAQ,GAAE,cAAc,GAAG,aAA8B,GAC1D,OAAO,CAAC,OAAO,CAAC,CAwBlB"}
|
|
@@ -2,11 +2,11 @@ import { readFile, unlink, writeFile } from "node:fs/promises";
|
|
|
2
2
|
import { join } from "node:path";
|
|
3
3
|
import { isNodeError } from "../../engine/util/node-error.js";
|
|
4
4
|
/**
|
|
5
|
-
* Takes the lock file that makes this process the only
|
|
5
|
+
* Takes the lock file that makes this process the only daemon. A lock left by a
|
|
6
6
|
* process that is gone is replaced. Returns the release function, or null when a live process holds it.
|
|
7
7
|
*/
|
|
8
|
-
export async function
|
|
9
|
-
const path = join(stateDirectory,
|
|
8
|
+
export async function acquireDaemonLock(stateDirectory, filename = "manager.lock") {
|
|
9
|
+
const path = join(stateDirectory, filename);
|
|
10
10
|
for (let attempt = 0; attempt < 2; attempt += 1) {
|
|
11
11
|
try {
|
|
12
12
|
await writeFile(path, `${process.pid.toString()}\n`, { flag: "wx", mode: 0o600 });
|
|
@@ -34,10 +34,25 @@ export async function acquireManagerLock(stateDirectory, name = "manager.lock")
|
|
|
34
34
|
}
|
|
35
35
|
return null;
|
|
36
36
|
}
|
|
37
|
-
/**
|
|
38
|
-
export async function
|
|
37
|
+
/** Keep the released lock filename; a dead owner does not keep the daemon alive. */
|
|
38
|
+
export async function daemonLockExists(stateDirectory, filename = "manager.lock") {
|
|
39
39
|
try {
|
|
40
|
-
await readFile(join(stateDirectory,
|
|
40
|
+
const pid = Number((await readFile(join(stateDirectory, filename), "utf8")).trim());
|
|
41
|
+
// The exclusive file can be observed before its owner finishes writing the PID.
|
|
42
|
+
if (!Number.isSafeInteger(pid) || pid <= 1) {
|
|
43
|
+
return true;
|
|
44
|
+
}
|
|
45
|
+
try {
|
|
46
|
+
process.kill(pid, 0);
|
|
47
|
+
}
|
|
48
|
+
catch (cause) {
|
|
49
|
+
if (isNodeError(cause, "ESRCH")) {
|
|
50
|
+
return false;
|
|
51
|
+
}
|
|
52
|
+
if (!isNodeError(cause, "EPERM")) {
|
|
53
|
+
throw cause;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
41
56
|
return true;
|
|
42
57
|
}
|
|
43
58
|
catch (cause) {
|
|
@@ -47,4 +62,4 @@ export async function managerLockExists(stateDirectory) {
|
|
|
47
62
|
throw cause;
|
|
48
63
|
}
|
|
49
64
|
}
|
|
50
|
-
//# sourceMappingURL=
|
|
65
|
+
//# sourceMappingURL=daemon-lock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"daemon-lock.js","sourceRoot":"","sources":["../../../src/storage/daemon/daemon-lock.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,8 +4,6 @@ export declare const STATE_ROOT_LAYOUT: Readonly<{
|
|
|
4
4
|
currentData: "current-data.txt";
|
|
5
5
|
/** Applications' installations: `installations/<application>/<installation>`. */
|
|
6
6
|
installations: "installations";
|
|
7
|
-
/** Managed CLI releases: `npm/<version>`. */
|
|
8
|
-
releases: "npm";
|
|
9
7
|
/** Each CLI version's data: `versions/<version>`. */
|
|
10
8
|
versions: "versions";
|
|
11
9
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state-root-layout.d.ts","sourceRoot":"","sources":["../../src/storage/state-root-layout.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,eAAO,MAAM,iBAAiB;IAC1B,+CAA+C;;IAE/C,iFAAiF;;IAEjF,
|
|
1
|
+
{"version":3,"file":"state-root-layout.d.ts","sourceRoot":"","sources":["../../src/storage/state-root-layout.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,eAAO,MAAM,iBAAiB;IAC1B,+CAA+C;;IAE/C,iFAAiF;;IAEjF,qDAAqD;;EAEvD,CAAC"}
|
|
@@ -4,8 +4,6 @@ export const STATE_ROOT_LAYOUT = Object.freeze({
|
|
|
4
4
|
currentData: "current-data.txt",
|
|
5
5
|
/** Applications' installations: `installations/<application>/<installation>`. */
|
|
6
6
|
installations: "installations",
|
|
7
|
-
/** Managed CLI releases: `npm/<version>`. */
|
|
8
|
-
releases: "npm",
|
|
9
7
|
/** Each CLI version's data: `versions/<version>`. */
|
|
10
8
|
versions: "versions",
|
|
11
9
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state-root-layout.js","sourceRoot":"","sources":["../../src/storage/state-root-layout.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC;IAC3C,+CAA+C;IAC/C,WAAW,EAAE,kBAAkB;IAC/B,iFAAiF;IACjF,aAAa,EAAE,eAAe;IAC9B,
|
|
1
|
+
{"version":3,"file":"state-root-layout.js","sourceRoot":"","sources":["../../src/storage/state-root-layout.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC;IAC3C,+CAA+C;IAC/C,WAAW,EAAE,kBAAkB;IAC/B,iFAAiF;IACjF,aAAa,EAAE,eAAe;IAC9B,qDAAqD;IACrD,QAAQ,EAAE,UAAU;CACvB,CAAC,CAAC"}
|