@agent-relay/cloud 12.1.0 → 12.2.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.
@@ -1,11 +1,322 @@
1
1
  import fs from 'node:fs';
2
+ import { createHash, randomUUID } from 'node:crypto';
2
3
  import os from 'node:os';
3
4
  import path from 'node:path';
5
+ import { assertWindowsCredentialDirectory } from './credential-directory-windows.js';
4
6
  const RESERVED_WORKSPACE_NAMES = new Set(['__proto__', 'prototype', 'constructor']);
5
7
  export function workspaceStorePath(env = process.env) {
6
8
  const dir = env.AGENT_RELAY_HOME ?? path.join(os.homedir(), '.agentworkforce/relay');
7
9
  return path.join(dir, 'workspaces.json');
8
10
  }
11
+ export function relaycastCredentialStorePath(env = process.env) {
12
+ const dir = env.AGENT_RELAY_HOME ?? path.join(os.homedir(), '.agentworkforce/relay');
13
+ return path.join(dir, 'relaycast-credentials.json');
14
+ }
15
+ export function relaycastCredentialRef(projectDataDir, workspaceId, route, baseUrl) {
16
+ let endpoint = baseUrl?.trim() ?? '';
17
+ try {
18
+ endpoint = new URL(endpoint).origin;
19
+ }
20
+ catch {
21
+ // The caller performs route-origin validation; retain a deterministic
22
+ // value here for malformed legacy metadata and let that validation fail
23
+ // closed at read/transport time.
24
+ }
25
+ return createHash('sha256')
26
+ .update(`${canonicalProjectDataDir(projectDataDir)}\0${workspaceId}\0${route}\0${endpoint}`)
27
+ .digest('hex');
28
+ }
29
+ function canonicalProjectDataDir(projectDataDir) {
30
+ const resolved = path.resolve(projectDataDir);
31
+ let current = resolved;
32
+ const missingSegments = [];
33
+ while (true) {
34
+ try {
35
+ const canonical = path.join(fs.realpathSync.native(current), ...missingSegments);
36
+ // Default Windows filesystems are case-insensitive. A stable case fold
37
+ // lets the same checkout resolve credentials across casing aliases while
38
+ // realpath above preserves the filesystem identity for existing paths.
39
+ return process.platform === 'win32' ? canonical.toLowerCase() : canonical;
40
+ }
41
+ catch (error) {
42
+ if (!isNodeError(error) || (error.code !== 'ENOENT' && error.code !== 'ENOTDIR')) {
43
+ return process.platform === 'win32' ? resolved.toLowerCase() : resolved;
44
+ }
45
+ const parent = path.dirname(current);
46
+ if (parent === current) {
47
+ return process.platform === 'win32' ? resolved.toLowerCase() : resolved;
48
+ }
49
+ missingSegments.unshift(path.basename(current));
50
+ current = parent;
51
+ }
52
+ }
53
+ }
54
+ export function readRelaycastCredential(ref, env = process.env) {
55
+ try {
56
+ const parsed = JSON.parse(fs.readFileSync(relaycastCredentialStorePath(env), 'utf8'));
57
+ const value = parsed.credentials?.[ref];
58
+ if (!value || typeof value.apiKey !== 'string')
59
+ return undefined;
60
+ return value;
61
+ }
62
+ catch (error) {
63
+ if (isNodeError(error) && error.code === 'ENOENT')
64
+ return undefined;
65
+ return undefined;
66
+ }
67
+ }
68
+ export function writeRelaycastCredential(ref, credential, env = process.env) {
69
+ const file = relaycastCredentialStorePath(env);
70
+ withRelaycastCredentialLock(file, () => {
71
+ let store = { credentials: {} };
72
+ try {
73
+ store = JSON.parse(fs.readFileSync(file, 'utf8'));
74
+ }
75
+ catch (error) {
76
+ if (!(isNodeError(error) && error.code === 'ENOENT'))
77
+ throw error;
78
+ }
79
+ store.credentials ??= {};
80
+ store.credentials[ref] = credential;
81
+ writeRelaycastCredentialAtomically(file, store);
82
+ });
83
+ }
84
+ const RELAYCAST_CREDENTIAL_LOCK_TIMEOUT_MS = 10_000;
85
+ const RELAYCAST_CREDENTIAL_LOCK_STALE_MS = 30_000;
86
+ const RELAYCAST_CREDENTIAL_LOCK_RETRY_MS = 10;
87
+ const RELAYCAST_CREDENTIAL_REPLACE_TIMEOUT_MS = 2_000;
88
+ const RELAYCAST_CREDENTIAL_LOCK_WAIT = new Int32Array(new SharedArrayBuffer(4));
89
+ const RELAYCAST_CREDENTIAL_LOCK_OWNER_VERSION = 1;
90
+ function assertRelaycastCredentialLockDirectory(lock) {
91
+ const info = fs.lstatSync(lock);
92
+ if (!info.isDirectory() || info.isSymbolicLink()) {
93
+ throw new Error('Refusing to operate on a Relaycast credential lock that is not a real directory.');
94
+ }
95
+ return info;
96
+ }
97
+ function assertCredentialAncestors(directory) {
98
+ if (process.platform === 'win32') {
99
+ assertWindowsCredentialDirectory(directory);
100
+ return;
101
+ }
102
+ const uid = process.getuid?.();
103
+ // Check both the supplied path and its canonical target. System-owned
104
+ // aliases such as macOS /var -> /private/var remain usable, while neither
105
+ // a foreign-owned ancestor nor a writable non-sticky parent can be swapped.
106
+ for (const start of new Set([path.resolve(directory), fs.realpathSync(directory)])) {
107
+ let current = start;
108
+ while (true) {
109
+ const info = fs.lstatSync(current);
110
+ const trustedOwner = info.uid === uid || info.uid === 0;
111
+ const sticky = (info.mode & 0o1000) !== 0;
112
+ if (!trustedOwner || (!info.isSymbolicLink() && (info.mode & 0o022) !== 0 && !sticky)) {
113
+ throw new Error('Relaycast credential storage has an unsafe ancestor; choose a directory under your private home.');
114
+ }
115
+ const parent = path.dirname(current);
116
+ if (parent === current)
117
+ break;
118
+ current = parent;
119
+ }
120
+ }
121
+ }
122
+ function withRelaycastCredentialLock(file, fn) {
123
+ const directory = path.dirname(file);
124
+ const lock = `${file}.lock`;
125
+ const ownerToken = randomUUID();
126
+ const ownerPath = path.join(lock, ownerToken);
127
+ fs.mkdirSync(directory, { recursive: true, mode: 0o700 });
128
+ // The parent is the credential boundary: other users must not be able to
129
+ // replace lock entries between inspection and cleanup.
130
+ const directoryInfo = fs.lstatSync(directory);
131
+ if (!directoryInfo.isDirectory() ||
132
+ directoryInfo.isSymbolicLink() ||
133
+ (process.platform !== 'win32' &&
134
+ (directoryInfo.uid !== process.getuid?.() || (directoryInfo.mode & 0o022) !== 0))) {
135
+ throw new Error('Relaycast credential storage requires a directory owned by the current user without group or other write permissions.');
136
+ }
137
+ assertCredentialAncestors(directory);
138
+ // ACL validation has its own deadline; reserve this budget for lock contention.
139
+ const startedAt = Date.now();
140
+ while (true) {
141
+ if (Date.now() - startedAt >= RELAYCAST_CREDENTIAL_LOCK_TIMEOUT_MS) {
142
+ throw new Error('Timed out waiting for the Relaycast credential store lock.');
143
+ }
144
+ try {
145
+ fs.mkdirSync(lock, { mode: 0o700 });
146
+ try {
147
+ fs.writeFileSync(ownerPath, JSON.stringify({
148
+ version: RELAYCAST_CREDENTIAL_LOCK_OWNER_VERSION,
149
+ pid: process.pid,
150
+ token: ownerToken,
151
+ }), { mode: 0o600, flag: 'wx' });
152
+ }
153
+ catch (error) {
154
+ fs.rmSync(ownerPath, { force: true });
155
+ try {
156
+ fs.rmdirSync(lock);
157
+ }
158
+ catch (cleanupError) {
159
+ if (!(isNodeError(cleanupError) && cleanupError.code === 'ENOENT'))
160
+ throw cleanupError;
161
+ }
162
+ throw error;
163
+ }
164
+ break;
165
+ }
166
+ catch (error) {
167
+ if (!isRelaycastCredentialLockContention(error))
168
+ throw error;
169
+ }
170
+ try {
171
+ if (Date.now() - assertRelaycastCredentialLockDirectory(lock).mtimeMs >=
172
+ RELAYCAST_CREDENTIAL_LOCK_STALE_MS) {
173
+ const observedLock = inspectRelaycastCredentialLock(lock);
174
+ if (!observedLock.ownerIsAlive) {
175
+ for (const entry of observedLock.entries) {
176
+ assertRelaycastCredentialLockDirectory(lock);
177
+ fs.rmSync(path.join(lock, entry), { force: true });
178
+ }
179
+ try {
180
+ assertRelaycastCredentialLockDirectory(lock);
181
+ fs.rmdirSync(lock);
182
+ }
183
+ catch (error) {
184
+ if (isNodeError(error) && (error.code === 'ENOENT' || error.code === 'ENOTEMPTY')) {
185
+ continue;
186
+ }
187
+ throw error;
188
+ }
189
+ continue;
190
+ }
191
+ }
192
+ }
193
+ catch (error) {
194
+ if (isNodeError(error) && error.code === 'ENOENT')
195
+ continue;
196
+ throw error;
197
+ }
198
+ Atomics.wait(RELAYCAST_CREDENTIAL_LOCK_WAIT, 0, 0, RELAYCAST_CREDENTIAL_LOCK_RETRY_MS);
199
+ }
200
+ let callbackFailed = false;
201
+ try {
202
+ return fn();
203
+ }
204
+ catch (error) {
205
+ callbackFailed = true;
206
+ throw error;
207
+ }
208
+ finally {
209
+ if (fs.existsSync(ownerPath)) {
210
+ let cleanupError;
211
+ try {
212
+ fs.rmSync(ownerPath, { force: true });
213
+ try {
214
+ fs.rmdirSync(lock);
215
+ }
216
+ catch (error) {
217
+ if (!(isNodeError(error) && (error.code === 'ENOENT' || error.code === 'ENOTEMPTY'))) {
218
+ cleanupError = error;
219
+ }
220
+ }
221
+ }
222
+ catch (error) {
223
+ cleanupError = error;
224
+ }
225
+ if (cleanupError && !callbackFailed) {
226
+ throw cleanupError;
227
+ }
228
+ }
229
+ }
230
+ }
231
+ function isRelaycastCredentialLockContention(error) {
232
+ if (!isNodeError(error))
233
+ return false;
234
+ if (error.code === 'EEXIST')
235
+ return true;
236
+ // On Windows a competing process can surface directory create/remove races
237
+ // as sharing violations instead of EEXIST. The credential directory was
238
+ // already ownership/ACL validated above, so retry these codes within the
239
+ // same bounded lock timeout and still fail closed if they persist.
240
+ return (process.platform === 'win32' &&
241
+ (error.code === 'EACCES' || error.code === 'EBUSY' || error.code === 'EPERM'));
242
+ }
243
+ function inspectRelaycastCredentialLock(lock) {
244
+ assertRelaycastCredentialLockDirectory(lock);
245
+ const entries = fs.readdirSync(lock);
246
+ let sawLiveOwner = false;
247
+ for (const entry of entries) {
248
+ let owner;
249
+ try {
250
+ owner = JSON.parse(fs.readFileSync(path.join(lock, entry), 'utf8'));
251
+ }
252
+ catch {
253
+ continue;
254
+ }
255
+ const pid = owner.pid;
256
+ if (owner.version !== RELAYCAST_CREDENTIAL_LOCK_OWNER_VERSION ||
257
+ typeof pid !== 'number' ||
258
+ !Number.isInteger(pid) ||
259
+ pid <= 0 ||
260
+ typeof owner.token !== 'string' ||
261
+ owner.token !== entry) {
262
+ continue;
263
+ }
264
+ try {
265
+ process.kill(pid, 0);
266
+ sawLiveOwner = true;
267
+ }
268
+ catch (error) {
269
+ if (error.code !== 'ESRCH')
270
+ sawLiveOwner = true;
271
+ }
272
+ }
273
+ return { entries, ownerIsAlive: sawLiveOwner };
274
+ }
275
+ function writeRelaycastCredentialAtomically(file, store) {
276
+ const temporary = `${file}.tmp.${process.pid}.${randomUUID()}`;
277
+ let descriptor;
278
+ try {
279
+ descriptor = fs.openSync(temporary, 'wx', 0o600);
280
+ fs.writeSync(descriptor, `${JSON.stringify(store, null, 2)}\n`);
281
+ fs.fsyncSync(descriptor);
282
+ fs.closeSync(descriptor);
283
+ descriptor = undefined;
284
+ fs.chmodSync(temporary, 0o600);
285
+ replaceRelaycastCredentialFile(temporary, file);
286
+ fs.chmodSync(file, 0o600);
287
+ }
288
+ catch (error) {
289
+ if (descriptor !== undefined)
290
+ fs.closeSync(descriptor);
291
+ try {
292
+ fs.unlinkSync(temporary);
293
+ }
294
+ catch (cleanupError) {
295
+ if (!(isNodeError(cleanupError) && cleanupError.code === 'ENOENT'))
296
+ throw cleanupError;
297
+ }
298
+ throw error;
299
+ }
300
+ }
301
+ function replaceRelaycastCredentialFile(temporary, file) {
302
+ const startedAt = Date.now();
303
+ while (true) {
304
+ try {
305
+ fs.renameSync(temporary, file);
306
+ return;
307
+ }
308
+ catch (error) {
309
+ const retryableWindowsSharingViolation = process.platform === 'win32' &&
310
+ isNodeError(error) &&
311
+ (error.code === 'EACCES' || error.code === 'EBUSY' || error.code === 'EPERM');
312
+ if (!retryableWindowsSharingViolation ||
313
+ Date.now() - startedAt >= RELAYCAST_CREDENTIAL_REPLACE_TIMEOUT_MS) {
314
+ throw error;
315
+ }
316
+ Atomics.wait(RELAYCAST_CREDENTIAL_LOCK_WAIT, 0, 0, RELAYCAST_CREDENTIAL_LOCK_RETRY_MS);
317
+ }
318
+ }
319
+ }
9
320
  function isNodeError(err) {
10
321
  return err instanceof Error && 'code' in err;
11
322
  }
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-store.js","sourceRoot":"","sources":["../src/workspace-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace-store.js","sourceRoot":"","sources":["../src/workspace-store.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,8 @@ type ResolveActiveWorkspaceOptions = WorkspaceClientOptions & {
12
12
  };
