@claudexor/cli 3.3.16 → 3.4.0
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/acp-surface-runner.d.ts +3 -2
- package/dist/acp-surface-runner.d.ts.map +1 -1
- package/dist/acp-surface-runner.js +20 -17
- package/dist/acp-surface-runner.js.map +1 -1
- package/dist/claudexord-entry.d.ts +7 -0
- package/dist/claudexord-entry.d.ts.map +1 -1
- package/dist/claudexord-entry.js +14 -0
- package/dist/claudexord-entry.js.map +1 -1
- package/dist/claudexord.d.ts +0 -10
- package/dist/claudexord.d.ts.map +1 -1
- package/dist/claudexord.js +95 -100
- package/dist/claudexord.js.map +1 -1
- package/dist/cli.js +10 -12
- package/dist/cli.js.map +1 -1
- package/dist/control-services.d.ts +4 -1
- package/dist/control-services.d.ts.map +1 -1
- package/dist/control-services.js +22 -21
- package/dist/control-services.js.map +1 -1
- package/dist/daemon-admission-runtime.d.ts +63 -0
- package/dist/daemon-admission-runtime.d.ts.map +1 -0
- package/dist/daemon-admission-runtime.js +180 -0
- package/dist/daemon-admission-runtime.js.map +1 -0
- package/dist/daemon-launch.d.ts +53 -0
- package/dist/daemon-launch.d.ts.map +1 -0
- package/dist/daemon-launch.js +211 -0
- package/dist/daemon-launch.js.map +1 -0
- package/dist/daemon-lifecycle.d.ts +14 -2
- package/dist/daemon-lifecycle.d.ts.map +1 -1
- package/dist/daemon-lifecycle.js +53 -10
- package/dist/daemon-lifecycle.js.map +1 -1
- package/dist/daemon-run.d.ts +6 -1
- package/dist/daemon-run.d.ts.map +1 -1
- package/dist/daemon-run.js +70 -19
- package/dist/daemon-run.js.map +1 -1
- package/dist/daemon-start-report.d.ts +8 -0
- package/dist/daemon-start-report.d.ts.map +1 -0
- package/dist/daemon-start-report.js +24 -0
- package/dist/daemon-start-report.js.map +1 -0
- package/dist/daemon-startup.d.ts +90 -0
- package/dist/daemon-startup.d.ts.map +1 -0
- package/dist/daemon-startup.js +156 -0
- package/dist/daemon-startup.js.map +1 -0
- package/dist/engine-skew.d.ts +4 -0
- package/dist/engine-skew.d.ts.map +1 -1
- package/dist/engine-skew.js +10 -3
- package/dist/engine-skew.js.map +1 -1
- package/dist/mcp-run-projections.d.ts +78 -1
- package/dist/mcp-run-projections.d.ts.map +1 -1
- package/dist/mcp-run-projections.js +57 -3
- package/dist/mcp-run-projections.js.map +1 -1
- package/dist/mcp-runner.d.ts.map +1 -1
- package/dist/mcp-runner.js +41 -37
- package/dist/mcp-runner.js.map +1 -1
- package/dist/ops-commands.d.ts +9 -0
- package/dist/ops-commands.d.ts.map +1 -1
- package/dist/ops-commands.js +61 -66
- package/dist/ops-commands.js.map +1 -1
- package/dist/ops-harness-selection.d.ts +6 -0
- package/dist/ops-harness-selection.d.ts.map +1 -0
- package/dist/ops-harness-selection.js +29 -0
- package/dist/ops-harness-selection.js.map +1 -0
- package/dist/orphan-sweeper.js +13 -3
- package/dist/orphan-sweeper.js.map +1 -1
- package/dist/remote-command.d.ts +10 -1
- package/dist/remote-command.d.ts.map +1 -1
- package/dist/remote-command.js +34 -10
- package/dist/remote-command.js.map +1 -1
- package/dist/runtime-replacement-stop.d.ts +13 -2
- package/dist/runtime-replacement-stop.d.ts.map +1 -1
- package/dist/runtime-replacement-stop.js +46 -11
- package/dist/runtime-replacement-stop.js.map +1 -1
- package/dist/setup-lifecycle-binding.d.ts +7 -1
- package/dist/setup-lifecycle-binding.d.ts.map +1 -1
- package/dist/setup-lifecycle-binding.js +27 -17
- package/dist/setup-lifecycle-binding.js.map +1 -1
- package/dist/startup-diagnostics.d.ts +61 -0
- package/dist/startup-diagnostics.d.ts.map +1 -0
- package/dist/startup-diagnostics.js +416 -0
- package/dist/startup-diagnostics.js.map +1 -0
- package/dist/thread-turn-services.d.ts +1 -1
- package/dist/thread-turn-services.d.ts.map +1 -1
- package/dist/thread-turn-services.js.map +1 -1
- package/package.json +23 -23
package/dist/daemon-lifecycle.js
CHANGED
|
@@ -8,39 +8,64 @@
|
|
|
8
8
|
*/
|
|
9
9
|
import { appendFileSync } from "node:fs";
|
|
10
10
|
import { join } from "node:path";
|
|
11
|
+
import { safeProblemMessage } from "@claudexor/util";
|
|
11
12
|
import { reapRecordedOrphans, writePidsSnapshot } from "./orphan-reaper.js";
|
|
12
13
|
import { sweepOrphanWorkspaces } from "./orphan-sweeper.js";
|
|
13
14
|
export const logLine = (path, message) => {
|
|
14
15
|
try {
|
|
15
|
-
appendFileSync(path, `[${new Date().toISOString()}] ${message}\n`);
|
|
16
|
+
appendFileSync(path, `[${new Date().toISOString()}] ${safeProblemMessage(message)}\n`);
|
|
16
17
|
}
|
|
17
18
|
catch {
|
|
18
19
|
/* lifecycle safety must not depend on diagnostic I/O */
|
|
19
20
|
}
|
|
20
21
|
};
|
|
22
|
+
function lifecycleDiagnostic(deps, record) {
|
|
23
|
+
if (deps.diagnostics) {
|
|
24
|
+
try {
|
|
25
|
+
void deps.diagnostics.record(record);
|
|
26
|
+
}
|
|
27
|
+
catch {
|
|
28
|
+
/* lifecycle safety must not depend on diagnostic I/O */
|
|
29
|
+
}
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
if (deps.logPath)
|
|
33
|
+
logLine(deps.logPath, record.message);
|
|
34
|
+
}
|
|
21
35
|
/** Pre-start: kill surviving children of a previous daemon life, then GC
|
|
22
36
|
* envelopes/branches/tmp-homes nothing owns anymore. */
|
|
23
37
|
export async function runStartupCrashGc(deps) {
|
|
24
38
|
const pidsPath = join(deps.daemonDir, "pids.json");
|
|
25
39
|
for (const action of reapRecordedOrphans(pidsPath)) {
|
|
26
|
-
|
|
40
|
+
lifecycleDiagnostic(deps, { stage: "crash_gc_reaper", message: `reaper: ${action}` });
|
|
27
41
|
}
|
|
28
42
|
try {
|
|
29
43
|
const sweepActions = await sweepOrphanWorkspaces({
|
|
30
44
|
journalRoot: join(deps.daemonDir, "journal"),
|
|
31
45
|
});
|
|
32
46
|
for (const action of sweepActions) {
|
|
33
|
-
|
|
47
|
+
lifecycleDiagnostic(deps, { stage: "crash_gc_sweep", message: `sweep: ${action}` });
|
|
34
48
|
}
|
|
35
49
|
}
|
|
36
50
|
catch (err) {
|
|
37
|
-
|
|
51
|
+
lifecycleDiagnostic(deps, {
|
|
52
|
+
stage: "crash_gc_sweep",
|
|
53
|
+
message: `sweep FAILED: ${err instanceof Error ? err.message : String(err)}`,
|
|
54
|
+
error: err,
|
|
55
|
+
});
|
|
38
56
|
}
|
|
39
57
|
}
|
|
40
58
|
/**
|
|
41
59
|
* Post-start: periodic live-children snapshots (the reap list a crash leaves
|
|
42
60
|
* behind) and SIGTERM/SIGINT -> the shutdown state machine (abort children,
|
|
43
61
|
* persist, close, bounded escalation). Returns the finalizer for main()'s tail.
|
|
62
|
+
*
|
|
63
|
+
* The snapshot timer is NOT armed here: with zero live children a snapshot
|
|
64
|
+
* DELETES pids.json, and until stage-4 crash-GC has consumed the previous
|
|
65
|
+
* life's file that file is the only record of surviving children (C2). The
|
|
66
|
+
* composition root calls `beginPidSnapshots()` once admission is normal;
|
|
67
|
+
* recovery-only serving leaves the previous pids.json byte-untouched, and the
|
|
68
|
+
* finalizer writes a final snapshot only when snapshots were armed.
|
|
44
69
|
*/
|
|
45
70
|
export function armDaemonLifecycle(deps) {
|
|
46
71
|
const pidsPath = join(deps.daemonDir, "pids.json");
|
|
@@ -51,11 +76,14 @@ export function armDaemonLifecycle(deps) {
|
|
|
51
76
|
snapshot(pidsPath);
|
|
52
77
|
}
|
|
53
78
|
catch (error) {
|
|
54
|
-
|
|
79
|
+
lifecycleDiagnostic(deps, {
|
|
80
|
+
stage: "pid_snapshot",
|
|
81
|
+
message: `pid snapshot FAILED: ${error instanceof Error ? error.message : String(error)}`,
|
|
82
|
+
error,
|
|
83
|
+
});
|
|
55
84
|
}
|
|
56
85
|
};
|
|
57
|
-
|
|
58
|
-
pidsTimer.unref?.();
|
|
86
|
+
let pidsTimer = null;
|
|
59
87
|
let stopping = false;
|
|
60
88
|
let finalized = false;
|
|
61
89
|
const onShutdownSignal = (sig) => {
|
|
@@ -64,7 +92,10 @@ export function armDaemonLifecycle(deps) {
|
|
|
64
92
|
if (stopping)
|
|
65
93
|
return;
|
|
66
94
|
stopping = true;
|
|
67
|
-
|
|
95
|
+
lifecycleDiagnostic(deps, {
|
|
96
|
+
stage: "shutdown_signal",
|
|
97
|
+
message: `${sig} received; stopping daemon`,
|
|
98
|
+
});
|
|
68
99
|
void deps.beginShutdown(sig).catch(() => {
|
|
69
100
|
// The machine logged the failure and keeps its deadline armed.
|
|
70
101
|
});
|
|
@@ -74,16 +105,28 @@ export function armDaemonLifecycle(deps) {
|
|
|
74
105
|
signals.on("SIGTERM", onSigterm);
|
|
75
106
|
signals.on("SIGINT", onSigint);
|
|
76
107
|
return {
|
|
108
|
+
beginPidSnapshots: () => {
|
|
109
|
+
if (pidsTimer || finalized)
|
|
110
|
+
return;
|
|
111
|
+
pidsTimer = setInterval(writeSnapshot, 2_000);
|
|
112
|
+
pidsTimer.unref?.();
|
|
113
|
+
},
|
|
77
114
|
finalize: () => {
|
|
78
115
|
if (finalized)
|
|
79
116
|
return;
|
|
80
117
|
finalized = true;
|
|
81
|
-
|
|
118
|
+
const snapshotsWereArmed = pidsTimer !== null;
|
|
119
|
+
if (pidsTimer)
|
|
120
|
+
clearInterval(pidsTimer);
|
|
121
|
+
pidsTimer = null;
|
|
82
122
|
signals.off("SIGTERM", onSigterm);
|
|
83
123
|
signals.off("SIGINT", onSigint);
|
|
84
124
|
// Graceful stop aborted all children; one final snapshot records any
|
|
85
125
|
// that survived the grace window (SIGKILL escalation may be in flight).
|
|
86
|
-
|
|
126
|
+
// Without armed snapshots there were no children to record, and the
|
|
127
|
+
// previous life's pids.json must stay byte-untouched (C2).
|
|
128
|
+
if (snapshotsWereArmed)
|
|
129
|
+
writeSnapshot();
|
|
87
130
|
},
|
|
88
131
|
};
|
|
89
132
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon-lifecycle.js","sourceRoot":"","sources":["../src/daemon-lifecycle.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"daemon-lifecycle.js","sourceRoot":"","sources":["../src/daemon-lifecycle.ts"],"names":[],"mappings":"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"}
|
package/dist/daemon-run.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ import { type ControlApiAddress } from "./live.js";
|
|
|
4
4
|
export { projectOutcomeBanner } from "./run-detail-projections.js";
|
|
5
5
|
export { projectRunOutcomeFacts, mergeDaemonRunOutcome } from "./daemon-outcome.js";
|
|
6
6
|
export declare const DAEMON_START_READY_TIMEOUT_MS = 90000;
|
|
7
|
+
export declare const DAEMON_CONTROL_API_FRESH_START_TAIL_MS = 10000;
|
|
7
8
|
/**
|
|
8
9
|
* Ensure a daemon (and its control API) is running and return a connected
|
|
9
10
|
* client + control-api address. Connects to the existing socket; if unreachable,
|
|
@@ -32,6 +33,9 @@ export declare function ensureDaemon(timeoutMs?: number): Promise<{
|
|
|
32
33
|
export declare function connectDaemonIfRunning(): Promise<{
|
|
33
34
|
client: DaemonClientType;
|
|
34
35
|
addr: ControlApiAddress;
|
|
36
|
+
/** Handshake identity incl. servingMode (C7): read-only paths stay
|
|
37
|
+
* connectable to a recovery-only daemon and report the mode honestly. */
|
|
38
|
+
engine: EngineIdentity;
|
|
35
39
|
} | null>;
|
|
36
40
|
/**
|
|
37
41
|
* Poll until the daemon (socket + control API) is fully ready, or the timeout
|
|
@@ -39,9 +43,10 @@ export declare function connectDaemonIfRunning(): Promise<{
|
|
|
39
43
|
* is guaranteed to succeed (no start/status race). A typed handshake refusal
|
|
40
44
|
* propagates — waiting cannot fix an incompatible daemon (#93).
|
|
41
45
|
*/
|
|
42
|
-
export declare function waitForDaemonReady(timeoutMs?: number): Promise<{
|
|
46
|
+
export declare function waitForDaemonReady(timeoutMs?: number, abort?: () => Error | null): Promise<{
|
|
43
47
|
client: DaemonClientType;
|
|
44
48
|
addr: ControlApiAddress;
|
|
49
|
+
engine: EngineIdentity;
|
|
45
50
|
} | null>;
|
|
46
51
|
export interface DaemonRunOutcome {
|
|
47
52
|
runId: string;
|
package/dist/daemon-run.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon-run.d.ts","sourceRoot":"","sources":["../src/daemon-run.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"daemon-run.d.ts","sourceRoot":"","sources":["../src/daemon-run.ts"],"names":[],"mappings":"AAEA,OAAO,EAML,KAAK,YAAY,IAAI,gBAAgB,EACtC,MAAM,mBAAmB,CAAC;AAS3B,OAAO,EAAoB,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAQpF,eAAO,MAAM,6BAA6B,QAAS,CAAC;AAOpD,eAAO,MAAM,sCAAsC,QAAS,CAAC;AAsC7D;;;;;;;;;;GAUG;AACH,wBAAsB,YAAY,CAChC,SAAS,SAAgC,GACxC,OAAO,CAAC;IAAE,MAAM,EAAE,gBAAgB,CAAC;IAAC,IAAI,EAAE,iBAAiB,CAAC;IAAC,MAAM,EAAE,cAAc,CAAA;CAAE,CAAC,CA2FxF;AAED;;;;;;;;GAQG;AACH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC;IACtD,MAAM,EAAE,gBAAgB,CAAC;IACzB,IAAI,EAAE,iBAAiB,CAAC;IACxB;6EACyE;IACzE,MAAM,EAAE,cAAc,CAAC;CACxB,GAAG,IAAI,CAAC,CAQR;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,SAAgC,EACzC,KAAK,CAAC,EAAE,MAAM,KAAK,GAAG,IAAI,GACzB,OAAO,CAAC;IAAE,MAAM,EAAE,gBAAgB,CAAC;IAAC,IAAI,EAAE,iBAAiB,CAAC;IAAC,MAAM,EAAE,cAAc,CAAA;CAAE,GAAG,IAAI,CAAC,CAiB/F;AAMD,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,0FAA0F;IAC1F,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACxC;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE,iBAAiB,EACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,IAAI,GAAE;IACJ,eAAe,EAAE,OAAO,CAAC;IACzB;gFAC4E;IAC5E,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;6EAEyE;IACzE,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpC,GAC5B,OAAO,CAAC,gBAAgB,CAAC,CA0J3B;AAkDD,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACd,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,uBAAuB,CAAC"}
|
package/dist/daemon-run.js
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import process from "node:process";
|
|
2
|
-
import { spawn } from "node:child_process";
|
|
3
|
-
import { existsSync } from "node:fs";
|
|
4
2
|
import { fileURLToPath } from "node:url";
|
|
5
3
|
import { DaemonClient, daemonDir, defaultSocketPath, ensureToken, readToken, } from "@claudexor/daemon";
|
|
6
4
|
import { harnessRuntimeEnv } from "@claudexor/core";
|
|
7
5
|
import { hashJson } from "@claudexor/util";
|
|
8
6
|
import { CliError, controlProblemError } from "./cli-error.js";
|
|
7
|
+
import { CLI_DAEMON_LAUNCH_SOURCES, launchDetachedDaemon, } from "./daemon-launch.js";
|
|
9
8
|
import { recordEngineSkew } from "./engine-skew.js";
|
|
10
9
|
import { controlApiAddress, controlApiFetch, handshakeControlApi, } from "./live.js";
|
|
11
10
|
import { TERMINAL_LIFECYCLES } from "@claudexor/schema";
|
|
@@ -17,6 +16,12 @@ const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
|
|
|
17
16
|
// `daemon start` and acting-command auto-start use this one bounded budget so
|
|
18
17
|
// neither reports a false failure while the detached daemon is still starting.
|
|
19
18
|
export const DAEMON_START_READY_TIMEOUT_MS = 90_000;
|
|
19
|
+
// The bounded TAIL of that fresh-start budget spent waiting for the control
|
|
20
|
+
// API after the daemon socket already answers (C10): the pointer file lands
|
|
21
|
+
// as soon as the control transport binds — on the recovery plane too — so
|
|
22
|
+
// this tail covers only bind/pointer-write latency, never journal replay
|
|
23
|
+
// (that part is behind the socket wait above).
|
|
24
|
+
export const DAEMON_CONTROL_API_FRESH_START_TAIL_MS = 10_000;
|
|
20
25
|
/** Is something accepting on the daemon socket right now? (cheap reachability probe). */
|
|
21
26
|
async function daemonReachable(client) {
|
|
22
27
|
return client.health().then(() => true, () => false);
|
|
@@ -62,24 +67,24 @@ export async function ensureDaemon(timeoutMs = DAEMON_START_READY_TIMEOUT_MS) {
|
|
|
62
67
|
const token = ensureToken();
|
|
63
68
|
const socketPath = defaultSocketPath();
|
|
64
69
|
let client = new DaemonClient(socketPath, token);
|
|
70
|
+
let launch = null;
|
|
71
|
+
// ONE shared budget for the whole readiness sequence (socket, pointer,
|
|
72
|
+
// normal admission): a journal-heavy startup may spend most of it in any
|
|
73
|
+
// single phase, and stacking per-phase budgets would multiply the worst case.
|
|
74
|
+
const overallDeadline = Date.now() + timeoutMs;
|
|
65
75
|
const ok = await daemonReachable(client);
|
|
66
76
|
if (!ok) {
|
|
67
77
|
// Auto-start the daemon entry (the same one `claudexor daemon start` spawns).
|
|
68
78
|
const daemonScript = process.env["CLAUDEXOR_DAEMON_ENTRY"] ??
|
|
69
79
|
fileURLToPath(new URL("./claudexord.js", import.meta.url));
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
const child = spawn(process.execPath, [daemonScript], {
|
|
74
|
-
detached: true,
|
|
75
|
-
stdio: "ignore",
|
|
80
|
+
launch = launchDetachedDaemon({
|
|
81
|
+
entryPath: daemonScript,
|
|
82
|
+
launchSource: CLI_DAEMON_LAUNCH_SOURCES.ensureDaemon,
|
|
76
83
|
env: harnessRuntimeEnv(),
|
|
77
84
|
});
|
|
78
|
-
child.unref();
|
|
79
85
|
// Wait for the socket to accept connections (health round-trip).
|
|
80
|
-
const deadline = Date.now() + timeoutMs;
|
|
81
86
|
let started = false;
|
|
82
|
-
while (Date.now() <
|
|
87
|
+
while (Date.now() < overallDeadline) {
|
|
83
88
|
await sleep(150);
|
|
84
89
|
// Re-read the token: ensureToken() above generated it before spawn, and the
|
|
85
90
|
// daemon reuses the same per-user token file, so this client stays valid.
|
|
@@ -88,24 +93,60 @@ export async function ensureDaemon(timeoutMs = DAEMON_START_READY_TIMEOUT_MS) {
|
|
|
88
93
|
started = true;
|
|
89
94
|
break;
|
|
90
95
|
}
|
|
96
|
+
if (launch.failure())
|
|
97
|
+
throw launch.callerError("socket_wait", timeoutMs);
|
|
91
98
|
}
|
|
92
|
-
if (!started)
|
|
93
|
-
throw
|
|
94
|
-
}
|
|
99
|
+
if (!started)
|
|
100
|
+
throw launch.callerError("socket_wait", timeoutMs);
|
|
95
101
|
}
|
|
96
102
|
// The control API (HTTP/SSE viewport over the daemon) is what streams events
|
|
97
103
|
// and resolves the run for apply/decision. Wait for its pointer to be written.
|
|
98
104
|
let reached = await controlApiReachable();
|
|
99
105
|
if (!reached) {
|
|
100
|
-
const deadline = Date.now() +
|
|
106
|
+
const deadline = Date.now() + DAEMON_CONTROL_API_FRESH_START_TAIL_MS;
|
|
101
107
|
while (Date.now() < deadline && !reached) {
|
|
102
108
|
await sleep(150);
|
|
103
109
|
reached = await controlApiReachable();
|
|
110
|
+
if (!reached && launch?.failure()) {
|
|
111
|
+
throw launch.callerError("control_api_wait", DAEMON_CONTROL_API_FRESH_START_TAIL_MS);
|
|
112
|
+
}
|
|
104
113
|
}
|
|
105
114
|
}
|
|
106
115
|
if (!reached) {
|
|
116
|
+
if (launch)
|
|
117
|
+
throw launch.callerError("control_api_wait", DAEMON_CONTROL_API_FRESH_START_TAIL_MS);
|
|
107
118
|
throw new Error(`daemon is up but its control API is not reachable (no ${daemonDir()}/control-api.json); it may be disabled by CLAUDEXOR_NO_CONTROL_API=1`);
|
|
108
119
|
}
|
|
120
|
+
launch?.markReady();
|
|
121
|
+
// C7d × D5: the daemon binds its transport and writes the pointer in
|
|
122
|
+
// startup stage 3 with product admission still CLOSED (handshake reports
|
|
123
|
+
// recovery_only), and only stage 4 — journal revalidation, crash-GC, the
|
|
124
|
+
// full recover(), activation — opens normal admission. On journal-heavy
|
|
125
|
+
// roots stage 4 takes the tens of seconds this shared start budget exists
|
|
126
|
+
// for, so a recovery_only handshake here is AMBIGUOUS between "still
|
|
127
|
+
// starting" and "genuinely blocked". Keep re-handshaking until the budget
|
|
128
|
+
// expires; a genuinely blocked root never opens normal and still gets the
|
|
129
|
+
// typed error below (the macOS app connect loop waits the same way).
|
|
130
|
+
while (reached.engine.servingMode !== "normal" && Date.now() < overallDeadline) {
|
|
131
|
+
await sleep(150);
|
|
132
|
+
if (launch?.failure())
|
|
133
|
+
throw launch.callerError("normal_admission_wait", timeoutMs);
|
|
134
|
+
// Absence mid-wait (daemon died or is restarting) keeps the last observed
|
|
135
|
+
// identity: the loop stays bounded and the deadline names the state.
|
|
136
|
+
reached = (await controlApiReachable()) ?? reached;
|
|
137
|
+
}
|
|
138
|
+
// C7d: acting paths must not proceed into a wall of daemon_recovery_only
|
|
139
|
+
// route refusals — name the recovery state once, typed and retryable.
|
|
140
|
+
if (reached.engine.servingMode !== "normal") {
|
|
141
|
+
throw new CliError("operational", "daemon is serving recovery only; product routes are closed until journal recovery completes", {
|
|
142
|
+
code: "daemon_recovery_only",
|
|
143
|
+
retryable: true,
|
|
144
|
+
requiredActions: [
|
|
145
|
+
"inspect `claudexor daemon logs` and the /recovery control surface",
|
|
146
|
+
"retry after journal recovery completes",
|
|
147
|
+
],
|
|
148
|
+
});
|
|
149
|
+
}
|
|
109
150
|
return { client, addr: reached.addr, engine: reached.engine };
|
|
110
151
|
}
|
|
111
152
|
/**
|
|
@@ -127,7 +168,7 @@ export async function connectDaemonIfRunning() {
|
|
|
127
168
|
const reached = await controlApiReachable();
|
|
128
169
|
if (!reached)
|
|
129
170
|
return null;
|
|
130
|
-
return { client, addr: reached.addr };
|
|
171
|
+
return { client, addr: reached.addr, engine: reached.engine };
|
|
131
172
|
}
|
|
132
173
|
/**
|
|
133
174
|
* Poll until the daemon (socket + control API) is fully ready, or the timeout
|
|
@@ -135,14 +176,24 @@ export async function connectDaemonIfRunning() {
|
|
|
135
176
|
* is guaranteed to succeed (no start/status race). A typed handshake refusal
|
|
136
177
|
* propagates — waiting cannot fix an incompatible daemon (#93).
|
|
137
178
|
*/
|
|
138
|
-
export async function waitForDaemonReady(timeoutMs = DAEMON_START_READY_TIMEOUT_MS) {
|
|
179
|
+
export async function waitForDaemonReady(timeoutMs = DAEMON_START_READY_TIMEOUT_MS, abort) {
|
|
139
180
|
const deadline = Date.now() + timeoutMs;
|
|
181
|
+
// D5: a reachable daemon may still be mid-startup (stage 3 binds the
|
|
182
|
+
// transport recovery-only; stage 4 opens normal admission after journal
|
|
183
|
+
// recovery). Report the TERMINAL mode, not the transient stage-3 value:
|
|
184
|
+
// keep polling a recovery_only handshake until it opens normal or the
|
|
185
|
+
// budget expires — a genuinely blocked root is then reported honestly.
|
|
186
|
+
let last = null;
|
|
140
187
|
for (;;) {
|
|
141
188
|
const conn = await connectDaemonIfRunning();
|
|
142
|
-
if (conn)
|
|
189
|
+
if (conn?.engine.servingMode === "normal")
|
|
143
190
|
return conn;
|
|
191
|
+
last = conn ?? last;
|
|
192
|
+
const failure = abort?.();
|
|
193
|
+
if (failure)
|
|
194
|
+
throw failure;
|
|
144
195
|
if (Date.now() >= deadline)
|
|
145
|
-
return
|
|
196
|
+
return last;
|
|
146
197
|
await sleep(150);
|
|
147
198
|
}
|
|
148
199
|
}
|
package/dist/daemon-run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon-run.js","sourceRoot":"","sources":["../src/daemon-run.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"daemon-run.js","sourceRoot":"","sources":["../src/daemon-run.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"daemon-start-report.d.ts","sourceRoot":"","sources":["../src/daemon-start-report.ts"],"names":[],"mappings":"AAQA,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,QAAQ,GAAG,eAAe,CAAC;IACxC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,cAAc,EAAE,OAAO,CAAC;CACzB,GAAG,IAAI,CAmBP"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/** C7c: `claudexor daemon start` reports the admission mode honestly — a
|
|
2
|
+
* recovery-only daemon came up (exit 0) but product routes stay closed until
|
|
3
|
+
* journal recovery completes, and the JSON envelope carries servingMode. */
|
|
4
|
+
import { print, printJson } from "./cli-io.js";
|
|
5
|
+
const RECOVERY_ONLY_NOTE = " and is serving recovery only — product routes are closed until journal recovery completes";
|
|
6
|
+
export function reportDaemonStartReady(input) {
|
|
7
|
+
if (input.json) {
|
|
8
|
+
printJson({
|
|
9
|
+
pid: input.pid,
|
|
10
|
+
socket: input.socket,
|
|
11
|
+
ready: true,
|
|
12
|
+
...(input.alreadyRunning ? { alreadyRunning: true } : {}),
|
|
13
|
+
servingMode: input.servingMode,
|
|
14
|
+
});
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
const note = input.servingMode === "recovery_only" ? RECOVERY_ONLY_NOTE : "";
|
|
18
|
+
print(input.alreadyRunning
|
|
19
|
+
? `claudexord already running${note}; socket ${input.socket}`
|
|
20
|
+
: note
|
|
21
|
+
? `claudexord started (pid ${input.pid})${note}; socket ${input.socket}`
|
|
22
|
+
: `claudexord ready (pid ${input.pid}); socket ${input.socket}`);
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=daemon-start-report.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"daemon-start-report.js","sourceRoot":"","sources":["../src/daemon-start-report.ts"],"names":[],"mappings":"AAAA;;4EAE4E;AAC5E,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE/C,MAAM,kBAAkB,GACtB,4FAA4F,CAAC;AAE/F,MAAM,UAAU,sBAAsB,CAAC,KAMtC;IACC,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QACf,SAAS,CAAC;YACR,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,KAAK,EAAE,IAAI;YACX,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,WAAW,EAAE,KAAK,CAAC,WAAW;SAC/B,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IACD,MAAM,IAAI,GAAG,KAAK,CAAC,WAAW,KAAK,eAAe,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7E,KAAK,CACH,KAAK,CAAC,cAAc;QAClB,CAAC,CAAC,6BAA6B,IAAI,YAAY,KAAK,CAAC,MAAM,EAAE;QAC7D,CAAC,CAAC,IAAI;YACJ,CAAC,CAAC,2BAA2B,KAAK,CAAC,GAAG,IAAI,IAAI,YAAY,KAAK,CAAC,MAAM,EAAE;YACxE,CAAC,CAAC,yBAAyB,KAAK,CAAC,GAAG,aAAa,KAAK,CAAC,MAAM,EAAE,CACpE,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { type DaemonServingMode, type JournalManagerPreparation, type ProjectPartitionsPreparation, type RootAuthorityGrant } from "@claudexor/daemon";
|
|
2
|
+
/** Single canonical admission snapshot; both transports read the SAME fact. */
|
|
3
|
+
export declare class DaemonStartupAdmission {
|
|
4
|
+
private mode;
|
|
5
|
+
readonly snapshot: () => DaemonServingMode;
|
|
6
|
+
openNormal(): void;
|
|
7
|
+
}
|
|
8
|
+
/** Stage-2 verdict: every partition that blocks destructive recovery. The
|
|
9
|
+
* loose Picks let the C6 in-process reopen feed LIVE inspections through the
|
|
10
|
+
* same verdict the frozen stage-2 receipts use. */
|
|
11
|
+
export declare function recoveryBlockedPartitions(input: {
|
|
12
|
+
globalPreparation: {
|
|
13
|
+
inspection: Pick<JournalManagerPreparation["inspection"], "status">;
|
|
14
|
+
};
|
|
15
|
+
partitionsPreparation: Pick<ProjectPartitionsPreparation, "coverage" | "recoveryRequiredPartitions">;
|
|
16
|
+
}): string[];
|
|
17
|
+
/** C6a: whether the control API binds this startup. CLAUDEXOR_NO_CONTROL_API=1
|
|
18
|
+
* is honored only on a clean verdict — the recovery surface IS the point of
|
|
19
|
+
* the recovery plane, so a recovery-required verdict overrides it (logged). */
|
|
20
|
+
export declare function controlApiEnabledForStartup(input: {
|
|
21
|
+
disabledByEnv: boolean;
|
|
22
|
+
blockedPartitions: string[];
|
|
23
|
+
log: (message: string) => void;
|
|
24
|
+
}): boolean;
|
|
25
|
+
/** Stage 3 bind: start the REAL socket + control transports (product
|
|
26
|
+
* admission still closed) and publish their addresses. Returns the control
|
|
27
|
+
* address, or null when the control API is disabled or shutdown began. */
|
|
28
|
+
export declare function bindRecoveryTransport(input: {
|
|
29
|
+
server: {
|
|
30
|
+
start(): Promise<void>;
|
|
31
|
+
};
|
|
32
|
+
control: {
|
|
33
|
+
start(): Promise<{
|
|
34
|
+
host: string;
|
|
35
|
+
port: number;
|
|
36
|
+
}>;
|
|
37
|
+
} | null;
|
|
38
|
+
requested: () => boolean;
|
|
39
|
+
daemonDir: string;
|
|
40
|
+
logPath: string;
|
|
41
|
+
socketPath: string;
|
|
42
|
+
}): Promise<{
|
|
43
|
+
host: string;
|
|
44
|
+
port: number;
|
|
45
|
+
} | null>;
|
|
46
|
+
/** Stage 3 proof: prove self-health and exact identity through the REAL
|
|
47
|
+
* transport while product admission is still closed. */
|
|
48
|
+
export declare function proveRecoveryTransport(input: {
|
|
49
|
+
socket: {
|
|
50
|
+
health(): Promise<unknown>;
|
|
51
|
+
};
|
|
52
|
+
identity: {
|
|
53
|
+
version: string;
|
|
54
|
+
sha: string;
|
|
55
|
+
};
|
|
56
|
+
token: string;
|
|
57
|
+
control: {
|
|
58
|
+
host: string;
|
|
59
|
+
port: number;
|
|
60
|
+
} | null;
|
|
61
|
+
}): Promise<void>;
|
|
62
|
+
/** Stage 4: revalidate every read-only preparation FIRST; only on all-green
|
|
63
|
+
* advance the floor, run destructive recovery and open normal admission — or
|
|
64
|
+
* the protected recovery-only outcome (floor unchanged, cleanup off). */
|
|
65
|
+
export declare function completeStartupAdmission(input: {
|
|
66
|
+
grant: Pick<RootAuthorityGrant, "advanceFloor">;
|
|
67
|
+
blockedPartitions: string[];
|
|
68
|
+
global: {
|
|
69
|
+
revalidatePreparation(): void;
|
|
70
|
+
activatePrepared(): void;
|
|
71
|
+
recoverAfterStartup(): void;
|
|
72
|
+
};
|
|
73
|
+
partitions: {
|
|
74
|
+
revalidatePreparation(): void;
|
|
75
|
+
activatePrepared(): void;
|
|
76
|
+
recoverAfterStartup(): void;
|
|
77
|
+
};
|
|
78
|
+
crashGc: () => Promise<void>;
|
|
79
|
+
admission: DaemonStartupAdmission;
|
|
80
|
+
log: (message: string) => void;
|
|
81
|
+
}): Promise<DaemonServingMode>;
|
|
82
|
+
/** Post-admission ghost-project quarantine (F2), normal admission only. */
|
|
83
|
+
export declare function quarantineGhostProjectsAtStartup(threads: {
|
|
84
|
+
quarantineGhostProjects(): Iterable<{
|
|
85
|
+
projectId: string;
|
|
86
|
+
reason: string;
|
|
87
|
+
root: string;
|
|
88
|
+
}>;
|
|
89
|
+
}, log: (message: string) => void): void;
|
|
90
|
+
//# sourceMappingURL=daemon-startup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"daemon-startup.d.ts","sourceRoot":"","sources":["../src/daemon-startup.ts"],"names":[],"mappings":"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"}
|