agent-relay 11.4.1 → 11.4.3
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/README.md +73 -0
- package/dist/cli/agent-relay-mcp.d.ts.map +1 -1
- package/dist/cli/agent-relay-mcp.js +10 -5
- package/dist/cli/agent-relay-mcp.js.map +1 -1
- package/dist/cli/commands/cloud.d.ts +4 -0
- package/dist/cli/commands/cloud.d.ts.map +1 -1
- package/dist/cli/commands/cloud.js +45 -3
- package/dist/cli/commands/cloud.js.map +1 -1
- package/dist/cli/commands/core.d.ts +5 -0
- package/dist/cli/commands/core.d.ts.map +1 -1
- package/dist/cli/commands/core.js +6 -1
- package/dist/cli/commands/core.js.map +1 -1
- package/dist/cli/commands/node.d.ts +3 -1
- package/dist/cli/commands/node.d.ts.map +1 -1
- package/dist/cli/commands/node.js +75 -12
- package/dist/cli/commands/node.js.map +1 -1
- package/dist/cli/commands/workspace.d.ts.map +1 -1
- package/dist/cli/commands/workspace.js +72 -6
- package/dist/cli/commands/workspace.js.map +1 -1
- package/dist/cli/lib/attach-drive.d.ts +54 -0
- package/dist/cli/lib/attach-drive.d.ts.map +1 -1
- package/dist/cli/lib/attach-drive.js +132 -21
- package/dist/cli/lib/attach-drive.js.map +1 -1
- package/dist/cli/lib/attach-input-recovery.d.ts +123 -0
- package/dist/cli/lib/attach-input-recovery.d.ts.map +1 -0
- package/dist/cli/lib/attach-input-recovery.js +259 -0
- package/dist/cli/lib/attach-input-recovery.js.map +1 -0
- package/dist/cli/lib/attach-passthrough.d.ts +13 -0
- package/dist/cli/lib/attach-passthrough.d.ts.map +1 -1
- package/dist/cli/lib/attach-passthrough.js +70 -18
- package/dist/cli/lib/attach-passthrough.js.map +1 -1
- package/dist/cli/lib/broker-lifecycle.d.ts +7 -0
- package/dist/cli/lib/broker-lifecycle.d.ts.map +1 -1
- package/dist/cli/lib/broker-lifecycle.js +203 -39
- package/dist/cli/lib/broker-lifecycle.js.map +1 -1
- package/dist/cli/lib/enrollment-pin.d.ts +50 -0
- package/dist/cli/lib/enrollment-pin.d.ts.map +1 -0
- package/dist/cli/lib/enrollment-pin.js +38 -0
- package/dist/cli/lib/enrollment-pin.js.map +1 -0
- package/dist/cli/lib/project-workspace-key.d.ts +1 -1
- package/dist/cli/lib/project-workspace-key.d.ts.map +1 -1
- package/dist/cli/lib/project-workspace-key.js +1 -1
- package/dist/cli/lib/project-workspace-key.js.map +1 -1
- package/dist/cli/lib/workspace-session.d.ts +29 -1
- package/dist/cli/lib/workspace-session.d.ts.map +1 -1
- package/dist/cli/lib/workspace-session.js +57 -2
- package/dist/cli/lib/workspace-session.js.map +1 -1
- package/dist/cli/telemetry/client.d.ts.map +1 -1
- package/dist/cli/telemetry/client.js +7 -5
- package/dist/cli/telemetry/client.js.map +1 -1
- package/dist/cli/telemetry/events.d.ts +2 -0
- package/dist/cli/telemetry/events.d.ts.map +1 -1
- package/package.json +8 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/core.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/core.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import path from 'node:path';
|
|
|
4
4
|
import { fileURLToPath } from 'node:url';
|
|
5
5
|
import { exec, spawn as spawnProcess } from 'node:child_process';
|
|
6
6
|
import { promisify } from 'node:util';
|
|
7
|
-
import { InvalidArgumentError } from 'commander';
|
|
7
|
+
import { InvalidArgumentError, Option } from 'commander';
|
|
8
8
|
import { getProjectPaths, loadTeamsConfig } from '@agent-relay/config';
|
|
9
9
|
import { HarnessDriverClient } from '@agent-relay/harness-driver';
|
|
10
10
|
import { checkForUpdates, generateAgentName } from '@agent-relay/utils';
|
|
@@ -76,6 +76,9 @@ async function createDefaultRelay(cwd, apiPort = 0, brokerName, verbose = false)
|
|
|
76
76
|
get workspaceKey() {
|
|
77
77
|
return client.workspaceKey;
|
|
78
78
|
},
|
|
79
|
+
get workspaceId() {
|
|
80
|
+
return client.workspaceId;
|
|
81
|
+
},
|
|
79
82
|
get brokerPid() {
|
|
80
83
|
return client.brokerPid;
|
|
81
84
|
},
|
|
@@ -91,6 +94,7 @@ export function withDefaults(overrides = {}) {
|
|
|
91
94
|
existsSync: fs.existsSync,
|
|
92
95
|
readFileSync: (filePath, encoding) => fs.readFileSync(filePath, encoding),
|
|
93
96
|
writeFileSync: (filePath, data, encoding) => fs.writeFileSync(filePath, data, encoding),
|
|
97
|
+
renameSync: (oldPath, newPath) => fs.renameSync(oldPath, newPath),
|
|
94
98
|
unlinkSync: fs.unlinkSync,
|
|
95
99
|
readdirSync: (dirPath) => fs.readdirSync(dirPath),
|
|
96
100
|
mkdirSync: (dirPath, options) => fs.mkdirSync(dirPath, options),
|
|
@@ -160,6 +164,7 @@ export function addUpCommandOptions(command) {
|
|
|
160
164
|
.option('--spawn', 'Force spawn all agents from teams.json')
|
|
161
165
|
.option('--no-spawn', 'Do not auto-spawn agents (just start broker)')
|
|
162
166
|
.option('--background', 'Run broker in the background (detached)')
|
|
167
|
+
.addOption(new Option('--background-child').hideHelp())
|
|
163
168
|
.option('--verbose', 'Enable verbose logging')
|
|
164
169
|
.option('--workspace-key <key>', 'Use a pre-established Relaycast workspace key')
|
|
165
170
|
.option('--wk <key>', 'Alias for --workspace-key')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/cli/commands/core.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/cli/commands/core.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import type { Command } from 'commander';
|
|
2
|
-
import { resolveActiveFleetNodeEnrollment } from '@agent-relay/cloud';
|
|
2
|
+
import { resolveActiveFleetNodeEnrollment, type FleetNodeEnrollmentRecord } from '@agent-relay/cloud';
|
|
3
3
|
import { type CoreDependencies } from './core.js';
|
|
4
4
|
import { type ProjectWorkspaceSession } from '../lib/project-workspace-key.js';
|
|
5
5
|
type ExitFn = (code: number) => never;
|
|
6
6
|
export interface NodeCommandDependencies {
|
|
7
7
|
core: CoreDependencies;
|
|
8
8
|
resolveEnrollment: typeof resolveActiveFleetNodeEnrollment;
|
|
9
|
+
/** Every stored fleet enrollment, used only to report how many a project pin is shadowing. */
|
|
10
|
+
listFleetEnrollments: (env: NodeJS.ProcessEnv) => FleetNodeEnrollmentRecord[];
|
|
9
11
|
resolveProjectWorkspaceSession: () => ProjectWorkspaceSession | undefined;
|
|
10
12
|
log: (...args: unknown[]) => void;
|
|
11
13
|
warn: (...args: unknown[]) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAGL,gCAAgC,EAChC,KAAK,yBAAyB,EAC/B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAIL,KAAK,gBAAgB,EAEtB,MAAM,WAAW,CAAC;AAEnB,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,iCAAiC,CAAC;AAKzC,KAAK,MAAM,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,KAAK,CAAC;AAEtC,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,gBAAgB,CAAC;IACvB,iBAAiB,EAAE,OAAO,gCAAgC,CAAC;IAC3D,8FAA8F;IAC9F,oBAAoB,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,KAAK,yBAAyB,EAAE,CAAC;IAC9E,8BAA8B,EAAE,MAAM,uBAAuB,GAAG,SAAS,CAAC;IAC1E,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAClC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACnC,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACpC,IAAI,EAAE,MAAM,CAAC;CACd;AAuBD;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,OAAO,EAChB,SAAS,GAAE,OAAO,CAAC,uBAAuB,CAAM,GAC/C,IAAI,CAuBN"}
|
|
@@ -1,15 +1,22 @@
|
|
|
1
|
-
import { resolveActiveFleetNodeEnrollment } from '@agent-relay/cloud';
|
|
1
|
+
import { fleetNodeEnrollmentStorePath, readFleetNodeEnrollmentStore, resolveActiveFleetNodeEnrollment, } from '@agent-relay/cloud';
|
|
2
2
|
import { addUpCommandOptions, registerCoreCommands, withDefaults, } from './core.js';
|
|
3
3
|
import { runUpCommand } from '../lib/broker-lifecycle.js';
|
|
4
|
-
import { readProjectWorkspaceSession } from '../lib/project-workspace-key.js';
|
|
4
|
+
import { projectWorkspaceKeyPath, readProjectWorkspaceSession, } from '../lib/project-workspace-key.js';
|
|
5
5
|
import { promoteWorkspaceKeyEnvAlias } from '../lib/workspace-env.js';
|
|
6
6
|
import { registerLocalAgentCommands } from './local-agent.js';
|
|
7
7
|
import { registerLocalWorkflowCommands } from './local-workflow.js';
|
|
8
|
+
/**
|
|
9
|
+
* Fill in the real Cloud/enrollment/project lookups for anything the caller did
|
|
10
|
+
* not inject.
|
|
11
|
+
* @param overrides - Dependencies to substitute, as tests do.
|
|
12
|
+
* @returns A fully populated dependency set.
|
|
13
|
+
*/
|
|
8
14
|
function withNodeDefaults(overrides = {}) {
|
|
9
15
|
const core = overrides.core ?? withDefaults();
|
|
10
16
|
return {
|
|
11
17
|
core,
|
|
12
18
|
resolveEnrollment: resolveActiveFleetNodeEnrollment,
|
|
19
|
+
listFleetEnrollments: (env) => Object.values(readFleetNodeEnrollmentStore(env).nodes),
|
|
13
20
|
resolveProjectWorkspaceSession: () => readProjectWorkspaceSession(core.getProjectPaths().dataDir),
|
|
14
21
|
log: (...args) => console.log(...args),
|
|
15
22
|
warn: (...args) => console.warn(...args),
|
|
@@ -43,10 +50,31 @@ function prepareExplicitWorkspaceForNodeUp(options, deps) {
|
|
|
43
50
|
const envWorkspaceKey = promoteWorkspaceKeyEnvAlias(deps.core.env);
|
|
44
51
|
return Boolean(options.workspaceKey?.trim() || envWorkspaceKey);
|
|
45
52
|
}
|
|
46
|
-
/**
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
53
|
+
/**
|
|
54
|
+
* Refuse to start when the stored enrollment addresses a different workspace
|
|
55
|
+
* than the repository pin.
|
|
56
|
+
*
|
|
57
|
+
* The enrollment store is machine-global; the pin is per-repository. When they
|
|
58
|
+
* disagree, silently preferring either one re-homes the node — so name both
|
|
59
|
+
* sources and stop. Only possible once a previous start recorded the pin's
|
|
60
|
+
* workspace id; before that the two are simply passed through together (the
|
|
61
|
+
* pin wins for workspace selection, the enrollment for node identity) and a
|
|
62
|
+
* mismatched node token fails loudly at registration instead.
|
|
63
|
+
*/
|
|
64
|
+
function reportWorkspaceSourceConflict(record, session, deps) {
|
|
65
|
+
const pinnedWorkspaceId = session?.workspaceId?.trim();
|
|
66
|
+
const enrolledWorkspaceId = record.relayWorkspaceId?.trim();
|
|
67
|
+
if (!pinnedWorkspaceId || !enrolledWorkspaceId || pinnedWorkspaceId === enrolledWorkspaceId) {
|
|
68
|
+
return false;
|
|
69
|
+
}
|
|
70
|
+
const pinPath = projectWorkspaceKeyPath(deps.core.getProjectPaths().dataDir);
|
|
71
|
+
deps.error('Refusing to start: this repository and the stored Fleet enrollment select different workspaces.');
|
|
72
|
+
deps.error(` repository pin ${pinPath} -> workspace ${pinnedWorkspaceId}`);
|
|
73
|
+
deps.error(` fleet enrollment ${fleetNodeEnrollmentStorePath(deps.core.env)} -> workspace ${enrolledWorkspaceId} (node ${record.nodeId})`);
|
|
74
|
+
deps.error('Run `agent-relay workspace rebind <name>` to repin this project and clear the stale ' +
|
|
75
|
+
'enrolled-node association; alternatively pass --workspace-key or re-enroll this node in ' +
|
|
76
|
+
'the pinned workspace.');
|
|
77
|
+
return true;
|
|
50
78
|
}
|
|
51
79
|
/** Apply stored enrollment credentials and return the enrolled node name, when present. */
|
|
52
80
|
function applyEnrollment(record, deps) {
|
|
@@ -63,6 +91,33 @@ function applyEnrollment(record, deps) {
|
|
|
63
91
|
deps.log(`Using persisted Cloud enrollment for node "${record.nodeName}" (workspace ${record.relayWorkspaceId}).`);
|
|
64
92
|
return record.nodeName?.trim() || undefined;
|
|
65
93
|
}
|
|
94
|
+
/**
|
|
95
|
+
* Report the enrollments a project pin without an `enrolledNodeId` shadows.
|
|
96
|
+
*
|
|
97
|
+
* The pin wins over the enrollment store, so the broker starts in the pinned
|
|
98
|
+
* workspace and this machine never serves its Cloud fleet node. That used to be
|
|
99
|
+
* completely silent: the Cloud dashboard showed the node, `fleet nodes` showed a
|
|
100
|
+
* different roster, and nothing said the two were different workspaces.
|
|
101
|
+
*/
|
|
102
|
+
function warnPinShadowsFleetEnrollments(deps) {
|
|
103
|
+
let count;
|
|
104
|
+
try {
|
|
105
|
+
count = deps.listFleetEnrollments(deps.core.env).length;
|
|
106
|
+
}
|
|
107
|
+
catch {
|
|
108
|
+
// A corrupt or unreadable store must not break `node up` here — nothing on
|
|
109
|
+
// this path needs it. Warn without a count rather than hide the mismatch.
|
|
110
|
+
count = undefined;
|
|
111
|
+
}
|
|
112
|
+
if (count === 0) {
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
const subject = count === undefined ? 'stored Cloud fleet enrollments' : `${count} stored Cloud fleet enrollment(s)`;
|
|
116
|
+
deps.warn(`This project is pinned to a workspace with no enrolled node id, so ${subject} will be ignored: ` +
|
|
117
|
+
'the broker starts in the pinned workspace and this machine will not serve its Cloud fleet node. ' +
|
|
118
|
+
"Re-run 'relay cloud enroll' from this project to link the pin to a node, or export " +
|
|
119
|
+
"RELAY_NODE_ID and RELAY_NODE_TOKEN and start with 'relay node up --broker-name <node>'.");
|
|
120
|
+
}
|
|
66
121
|
/** Resolve the enrollment associated with a project session, avoiding ambiguous global fallback. */
|
|
67
122
|
function resolveEnrollmentForProject(session, deps) {
|
|
68
123
|
const env = deps.core.env;
|
|
@@ -74,6 +129,7 @@ function resolveEnrollmentForProject(session, deps) {
|
|
|
74
129
|
});
|
|
75
130
|
}
|
|
76
131
|
if (session) {
|
|
132
|
+
warnPinShadowsFleetEnrollments(deps);
|
|
77
133
|
return undefined;
|
|
78
134
|
}
|
|
79
135
|
return deps.resolveEnrollment({
|
|
@@ -81,19 +137,22 @@ function resolveEnrollmentForProject(session, deps) {
|
|
|
81
137
|
env,
|
|
82
138
|
});
|
|
83
139
|
}
|
|
84
|
-
/**
|
|
140
|
+
/**
|
|
141
|
+
* Apply the node identity for this start.
|
|
142
|
+
*
|
|
143
|
+
* Workspace selection is NOT decided here — `runUpCommand` walks the shared
|
|
144
|
+
* precedence ladder (flag → env → repository pin → machine-global active) after
|
|
145
|
+
* this returns. This function only settles which node identity the broker runs
|
|
146
|
+
* as, so an enrollment can no longer suppress the repository's workspace.
|
|
147
|
+
*/
|
|
85
148
|
function applyResolvedNodeSession(record, projectSession, deps) {
|
|
86
149
|
if (record) {
|
|
87
150
|
return applyEnrollment(record, deps);
|
|
88
151
|
}
|
|
89
|
-
if (
|
|
90
|
-
return undefined;
|
|
91
|
-
}
|
|
92
|
-
if (projectSession.enrolledNodeId) {
|
|
152
|
+
if (projectSession?.enrolledNodeId) {
|
|
93
153
|
deps.core.env.AGENT_RELAY_ENROLLED_NODE_ID = projectSession.enrolledNodeId;
|
|
94
154
|
deps.warn(`Persisted enrollment for node "${projectSession.enrolledNodeId}" was not found; resuming the pinned workspace without that node identity.`);
|
|
95
155
|
}
|
|
96
|
-
resumeProjectWorkspace(projectSession, deps);
|
|
97
156
|
return undefined;
|
|
98
157
|
}
|
|
99
158
|
/**
|
|
@@ -129,6 +188,10 @@ async function runNodeUp(options, deps) {
|
|
|
129
188
|
deps.exit(1);
|
|
130
189
|
return;
|
|
131
190
|
}
|
|
191
|
+
if (record && reportWorkspaceSourceConflict(record, projectSession, deps)) {
|
|
192
|
+
deps.exit(1);
|
|
193
|
+
return;
|
|
194
|
+
}
|
|
132
195
|
// Serve under the enrolled name (mirrors the old `fleet serve
|
|
133
196
|
// --enrollment-token` behavior where --name beat the enrollment name).
|
|
134
197
|
enrolledNodeName = applyResolvedNodeSession(record, projectSession, deps);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../../src/cli/commands/node.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../../src/cli/commands/node.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/workspace.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKzC,OAAO,EAAsC,KAAK,cAAc,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"workspace.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/workspace.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKzC,OAAO,EAAsC,KAAK,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAUhG,MAAM,MAAM,4BAA4B,GAAG,cAAc,CAAC;AAwB1D,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,OAAO,EAChB,SAAS,GAAE,OAAO,CAAC,4BAA4B,CAAM,GACpD,IAAI,CAoNN"}
|
|
@@ -3,7 +3,17 @@ import { resolveActiveWorkspace } from '@agent-relay/cloud';
|
|
|
3
3
|
import { maskSecret } from '../lib/redact.js';
|
|
4
4
|
import { printJson, runSdk, withSdkDefaults } from '../lib/sdk-command.js';
|
|
5
5
|
import { readWorkspaceStore, setWorkspaceKey } from '../lib/workspace-store.js';
|
|
6
|
-
import { persistWorkspaceSession, validateWorkspaceSessionName } from '../lib/workspace-session.js';
|
|
6
|
+
import { describeClearedEnrollment, persistWorkspaceSession, pinProjectWorkspaceSession, validateWorkspaceSessionName, } from '../lib/workspace-session.js';
|
|
7
|
+
/**
|
|
8
|
+
* Say so when moving workspaces drops this project's enrolled fleet node.
|
|
9
|
+
* Leaving it silent is what produced the split rosters in #1432.
|
|
10
|
+
*/
|
|
11
|
+
function reportClearedEnrollment(result, deps) {
|
|
12
|
+
const message = describeClearedEnrollment(result);
|
|
13
|
+
if (message) {
|
|
14
|
+
deps.log(message);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
7
17
|
function parsePositiveInteger(value) {
|
|
8
18
|
const parsed = Number.parseInt(value, 10);
|
|
9
19
|
if (!Number.isInteger(parsed) || parsed <= 0) {
|
|
@@ -56,14 +66,27 @@ export function registerWorkspaceCommands(program, overrides = {}) {
|
|
|
56
66
|
await runSdk(deps, async () => {
|
|
57
67
|
const workspaceName = validateWorkspaceSessionName(name);
|
|
58
68
|
const relay = await deps.createWorkspace(workspaceName, o.baseUrl);
|
|
59
|
-
|
|
60
|
-
|
|
69
|
+
const previousActive = readWorkspaceStore().active;
|
|
70
|
+
const persisted = relay.workspaceKey
|
|
71
|
+
? persistWorkspaceSession({ name: workspaceName, workspaceKey: relay.workspaceKey })
|
|
72
|
+
: {};
|
|
73
|
+
if (relay.workspaceKey && previousActive && previousActive !== workspaceName) {
|
|
74
|
+
deps.error(`⚠ Active workspace changed: ${previousActive} → ${workspaceName}`);
|
|
75
|
+
deps.error(' Restore with: agent-relay workspace restore');
|
|
61
76
|
}
|
|
62
77
|
// The key is persisted to the workspace store either way; the output
|
|
63
|
-
// masks it unless the caller explicitly asks for the raw value.
|
|
78
|
+
// masks it unless the caller explicitly asks for the raw value. A
|
|
79
|
+
// dropped enrollment rides in the JSON rather than a log line so the
|
|
80
|
+
// output stays parseable.
|
|
64
81
|
printJson(deps, {
|
|
65
82
|
name: workspaceName,
|
|
66
83
|
workspaceKey: relay.workspaceKey && !o.revealSecrets ? maskSecret(relay.workspaceKey) : relay.workspaceKey,
|
|
84
|
+
...(persisted.clearedEnrolledNodeId
|
|
85
|
+
? {
|
|
86
|
+
clearedEnrolledNodeId: persisted.clearedEnrolledNodeId,
|
|
87
|
+
warning: describeClearedEnrollment(persisted),
|
|
88
|
+
}
|
|
89
|
+
: {}),
|
|
67
90
|
});
|
|
68
91
|
});
|
|
69
92
|
});
|
|
@@ -75,6 +98,7 @@ export function registerWorkspaceCommands(program, overrides = {}) {
|
|
|
75
98
|
const store = readWorkspaceStore();
|
|
76
99
|
printJson(deps, {
|
|
77
100
|
active: store.active,
|
|
101
|
+
previous: store.previous,
|
|
78
102
|
workspaces: Object.keys(store.workspaces),
|
|
79
103
|
});
|
|
80
104
|
});
|
|
@@ -116,8 +140,9 @@ export function registerWorkspaceCommands(program, overrides = {}) {
|
|
|
116
140
|
.argument('<key>', 'Workspace key')
|
|
117
141
|
.action(async (name, key) => {
|
|
118
142
|
await runSdk(deps, async () => {
|
|
119
|
-
persistWorkspaceSession({ name, workspaceKey: key });
|
|
143
|
+
const result = persistWorkspaceSession({ name, workspaceKey: key });
|
|
120
144
|
deps.log(`Joined and switched to workspace "${name}".`);
|
|
145
|
+
reportClearedEnrollment(result, deps);
|
|
121
146
|
});
|
|
122
147
|
});
|
|
123
148
|
group
|
|
@@ -131,8 +156,49 @@ export function registerWorkspaceCommands(program, overrides = {}) {
|
|
|
131
156
|
if (!workspace) {
|
|
132
157
|
throw new Error(`Unknown workspace "${name}". Add it with \`relay workspace set_key ${name} <key>\`.`);
|
|
133
158
|
}
|
|
134
|
-
persistWorkspaceSession({ name, workspaceKey: workspace.key });
|
|
159
|
+
const result = persistWorkspaceSession({ name, workspaceKey: workspace.key });
|
|
135
160
|
deps.log(`Switched to workspace "${name}".`);
|
|
161
|
+
reportClearedEnrollment(result, deps);
|
|
162
|
+
});
|
|
163
|
+
});
|
|
164
|
+
group
|
|
165
|
+
.command('restore')
|
|
166
|
+
.description('Switch back to the previously active workspace')
|
|
167
|
+
.action(async () => {
|
|
168
|
+
await runSdk(deps, async () => {
|
|
169
|
+
const store = readWorkspaceStore();
|
|
170
|
+
const previous = store.previous;
|
|
171
|
+
if (!previous) {
|
|
172
|
+
throw new Error('No previous workspace is recorded.');
|
|
173
|
+
}
|
|
174
|
+
if (previous === store.active) {
|
|
175
|
+
throw new Error(`The recorded previous workspace "${previous}" is already active.`);
|
|
176
|
+
}
|
|
177
|
+
const workspace = Object.hasOwn(store.workspaces, previous) ? store.workspaces[previous] : undefined;
|
|
178
|
+
if (!workspace) {
|
|
179
|
+
throw new Error(`The recorded previous workspace "${previous}" no longer exists.`);
|
|
180
|
+
}
|
|
181
|
+
const current = store.active;
|
|
182
|
+
persistWorkspaceSession({ name: previous, workspaceKey: workspace.key });
|
|
183
|
+
deps.log(`Switched to workspace "${previous}" (was ${current ?? 'none'}).`);
|
|
184
|
+
});
|
|
185
|
+
});
|
|
186
|
+
group
|
|
187
|
+
.command('rebind')
|
|
188
|
+
.description("Pin this project's broker to a stored workspace")
|
|
189
|
+
.argument('<name>', 'Stored workspace name')
|
|
190
|
+
.action(async (name) => {
|
|
191
|
+
await runSdk(deps, async () => {
|
|
192
|
+
const workspaceName = validateWorkspaceSessionName(name);
|
|
193
|
+
const store = readWorkspaceStore();
|
|
194
|
+
const workspace = Object.hasOwn(store.workspaces, workspaceName)
|
|
195
|
+
? store.workspaces[workspaceName]
|
|
196
|
+
: undefined;
|
|
197
|
+
if (!workspace) {
|
|
198
|
+
throw new Error(`Unknown workspace "${workspaceName}". Add it with \`relay workspace set_key ${workspaceName} <key>\`.`);
|
|
199
|
+
}
|
|
200
|
+
pinProjectWorkspaceSession({ workspaceKey: workspace.key });
|
|
201
|
+
deps.log(`Rebound this project's broker to workspace "${workspaceName}". Restart the broker to apply it.`);
|
|
136
202
|
});
|
|
137
203
|
});
|
|
138
204
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../../src/cli/commands/workspace.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe,EAAuB,MAAM,uBAAuB,CAAC;AAChG,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAChF,OAAO,
|
|
1
|
+
{"version":3,"file":"workspace.js","sourceRoot":"","sources":["../../../src/cli/commands/workspace.ts"],"names":[],"mappings":"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"}
|
|
@@ -101,6 +101,13 @@ export interface CliPtyInputStream {
|
|
|
101
101
|
close(code?: number, reason?: string): void;
|
|
102
102
|
/** Smoothed input→ack RTT (ms), or null before the first ack. */
|
|
103
103
|
readonly srttMs?: number | null;
|
|
104
|
+
/**
|
|
105
|
+
* True once the underlying socket has closed. The stream never reopens
|
|
106
|
+
* itself, so this latches: every later `send()` rejects immediately. Read it
|
|
107
|
+
* before sending so a dead stream is handled as one liveness event rather
|
|
108
|
+
* than once per keystroke.
|
|
109
|
+
*/
|
|
110
|
+
readonly closed?: boolean;
|
|
104
111
|
}
|
|
105
112
|
export interface DriveDependencies {
|
|
106
113
|
/** Reads `<state-dir>/connection.json` and returns parsed JSON, or null. */
|
|
@@ -154,6 +161,24 @@ export interface DriveDependencies {
|
|
|
154
161
|
* refresh (no SIGWINCH). Defaults to 60000. Set `0` to disable (tests).
|
|
155
162
|
*/
|
|
156
163
|
ownershipReassertMs?: number;
|
|
164
|
+
/**
|
|
165
|
+
* How many times to reopen a dead PTY input stream before giving up and
|
|
166
|
+
* exiting non-zero. Defaults to 5. Set `0` to disable recovery and fail on
|
|
167
|
+
* the first loss.
|
|
168
|
+
*/
|
|
169
|
+
inputReopenMaxAttempts?: number;
|
|
170
|
+
/**
|
|
171
|
+
* Base delay (ms) for the input-stream reopen backoff; doubles per attempt up
|
|
172
|
+
* to {@link INPUT_REOPEN_MAX_DELAY_MS}. Defaults to 250. Tests set a small
|
|
173
|
+
* value to keep the backoff deterministic and fast.
|
|
174
|
+
*/
|
|
175
|
+
inputReopenBaseDelayMs?: number;
|
|
176
|
+
/**
|
|
177
|
+
* Reads the identity of the worker process behind `name`, or `null` when it
|
|
178
|
+
* cannot be established. Used to reject a reopen that landed on a different
|
|
179
|
+
* process. See {@link fetchWorkerIdentity}.
|
|
180
|
+
*/
|
|
181
|
+
getWorkerIdentity: (connection: BrokerConnection, name: string) => Promise<string | null>;
|
|
157
182
|
}
|
|
158
183
|
/** ----- HTTP helpers ----- */
|
|
159
184
|
/** `GET /api/spawned/{name}/delivery-mode` → `'manual_flush' | 'auto_inject'` or `null` on failure. */
|
|
@@ -203,6 +228,35 @@ export declare function sendInput(connection: BrokerConnection, name: string, da
|
|
|
203
228
|
ok: boolean;
|
|
204
229
|
message?: string;
|
|
205
230
|
}>;
|
|
231
|
+
/**
|
|
232
|
+
* Best-available identity for the worker process behind `name`, or `null` when
|
|
233
|
+
* it cannot be established.
|
|
234
|
+
*
|
|
235
|
+
* The broker exposes no per-instance token for a worker — no `instance_id`,
|
|
236
|
+
* `run_id`, `epoch`, or absolute spawn timestamp reaches the wire (#1454). The
|
|
237
|
+
* only restart-discriminating values on `GET /api/spawned` are two pids, and
|
|
238
|
+
* they are not interchangeable:
|
|
239
|
+
*
|
|
240
|
+
* - `workerPid` (`crates/broker/src/worker.rs:243` = `handle.child.id()`) is the
|
|
241
|
+
* PTY child itself — the process whose terminal we are driving. Present as
|
|
242
|
+
* soon as the worker is spawned.
|
|
243
|
+
* - `pid` (`worker.rs:242` = `handle.harness_pid`) is the *harness* wrapper, and
|
|
244
|
+
* stays null until the worker completes the harness ready handshake
|
|
245
|
+
* (`worker_events.rs:849`). Verified against a live broker: a plain PTY worker
|
|
246
|
+
* reports `pid: null` and `workerPid: 30209`, so keying on `pid` alone would
|
|
247
|
+
* make every reopen unverifiable for exactly the workers this path serves.
|
|
248
|
+
*
|
|
249
|
+
* So prefer `workerPid` and fold in `pid` when the broker also has it — a change
|
|
250
|
+
* in either means the process behind the name changed.
|
|
251
|
+
*
|
|
252
|
+
* This is a heuristic, not a nonce: the OS can reuse a pid. It is used to
|
|
253
|
+
* *reject* a reopen that lands on a visibly different process, never to prove
|
|
254
|
+
* two processes are the same — callers treat `null` as "cannot verify" and
|
|
255
|
+
* fail closed. The durable fix is for the broker to surface the per-spawn
|
|
256
|
+
* identity it already holds in memory (`WorkerHandle.spawned_at`,
|
|
257
|
+
* `PersistedAgent.started_at`, or the `MetricsCollector` spawn counter) — #1454.
|
|
258
|
+
*/
|
|
259
|
+
export declare function fetchWorkerIdentity(connection: BrokerConnection, name: string, fetchFn: typeof globalThis.fetch): Promise<string | null>;
|
|
206
260
|
/** Open the SDK-backed raw PTY input stream for interactive CLI sessions. */
|
|
207
261
|
export declare function openPtyInputStream(connection: BrokerConnection, name: string, fetchFn: typeof globalThis.fetch, options?: PtyInputStreamOptions): CliPtyInputStream;
|
|
208
262
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attach-drive.d.ts","sourceRoot":"","sources":["../../../src/cli/lib/attach-drive.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAIrC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,SAAS,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"attach-drive.d.ts","sourceRoot":"","sources":["../../../src/cli/lib/attach-drive.ts"],"names":[],"mappings":"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"}
|