13
13
  export declare function createWorkspace(name: string, options?: WorkspaceClientOptions): Promise<WorkspaceCreateResponse>;
14
14
  export declare function issueWorkspaceToken(workspace: string, options?: WorkspaceTokenIssueOptions): Promise<WorkspaceTokenIssueResponse>;
15
+ /** Resolve a selected project pin without exposing its key in URLs or changing the active workspace. */
16
+ export declare function resolveWorkspaceByKey(workspaceKey: string, options?: ResolveActiveWorkspaceOptions): Promise<ActiveWorkspaceDescriptor>;
15
17
  export declare function resolveActiveWorkspace(options?: ResolveActiveWorkspaceOptions): Promise<ActiveWorkspaceDescriptor>;
16
18
  export {};
17
19
  //# sourceMappingURL=workspaces.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"workspaces.d.ts","sourceRoot":"","sources":["../src/workspaces.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,yBAAyB,EAG9B,KAAK,uBAAuB,EAC5B,KAAK,2BAA2B,EAEjC,MAAM,YAAY,CAAC;AAGpB,KAAK,sBAAsB,GAAG;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,0BAA0B,GAAG,sBAAsB,GAAG;IACzD,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,6BAA6B,GAAG,sBAAsB,GAAG;IAC5D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;CACzB,CAAC;AAmPF,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,uBAAuB,CAAC,CA8BlC;AAED,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,2BAA2B,CAAC,CAqCtC;AAED,wBAAsB,sBAAsB,CAC1C,OAAO,GAAE,6BAAkC,GAC1C,OAAO,CAAC,yBAAyB,CAAC,CAgDpC"}
