@cuna_labs/cli 0.1.0 → 0.1.1
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/bin/cuna.js +15 -2
- package/dist/bin/cuna.js.map +1 -1
- package/dist/cli/command-help.js +2 -2
- package/dist/cli/command-help.js.map +1 -1
- package/dist/cli/first-line.d.ts +80 -0
- package/dist/cli/first-line.d.ts.map +1 -0
- package/dist/cli/first-line.js +119 -0
- package/dist/cli/first-line.js.map +1 -0
- package/dist/cli/help.js +1 -1
- package/dist/cli/process-entrypoint.d.ts +3 -0
- package/dist/cli/process-entrypoint.d.ts.map +1 -1
- package/dist/cli/process-entrypoint.js +3 -1
- package/dist/cli/process-entrypoint.js.map +1 -1
- package/dist/cli/progress-line.d.ts +78 -0
- package/dist/cli/progress-line.d.ts.map +1 -0
- package/dist/cli/progress-line.js +94 -0
- package/dist/cli/progress-line.js.map +1 -0
- package/dist/cli/recorded-launch-prompt.d.ts +83 -0
- package/dist/cli/recorded-launch-prompt.d.ts.map +1 -0
- package/dist/cli/recorded-launch-prompt.js +80 -0
- package/dist/cli/recorded-launch-prompt.js.map +1 -0
- package/dist/cli/run.d.ts +19 -0
- package/dist/cli/run.d.ts.map +1 -1
- package/dist/cli/run.js +233 -75
- package/dist/cli/run.js.map +1 -1
- package/dist/commands/commands.js +6 -4
- package/dist/commands/commands.js.map +1 -1
- package/dist/journey/account-identity.d.ts +55 -0
- package/dist/journey/account-identity.d.ts.map +1 -0
- package/dist/journey/account-identity.js +69 -0
- package/dist/journey/account-identity.js.map +1 -0
- package/dist/journey/api-effects.d.ts +9 -0
- package/dist/journey/api-effects.d.ts.map +1 -1
- package/dist/journey/api-effects.js +172 -19
- package/dist/journey/api-effects.js.map +1 -1
- package/dist/journey/index.d.ts +3 -1
- package/dist/journey/index.d.ts.map +1 -1
- package/dist/journey/index.js +2 -0
- package/dist/journey/index.js.map +1 -1
- package/dist/journey/orchestrator.d.ts +24 -0
- package/dist/journey/orchestrator.d.ts.map +1 -1
- package/dist/journey/orchestrator.js +21 -3
- package/dist/journey/orchestrator.js.map +1 -1
- package/dist/journey/provider-launch-intent.d.ts +11 -0
- package/dist/journey/provider-launch-intent.d.ts.map +1 -1
- package/dist/journey/provider-launch-intent.js +50 -15
- package/dist/journey/provider-launch-intent.js.map +1 -1
- package/dist/journey/remote-workspace.d.ts +11 -0
- package/dist/journey/remote-workspace.d.ts.map +1 -1
- package/dist/journey/remote-workspace.js +94 -14
- package/dist/journey/remote-workspace.js.map +1 -1
- package/dist/journey/root-entry.d.ts +15 -0
- package/dist/journey/root-entry.d.ts.map +1 -1
- package/dist/journey/root-entry.js +18 -6
- package/dist/journey/root-entry.js.map +1 -1
- package/dist/journey/selection.d.ts +9 -0
- package/dist/journey/selection.d.ts.map +1 -1
- package/dist/journey/selection.js +14 -2
- package/dist/journey/selection.js.map +1 -1
- package/dist/journey/session-disposition.d.ts +45 -0
- package/dist/journey/session-disposition.d.ts.map +1 -0
- package/dist/journey/session-disposition.js +7 -0
- package/dist/journey/session-disposition.js.map +1 -0
- package/dist/journey/wait-policy.d.ts +218 -0
- package/dist/journey/wait-policy.d.ts.map +1 -0
- package/dist/journey/wait-policy.js +233 -0
- package/dist/journey/wait-policy.js.map +1 -0
- package/dist/journey/workspace-effects.d.ts +7 -1
- package/dist/journey/workspace-effects.d.ts.map +1 -1
- package/dist/journey/workspace-effects.js +131 -14
- package/dist/journey/workspace-effects.js.map +1 -1
- package/dist/machines/explorer.js +2 -2
- package/dist/machines/explorer.js.map +1 -1
- package/dist/machines/machine-first.d.ts.map +1 -1
- package/dist/machines/machine-first.js +2 -0
- package/dist/machines/machine-first.js.map +1 -1
- package/dist/machines/session-actionability.js +10 -0
- package/dist/machines/session-actionability.js.map +1 -1
- package/dist/machines/session-visibility.d.ts +2 -0
- package/dist/machines/session-visibility.d.ts.map +1 -1
- package/dist/machines/session-visibility.js +5 -0
- package/dist/machines/session-visibility.js.map +1 -1
- package/dist/platform/process-lock.d.ts +21 -0
- package/dist/platform/process-lock.d.ts.map +1 -0
- package/dist/platform/process-lock.js +114 -0
- package/dist/platform/process-lock.js.map +1 -0
- package/dist/runtime/boundary.d.ts +2 -0
- package/dist/runtime/boundary.d.ts.map +1 -1
- package/dist/runtime/boundary.js +155 -8
- package/dist/runtime/boundary.js.map +1 -1
- package/dist/runtime/node-foreground-session.d.ts +10 -0
- package/dist/runtime/node-foreground-session.d.ts.map +1 -1
- package/dist/runtime/node-foreground-session.js +112 -4
- package/dist/runtime/node-foreground-session.js.map +1 -1
- package/dist/runtime/terminal-client-identity.d.ts +66 -0
- package/dist/runtime/terminal-client-identity.d.ts.map +1 -0
- package/dist/runtime/terminal-client-identity.js +184 -0
- package/dist/runtime/terminal-client-identity.js.map +1 -0
- package/dist/runtime/terminal-transport.js +2 -2
- package/dist/runtime/terminal-transport.js.map +1 -1
- package/dist/sync/continuous-sync-supervisor.d.ts +64 -1
- package/dist/sync/continuous-sync-supervisor.d.ts.map +1 -1
- package/dist/sync/continuous-sync-supervisor.js +247 -28
- package/dist/sync/continuous-sync-supervisor.js.map +1 -1
- package/dist/sync/journal.js +9 -39
- package/dist/sync/journal.js.map +1 -1
- package/dist/sync/workspace-sync-product-service.d.ts +83 -1
- package/dist/sync/workspace-sync-product-service.d.ts.map +1 -1
- package/dist/sync/workspace-sync-product-service.js +324 -12
- package/dist/sync/workspace-sync-product-service.js.map +1 -1
- package/dist/terminal/foreground.d.ts.map +1 -1
- package/dist/terminal/foreground.js +82 -15
- package/dist/terminal/foreground.js.map +1 -1
- package/dist/terminal/workbench.d.ts +7 -0
- package/dist/terminal/workbench.d.ts.map +1 -1
- package/dist/terminal/workbench.js +24 -6
- package/dist/terminal/workbench.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-foreground-session.js","sourceRoot":"","sources":["../../src/runtime/node-foreground-session.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"node-foreground-session.js","sourceRoot":"","sources":["../../src/runtime/node-foreground-session.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import type { AgentSession } from "../api/contracts.js";
|
|
2
|
+
import type { PlatformAdapter } from "../platform/adapter.js";
|
|
3
|
+
import { type ProcessLock } from "../platform/process-lock.js";
|
|
4
|
+
/**
|
|
5
|
+
* THE TERMINAL CLIENT THIS COMPUTER IS, PER (PROFILE, AGENTSESSION).
|
|
6
|
+
*
|
|
7
|
+
* WHY. The writer seat is held by a client instance id, and nothing releases
|
|
8
|
+
* it on detach: through migration 0221 the database clears
|
|
9
|
+
* `writer_client_instance_id` only when the attachment becomes
|
|
10
|
+
* `owner_unrecoverable`, and neither the wire nor the HTTP contract has a
|
|
11
|
+
* release. Every CLI process used to mint a fresh `cli:<uuid>`, so a clean
|
|
12
|
+
* detach followed by a re-attach from the same computer met
|
|
13
|
+
* `terminal_writer_held` and had to transfer (R12: epoch 2 -> 3 -> 4).
|
|
14
|
+
* Re-using the id makes that re-attach the SAME client, and the seat resumes.
|
|
15
|
+
*
|
|
16
|
+
* WHY THAT KEEPS ONE WRITER. The database grants a writer to the client that
|
|
17
|
+
* already holds the seat without moving it (0106,
|
|
18
|
+
* `acquire_agent_session_terminal_writer`), and the supervisor, where input
|
|
19
|
+
* reaches the PTY, lets a writer with the same client id and a newer
|
|
20
|
+
* attachment generation REPLACE its own earlier binding and drops the old one
|
|
21
|
+
* (`bind_attachment` in `edge/assets/agent-session-supervisor.py`, infra
|
|
22
|
+
* 9ccb7f8 lines 7753-7862); a different client is refused
|
|
23
|
+
* `attachment.writer_held`. So at the PTY there is never a second writer. The
|
|
24
|
+
* Edge's per-keystroke fence checks only (client id, writer epoch), so it is
|
|
25
|
+
* the supervisor, not the Edge, that separates two connections of one id.
|
|
26
|
+
*
|
|
27
|
+
* WHY THE LOCK. Two processes on this computer must never be the same client
|
|
28
|
+
* at the same time: each would replace the other's binding on every
|
|
29
|
+
* reconnect. The id is used only by the process holding an OS-held lock for
|
|
30
|
+
* that (profile, AgentSession) for the whole attachment; any other process
|
|
31
|
+
* mints a fresh id, as before, and is told so in one line.
|
|
32
|
+
*/
|
|
33
|
+
/**
|
|
34
|
+
* How long an unused record is kept. The journey stops treating a session as
|
|
35
|
+
* recent after the same 30 days (`journey/api-effects.ts`), and a record older
|
|
36
|
+
* than that belongs to a session nobody here has attached to in that window.
|
|
37
|
+
* It is a garbage bound, not a safety one: the lock, not the age, keeps an id
|
|
38
|
+
* to one process.
|
|
39
|
+
*/
|
|
40
|
+
export declare const TERMINAL_CLIENT_RECORD_IDLE_MS: number;
|
|
41
|
+
export declare const TERMINAL_CLIENT_BUSY_NOTICE = "Another Cuna process here is attached to this AgentSession \u00B7 this one attaches as a new client and may have to take control";
|
|
42
|
+
export interface TerminalClientScope {
|
|
43
|
+
readonly platform: Pick<PlatformAdapter, "paths" | "readSafeConfig" | "writeSafeConfig">;
|
|
44
|
+
readonly profile: string;
|
|
45
|
+
}
|
|
46
|
+
export interface TerminalClientIdentity {
|
|
47
|
+
readonly clientInstanceId: string;
|
|
48
|
+
/** `reused`: the recorded id; `minted`: a new recorded id; `busy`: a new id another process's lock kept unrecorded. */
|
|
49
|
+
readonly source: "reused" | "minted" | "busy";
|
|
50
|
+
/** Present only for `busy`: the one line the person is shown. */
|
|
51
|
+
readonly notice?: string;
|
|
52
|
+
/** The AgentSession is gone: remove its record so the id is never offered again. */
|
|
53
|
+
forget(): Promise<void>;
|
|
54
|
+
/** End the attachment's hold on the id. The record stays for the next attach. */
|
|
55
|
+
release(): Promise<void>;
|
|
56
|
+
}
|
|
57
|
+
/** A typed terminal state: the session cannot come back, so neither can its seat. */
|
|
58
|
+
export declare function isAgentSessionGone(session: Pick<AgentSession, "desiredState" | "requestState" | "processState">): boolean;
|
|
59
|
+
export declare function claimTerminalClientIdentity(scope: TerminalClientScope, session: Pick<AgentSession, "id" | "createdAt">, options?: {
|
|
60
|
+
readonly now?: () => number;
|
|
61
|
+
readonly mint?: () => string;
|
|
62
|
+
readonly lock?: (key: string) => Promise<ProcessLock | undefined>;
|
|
63
|
+
}): Promise<TerminalClientIdentity>;
|
|
64
|
+
/** Remove a session's record without holding its lock: a gone session has no attachment to protect. */
|
|
65
|
+
export declare function forgetTerminalClientIdentity(scope: TerminalClientScope, agentSessionId: string): Promise<void>;
|
|
66
|
+
//# sourceMappingURL=terminal-client-identity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"terminal-client-identity.d.ts","sourceRoot":"","sources":["../../src/runtime/terminal-client-identity.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAyB,KAAK,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAEtF;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,8BAA8B,QAA4B,CAAC;AAExE,eAAO,MAAM,2BAA2B,qIACuF,CAAC;AAMhI,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,EAAE,OAAO,GAAG,gBAAgB,GAAG,iBAAiB,CAAC,CAAC;IACzF,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,uHAAuH;IACvH,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC9C,iEAAiE;IACjE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,oFAAoF;IACpF,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACxB,iFAAiF;IACjF,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AAYD,qFAAqF;AACrF,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,cAAc,GAAG,cAAc,GAAG,cAAc,CAAC,GAC5E,OAAO,CAIT;AAED,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,mBAAmB,EAC1B,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,GAAG,WAAW,CAAC,EAC/C,OAAO,GAAE;IACP,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,MAAM,CAAC;IAC7B,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;CAC9D,GACL,OAAO,CAAC,sBAAsB,CAAC,CA8CjC;AAED,uGAAuG;AACvG,wBAAsB,4BAA4B,CAAC,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEpH"}
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
import { createHash, randomUUID } from "node:crypto";
|
|
2
|
+
import { readdir, unlink } from "node:fs/promises";
|
|
3
|
+
import { join } from "node:path";
|
|
4
|
+
import { assertCanonicalUuid } from "../core/validation.js";
|
|
5
|
+
import { tryAcquireProcessLock } from "../platform/process-lock.js";
|
|
6
|
+
/**
|
|
7
|
+
* THE TERMINAL CLIENT THIS COMPUTER IS, PER (PROFILE, AGENTSESSION).
|
|
8
|
+
*
|
|
9
|
+
* WHY. The writer seat is held by a client instance id, and nothing releases
|
|
10
|
+
* it on detach: through migration 0221 the database clears
|
|
11
|
+
* `writer_client_instance_id` only when the attachment becomes
|
|
12
|
+
* `owner_unrecoverable`, and neither the wire nor the HTTP contract has a
|
|
13
|
+
* release. Every CLI process used to mint a fresh `cli:<uuid>`, so a clean
|
|
14
|
+
* detach followed by a re-attach from the same computer met
|
|
15
|
+
* `terminal_writer_held` and had to transfer (R12: epoch 2 -> 3 -> 4).
|
|
16
|
+
* Re-using the id makes that re-attach the SAME client, and the seat resumes.
|
|
17
|
+
*
|
|
18
|
+
* WHY THAT KEEPS ONE WRITER. The database grants a writer to the client that
|
|
19
|
+
* already holds the seat without moving it (0106,
|
|
20
|
+
* `acquire_agent_session_terminal_writer`), and the supervisor, where input
|
|
21
|
+
* reaches the PTY, lets a writer with the same client id and a newer
|
|
22
|
+
* attachment generation REPLACE its own earlier binding and drops the old one
|
|
23
|
+
* (`bind_attachment` in `edge/assets/agent-session-supervisor.py`, infra
|
|
24
|
+
* 9ccb7f8 lines 7753-7862); a different client is refused
|
|
25
|
+
* `attachment.writer_held`. So at the PTY there is never a second writer. The
|
|
26
|
+
* Edge's per-keystroke fence checks only (client id, writer epoch), so it is
|
|
27
|
+
* the supervisor, not the Edge, that separates two connections of one id.
|
|
28
|
+
*
|
|
29
|
+
* WHY THE LOCK. Two processes on this computer must never be the same client
|
|
30
|
+
* at the same time: each would replace the other's binding on every
|
|
31
|
+
* reconnect. The id is used only by the process holding an OS-held lock for
|
|
32
|
+
* that (profile, AgentSession) for the whole attachment; any other process
|
|
33
|
+
* mints a fresh id, as before, and is told so in one line.
|
|
34
|
+
*/
|
|
35
|
+
/**
|
|
36
|
+
* How long an unused record is kept. The journey stops treating a session as
|
|
37
|
+
* recent after the same 30 days (`journey/api-effects.ts`), and a record older
|
|
38
|
+
* than that belongs to a session nobody here has attached to in that window.
|
|
39
|
+
* It is a garbage bound, not a safety one: the lock, not the age, keeps an id
|
|
40
|
+
* to one process.
|
|
41
|
+
*/
|
|
42
|
+
export const TERMINAL_CLIENT_RECORD_IDLE_MS = 30 * 24 * 60 * 60 * 1_000;
|
|
43
|
+
export const TERMINAL_CLIENT_BUSY_NOTICE = "Another Cuna process here is attached to this AgentSession · this one attaches as a new client and may have to take control";
|
|
44
|
+
const LOCK_SCOPE = "terminal-client";
|
|
45
|
+
const RECORD_MAXIMUM_BYTES = 4_096;
|
|
46
|
+
const CLIENT_INSTANCE_ID = /^cli:[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/u;
|
|
47
|
+
/** A typed terminal state: the session cannot come back, so neither can its seat. */
|
|
48
|
+
export function isAgentSessionGone(session) {
|
|
49
|
+
return session.desiredState === "terminated" ||
|
|
50
|
+
session.requestState === "terminal" || session.requestState === "failed" ||
|
|
51
|
+
session.processState === "exited" || session.processState === "failed" || session.processState === "terminated";
|
|
52
|
+
}
|
|
53
|
+
export async function claimTerminalClientIdentity(scope, session, options = {}) {
|
|
54
|
+
const now = options.now ?? Date.now;
|
|
55
|
+
const mint = options.mint ?? (() => `cli:${randomUUID()}`);
|
|
56
|
+
const agentSessionId = assertCanonicalUuid(session.id, "AgentSession ID");
|
|
57
|
+
const lock = await (options.lock ?? ((key) => tryAcquireProcessLock(LOCK_SCOPE, key)))(lockKey(scope.profile, agentSessionId));
|
|
58
|
+
if (lock === undefined) {
|
|
59
|
+
return Object.freeze({
|
|
60
|
+
clientInstanceId: mint(),
|
|
61
|
+
source: "busy",
|
|
62
|
+
notice: TERMINAL_CLIENT_BUSY_NOTICE,
|
|
63
|
+
forget: async () => undefined,
|
|
64
|
+
release: async () => undefined,
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
const path = recordPath(scope, agentSessionId);
|
|
68
|
+
try {
|
|
69
|
+
const recorded = await readRecord(scope, path);
|
|
70
|
+
const stamp = new Date(now()).toISOString();
|
|
71
|
+
const reusable = recorded !== undefined &&
|
|
72
|
+
recorded.profile === scope.profile &&
|
|
73
|
+
recorded.agentSessionId === agentSessionId &&
|
|
74
|
+
recorded.sessionCreatedAt === session.createdAt &&
|
|
75
|
+
now() - Date.parse(recorded.lastUsedAt) <= TERMINAL_CLIENT_RECORD_IDLE_MS;
|
|
76
|
+
const record = reusable
|
|
77
|
+
? { ...recorded, lastUsedAt: stamp }
|
|
78
|
+
: {
|
|
79
|
+
schemaVersion: 1,
|
|
80
|
+
profile: scope.profile,
|
|
81
|
+
agentSessionId,
|
|
82
|
+
sessionCreatedAt: session.createdAt,
|
|
83
|
+
clientInstanceId: mint(),
|
|
84
|
+
createdAt: stamp,
|
|
85
|
+
lastUsedAt: stamp,
|
|
86
|
+
};
|
|
87
|
+
await scope.platform.writeSafeConfig(path, `${JSON.stringify(record)}\n`, RECORD_MAXIMUM_BYTES);
|
|
88
|
+
await sweepIdleRecords(scope, agentSessionId, now, options.lock);
|
|
89
|
+
return Object.freeze({
|
|
90
|
+
clientInstanceId: record.clientInstanceId,
|
|
91
|
+
source: reusable ? "reused" : "minted",
|
|
92
|
+
forget: async () => { await removeRecord(path); },
|
|
93
|
+
release: () => lock.release(),
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
catch (error) {
|
|
97
|
+
await lock.release();
|
|
98
|
+
throw error;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
/** Remove a session's record without holding its lock: a gone session has no attachment to protect. */
|
|
102
|
+
export async function forgetTerminalClientIdentity(scope, agentSessionId) {
|
|
103
|
+
await removeRecord(recordPath(scope, assertCanonicalUuid(agentSessionId, "AgentSession ID")));
|
|
104
|
+
}
|
|
105
|
+
function lockKey(profile, agentSessionId) {
|
|
106
|
+
return `${profile}\0${agentSessionId}`;
|
|
107
|
+
}
|
|
108
|
+
function profileDirectory(scope) {
|
|
109
|
+
// A profile name is the person's own text; the directory is its digest.
|
|
110
|
+
const digest = createHash("sha256").update("cuna-terminal-client-profile-v1\0").update(scope.profile).digest("hex");
|
|
111
|
+
return join(scope.platform.paths.stateDirectory, "terminal-clients", digest.slice(0, 32));
|
|
112
|
+
}
|
|
113
|
+
function recordPath(scope, agentSessionId) {
|
|
114
|
+
return join(profileDirectory(scope), `${agentSessionId}.json`);
|
|
115
|
+
}
|
|
116
|
+
async function readRecord(scope, path) {
|
|
117
|
+
const snapshot = await scope.platform.readSafeConfig(path, RECORD_MAXIMUM_BYTES);
|
|
118
|
+
if (!snapshot.exists || snapshot.text === undefined)
|
|
119
|
+
return undefined;
|
|
120
|
+
try {
|
|
121
|
+
const value = JSON.parse(snapshot.text);
|
|
122
|
+
if (value.schemaVersion !== 1 ||
|
|
123
|
+
typeof value.profile !== "string" ||
|
|
124
|
+
typeof value.agentSessionId !== "string" ||
|
|
125
|
+
typeof value.sessionCreatedAt !== "string" ||
|
|
126
|
+
typeof value.clientInstanceId !== "string" || !CLIENT_INSTANCE_ID.test(value.clientInstanceId) ||
|
|
127
|
+
typeof value.createdAt !== "string" ||
|
|
128
|
+
typeof value.lastUsedAt !== "string" || !Number.isFinite(Date.parse(value.lastUsedAt)))
|
|
129
|
+
return undefined;
|
|
130
|
+
return value;
|
|
131
|
+
}
|
|
132
|
+
catch {
|
|
133
|
+
// Unreadable bytes name no client; the record is rewritten below.
|
|
134
|
+
return undefined;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Delete this profile's records unused for longer than the idle bound, each
|
|
139
|
+
* only while its own lock can be taken, so a record an attachment is using is
|
|
140
|
+
* never removed from under it.
|
|
141
|
+
*/
|
|
142
|
+
async function sweepIdleRecords(scope, claimedAgentSessionId, now, lock) {
|
|
143
|
+
let names;
|
|
144
|
+
try {
|
|
145
|
+
names = await readdir(profileDirectory(scope));
|
|
146
|
+
}
|
|
147
|
+
catch {
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
for (const name of names) {
|
|
151
|
+
const agentSessionId = name.endsWith(".json") ? name.slice(0, -".json".length) : "";
|
|
152
|
+
if (agentSessionId === claimedAgentSessionId || !/^[0-9a-f-]{36}$/u.test(agentSessionId))
|
|
153
|
+
continue;
|
|
154
|
+
const path = recordPath(scope, agentSessionId);
|
|
155
|
+
let recorded;
|
|
156
|
+
try {
|
|
157
|
+
recorded = await readRecord(scope, path);
|
|
158
|
+
}
|
|
159
|
+
catch {
|
|
160
|
+
continue;
|
|
161
|
+
}
|
|
162
|
+
if (recorded !== undefined && now() - Date.parse(recorded.lastUsedAt) <= TERMINAL_CLIENT_RECORD_IDLE_MS)
|
|
163
|
+
continue;
|
|
164
|
+
const held = await (lock ?? ((key) => tryAcquireProcessLock(LOCK_SCOPE, key)))(lockKey(scope.profile, agentSessionId));
|
|
165
|
+
if (held === undefined)
|
|
166
|
+
continue;
|
|
167
|
+
try {
|
|
168
|
+
await removeRecord(path);
|
|
169
|
+
}
|
|
170
|
+
finally {
|
|
171
|
+
await held.release();
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
async function removeRecord(path) {
|
|
176
|
+
try {
|
|
177
|
+
await unlink(path);
|
|
178
|
+
}
|
|
179
|
+
catch (error) {
|
|
180
|
+
if (error.code !== "ENOENT")
|
|
181
|
+
throw error;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
//# sourceMappingURL=terminal-client-identity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"terminal-client-identity.js","sourceRoot":"","sources":["../../src/runtime/terminal-client-identity.ts"],"names":[],"mappings":"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"}
|
|
@@ -79,10 +79,10 @@ export function validateTerminalGrant(input) {
|
|
|
79
79
|
for (const required of input.requiredCapabilities ?? []) {
|
|
80
80
|
const matches = grant.capabilities.filter((capability) => capability.name === required);
|
|
81
81
|
if (matches.length !== 1 || matches[0]?.availability === "unknown") {
|
|
82
|
-
throw runtimeFailure("capability_unknown", `Cuna cannot prove terminal capability ${required}
|
|
82
|
+
throw runtimeFailure("capability_unknown", `Cuna cannot prove terminal capability ${required}.`, { safeDetails: { capability: required } });
|
|
83
83
|
}
|
|
84
84
|
if (matches[0]?.availability !== "supported") {
|
|
85
|
-
throw runtimeFailure("capability_unsupported", `Terminal capability ${required} is unsupported
|
|
85
|
+
throw runtimeFailure("capability_unsupported", `Terminal capability ${required} is unsupported.`, { safeDetails: { capability: required } });
|
|
86
86
|
}
|
|
87
87
|
}
|
|
88
88
|
let url;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal-transport.js","sourceRoot":"","sources":["../../src/runtime/terminal-transport.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"terminal-transport.js","sourceRoot":"","sources":["../../src/runtime/terminal-transport.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ExclusionPolicy } from "../workspace/exclusion.js";
|
|
2
|
-
import { createWorkspaceManifest, type WorkspaceManifest } from "../workspace/manifest.js";
|
|
2
|
+
import { createWorkspaceManifest, type ManifestEntry, type WorkspaceManifest } from "../workspace/manifest.js";
|
|
3
3
|
import { type FilesystemCapabilities } from "../workspace/paths.js";
|
|
4
4
|
import type { WorkspaceSyncChangePage } from "./workspace-sync-protocol.js";
|
|
5
5
|
export type ContinuousSyncState = "recovering" | "reconciling" | "catching_up" | "live_unverified" | "converged" | "conflicted" | "paused" | "recovery_required" | "unknown" | "stopped";
|
|
@@ -13,6 +13,28 @@ export interface ContinuousSyncSnapshot {
|
|
|
13
13
|
readonly reason?: string;
|
|
14
14
|
readonly observedAt: string;
|
|
15
15
|
}
|
|
16
|
+
/**
|
|
17
|
+
* One path both sides changed, and where each version now lives. Nothing is
|
|
18
|
+
* ever resolved by discarding bytes: one version stays at `path`, the other is
|
|
19
|
+
* written beside it as `sibling` (null only when the other side deleted it).
|
|
20
|
+
*
|
|
21
|
+
* - `local_in_place`: this folder changed `path` and the incoming generation
|
|
22
|
+
* changed it too. The local bytes stay; the incoming ones go to the sibling.
|
|
23
|
+
* This is the guest's rule (PRD workspace live apply 2026-09-22 §3) seen
|
|
24
|
+
* from the other side, and the next local commit proposes the local version.
|
|
25
|
+
* - `remote_in_place`: the incoming generation directly follows this folder's
|
|
26
|
+
* own commit and replaces a path that commit carried. That is how a
|
|
27
|
+
* conflict the Machine already resolved comes back (it kept its own bytes
|
|
28
|
+
* and captured them as the next generation), so the Machine's version is
|
|
29
|
+
* accepted and the local bytes are kept as the sibling.
|
|
30
|
+
*/
|
|
31
|
+
export interface ContinuousSyncConflict {
|
|
32
|
+
readonly code: "cuna.workspace_sync.conflict_retained";
|
|
33
|
+
readonly resolution: "local_in_place" | "remote_in_place";
|
|
34
|
+
readonly path: string;
|
|
35
|
+
readonly sibling: string | null;
|
|
36
|
+
readonly generation: number;
|
|
37
|
+
}
|
|
16
38
|
export interface ContinuousSyncCommitReceipt {
|
|
17
39
|
readonly syncId: string;
|
|
18
40
|
readonly generation: number;
|
|
@@ -64,6 +86,20 @@ export type WorkspaceWatchFactory = (input: {
|
|
|
64
86
|
readonly onEvent: (event: WorkspaceWatchEvent) => void;
|
|
65
87
|
readonly onError: (error: unknown) => void;
|
|
66
88
|
}) => Promise<WorkspaceWatchSubscription>;
|
|
89
|
+
export interface EntryProjection {
|
|
90
|
+
readonly path: string;
|
|
91
|
+
readonly kind: ManifestEntry["kind"];
|
|
92
|
+
readonly fingerprint: string;
|
|
93
|
+
readonly byteLength: number;
|
|
94
|
+
}
|
|
95
|
+
/** What a folder's durable sync state says about where its tree came from. */
|
|
96
|
+
export interface ContinuousSyncDurableBase {
|
|
97
|
+
readonly generation: number;
|
|
98
|
+
readonly manifestRoot: string;
|
|
99
|
+
readonly syncId: string;
|
|
100
|
+
readonly baseline: readonly EntryProjection[];
|
|
101
|
+
readonly updatedAt: string;
|
|
102
|
+
}
|
|
67
103
|
export interface ContinuousWorkspaceSyncSupervisorInput {
|
|
68
104
|
readonly bindingId: string;
|
|
69
105
|
readonly bindingGeneration: number;
|
|
@@ -87,6 +123,22 @@ export interface ContinuousWorkspaceSyncSupervisorInput {
|
|
|
87
123
|
readonly clock?: () => number;
|
|
88
124
|
readonly sleep?: (milliseconds: number, signal: AbortSignal) => Promise<void>;
|
|
89
125
|
readonly manifestBuilder?: typeof createWorkspaceManifest;
|
|
126
|
+
/**
|
|
127
|
+
* Refuse to start unless a durable state already exists in
|
|
128
|
+
* `stateDirectory`. A re-attach resumes from the tree the folder last
|
|
129
|
+
* synchronized; if that state vanished, a fresh one would adopt the current,
|
|
130
|
+
* possibly edited, tree as its baseline and the next remote apply would
|
|
131
|
+
* overwrite those edits as if they were unchanged.
|
|
132
|
+
*/
|
|
133
|
+
readonly requireDurableState?: boolean;
|
|
134
|
+
/**
|
|
135
|
+
* The durable state of the generation this start directly follows, when the
|
|
136
|
+
* caller has just committed the local tree on top of it. It lets the new
|
|
137
|
+
* state know which paths that commit carried (see `remote_in_place`).
|
|
138
|
+
*/
|
|
139
|
+
readonly priorBase?: Pick<ContinuousSyncDurableBase, "generation" | "baseline">;
|
|
140
|
+
/** Called once per retained conflict. Observers never own sync correctness. */
|
|
141
|
+
readonly onConflict?: (conflict: ContinuousSyncConflict) => void;
|
|
90
142
|
}
|
|
91
143
|
/**
|
|
92
144
|
* One foreground supervisor owns one WorkspaceBinding writer lease. It keeps
|
|
@@ -97,6 +149,17 @@ export declare class ContinuousWorkspaceSyncSupervisor {
|
|
|
97
149
|
#private;
|
|
98
150
|
private constructor();
|
|
99
151
|
static start(input: ContinuousWorkspaceSyncSupervisorInput): Promise<ContinuousWorkspaceSyncSupervisor>;
|
|
152
|
+
/**
|
|
153
|
+
* Reads, without starting anything, the tree a durable state says this
|
|
154
|
+
* folder last synchronized. Undefined when there is no state file; a file
|
|
155
|
+
* that fails admission throws exactly as a start would.
|
|
156
|
+
*/
|
|
157
|
+
static readDurableBase(input: {
|
|
158
|
+
readonly stateDirectory: string;
|
|
159
|
+
readonly bindingId: string;
|
|
160
|
+
readonly bindingGeneration: number;
|
|
161
|
+
readonly policyDigest: string;
|
|
162
|
+
}): Promise<ContinuousSyncDurableBase | undefined>;
|
|
100
163
|
get snapshot(): ContinuousSyncSnapshot;
|
|
101
164
|
subscribe(listener: (snapshot: ContinuousSyncSnapshot) => void): () => void;
|
|
102
165
|
requestScan(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"continuous-sync-supervisor.d.ts","sourceRoot":"","sources":["../../src/sync/continuous-sync-supervisor.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,uBAAuB,
|
|
1
|
+
{"version":3,"file":"continuous-sync-supervisor.d.ts","sourceRoot":"","sources":["../../src/sync/continuous-sync-supervisor.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,KAAK,aAAa,EAAE,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC/G,OAAO,EAGL,KAAK,sBAAsB,EAC5B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAEV,uBAAuB,EACxB,MAAM,8BAA8B,CAAC;AAgBtC,MAAM,MAAM,mBAAmB,GAC3B,YAAY,GACZ,aAAa,GACb,aAAa,GACb,iBAAiB,GACjB,WAAW,GACX,YAAY,GACZ,QAAQ,GACR,mBAAmB,GACnB,SAAS,GACT,SAAS,CAAC;AAEd,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,KAAK,EAAE,mBAAmB,CAAC;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,sBAAsB,EAAE,MAAM,CAAC;IACxC,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,IAAI,EAAE,uCAAuC,CAAC;IACvD,QAAQ,CAAC,UAAU,EAAE,gBAAgB,GAAG,iBAAiB,CAAC;IAC1D,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,yBAAyB,CAAC;IACzD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAED;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC,mBAAmB,CAAC,KAAK,EAAE;QACzB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;QAChC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,CAAC;QACrC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;KAC9B,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;IACzC,WAAW,CAAC,KAAK,EAAE;QACjB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;QACjC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;KAC9B,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACrC,SAAS,CAAC,KAAK,EAAE;QACf,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;QAC5B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;KAC9B,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACxB,SAAS,CAAC,KAAK,EAAE;QACf,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;QAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;KAC9B,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAAC;CAC7C;AAED,MAAM,WAAW,0BAA0B;IACzC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;IACrC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,qBAAqB,GAAG,CAAC,KAAK,EAAE;IAC1C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACvD,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CAC5C,KAAK,OAAO,CAAC,0BAA0B,CAAC,CAAC;AAE1C,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACrC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AA4CD,8EAA8E;AAC9E,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,SAAS,eAAe,EAAE,CAAC;IAC9C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,sCAAsC;IACrD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,wFAAwF;IACxF,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IACxD,QAAQ,CAAC,SAAS,EAAE,uBAAuB,CAAC;IAC5C,QAAQ,CAAC,eAAe,CAAC,EAAE,iBAAiB,CAAC;IAC7C,QAAQ,CAAC,YAAY,CAAC,EAAE,qBAAqB,CAAC;IAC9C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAC3C,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAC3C,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9E,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,uBAAuB,CAAC;IAC1D;;;;;;OAMG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IACvC;;;;OAIG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,yBAAyB,EAAE,YAAY,GAAG,UAAU,CAAC,CAAC;IAChF,+EAA+E;IAC/E,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,sBAAsB,KAAK,IAAI,CAAC;CAClE;AAED;;;;GAIG;AACH,qBAAa,iCAAiC;;IAmB5C,OAAO;WAUM,KAAK,CAAC,KAAK,EAAE,sCAAsC,GAAG,OAAO,CAAC,iCAAiC,CAAC;IAuC7G;;;;OAIG;WACU,eAAe,CAAC,KAAK,EAAE;QAClC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;QAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;QACnC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;KAC/B,GAAG,OAAO,CAAC,yBAAyB,GAAG,SAAS,CAAC;IAiBlD,IAAI,QAAQ,IAAI,sBAAsB,CAarC;IAED,SAAS,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,sBAAsB,KAAK,IAAI,GAAG,MAAM,IAAI;IAM3E,WAAW,IAAI,IAAI;IAMnB,qBAAqB,CAAC,MAAM,SAA4B,GAAG,IAAI;IASzD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBrB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;CAkfnC"}
|