@moxt-ai/mobius 0.0.385 → 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.
Files changed (113) hide show
  1. package/dist/{chunk-OXXJU5VO.js → chunk-A62FEGIN.js} +20 -28
  2. package/dist/{chunk-OXXJU5VO.js.map → chunk-A62FEGIN.js.map} +3 -3
  3. package/dist/{chunk-VNT3WUWZ.js → chunk-S7PKNDIS.js} +2 -2
  4. package/dist/{chunk-VNT3WUWZ.js.map → chunk-S7PKNDIS.js.map} +1 -1
  5. package/dist/cli/handler/daemon/index.d.ts.map +1 -1
  6. package/dist/cli/handler/daemon/index.js +9 -4
  7. package/dist/cli/handler/daemon/index.js.map +1 -1
  8. package/dist/cli/handler/daemon/quit.d.ts.map +1 -1
  9. package/dist/cli/handler/daemon/quit.js +5 -4
  10. package/dist/cli/handler/daemon/quit.js.map +1 -1
  11. package/dist/cli/handler/daemon/release.js +1 -1
  12. package/dist/cli/handler/daemon/start.d.ts.map +1 -1
  13. package/dist/cli/handler/daemon/start.js +3 -3
  14. package/dist/cli/handler/daemon/start.js.map +1 -1
  15. package/dist/cli/handler/daemon/upgrade.d.ts.map +1 -1
  16. package/dist/cli/handler/daemon/upgrade.js +8 -24
  17. package/dist/cli/handler/daemon/upgrade.js.map +1 -1
  18. package/dist/cli/handler/pair/pair.js +3 -3
  19. package/dist/cli/handler/pair/pair.js.map +1 -1
  20. package/dist/cli/handler/pair/remove.js +1 -1
  21. package/dist/cli/handler/pair/stop.js +1 -1
  22. package/dist/cli/handler/version/index.d.ts.map +1 -1
  23. package/dist/cli/handler/version/index.js +6 -2
  24. package/dist/cli/handler/version/index.js.map +1 -1
  25. package/dist/{cli-WDPLOVF3.js → cli-43LPJ5ID.js} +412 -1143
  26. package/dist/cli-43LPJ5ID.js.map +7 -0
  27. package/dist/cli.js +1998 -6
  28. package/dist/cli.js.map +4 -4
  29. package/dist/daemon/control/protocol.d.ts +1 -133
  30. package/dist/daemon/control/protocol.d.ts.map +1 -1
  31. package/dist/daemon/control/protocol.js +4 -63
  32. package/dist/daemon/control/protocol.js.map +1 -1
  33. package/dist/daemon/lifecycle/daemon-client.d.ts +8 -0
  34. package/dist/daemon/lifecycle/daemon-client.d.ts.map +1 -0
  35. package/dist/daemon/lifecycle/daemon-client.js +154 -0
  36. package/dist/daemon/lifecycle/daemon-client.js.map +1 -0
  37. package/dist/daemon/lifecycle/{worker.d.ts → daemon.d.ts} +2 -2
  38. package/dist/daemon/lifecycle/daemon.d.ts.map +1 -0
  39. package/dist/daemon/lifecycle/daemon.js +266 -0
  40. package/dist/daemon/lifecycle/daemon.js.map +1 -0
  41. package/dist/daemon/lifecycle/unhandled-rejection.d.ts +1 -2
  42. package/dist/daemon/lifecycle/unhandled-rejection.d.ts.map +1 -1
  43. package/dist/daemon/lifecycle/unhandled-rejection.js +4 -7
  44. package/dist/daemon/lifecycle/unhandled-rejection.js.map +1 -1
  45. package/dist/daemon/upgrades/data.d.ts +0 -1
  46. package/dist/daemon/upgrades/data.d.ts.map +1 -1
  47. package/dist/daemon/upgrades/data.js +0 -5
  48. package/dist/daemon/upgrades/data.js.map +1 -1
  49. package/dist/engine/runtime/relay/session-event-publisher.d.ts.map +1 -1
  50. package/dist/engine/runtime/relay/session-event-publisher.js +6 -5
  51. package/dist/engine/runtime/relay/session-event-publisher.js.map +1 -1
  52. package/dist/engine/util/process/platform/windows.d.ts.map +1 -1
  53. package/dist/engine/util/process/platform/windows.js +7 -4
  54. package/dist/engine/util/process/platform/windows.js.map +1 -1
  55. package/dist/engine.js +2 -2
  56. package/dist/storage/daemon/daemon-lock.d.ts +9 -0
  57. package/dist/storage/daemon/daemon-lock.d.ts.map +1 -0
  58. package/dist/storage/daemon/{manager-lock.js → daemon-lock.js} +22 -7
  59. package/dist/storage/daemon/daemon-lock.js.map +1 -0
  60. package/dist/storage/state-root-layout.d.ts +0 -2
  61. package/dist/storage/state-root-layout.d.ts.map +1 -1
  62. package/dist/storage/state-root-layout.js +0 -2
  63. package/dist/storage/state-root-layout.js.map +1 -1
  64. package/package.json +1 -1
  65. package/dist/chunk-NEAZO2JN.js +0 -2002
  66. package/dist/chunk-NEAZO2JN.js.map +0 -7
  67. package/dist/cli/handler/daemon/manager.d.ts +0 -4
  68. package/dist/cli/handler/daemon/manager.d.ts.map +0 -1
  69. package/dist/cli/handler/daemon/manager.js +0 -9
  70. package/dist/cli/handler/daemon/manager.js.map +0 -1
  71. package/dist/cli/handler/daemon/worker.d.ts +0 -4
  72. package/dist/cli/handler/daemon/worker.d.ts.map +0 -1
  73. package/dist/cli/handler/daemon/worker.js +0 -7
  74. package/dist/cli/handler/daemon/worker.js.map +0 -1
  75. package/dist/cli-WDPLOVF3.js.map +0 -7
  76. package/dist/daemon/control/switch-status.d.ts +0 -4
  77. package/dist/daemon/control/switch-status.d.ts.map +0 -1
  78. package/dist/daemon/control/switch-status.js +0 -10
  79. package/dist/daemon/control/switch-status.js.map +0 -1
  80. package/dist/daemon/lifecycle/manager-client.d.ts +0 -8
  81. package/dist/daemon/lifecycle/manager-client.d.ts.map +0 -1
  82. package/dist/daemon/lifecycle/manager-client.js +0 -130
  83. package/dist/daemon/lifecycle/manager-client.js.map +0 -1
  84. package/dist/daemon/lifecycle/manager.d.ts +0 -3
  85. package/dist/daemon/lifecycle/manager.d.ts.map +0 -1
  86. package/dist/daemon/lifecycle/manager.js +0 -215
  87. package/dist/daemon/lifecycle/manager.js.map +0 -1
  88. package/dist/daemon/lifecycle/worker-lifecycle-log.d.ts +0 -14
  89. package/dist/daemon/lifecycle/worker-lifecycle-log.d.ts.map +0 -1
  90. package/dist/daemon/lifecycle/worker-lifecycle-log.js +0 -63
  91. package/dist/daemon/lifecycle/worker-lifecycle-log.js.map +0 -1
  92. package/dist/daemon/lifecycle/worker-process.d.ts +0 -26
  93. package/dist/daemon/lifecycle/worker-process.d.ts.map +0 -1
  94. package/dist/daemon/lifecycle/worker-process.js +0 -145
  95. package/dist/daemon/lifecycle/worker-process.js.map +0 -1
  96. package/dist/daemon/lifecycle/worker.d.ts.map +0 -1
  97. package/dist/daemon/lifecycle/worker.js +0 -213
  98. package/dist/daemon/lifecycle/worker.js.map +0 -1
  99. package/dist/daemon/upgrades/package.d.ts +0 -9
  100. package/dist/daemon/upgrades/package.d.ts.map +0 -1
  101. package/dist/daemon/upgrades/package.js +0 -157
  102. package/dist/daemon/upgrades/package.js.map +0 -1
  103. package/dist/daemon/upgrades/upgrade.d.ts +0 -21
  104. package/dist/daemon/upgrades/upgrade.d.ts.map +0 -1
  105. package/dist/daemon/upgrades/upgrade.js +0 -242
  106. package/dist/daemon/upgrades/upgrade.js.map +0 -1
  107. package/dist/storage/daemon/manager-lock.d.ts +0 -9
  108. package/dist/storage/daemon/manager-lock.d.ts.map +0 -1
  109. package/dist/storage/daemon/manager-lock.js.map +0 -1
  110. package/dist/storage/daemon/release-files.d.ts +0 -9
  111. package/dist/storage/daemon/release-files.d.ts.map +0 -1
  112. package/dist/storage/daemon/release-files.js +0 -14
  113. package/dist/storage/daemon/release-files.js.map +0 -1