1
+ {"version":3,"file":"workspaces.d.ts","sourceRoot":"","sources":["../src/workspaces.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,yBAAyB,EAG9B,KAAK,uBAAuB,EAC5B,KAAK,2BAA2B,EAEjC,MAAM,YAAY,CAAC;AAGpB,KAAK,sBAAsB,GAAG;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,0BAA0B,GAAG,sBAAsB,GAAG;IACzD,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,6BAA6B,GAAG,sBAAsB,GAAG;IAC5D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;CACzB,CAAC;AAmPF,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,uBAAuB,CAAC,CA8BlC;AAED,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,2BAA2B,CAAC,CAqCtC;AAcD,wGAAwG;AACxG,wBAAsB,qBAAqB,CACzC,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE,6BAAkC,GAC1C,OAAO,CAAC,yBAAyB,CAAC,CA2CpC;AAED,wBAAsB,sBAAsB,CAC1C,OAAO,GAAE,6BAAkC,GAC1C,OAAO,CAAC,yBAAyB,CAAC,CAgDpC"}
@@ -1,4 +1,4 @@
1
- import { authorizedApiFetch, ensureAuthenticated } from './auth.js';
1
+ import { authorizedApiFetch, ensureAuthenticated, ensureCloudSession, readStoredAuth } from './auth.js';
2
2
  import { redactCredentialValues } from './redact.js';
3
3
  import { defaultApiUrl, } from './types.js';
4
4
  import { resolveActiveWorkspaceKey } from './workspace-store.js';
@@ -243,6 +243,61 @@ export async function issueWorkspaceToken(workspace, options = {}) {
243
243
  }
244
244
  throw (lastUnsupported ?? new Error('Workspace token issuance is not supported by the configured cloud API.'));
245
245
  }