@@ -1,242 +0,0 @@
1
- var __addDisposableResource = (this && this.__addDisposableResource) || function (env, value, async) {
2
- if (value !== null && value !== void 0) {
3
- if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
4
- var dispose, inner;
5
- if (async) {
6
- if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
7
- dispose = value[Symbol.asyncDispose];
8
- }
9
- if (dispose === void 0) {
10
- if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
11
- dispose = value[Symbol.dispose];
12
- if (async) inner = dispose;
13
- }
14
- if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
15
- if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };
16
- env.stack.push({ value: value, dispose: dispose, async: async });
17
- }
18
- else if (async) {
19
- env.stack.push({ async: true });
20
- }
21
- return value;
22
- };
23
- var __disposeResources = (this && this.__disposeResources) || (function (SuppressedError) {
24
- return function (env) {
25
- function fail(e) {
26
- env.error = env.hasError ? new SuppressedError(e, env.error, "An error was suppressed during disposal.") : e;
27
- env.hasError = true;
28
- }
29
- var r, s = 0;
30
- function next() {
31
- while (r = env.stack.pop()) {
32
- try {
33
- if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);
34
- if (r.dispose) {
35
- var result = r.dispose.call(r.value);
36
- if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });
37
- }
38
- else s |= 1;
39
- }
40
- catch (e) {
41
- fail(e);
42
- }
43
- }
44
- if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();
45
- if (env.hasError) throw env.error;
46
- }
47
- return next();
48
- };
49
- })(typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
50
- var e = new Error(message);
51
- return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
52
- });
53
- import { randomUUID } from "node:crypto";
54
- import { setInterval, setTimeout } from "node:timers/promises";
55
- import { decodeIdentifier } from "@moxt-ai/mobius-sdk/protocol";
56
- import packageMetadata from "../../../package.json" with { type: "json" };
57
- import { RuntimeDiagnosticLog } from "../../engine/runtime/observability/diagnostic-log.js";
58
- import { isNodeError } from "../../engine/util/node-error.js";
59
- import { sendLocalRequest } from "../control/local-client.js";
60
- import { decodeKnownLifecycleResponse } from "../control/protocol.js";
61
- import { readSwitchStatus } from "../control/switch-status.js";
62
- import { openMobiusControlInstallation } from "../pairing/pair-local-machine.js";
63
- import { DaemonReleaseUpgradeError, findNewDaemonReleaseVersion, installDaemonReleaseVersion } from "./package.js";
64
- // A switch may consume the new worker's startup budget and the rollback restart.
65
- const SWITCH_COMPLETION_MILLISECONDS = 300_000;
66
- const SWITCH_POLL_MILLISECONDS = 200;
67
- // An automatic switch disconnects every client for tens of seconds. Wait until the
68
- // Runtime has been idle long enough that the user has likely stepped away.
69
- const UPGRADE_QUIET_MILLISECONDS = 30 * 60_000;
70
- const UPGRADE_QUIET_CHECK_MILLISECONDS = 60_000;
71
- export async function reportDaemonUpgradeAvailability(send, signal) {
72
- if (!process.connected) {
73
- return;
74
- }
75
- const control = await openMobiusControlInstallation(signal, process.env);
76
- const transition = await readSwitchStatus(control.stateDirectory, signal, true);
77
- if (transition === null) {
78
- return;
79
- }
80
- const base = {
81
- kind: "runtime.upgrade.result",
82
- requestId: decodeIdentifier(transition.id),
83
- version: packageMetadata.version,
84
- targetVersion: transition.next.version,
85
- };
86
- if (transition.kind === "rolled-back" && transition.previous.version === packageMetadata.version) {
87
- send({
88
- ...base,
89
- kind: "runtime.upgrade.result",
90
- outcome: {
91
- status: "failed",
92
- code: transition.code,
93
- message: transition.message,
94
- retryAfter: transition.retryAfter,
95
- stdout: transition.stdout,
96
- stderr: transition.stderr,
97
- },
98
- });
99
- }
100
- else if (transition.next.version === packageMetadata.version) {
101
- send({ ...base, kind: "runtime.upgrade.result", outcome: { status: "succeeded" } });
102
- }
103
- }
104
- // One loop belongs to the worker, regardless of how many Relay connections it owns.
105
- // Await each attempt so checks and installations never overlap.
106
- export async function runDaemonReleaseUpgrades(signal, activity) {
107
- try {
108
- for await (const _tick of setInterval(3_600_000, undefined, { signal })) {
109
- try {
110
- await checkDaemonReleaseUpgrade(signal, activity);
111
- }
112
- catch (cause) {
113
- signal.throwIfAborted();
114
- console.error("Daemon npm upgrade check failed", cause);
115
- }
116
- }
117
- }
118
- catch (cause) {
119
- if (!signal.aborted) {
120
- throw cause;
121
- }
122
- }
123
- }
124
- // The shared one-shot upgrade: find the newest npm release beyond the running
125
- // version, install it, and ask the manager to switch. Callers observe the
126
- // result through awaitDaemonReleaseSwitch.
127
- export async function requestDaemonReleaseUpgrade(stateDirectory, currentVersion, signal) {
128
- const version = await findNewDaemonReleaseVersion(currentVersion, signal);
129
- if (version === null) {
130
- return { kind: "current" };
131
- }
132
- const launch = await installDaemonReleaseVersion(version, signal);
133
- return await requestInstalledDaemonReleaseSwitch(stateDirectory, launch, signal);
134
- }
135
- async function requestInstalledDaemonReleaseSwitch(stateDirectory, launch, signal) {
136
- const id = randomUUID();
137
- const response = decodeKnownLifecycleResponse(await sendLocalRequest(stateDirectory, "manager", { kind: "switch", id, context: "npm", launch }, signal));
138
- if (response?.kind === "error") {
139
- throw new DaemonReleaseUpgradeError(response.code, response.message);
140
- }
141
- if (response?.kind !== "switching") {
142
- throw new DaemonReleaseUpgradeError("manager_incompatible", "The manager does not support daemon switching");
143
- }
144
- return { kind: "requested", id, version: launch.version };
145
- }
146
- // Wait until the manager settles the switch requested under the given id. The
147
- // manager serializes switch work, so a bounded poll observes the terminal state
148
- // without holding a control connection for the whole switch.
149
- export async function awaitDaemonReleaseSwitch(stateDirectory, id, signal) {
150
- const deadline = AbortSignal.any([signal, AbortSignal.timeout(SWITCH_COMPLETION_MILLISECONDS)]);
151
- let outcome;
152
- while (!deadline.aborted) {
153
- let state;
154
- try {
155
- state = await readSwitchStatus(stateDirectory, deadline);
156
- }
157
- catch (cause) {
158
- // The manager is the only writer of switch state; without it the switch is over.
159
- if (isNodeError(cause, "ENOENT") || isNodeError(cause, "ECONNREFUSED")) {
160
- throw cause;
161
- }
162
- deadline.throwIfAborted();
163
- state = null;
164
- }
165
- if (state !== null && state.id === id && state.kind !== "switching") {
166
- outcome = state;
167
- break;
168
- }
169
- await setTimeout(SWITCH_POLL_MILLISECONDS, undefined, { signal: deadline });
170
- }
171
- if (outcome === undefined) {
172
- throw deadline.reason;
173
- }
174
- // The manager records a rollback before restoring the previous worker; a
175
- // queued status read returns only once that restoration finished.
176
- if (outcome.kind === "rolled-back") {
177
- deadline.throwIfAborted();
178
- await readSwitchStatus(stateDirectory, deadline, true).catch(() => undefined);
179
- }
180
- return outcome;
181
- }
182
- async function reserveWhenQuiet(activity, signal) {
183
- for (;;) {
184
- await activity.whenIdle(signal);
185
- // Idle has begun; check until it has lasted the quiet period or work resumes.
186
- for await (const _tick of setInterval(UPGRADE_QUIET_CHECK_MILLISECONDS, undefined, { signal })) {
187
- const reservation = activity.reserveIfQuiet(UPGRADE_QUIET_MILLISECONDS);
188
- if (reservation !== null) {
189
- return reservation;
190
- }
191
- if (activity.count() > 0) {
192
- break;
193
- }
194
- }
195
- signal.throwIfAborted();
196
- }
197
- }
198
- async function checkDaemonReleaseUpgrade(signal, activity) {
199
- const env_1 = { stack: [], error: void 0, hasError: false };
200
- try {
201
- const control = await openMobiusControlInstallation(signal, process.env);
202
- const transition = await readSwitchStatus(control.stateDirectory, signal);
203
- if (transition?.kind === "switching" ||
204
- (transition?.kind === "rolled-back" && transition.retryAfter > Date.now())) {
205
- return;
206
- }
207
- const version = await findNewDaemonReleaseVersion(packageMetadata.version, signal);
208
- if (version === null) {
209
- return;
210
- }
211
- const launch = await installDaemonReleaseVersion(version, signal);
212
- let reservation = activity.reserveIfQuiet(UPGRADE_QUIET_MILLISECONDS);
213
- if (reservation === null) {
214
- const diagnostics = new RuntimeDiagnosticLog(control.stateDirectory);
215
- const record = (event, details = {}) => diagnostics.record(`Mobius daemon diagnostic ${JSON.stringify({ timestamp: new Date().toISOString(), event, version, ...details })}`);
216
- record("daemon_upgrade_deferred", { activeWork: activity.count(), ...activity.describe() });
217
- reservation = await reserveWhenQuiet(activity, signal);
218
- record("daemon_upgrade_released");
219
- }
220
- const _reservation = __addDisposableResource(env_1, reservation, false);
221
- signal.throwIfAborted();
222
- await requestInstalledDaemonReleaseSwitch(control.stateDirectory, launch, signal);
223
- // The manager now owns the switch. Hold admission until it stops this worker;
224
- // releasing it after the RPC would let a new prompt race the shutdown.
225
- await new Promise((resolve) => {
226
- if (signal.aborted) {
227
- resolve();
228
- }
229
- else {
230
- signal.addEventListener("abort", () => resolve(), { once: true });
231
- }
232
- });
233
- }
234
- catch (e_1) {
235
- env_1.error = e_1;
236
- env_1.hasError = true;
237
- }
238
- finally {
239
- __disposeResources(env_1);
240
- }
241
- }
242
- //# sourceMappingURL=upgrade.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"upgrade.js","sourceRoot":"","sources":["../../../src/daemon/upgrades/upgrade.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import type { InstallationDirectory } from "../../engine/storage/installation/installation-files.ts";
2
- /**
3
- * Takes the lock file that makes this process the only holder of a daemon role. 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 acquireManagerLock(stateDirectory: InstallationDirectory, name?: string): Promise<(() => Promise<void>) | null>;
7
- /** True while the manager lock file exists. */
8
- export declare function managerLockExists(stateDirectory: InstallationDirectory): Promise<boolean>;
9
- //# sourceMappingURL=manager-lock.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"manager-lock.d.ts","sourceRoot":"","sources":["../../../src/storage/daemon/manager-lock.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yDAAyD,CAAC;AAGrG;;;GAGG;AACH,wBAAsB,kBAAkB,CACpC,cAAc,EAAE,qBAAqB,EACrC,IAAI,SAAiB,GACtB,OAAO,CAAC,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CA0BvC;AAED,+CAA+C;AAC/C,wBAAsB,iBAAiB,CAAC,cAAc,EAAE,qBAAqB,GAAG,OAAO,CAAC,OAAO,CAAC,CAU/F"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"manager-lock.js","sourceRoot":"","sources":["../../../src/storage/daemon/manager-lock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAE9D;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACpC,cAAqC,EACrC,IAAI,GAAG,cAAc;IAErB,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;IACxC,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;QAC9C,IAAI,CAAC;YACD,MAAM,SAAS,CAAC,IAAI,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAClF,OAAO,KAAK,IAAI,EAAE,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACjE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC;gBAChC,MAAM,KAAK,CAAC;YAChB,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;YAC7D,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;YACnC,IAAI,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;gBACvC,IAAI,CAAC;oBACD,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;oBACrB,OAAO,IAAI,CAAC;gBAChB,CAAC;gBAAC,OAAO,UAAU,EAAE,CAAC;oBAClB,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,CAAC;wBACpC,OAAO,IAAI,CAAC;oBAChB,CAAC;gBACL,CAAC;YACL,CAAC;YACD,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAC9C,CAAC;IACL,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,+CAA+C;AAC/C,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,cAAqC;IACzE,IAAI,CAAC;QACD,MAAM,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAC;QAC7D,OAAO,IAAI,CAAC;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,IAAI,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC;YAC/B,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,MAAM,KAAK,CAAC;IAChB,CAAC;AACL,CAAC"}
@@ -1,9 +0,0 @@
1
- /** npm installs each daemon release into its own prefix, so an upgrade never overwrites the running release. */
2
- export declare function releasePrefix(version: string): string;
3
- export interface InstalledRelease {
4
- readonly manifest: string;
5
- readonly packageRoot: string;
6
- }
7
- /** The canonical directory of the Mobius package npm installed into `prefix`, and its package.json text. */
8
- export declare function readInstalledRelease(prefix: string): Promise<InstalledRelease>;
9
- //# sourceMappingURL=release-files.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"release-files.d.ts","sourceRoot":"","sources":["../../../src/storage/daemon/release-files.ts"],"names":[],"mappings":"AAKA,gHAAgH;AAChH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAErD;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAChC;AAED,4GAA4G;AAC5G,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAGpF"}
@@ -1,14 +0,0 @@
1
- import { readFile, realpath } from "node:fs/promises";
2
- import { join } from "node:path";
3
- import { readStateDirectory } from "../state-directory.js";
4
- import { STATE_ROOT_LAYOUT } from "../state-root-layout.js";
5
- /** npm installs each daemon release into its own prefix, so an upgrade never overwrites the running release. */
6
- export function releasePrefix(version) {
7
- return join(readStateDirectory(), STATE_ROOT_LAYOUT.releases, version);
8
- }
9
- /** The canonical directory of the Mobius package npm installed into `prefix`, and its package.json text. */
10
- export async function readInstalledRelease(prefix) {
11
- const packageRoot = await realpath(join(prefix, "node_modules", "@moxt-ai", "mobius"));
12
- return { manifest: await readFile(join(packageRoot, "package.json"), "utf8"), packageRoot };
13
- }
14
- //# sourceMappingURL=release-files.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"release-files.js","sourceRoot":"","sources":["../../../src/storage/daemon/release-files.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,gHAAgH;AAChH,MAAM,UAAU,aAAa,CAAC,OAAe;IACzC,OAAO,IAAI,CAAC,kBAAkB,EAAE,EAAE,iBAAiB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC3E,CAAC;AAOD,4GAA4G;AAC5G,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,MAAc;IACrD,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;IACvF,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;AAChG,CAAC"}