246
+ function assertWorkspaceResolverTransport(apiUrl) {
247
+ let url;
248
+ try {
249
+ url = new URL(apiUrl);
250
+ }
251
+ catch {
252
+ throw new Error('Project workspace resolution requires a valid Cloud API URL.');
253
+ }
254
+ if (url.username || url.password || url.protocol !== 'https:') {
255
+ throw new Error('Project workspace resolution requires HTTPS.');
256
+ }
257
+ }
258
+ /** Resolve a selected project pin without exposing its key in URLs or changing the active workspace. */
259
+ export async function resolveWorkspaceByKey(workspaceKey, options = {}) {
260
+ const key = workspaceKey.trim();
261
+ if (!/^rk_live_[A-Za-z0-9_-]{1,512}$/.test(key))
262
+ throw new Error('A valid workspace key is required.');
263
+ const env = options.env ?? process.env;
264
+ const apiUrl = options.apiUrl || defaultApiUrl(env);
265
+ assertWorkspaceResolverTransport(apiUrl);
266
+ // Stored sessions keep their own API host; validate it before a refresh can
267
+ // send credentials, even when the requested/default host is secure.
268
+ const stored = await readStoredAuth(env);
269
+ if (stored)
270
+ assertWorkspaceResolverTransport(stored.apiUrl);
271
+ const { auth } = await ensureCloudSession({
272
+ apiUrl,
273
+ interactive: false,
274
+ refreshTimeoutMs: options.refreshTimeoutMs,
275
+ env,
276
+ validateApiUrl: assertWorkspaceResolverTransport,
277
+ });
278
+ assertWorkspaceResolverTransport(auth.apiUrl);
279
+ const endpoint = '/api/v1/workspaces/current/resolve';
280
+ const { response } = await authorizedApiFetch(auth, endpoint, {
281
+ method: 'POST',
282
+ redirect: 'error',
283
+ body: JSON.stringify({ workspaceKey: key }),
284
+ signal: AbortSignal.timeout(options.refreshTimeoutMs ?? 30_000),
285
+ }, {
286
+ interactive: false,
287
+ env,
288
+ validateApiUrl: assertWorkspaceResolverTransport,
289
+ });
290
+ const payload = await readJson(response);
291
+ if (!response.ok)
292
+ throw buildEndpointError('Project workspace resolve', endpoint, response, payload);
293
+ // Unlike the legacy active-workspace resolver, this endpoint is an
294
+ // attestation for a specific project pin. A response that omits the echoed
295
+ // key must fail closed rather than being filled in from the request.
296
+ const resolved = normalizeActiveWorkspaceDescriptor(payload, '', auth.apiUrl);
297
+ if (resolved.key !== key)
298
+ throw new Error('Cloud resolved a different workspace credential than the selected project pin.');
299
+ return resolved;
300
+ }
246
301
  export async function resolveActiveWorkspace(options = {}) {
247
302
  const key = resolveActiveWorkspaceKey(options.env);
248
303
  if (!key) {
@@ -1 +1 @@
1
- {"version":3,"file":"workspaces.js","sourceRoot":"","sources":["../src/workspaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAGL,aAAa,GAId,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAkBjE,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,QAAkB;IACxC,IAAI,CAAC;QACH,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,OAAmB,EAAE,GAAW;IAClD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAC3B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACzF,CAAC;AAED,SAAS,aAAa,CAAC,OAAmB,EAAE,IAAc;IACxD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACvC,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,WAAW,CAAC,OAAmB,EAAE,GAAW;IACnD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAC3B,OAAO,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACxD,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAc,EAAE,QAAgB,EAAE,QAAkB,EAAE,OAAgB;IAChG,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC;QAC9B,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC;YAC7B,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC;YAC9B,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC;YAC7B,QAAQ,CAAC,UAAU,CAAC;QACtB,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;IAExB,OAAO,IAAI,KAAK,CACd,sBAAsB,CAAC,GAAG,MAAM,cAAc,QAAQ,KAAK,QAAQ,CAAC,MAAM,IAAI,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,CAC/F,CAAC;AACJ,CAAC;AAED,SAAS,gCAAgC,CAAC,OAAgB;IACxD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,EAAE,aAAa,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACpF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IAED,OAAO;QACL,WAAW;QACX,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7E,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrG,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrG,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrG,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrG,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,UAAU,CAAC,OAAO,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClG,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC7F,CAAC;AACJ,CAAC;AAED,SAAS,6BAA6B,CACpC,OAAgB,EAChB,mBAA2B;IAE3B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACvB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,EAAE,aAAa,CAAC,IAAI,mBAAmB,CAAC;IAC9E,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,iBAAiB,CAAC;IAC9D,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7C,MAAM,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACrC,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACzC,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACnD,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAEnD,OAAO;QACL,WAAW;QACX,IAAI;QACJ,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7B,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrB,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzB,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpC,CAAC;AACJ,CAAC;AAED,SAAS,oCAAoC,CAC3C,OAAgB,EAChB,mBAA2B;IAE3B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACvE,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,cAAc,GAAG,6BAA6B,CAAC,OAAO,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC;IAClG,OAAO;QACL,GAAG;QACH,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9C,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,OAAmB;IACnC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAC7B,MAAM,IAAI,GAAwB,EAAE,CAAC;IAErC,IAAI,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACtB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACnD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC9C,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;YAC3B,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,CAAC,EAAE,CAAC;QACnF,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACvC,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACpB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,kCAAkC,CACzC,OAAgB,EAChB,WAAmB,EACnB,MAAc;IAEd,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;IAC5E,MAAM,GAAG,GAAG,aAAa,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,cAAc,EAAE,iBAAiB,CAAC,CAAC,IAAI,WAAW,CAAC;IAChG,MAAM,gBAAgB,GAAG,aAAa,CAAC,SAAS,EAAE,CAAC,kBAAkB,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC,CAAC;IAC7F,MAAM,oBAAoB,GAAG,aAAa,CAAC,SAAS,EAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAChF,MAAM,oBAAoB,GAAG,aAAa,CAAC,SAAS,EAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAChF,MAAM,oBAAoB,GAAG,aAAa,CAAC,SAAS,EAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAEhF,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAChF,CAAC;IACD,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAChF,CAAC;IACD,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAChF,CAAC;IAED,OAAO;QACL,GAAG,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjF,GAAG;QACH,gBAAgB;QAChB,oBAAoB;QACpB,GAAG,CAAC,UAAU,CAAC,SAAS,EAAE,iBAAiB,CAAC;YAC1C,CAAC,CAAC;gBACE,eAAe,EAAE,UAAU,CAAC,SAAS,EAAE,iBAAiB,CAAC;aAC1D;YACH,CAAC,CAAC,EAAE,CAAC;QACP,oBAAoB;QACpB,oBAAoB;QACpB,GAAG,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;YACjE,CAAC,CAAC;gBACE,cAAc,EAAE,aAAa,CAAC,SAAS,EAAE,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;aAChF;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjF,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC;QACzB,MAAM;QACN,GAAG,CAAC,WAAW,CAAC,SAAS,EAAE,aAAa,CAAC,KAAK,SAAS;YACrD,CAAC,CAAC;gBACE,WAAW,EAAE,WAAW,CAAC,SAAS,EAAE,aAAa,CAAC;aACnD;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,WAAW,CACxB,QAAgB,EAChB,IAA6B,EAC7B,OAA+B;IAE/B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,aAAa,EAAE,CAAC;IACjD,MAAM,IAAI,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE;QAC5D,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;KAC3B,CAAC,CAAC;IAEH,OAAO;QACL,QAAQ;QACR,OAAO,EAAE,MAAM,QAAQ,CAAC,QAAQ,CAAC;KAClC,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,UAAU,CACvB,QAAgB,EAChB,OAAsF;IAEtF,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,aAAa,EAAE,CAAC;IACjD,MAAM,IAAI,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE;QAC7C,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;KAC3C,CAAC,CAAC;IACH,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,kBAAkB,CAC3C,IAAI,EACJ,QAAQ,EACR;QACE,MAAM,EAAE,KAAK;KACd,EACD;QACE,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;KAC3C,CACF,CAAC;IAEF,OAAO;QACL,QAAQ;QACR,OAAO,EAAE,MAAM,QAAQ,CAAC,QAAQ,CAAC;QACjC,MAAM,EAAE,IAAI,CAAC,MAAM;KACpB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAAY,EACZ,UAAkC,EAAE;IAEpC,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAClC,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,IAAI,GAAG;QACX,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,aAAa;KAC3B,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,2BAA2B,EAAE,oBAAoB,CAAC,CAAC;IACtE,IAAI,eAAe,GAAiB,IAAI,CAAC;IAEzC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAEzE,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACvD,eAAe,GAAG,kBAAkB,CAAC,kBAAkB,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YACtF,SAAS;QACX,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,kBAAkB,CAAC,kBAAkB,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC5E,CAAC;QAED,OAAO,gCAAgC,CAAC,OAAO,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,eAAe,IAAI,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;AACvG,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,SAAiB,EACjB,UAAsC,EAAE;IAExC,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;IACrC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,IAAI,GAAG;QACX,WAAW;QACX,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,aAAa,WAAW,EAAE;KACzD,CAAC;IAEF,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC3D,MAAM,SAAS,GAAG;QAChB,sBAAsB,kBAAkB,mBAAmB;QAC3D,sBAAsB,kBAAkB,kBAAkB;QAC1D,sBAAsB,kBAAkB,QAAQ;KACjD,CAAC;IACF,IAAI,eAAe,GAAiB,IAAI,CAAC;IAEzC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAEzE,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACvD,eAAe,GAAG,kBAAkB,CAAC,uBAAuB,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YAC3F,SAAS;QACX,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,kBAAkB,CAAC,uBAAuB,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QACjF,CAAC;QAED,OAAO,oCAAoC,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,CACJ,eAAe,IAAI,IAAI,KAAK,CAAC,wEAAwE,CAAC,CACvG,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,UAAyC,EAAE;IAE3C,MAAM,GAAG,GAAG,yBAAyB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACnD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CACb,uIAAuI,CACxI,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;IAC3C,MAAM,SAAS,GAAG;QAChB,sBAAsB,UAAU,UAAU;QAC1C,kCAAkC,UAAU,EAAE;QAC9C,iCAAiC,UAAU,EAAE;KAC9C,CAAC;IACF,IAAI,eAAe,GAAiB,IAAI,CAAC;IACzC,IAAI,mBAAmB,GAAG,KAAK,CAAC;IAEhC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE;YAC/D,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,KAAK;YACzC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;SAC3C,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACvD,mBAAmB,KAAK,QAAQ,CAAC,MAAM,KAAK,GAAG,CAAC;YAChD,eAAe,GAAG,kBAAkB,CAAC,mBAAmB,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YACvF,SAAS;QACX,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,kBAAkB,CAAC,mBAAmB,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC7E,CAAC;QAED,OAAO,kCAAkC,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IACxF,CAAC;IACD,IAAI,mBAAmB,EAAE,CAAC;QACxB,yEAAyE;QACzE,oEAAoE;QACpE,MAAM,eAAe,CAAC;IACxB,CAAC;IACD,MAAM,IAAI,KAAK,CACb,GAAG,eAAe,CAAC,OAAO,wKAAwK,CACnM,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"workspaces.js","sourceRoot":"","sources":["../src/workspaces.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agent-relay/cloud",
3
- "version": "12.1.0",
3
+ "version": "12.2.0",
4
4
  "engines": {
5
5
  "node": ">=22.0.0"
6
6
  },
@@ -62,7 +62,7 @@
62
62
  "test:watch": "vitest --root ../.. packages/cloud/"
63
63
  },
64
64
  "dependencies": {
65
- "@agent-relay/config": "12.1.0",
65
+ "@agent-relay/config": "12.2.0",
66
66
  "@aws-sdk/client-s3": "3.1020.0",
67
67
  "ignore": "^7.0.5",
68
68
  "tar": "^7.5.21"