aws-runtime-bridge 1.7.41 → 1.7.43

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.
@@ -60,6 +60,11 @@ export declare function evaluatePersistedSessionReuse(session: Pick<PersistedSes
60
60
  */
61
61
  export declare function formatTerminalPrompt(currentDirectory: string): string;
62
62
  export declare function buildRuntimeEnv(agentId: string, workspacePath: string | undefined, baseEnv: NodeJS.ProcessEnv, envOverrides?: Record<string, unknown>): Record<string, string>;
63
+ /**
64
+ * 将 SDK 工具结束事件转换为时间线返回数据状态。
65
+ * 主流程:格式化工具结果 -> 保留 MCP 专用展示 -> 其它工具按动作类型追加到对应时间线事件。
66
+ */
67
+ export declare function buildToolResultTimelineActionInfo(event: ProviderEvent): RuntimeStatusActionInfo | undefined;
63
68
  export declare function formatSdkOutputEvent(event: ProviderEvent): string | undefined;
64
69
  export declare function resolveSdkProviderId(command?: string): string;
65
70
  //# sourceMappingURL=terminal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"terminal.d.ts","sourceRoot":"","sources":["../../src/routes/terminal.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAKxC,OAAO,EAEL,KAAK,oBAAoB,EAEzB,KAAK,aAAa,EAClB,KAAK,uBAAuB,EAI7B,MAAM,qBAAqB,CAAC;AAc7B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,eAAO,MAAM,cAAc,4CAAW,CAAC;AAIvC,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,oBAAoB,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,0BAA0B,CAAC,EAAE,MAAM,CAAC;CACrC;AAGD,eAAO,MAAM,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAa,CAAC;AAKnE,wBAAgB,wBAAwB,CAAC,UAAU,CAAC,EAAE,uBAAuB;;;cAS5E;AAaD;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAEpE;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,GAAE,MAAM,CAAC,QAA2B,EAC5C,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,MAAM,CAMR;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,QAAQ,SAAkC,GAAG,WAAW,CAMnG;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,UAAQ,GAAG,MAAM,CAQnG;AAED;;GAEG;AACH,wBAAgB,kCAAkC,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAiB7F;AA2CD,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,YAAY,GAAG,aAAa,GAAG,UAAU,CAAC;CACnD;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,EACtC,YAAY,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAA0B,GACxD,6BAA6B,CAU/B;AA4BD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM,CAErE;AAyGD,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,OAAO,EAAE,MAAM,CAAC,UAAU,EAC1B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACrC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA+BxB;AA8BD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,GAAG,SAAS,CAU7E;AAYD,wBAAgB,oBAAoB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAE7D"}
1
+ {"version":3,"file":"terminal.d.ts","sourceRoot":"","sources":["../../src/routes/terminal.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAKxC,OAAO,EAEL,KAAK,oBAAoB,EAGzB,KAAK,aAAa,EAClB,KAAK,uBAAuB,EAI7B,MAAM,qBAAqB,CAAC;AAc7B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,eAAO,MAAM,cAAc,4CAAW,CAAC;AAIvC,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,oBAAoB,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,0BAA0B,CAAC,EAAE,MAAM,CAAC;CACrC;AAGD,eAAO,MAAM,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAa,CAAC;AAKnE,wBAAgB,wBAAwB,CAAC,UAAU,CAAC,EAAE,uBAAuB;;;cAS5E;AAaD;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAEpE;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,GAAE,MAAM,CAAC,QAA2B,EAC5C,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,MAAM,CAMR;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,QAAQ,SAAkC,GAAG,WAAW,CAMnG;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,GAAG,UAAQ,GAAG,MAAM,CAQnG;AAED;;GAEG;AACH,wBAAgB,kCAAkC,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAiB7F;AA2CD,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,YAAY,GAAG,aAAa,GAAG,UAAU,CAAC;CACnD;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,EACtC,YAAY,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAA0B,GACxD,6BAA6B,CAU/B;AA4BD;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM,CAErE;AAyGD,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,OAAO,EAAE,MAAM,CAAC,UAAU,EAC1B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACrC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA+BxB;AA8BD;;;GAGG;AACH,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,aAAa,GAAG,uBAAuB,GAAG,SAAS,CAiC3G;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,GAAG,SAAS,CAU7E;AAYD,wBAAgB,oBAAoB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAE7D"}
@@ -11,7 +11,7 @@ import path from 'node:path';
11
11
  import { TextDecoder } from 'node:util';
12
12
  import { Router } from 'express';
13
13
  import { v4 as uuidv4 } from 'uuid';
14
- import { adapterRegistry, registerSdkProviders, resolveSdkProviderIdByCommand, } from '../adapter/index.js';
14
+ import { adapterRegistry, getToolActionInfo, registerSdkProviders, resolveSdkProviderIdByCommand, } from '../adapter/index.js';
15
15
  import { validateToken } from '../middleware/auth.js';
16
16
  import { getAgentProcessManager } from '../services/agent-process-manager.js';
17
17
  import { enqueueMcpLaunchBinding } from '../services/mcp-launch-binding-queue.js';
@@ -317,6 +317,40 @@ function isMcpProviderEvent(event) {
317
317
  const toolName = String(event.data.toolName || '').toLowerCase();
318
318
  return toolName.startsWith('mcp__') || toolName.includes('-mcp__') || toolName.includes('mcp_');
319
319
  }
320
+ /**
321
+ * 将 SDK 工具结束事件转换为时间线返回数据状态。
322
+ * 主流程:格式化工具结果 -> 保留 MCP 专用展示 -> 其它工具按动作类型追加到对应时间线事件。
323
+ */
324
+ export function buildToolResultTimelineActionInfo(event) {
325
+ if (event.type !== 'tool_use_end') {
326
+ return undefined;
327
+ }
328
+ const actionResult = formatToolResultForTimeline(event.data.toolResult ?? event.data.actionResult);
329
+ if (!actionResult) {
330
+ return undefined;
331
+ }
332
+ const inferredAction = getToolActionInfo(event.data.toolName, event.data.toolInput);
333
+ const actionType = event.data.actionType || inferredAction.actionType;
334
+ if (actionType === 'idle') {
335
+ return undefined;
336
+ }
337
+ if (actionType === 'mcp' && isMcpProviderEvent(event)) {
338
+ return {
339
+ actionType: 'mcp',
340
+ actionLabel: 'MCP返回',
341
+ actionDetail: event.data.actionDetail || event.data.toolName,
342
+ actionId: event.data.actionId || event.data.toolUseId,
343
+ actionResult,
344
+ };
345
+ }
346
+ return {
347
+ actionType,
348
+ actionLabel: event.data.actionLabel || inferredAction.actionLabel,
349
+ actionDetail: event.data.actionDetail || inferredAction.actionDetail || event.data.toolName,
350
+ actionId: event.data.actionId || event.data.toolUseId,
351
+ actionResult,
352
+ };
353
+ }
320
354
  export function formatSdkOutputEvent(event) {
321
355
  if (event.type === 'text_delta' || event.type === 'thinking') {
322
356
  return event.data.text || undefined;
@@ -351,17 +385,9 @@ function wireSdkAdapterEvents(adapter, definition) {
351
385
  if (entry) {
352
386
  console.log(`[${definition.displayName} Adapter] Event: ${event.type} for session ${event.sessionId}`);
353
387
  forwardSdkOutputEvent(event, entry);
354
- if (event.type === 'tool_use_end' && isMcpProviderEvent(event)) {
355
- const actionResult = formatToolResultForTimeline(event.data.toolResult);
356
- if (actionResult) {
357
- void sendStatus(entry.agentId, event.sessionId, 'tool_result', {
358
- actionType: 'mcp',
359
- actionLabel: 'MCP返回',
360
- actionDetail: event.data.toolName,
361
- actionId: event.data.toolUseId,
362
- actionResult,
363
- });
364
- }
388
+ const toolResultActionInfo = buildToolResultTimelineActionInfo(event);
389
+ if (toolResultActionInfo) {
390
+ void sendStatus(entry.agentId, event.sessionId, 'tool_result', toolResultActionInfo);
365
391
  }
366
392
  if (event.type === 'turn_complete' && event.data.usage) {
367
393
  sendStatus(entry.agentId, event.sessionId, 'waiting_input', undefined, resolveStatusChangeUsage({ usage: event.data.usage }));
@@ -1,6 +1,6 @@
1
1
  import { describe, expect, it } from 'vitest';
2
2
  import { SDK_PROVIDER_DEFINITIONS } from '../adapter/SdkProviderSpi.js';
3
- import { buildRuntimeEnv, createTerminalOutputDecoder, decodeTerminalOutputChunk, evaluatePersistedSessionReuse, formatTerminalPrompt, formatSdkOutputEvent, normalizeTerminalCommandInput, parseTerminalDirectoryChangeTarget, resolveTerminalOutputEncoding, resolveSdkProviderId, resolveStatusChangeUsage, } from './terminal.js';
3
+ import { buildRuntimeEnv, buildToolResultTimelineActionInfo, createTerminalOutputDecoder, decodeTerminalOutputChunk, evaluatePersistedSessionReuse, formatTerminalPrompt, formatSdkOutputEvent, normalizeTerminalCommandInput, parseTerminalDirectoryChangeTarget, resolveTerminalOutputEncoding, resolveSdkProviderId, resolveStatusChangeUsage, } from './terminal.js';
4
4
  describe('terminal route validation', () => {
5
5
  it('requires agentId and workspacePath for start', () => {
6
6
  const validateStartRequest = (body) => {
@@ -188,3 +188,93 @@ describe('SDK output forwarding', () => {
188
188
  expect(formatSdkOutputEvent(toolEvent)).toBeUndefined();
189
189
  });
190
190
  });
191
+ describe('SDK tool result timeline action info', () => {
192
+ it('keeps MCP tool results on MCP timeline events', () => {
193
+ const event = {
194
+ type: 'tool_use_end',
195
+ sessionId: 'session-1',
196
+ timestamp: new Date(0).toISOString(),
197
+ data: {
198
+ toolName: 'mcp__aws-mcp__get_profile',
199
+ toolUseId: 'tool-1',
200
+ toolResult: '{"displayName":"Agent"}',
201
+ },
202
+ };
203
+ expect(buildToolResultTimelineActionInfo(event)).toEqual({
204
+ actionType: 'mcp',
205
+ actionLabel: 'MCP返回',
206
+ actionDetail: 'mcp__aws-mcp__get_profile',
207
+ actionId: 'tool-1',
208
+ actionResult: '{"displayName":"Agent"}',
209
+ });
210
+ });
211
+ it('forwards bash tool results to command timeline events', () => {
212
+ const event = {
213
+ type: 'tool_use_end',
214
+ sessionId: 'session-1',
215
+ timestamp: new Date(0).toISOString(),
216
+ data: {
217
+ toolName: 'bash',
218
+ toolInput: { command: 'npm run build' },
219
+ toolUseId: 'tool-2',
220
+ toolResult: 'build passed',
221
+ },
222
+ };
223
+ expect(buildToolResultTimelineActionInfo(event)).toEqual({
224
+ actionType: 'bash',
225
+ actionLabel: '执行命令',
226
+ actionDetail: 'npm run build',
227
+ actionId: 'tool-2',
228
+ actionResult: 'build passed',
229
+ });
230
+ });
231
+ it('forwards read tool results to file-read timeline events', () => {
232
+ const event = {
233
+ type: 'tool_use_end',
234
+ sessionId: 'session-1',
235
+ timestamp: new Date(0).toISOString(),
236
+ data: {
237
+ toolName: 'read_file',
238
+ toolInput: { path: 'src/index.ts' },
239
+ actionId: 'tool-3',
240
+ actionResult: 'export const ok = true',
241
+ },
242
+ };
243
+ expect(buildToolResultTimelineActionInfo(event)).toEqual({
244
+ actionType: 'read_file',
245
+ actionLabel: '读取文件',
246
+ actionDetail: 'src/index.ts',
247
+ actionId: 'tool-3',
248
+ actionResult: 'export const ok = true',
249
+ });
250
+ });
251
+ it('keeps MCP-named filesystem results on semantic file-read timeline events', () => {
252
+ const event = {
253
+ type: 'tool_use_end',
254
+ sessionId: 'session-1',
255
+ timestamp: new Date(0).toISOString(),
256
+ data: {
257
+ toolName: 'mcp__filesystem__read_file',
258
+ toolInput: { path: 'src/index.ts' },
259
+ toolUseId: 'tool-4',
260
+ toolResult: 'export const ok = true',
261
+ },
262
+ };
263
+ expect(buildToolResultTimelineActionInfo(event)).toEqual({
264
+ actionType: 'read_file',
265
+ actionLabel: '读取文件',
266
+ actionDetail: 'src/index.ts',
267
+ actionId: 'tool-4',
268
+ actionResult: 'export const ok = true',
269
+ });
270
+ });
271
+ it('ignores tool result events without displayable result content', () => {
272
+ const event = {
273
+ type: 'tool_use_end',
274
+ sessionId: 'session-1',
275
+ timestamp: new Date(0).toISOString(),
276
+ data: { toolName: 'read_file', toolResult: ' ' },
277
+ };
278
+ expect(buildToolResultTimelineActionInfo(event)).toBeUndefined();
279
+ });
280
+ });
@@ -1 +1 @@
1
- {"version":3,"file":"instance-state.d.ts","sourceRoot":"","sources":["../../src/services/instance-state.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAKjD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAiB/E;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,GAC5B,OAAO,CAAC,aAAa,CAAC,CAiBxB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAExD"}
1
+ {"version":3,"file":"instance-state.d.ts","sourceRoot":"","sources":["../../src/services/instance-state.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAqBjD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAgB/E;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,GAC5B,OAAO,CAAC,aAAa,CAAC,CAiBxB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAExD"}
@@ -3,12 +3,27 @@
3
3
  *
4
4
  * 管理 Agent 实例的初始化状态持久化
5
5
  */
6
- import path from 'node:path';
7
- import os from 'node:os';
8
6
  import { promises as fs } from 'node:fs';
9
- import { ensureEnabledTools } from '../utils/validation.js';
10
- import { parseBoolean } from '../utils/validation.js';
11
- import { ensureDir } from '../utils/file-utils.js';
7
+ import os from 'node:os';
8
+ import path from 'node:path';
9
+ import { getRuntimeHomeDir } from '../config.js';
10
+ import { atomicWriteJsonFile, ensureDir } from '../utils/file-utils.js';
11
+ import { ensureEnabledTools, parseBoolean } from '../utils/validation.js';
12
+ function getLegacyInstanceStateFile(agentId) {
13
+ return path.join(os.tmpdir(), 'agentswork-runtime-init', String(agentId), 'state.json');
14
+ }
15
+ function createDefaultInstanceState() {
16
+ return {
17
+ initialized: false,
18
+ skills: [],
19
+ mcpServers: [],
20
+ enabledTools: ['claude', 'opencode', 'codex'],
21
+ toolStatus: {},
22
+ skillEnabled: true,
23
+ mcpEnabled: true,
24
+ updatedAt: null,
25
+ };
26
+ }
12
27
  /**
13
28
  * 获取实例状态文件路径
14
29
  *
@@ -16,7 +31,7 @@ import { ensureDir } from '../utils/file-utils.js';
16
31
  * @returns 状态文件路径
17
32
  */
18
33
  export function getInstanceStateFile(agentId) {
19
- return path.join(os.tmpdir(), 'agentswork-runtime-init', String(agentId), 'state.json');
34
+ return path.join(getRuntimeHomeDir(), '.aws-bridge', 'instances', String(agentId), 'state.json');
20
35
  }
21
36
  /**
22
37
  * 加载实例状态
@@ -26,21 +41,21 @@ export function getInstanceStateFile(agentId) {
26
41
  */
27
42
  export async function loadInstanceState(agentId) {
28
43
  const filePath = getInstanceStateFile(agentId);
44
+ const legacyFilePath = getLegacyInstanceStateFile(agentId);
29
45
  try {
30
46
  const raw = await fs.readFile(filePath, 'utf-8');
31
47
  return JSON.parse(raw);
32
48
  }
33
49
  catch {
34
- return {
35
- initialized: false,
36
- skills: [],
37
- mcpServers: [],
38
- enabledTools: ['claude', 'opencode', 'codex'],
39
- toolStatus: {},
40
- skillEnabled: true,
41
- mcpEnabled: true,
42
- updatedAt: null,
43
- };
50
+ try {
51
+ const raw = await fs.readFile(legacyFilePath, 'utf-8');
52
+ const legacyState = JSON.parse(raw);
53
+ await atomicWriteJsonFile(filePath, legacyState);
54
+ return legacyState;
55
+ }
56
+ catch {
57
+ return createDefaultInstanceState();
58
+ }
44
59
  }
45
60
  }
46
61
  /**
@@ -65,7 +80,7 @@ export async function saveInstanceState(agentId, state) {
65
80
  mcpEnabled: parseBoolean(state?.mcpEnabled, true),
66
81
  updatedAt: new Date().toISOString(),
67
82
  };
68
- await fs.writeFile(filePath, JSON.stringify(next, null, 2), 'utf-8');
83
+ await atomicWriteJsonFile(filePath, next);
69
84
  return next;
70
85
  }
71
86
  /**
@@ -75,5 +90,5 @@ export async function saveInstanceState(agentId, state) {
75
90
  * @returns 初始化根目录路径
76
91
  */
77
92
  export function getAgentInitRoot(agentId) {
78
- return path.join(os.tmpdir(), 'agentswork-runtime-init', String(agentId));
93
+ return path.join(getRuntimeHomeDir(), '.aws-bridge', 'instances', String(agentId));
79
94
  }
@@ -1,33 +1,46 @@
1
1
  import { describe, it, expect, beforeEach, afterEach } from 'vitest';
2
+ import { promises as fs } from 'node:fs';
2
3
  import os from 'node:os';
3
4
  import path from 'node:path';
4
- import { promises as fs } from 'node:fs';
5
5
  import { getInstanceStateFile, loadInstanceState, saveInstanceState, getAgentInitRoot, } from './instance-state.js';
6
6
  describe('instance-state service', () => {
7
7
  const testAgentId = 'test-agent-123';
8
- const stateFilePath = getInstanceStateFile(testAgentId);
8
+ const originalRuntimeHomeDir = process.env.AWS_RUNTIME_HOME_DIR;
9
+ const testRuntimeHomeDir = path.join(os.tmpdir(), `aws-instance-state-home-${Date.now()}`);
10
+ function getCurrentStateFilePath() {
11
+ return getInstanceStateFile(testAgentId);
12
+ }
9
13
  beforeEach(async () => {
14
+ process.env.AWS_RUNTIME_HOME_DIR = testRuntimeHomeDir;
10
15
  // 清理测试文件
11
16
  try {
12
- await fs.rm(path.dirname(stateFilePath), { recursive: true, force: true });
17
+ await fs.rm(testRuntimeHomeDir, { recursive: true, force: true });
18
+ await fs.rm(path.join(os.tmpdir(), 'agentswork-runtime-init', testAgentId), { recursive: true, force: true });
13
19
  }
14
20
  catch {
15
21
  // 目录不存在,忽略
16
22
  }
17
23
  });
18
24
  afterEach(async () => {
25
+ if (originalRuntimeHomeDir === undefined) {
26
+ delete process.env.AWS_RUNTIME_HOME_DIR;
27
+ }
28
+ else {
29
+ process.env.AWS_RUNTIME_HOME_DIR = originalRuntimeHomeDir;
30
+ }
19
31
  // 清理测试文件
20
32
  try {
21
- await fs.rm(path.dirname(stateFilePath), { recursive: true, force: true });
33
+ await fs.rm(testRuntimeHomeDir, { recursive: true, force: true });
34
+ await fs.rm(path.join(os.tmpdir(), 'agentswork-runtime-init', testAgentId), { recursive: true, force: true });
22
35
  }
23
36
  catch {
24
37
  // 目录不存在,忽略
25
38
  }
26
39
  });
27
40
  describe('getInstanceStateFile', () => {
28
- it('should return correct path in temp directory', () => {
41
+ it('should return correct path in runtime home directory', () => {
29
42
  const result = getInstanceStateFile(testAgentId);
30
- const expected = path.join(os.tmpdir(), 'agentswork-runtime-init', testAgentId, 'state.json');
43
+ const expected = path.join(testRuntimeHomeDir, '.aws-bridge', 'instances', testAgentId, 'state.json');
31
44
  expect(result).toBe(expected);
32
45
  });
33
46
  it('should handle agentId with special characters', () => {
@@ -45,7 +58,7 @@ describe('instance-state service', () => {
45
58
  describe('getAgentInitRoot', () => {
46
59
  it('should return correct init root directory', () => {
47
60
  const result = getAgentInitRoot(testAgentId);
48
- const expected = path.join(os.tmpdir(), 'agentswork-runtime-init', testAgentId);
61
+ const expected = path.join(testRuntimeHomeDir, '.aws-bridge', 'instances', testAgentId);
49
62
  expect(result).toBe(expected);
50
63
  });
51
64
  });
@@ -92,6 +105,7 @@ describe('instance-state service', () => {
92
105
  });
93
106
  it('should handle corrupted JSON file gracefully', async () => {
94
107
  // 创建损坏的 JSON 文件
108
+ const stateFilePath = getCurrentStateFilePath();
95
109
  await fs.mkdir(path.dirname(stateFilePath), { recursive: true });
96
110
  await fs.writeFile(stateFilePath, '{ invalid json }', 'utf-8');
97
111
  const state = await loadInstanceState(testAgentId);
@@ -99,6 +113,24 @@ describe('instance-state service', () => {
99
113
  expect(state.initialized).toBe(false);
100
114
  expect(state.skills).toEqual([]);
101
115
  });
116
+ it('should migrate readable legacy temp state into runtime home', async () => {
117
+ const legacyFilePath = path.join(os.tmpdir(), 'agentswork-runtime-init', testAgentId, 'state.json');
118
+ const legacyState = {
119
+ initialized: true,
120
+ skills: [],
121
+ mcpServers: [],
122
+ enabledTools: ['claude'],
123
+ toolStatus: {},
124
+ skillEnabled: true,
125
+ mcpEnabled: false,
126
+ updatedAt: '2026-01-01T00:00:00.000Z',
127
+ };
128
+ await fs.mkdir(path.dirname(legacyFilePath), { recursive: true });
129
+ await fs.writeFile(legacyFilePath, JSON.stringify(legacyState), 'utf-8');
130
+ const state = await loadInstanceState(testAgentId);
131
+ expect(state).toEqual(legacyState);
132
+ expect(JSON.parse(await fs.readFile(getInstanceStateFile(testAgentId), 'utf-8'))).toEqual(legacyState);
133
+ });
102
134
  });
103
135
  describe('saveInstanceState', () => {
104
136
  it('should save complete state with all fields', async () => {
@@ -128,7 +160,7 @@ describe('instance-state service', () => {
128
160
  expect(result.mcpEnabled).toBe(true);
129
161
  expect(result.updatedAt).not.toBeNull();
130
162
  // 验证文件已创建
131
- const fileContent = await fs.readFile(stateFilePath, 'utf-8');
163
+ const fileContent = await fs.readFile(getCurrentStateFilePath(), 'utf-8');
132
164
  const parsed = JSON.parse(fileContent);
133
165
  expect(parsed.initialized).toBe(true);
134
166
  });
@@ -198,7 +230,7 @@ describe('instance-state service', () => {
198
230
  const result = await saveInstanceState(testAgentId, { initialized: false });
199
231
  expect(result.initialized).toBe(false);
200
232
  // 验证文件内容
201
- const fileContent = await fs.readFile(stateFilePath, 'utf-8');
233
+ const fileContent = await fs.readFile(getCurrentStateFilePath(), 'utf-8');
202
234
  const parsed = JSON.parse(fileContent);
203
235
  expect(parsed.initialized).toBe(false);
204
236
  });
@@ -1 +1 @@
1
- {"version":3,"file":"startup-config-wizard.d.ts","sourceRoot":"","sources":["../../src/services/startup-config-wizard.ts"],"names":[],"mappings":"AAuBA,UAAU,QAAQ;IAChB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,KAAK,IAAI,IAAI,CAAC;CACf;AAED,UAAU,0BAA0B;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,QAAQ,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,qBAAqB,CAAC,EAAE,MAAM,MAAM,CAAC;CACtC;AAED,MAAM,MAAM,yBAAyB,GACjC,QAAQ,GACR,SAAS,GACT,YAAY,GACZ,SAAS,GACT,iBAAiB,GACjB,QAAQ,CAAC;AAqKb,wBAAsB,mBAAmB,CACvC,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,yBAAyB,CAAC,CAiDpC;AAED,wBAAsB,sBAAsB,CAC1C,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,yBAAyB,CAAC,CA0BpC"}
1
+ {"version":3,"file":"startup-config-wizard.d.ts","sourceRoot":"","sources":["../../src/services/startup-config-wizard.ts"],"names":[],"mappings":"AAuBA,UAAU,QAAQ;IAChB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,KAAK,IAAI,IAAI,CAAC;CACf;AAED,UAAU,0BAA0B;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,QAAQ,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,qBAAqB,CAAC,EAAE,MAAM,MAAM,CAAC;CACtC;AAED,MAAM,MAAM,yBAAyB,GACjC,QAAQ,GACR,SAAS,GACT,YAAY,GACZ,SAAS,GACT,iBAAiB,GACjB,QAAQ,CAAC;AAoKb,wBAAsB,mBAAmB,CACvC,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,yBAAyB,CAAC,CAiDpC;AAED,wBAAsB,sBAAsB,CAC1C,OAAO,GAAE,0BAA+B,GACvC,OAAO,CAAC,yBAAyB,CAAC,CA0BpC"}
@@ -1,9 +1,9 @@
1
1
  import { randomBytes } from "node:crypto";
2
- import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
2
+ import { existsSync, readFileSync } from "node:fs";
3
3
  import os from "node:os";
4
- import path from "node:path";
5
4
  import { stdin as input, stdout as output } from "node:process";
6
5
  import { createInterface } from "node:readline/promises";
6
+ import { atomicWriteJsonFile } from "../utils/file-utils.js";
7
7
  import { logger } from "../utils/logger.js";
8
8
  import { getAutoRegisterConfigFilePath } from "./auto-register.js";
9
9
  function normalizeAnswer(answer) {
@@ -15,10 +15,6 @@ function isYes(answer) {
15
15
  function isNo(answer) {
16
16
  return ["n", "no", "否", "不", "跳过", "skip", "s"].includes(normalizeAnswer(answer));
17
17
  }
18
- function writeConfigFile(configPath, config) {
19
- mkdirSync(path.dirname(configPath), { recursive: true });
20
- writeFileSync(configPath, `${JSON.stringify(config, null, 2)}\n`, "utf-8");
21
- }
22
18
  function readExistingConfig(configPath) {
23
19
  if (!existsSync(configPath)) {
24
20
  return {};
@@ -38,9 +34,12 @@ function readExistingConfig(configPath) {
38
34
  function generateDefaultConnectionKey() {
39
35
  return `awsb_${randomBytes(24).toString("base64url")}`;
40
36
  }
41
- function writeSkippedConfig(configPath, generateConnectionKey) {
37
+ async function writeConfigFile(configPath, config) {
38
+ await atomicWriteJsonFile(configPath, config);
39
+ }
40
+ async function writeSkippedConfig(configPath, generateConnectionKey) {
42
41
  const connectionKey = generateConnectionKey();
43
- writeConfigFile(configPath, { connectionKey });
42
+ await writeConfigFile(configPath, { connectionKey });
44
43
  const message = `[runtime-bridge] 已创建配置文件: ${configPath}\n` +
45
44
  `[runtime-bridge] 自动生成 connectionKey: ${connectionKey}\n` +
46
45
  "[runtime-bridge] 请保存该 connectionKey;server/面板连接此 Bridge 时需要使用它。";
@@ -115,13 +114,13 @@ export async function ensureStartupConfig(options = {}) {
115
114
  }
116
115
  const env = options.env || process.env;
117
116
  if (env.AWS_BRIDGE_SKIP_SETUP === "true") {
118
- writeSkippedConfig(configPath, generateConnectionKey);
117
+ await writeSkippedConfig(configPath, generateConnectionKey);
119
118
  logger.info("[runtime-bridge] AWS_BRIDGE_SKIP_SETUP=true,跳过首次配置引导");
120
119
  return "skipped";
121
120
  }
122
121
  const interactive = options.interactive ?? Boolean(process.stdin.isTTY && process.stdout.isTTY);
123
122
  if (!interactive) {
124
- writeSkippedConfig(configPath, generateConnectionKey);
123
+ await writeSkippedConfig(configPath, generateConnectionKey);
125
124
  logger.info(`[runtime-bridge] 未检测到配置文件: ${configPath};当前为非交互环境,跳过首次配置引导`);
126
125
  return "non-interactive";
127
126
  }
@@ -129,12 +128,12 @@ export async function ensureStartupConfig(options = {}) {
129
128
  try {
130
129
  const shouldConfigure = await askShouldConfigure(prompt);
131
130
  if (!shouldConfigure) {
132
- writeSkippedConfig(configPath, generateConnectionKey);
131
+ await writeSkippedConfig(configPath, generateConnectionKey);
133
132
  logger.info("[runtime-bridge] 已跳过首次配置引导");
134
133
  return "skipped";
135
134
  }
136
135
  const config = await collectStartupConfig(prompt);
137
- writeConfigFile(configPath, config);
136
+ await writeConfigFile(configPath, config);
138
137
  logger.info(`[runtime-bridge] 已写入配置文件: ${configPath}`);
139
138
  return "created";
140
139
  }
@@ -160,7 +159,7 @@ export async function configureStartupConfig(options = {}) {
160
159
  try {
161
160
  const existingConfig = readExistingConfig(configPath);
162
161
  const config = await collectStartupConfig(prompt, existingConfig);
163
- writeConfigFile(configPath, config);
162
+ await writeConfigFile(configPath, config);
164
163
  logger.info(`[runtime-bridge] 已更新配置文件: ${configPath}`);
165
164
  return "configured";
166
165
  }
@@ -1,7 +1,8 @@
1
- import type { SkillPackage, DownloadResult, Skill } from '../types.js';
2
1
  import type { AppFlags, InstalledSkill, CcSwitchSdk } from '@cc-switch/sdk';
2
+ import type { SkillPackage, DownloadResult, Skill } from '../types.js';
3
3
  export declare function ensureDir(targetDir: string): Promise<string>;
4
4
  export declare function withFileLock<T>(targetPath: string, operation: () => Promise<T>): Promise<T>;
5
+ export declare function stringifyStableJson(value: unknown): string;
5
6
  export declare function atomicWriteFile(targetPath: string, content: string): Promise<void>;
6
7
  export declare function atomicWriteJsonFile(targetPath: string, value: unknown): Promise<void>;
7
8
  export declare function downloadSkillZip(skillPackage: SkillPackage, targetDir: string): Promise<DownloadResult | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"file-utils.d.ts","sourceRoot":"","sources":["../../src/utils/file-utils.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACvE,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAI5E,wBAAsB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAGlE;AAED,wBAAsB,YAAY,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAqBjG;AAED,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAWxF;AAED,wBAAsB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAE3F;AAED,wBAAsB,gBAAgB,CACpC,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CA+ChC;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAqB/E;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED,wBAAsB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBhG;AAED,wBAAsB,oCAAoC,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CASlG;AAED,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,QAAQ,CAW1E;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAM1D;AAED,wBAAsB,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKhF;AAED,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,WAAW,EAChB,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,QAAQ,GAChB,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAyBhC"}
1
+ {"version":3,"file":"file-utils.d.ts","sourceRoot":"","sources":["../../src/utils/file-utils.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG5E,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAIvE,wBAAsB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAGlE;AAED,wBAAsB,YAAY,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAqBjG;AA2BD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAE1D;AAED,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBxF;AAED,wBAAsB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAE3F;AAED,wBAAsB,gBAAgB,CACpC,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CA+ChC;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAqB/E;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED,wBAAsB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBhG;AAED,wBAAsB,oCAAoC,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CASlG;AAED,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,QAAQ,CAW1E;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAM1D;AAED,wBAAsB,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKhF;AAED,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,WAAW,EAChB,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,QAAQ,GAChB,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAyBhC"}
@@ -1,7 +1,7 @@
1
- import path from 'node:path';
2
1
  import { spawn } from 'node:child_process';
3
- import { promises as fs } from 'node:fs';
4
2
  import { createHash, randomUUID } from 'node:crypto';
3
+ import { promises as fs } from 'node:fs';
4
+ import path from 'node:path';
5
5
  import axios from 'axios';
6
6
  import { schedulerBaseUrl } from '../config.js';
7
7
  import { getRuntimeAccessToken } from '../services/runtime-binding.js';
@@ -30,16 +30,46 @@ export async function withFileLock(targetPath, operation) {
30
30
  }
31
31
  }
32
32
  }
33
+ function isPlainObject(value) {
34
+ if (!value || typeof value !== 'object') {
35
+ return false;
36
+ }
37
+ const prototype = Object.getPrototypeOf(value);
38
+ return prototype === Object.prototype || prototype === null;
39
+ }
40
+ function sortJsonValue(value) {
41
+ if (Array.isArray(value)) {
42
+ return value.map((item) => sortJsonValue(item));
43
+ }
44
+ if (isPlainObject(value)) {
45
+ return Object.keys(value)
46
+ .sort()
47
+ .reduce((acc, key) => {
48
+ acc[key] = sortJsonValue(value[key]);
49
+ return acc;
50
+ }, {});
51
+ }
52
+ return value;
53
+ }
54
+ export function stringifyStableJson(value) {
55
+ return `${JSON.stringify(sortJsonValue(value), null, 2)}\n`;
56
+ }
33
57
  export async function atomicWriteFile(targetPath, content) {
34
58
  await ensureDir(path.dirname(targetPath));
35
59
  const targetDir = path.dirname(targetPath);
36
60
  const targetBase = path.basename(targetPath);
37
61
  const tmpPath = path.join(targetDir, `.${targetBase}.tmp-${process.pid}-${Date.now()}-${Math.random().toString(16).slice(2)}`);
38
- await fs.writeFile(tmpPath, content, 'utf-8');
39
- await fs.rename(tmpPath, targetPath);
62
+ try {
63
+ await fs.writeFile(tmpPath, content, 'utf-8');
64
+ await fs.rename(tmpPath, targetPath);
65
+ }
66
+ catch (error) {
67
+ await fs.rm(tmpPath, { force: true }).catch(() => undefined);
68
+ throw error;
69
+ }
40
70
  }
41
71
  export async function atomicWriteJsonFile(targetPath, value) {
42
- await atomicWriteFile(targetPath, `${JSON.stringify(value, null, 2)}\n`);
72
+ await atomicWriteFile(targetPath, stringifyStableJson(value));
43
73
  }
44
74
  export async function downloadSkillZip(skillPackage, targetDir) {
45
75
  if (!skillPackage || !skillPackage.downloadUrl) {
@@ -1,8 +1,8 @@
1
1
  import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
2
- import path from 'node:path';
3
2
  import { promises as fs } from 'node:fs';
4
3
  import os from 'node:os';
5
- import { ensureDir, escapePowerShellLiteral, resolveSkillSourceDirFromExtractRoot, toSdkAppsFromEnabledTools, resolveSkillSourceDir, } from './file-utils.js';
4
+ import path from 'node:path';
5
+ import { atomicWriteJsonFile, ensureDir, escapePowerShellLiteral, resolveSkillSourceDirFromExtractRoot, stringifyStableJson, toSdkAppsFromEnabledTools, resolveSkillSourceDir, } from './file-utils.js';
6
6
  // Mock axios for download tests
7
7
  vi.mock('axios', () => ({
8
8
  default: {
@@ -47,6 +47,47 @@ describe('file-utils', () => {
47
47
  expect(result).toBe(tempDir);
48
48
  });
49
49
  });
50
+ describe('atomicWriteJsonFile', () => {
51
+ const tempDir = path.join(os.tmpdir(), `aws-file-utils-json-test-${Date.now()}`);
52
+ afterEach(async () => {
53
+ await fs.rm(tempDir, { recursive: true, force: true }).catch(() => undefined);
54
+ });
55
+ it('should write stable sorted json for deterministic config files', async () => {
56
+ const filePath = path.join(tempDir, 'config.json');
57
+ await atomicWriteJsonFile(filePath, {
58
+ z: 1,
59
+ nested: { b: true, a: false },
60
+ array: [{ d: 4, c: 3 }],
61
+ });
62
+ expect(await fs.readFile(filePath, 'utf-8')).toBe('{\n' +
63
+ ' "array": [\n' +
64
+ ' {\n' +
65
+ ' "c": 3,\n' +
66
+ ' "d": 4\n' +
67
+ ' }\n' +
68
+ ' ],\n' +
69
+ ' "nested": {\n' +
70
+ ' "a": false,\n' +
71
+ ' "b": true\n' +
72
+ ' },\n' +
73
+ ' "z": 1\n' +
74
+ '}\n');
75
+ });
76
+ });
77
+ describe('stringifyStableJson', () => {
78
+ it('should preserve array order while sorting object keys', () => {
79
+ expect(stringifyStableJson([{ b: 2, a: 1 }, { d: 4, c: 3 }])).toBe('[\n' +
80
+ ' {\n' +
81
+ ' "a": 1,\n' +
82
+ ' "b": 2\n' +
83
+ ' },\n' +
84
+ ' {\n' +
85
+ ' "c": 3,\n' +
86
+ ' "d": 4\n' +
87
+ ' }\n' +
88
+ ']\n');
89
+ });
90
+ });
50
91
  describe('escapePowerShellLiteral', () => {
51
92
  it('should escape single quotes by doubling them', () => {
52
93
  expect(escapePowerShellLiteral("test'value")).toBe("test''value");
@@ -21,10 +21,16 @@ export declare class HttpClient {
21
21
  */
22
22
  private executeToolRequest;
23
23
  /**
24
- * 执行带硬超时的 fetch。
25
- * 主流程:创建 AbortController -> 注入 signal -> 超时主动 abort -> 清理计时器并归一化错误。
24
+ * 执行可配置硬超时的 fetch。
25
+ * 主流程:普通请求创建 AbortController 并超时 abort;永久阻塞请求直接 fetch,不设置计时器。
26
26
  */
27
27
  private fetchWithTimeout;
28
+ /**
29
+ * 解析工具级 HTTP 超时策略。
30
+ * 主流程:poll_message 是 Agent 主循环永久阻塞入口,因此不注入 AbortSignal;其他工具保持硬超时保护。
31
+ * 注意:不要把 poll_message 改回全局 HTTP 超时;否则无消息时会中断永久阻塞轮询并唤醒/打断 Agent 主循环。
32
+ */
33
+ private resolveToolRequestTimeoutOptions;
28
34
  private resolveRequestTimeoutMs;
29
35
  /**
30
36
  * 构建 MCP HTTP 请求头。
@@ -1 +1 @@
1
- {"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../src/http-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AA2DD,qBAAa,UAAU;IACrB,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,UAAU,CAAS;gBAEf,YAAY,EAAE,YAAY;IAKtC;;OAEG;IACG,QAAQ,CAAC,CAAC,GAAG,OAAO,EACxB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,CAAC,CAAC;IAsCb;;;OAGG;YACW,kBAAkB;IAkBhC;;;OAGG;YACW,gBAAgB;IAwB9B,OAAO,CAAC,uBAAuB;IAY/B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;YAcb,wBAAwB;IAWtC;;;OAGG;YACW,yBAAyB;IAuBvC;;;OAGG;YACW,gCAAgC;IA0C9C;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAmBzB;;OAEG;IACH,aAAa,IAAI,MAAM;CAGxB"}
1
+ {"version":3,"file":"http-client.d.ts","sourceRoot":"","sources":["../src/http-client.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AA+DD,qBAAa,UAAU;IACrB,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,UAAU,CAAS;gBAEf,YAAY,EAAE,YAAY;IAKtC;;OAEG;IACG,QAAQ,CAAC,CAAC,GAAG,OAAO,EACxB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,CAAC,CAAC;IAsCb;;;OAGG;YACW,kBAAkB;IAmBhC;;;OAGG;YACW,gBAAgB;IA6B9B;;;;OAIG;IACH,OAAO,CAAC,gCAAgC;IASxC,OAAO,CAAC,uBAAuB;IAY/B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;YAcb,wBAAwB;IAWtC;;;OAGG;YACW,yBAAyB;IAuBvC;;;OAGG;YACW,gCAAgC;IA0C9C;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAmBzB;;OAEG;IACH,aAAa,IAAI,MAAM;CAGxB"}
@@ -96,13 +96,16 @@ export class HttpClient {
96
96
  tool: toolName,
97
97
  arguments: args,
98
98
  }),
99
- }, `MCP tool ${toolName}`);
99
+ }, `MCP tool ${toolName}`, this.resolveToolRequestTimeoutOptions(toolName));
100
100
  }
101
101
  /**
102
- * 执行带硬超时的 fetch。
103
- * 主流程:创建 AbortController -> 注入 signal -> 超时主动 abort -> 清理计时器并归一化错误。
102
+ * 执行可配置硬超时的 fetch。
103
+ * 主流程:普通请求创建 AbortController 并超时 abort;永久阻塞请求直接 fetch,不设置计时器。
104
104
  */
105
- async fetchWithTimeout(url, init, operationName) {
105
+ async fetchWithTimeout(url, init, operationName, options = {}) {
106
+ if (options.timeout === false) {
107
+ return await fetch(url, init);
108
+ }
106
109
  const timeoutMs = this.resolveRequestTimeoutMs();
107
110
  const controller = new AbortController();
108
111
  const timeout = setTimeout(() => controller.abort(), timeoutMs);
@@ -122,6 +125,17 @@ export class HttpClient {
122
125
  clearTimeout(timeout);
123
126
  }
124
127
  }
128
+ /**
129
+ * 解析工具级 HTTP 超时策略。
130
+ * 主流程:poll_message 是 Agent 主循环永久阻塞入口,因此不注入 AbortSignal;其他工具保持硬超时保护。
131
+ * 注意:不要把 poll_message 改回全局 HTTP 超时;否则无消息时会中断永久阻塞轮询并唤醒/打断 Agent 主循环。
132
+ */
133
+ resolveToolRequestTimeoutOptions(toolName) {
134
+ if (toolName === "poll_message") {
135
+ return { timeout: false };
136
+ }
137
+ return {};
138
+ }
125
139
  resolveRequestTimeoutMs() {
126
140
  const configured = this.serverConfig.mcpHttpRequestTimeoutMs;
127
141
  if (typeof configured === "number" &&
@@ -1 +1 @@
1
- {"version":3,"file":"http-client.js","sourceRoot":"","sources":["../src/http-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http-client.js","sourceRoot":"","sources":["../src/http-client.ts"],"names":[],"mappings":"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"}
@@ -175,6 +175,32 @@ describe('HttpClient', () => {
175
175
  assert.equal(options.headers['X-Runtime-Token'], undefined);
176
176
  assert.equal(options.headers.Authorization, undefined);
177
177
  });
178
+ it('does not set an AbortSignal for permanently blocking poll_message', async () => {
179
+ const config = {
180
+ serverUrl: 'ws://localhost:8080/ws/agent',
181
+ heartbeatInterval: 15000,
182
+ reconnectInterval: 200,
183
+ maxReconnectAttempts: -1,
184
+ runtimeAccessToken: 'runtime-token',
185
+ };
186
+ const client = new HttpClient(config);
187
+ await client.callTool('poll_message', { agentId: 'agent-1' });
188
+ const [, options] = fetchCalls[0];
189
+ assert.equal(options.signal, undefined);
190
+ });
191
+ it('keeps an AbortSignal for non-blocking MCP tools', async () => {
192
+ const config = {
193
+ serverUrl: 'ws://localhost:8080/ws/agent',
194
+ heartbeatInterval: 15000,
195
+ reconnectInterval: 200,
196
+ maxReconnectAttempts: -1,
197
+ runtimeAccessToken: 'runtime-token',
198
+ };
199
+ const client = new HttpClient(config);
200
+ await client.callTool('get_message', { agentId: 'agent-1' });
201
+ const [, options] = fetchCalls[0];
202
+ assert.ok(options.signal instanceof AbortSignal);
203
+ });
178
204
  it('returns parsed result on success', async () => {
179
205
  const config = {
180
206
  serverUrl: 'ws://localhost:8080/ws/agent',
@@ -1 +1 @@
1
- {"version":3,"file":"http-client.test.js","sourceRoot":"","sources":["../src/http-client.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http-client.test.js","sourceRoot":"","sources":["../src/http-client.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACtE,OAAO,SAAS,MAAM,IAAI,CAAC;AAC3B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAMxD,MAAM,UAAW,SAAQ,YAAY;IACnC,UAAU,GAAW,SAAS,CAAC,UAAU,CAAC;IAE1C,IAAI,KAAU,CAAC;IACf,KAAK;QACH,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC;IACrC,CAAC;IACD,SAAS;QACP,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC;IACrC,CAAC;CACF;AAED,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC;IACnC,IAAI,UAAU,GAAqC,EAAE,CAAC;IAEtD,UAAU,CAAC,GAAG,EAAE;QACd,UAAU,GAAG,EAAE,CAAC;QAChB,MAAM,CAAC,KAAK,GAAG,KAAK,EAAE,GAA2B,EAAE,OAAqB,EAAE,EAAE;YAC1E,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,OAA0B,CAAC,CAAC,CAAC;YAC9D,OAAO;gBACL,EAAE,EAAE,IAAI;gBACR,MAAM,EAAE,GAAG;gBACX,UAAU,EAAE,IAAI;gBAChB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;aAC9B,CAAC;QAChB,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,CAAC,KAAK,GAAG,aAAa,CAAC;QAC7B,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;QAC9C,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;YAChD,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;gBACxB,UAAU,EAAE,6BAA6B;aAC1C,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,6BAA6B,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;YAC1D,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;gBACxB,UAAU,EAAE,oBAAoB;aACjC,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,6BAA6B,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;YAC7D,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;gBACxB,UAAU,EAAE,qBAAqB;aAClC,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,6BAA6B,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;YACrD,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;aACzB,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,gCAAgC,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACtD,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,mCAAmC;gBAC9C,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;aACzB,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,qCAAqC,CAAC,CAAC;QAC9E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;YAC7D,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;gBACxB,UAAU,EAAE,EAAE;aACf,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,gCAAgC,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;YAC5C,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;gBACxB,UAAU,EAAE,KAAK;aAClB,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,gCAAgC,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;YAC7D,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;gBACxB,UAAU,EAAE,qCAAqC;aAClD,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,gCAAgC,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;YACjD,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,mCAAmC;gBAC9C,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;aACzB,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,gCAAgC,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;YAChD,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;gBACxB,UAAU,EAAE,wBAAwB;aACrC,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,iCAAiC,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;QACxB,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;YAC7D,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;gBACxB,kBAAkB,EAAE,eAAe;aACpC,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YAEtC,MAAM,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;YAEvD,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACnC,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YACrC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,gCAAgC,CAAC,CAAC;YACpD,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACrC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,kBAAkB,CAAC,CAAC;YAClE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,eAAe,CAAC,CAAC;YAClE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,sBAAsB,CAAC,CAAC;YACpE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;QACnG,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;YAC5E,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;aACzB,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YAEtC,MAAM,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YAEvC,MAAM,CAAC,EAAE,OAAO,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,SAAS,CAAC,CAAC;YAC5D,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;YACjF,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;gBACxB,kBAAkB,EAAE,eAAe;aACpC,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YAEtC,MAAM,MAAM,CAAC,QAAQ,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;YAE9D,MAAM,CAAC,EAAE,OAAO,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;YAC/D,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;gBACxB,kBAAkB,EAAE,eAAe;aACpC,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YAEtC,MAAM,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;YAE7D,MAAM,CAAC,EAAE,OAAO,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,YAAY,WAAW,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;YAChD,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;aACzB,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YAEtC,MAAM,CAAC,KAAK,GAAG,KAAK,IAAI,EAAE,CAAC,CAAC;gBAC1B,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;aACxC,CAAA,CAAC;YAEf,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YACtD,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;YACpD,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;aACzB,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YAEtC,MAAM,CAAC,KAAK,GAAG,KAAK,IAAI,EAAE,CAAC,CAAC;gBAC1B,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,GAAG;gBACX,UAAU,EAAE,uBAAuB;aACvB,CAAA,CAAC;YAEf,MAAM,MAAM,CAAC,OAAO,CAClB,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC,EACtC,iDAAiD,CAClD,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;YAC1E,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;aACzB,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YAEtC,MAAM,CAAC,KAAK,GAAG,KAAK,IAAI,EAAE,CAAC,CAAC;gBAC1B,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC;aAC1C,CAAA,CAAC;YAEf,MAAM,MAAM,CAAC,OAAO,CAClB,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC,EACtC,kDAAkD,CACnD,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YACjD,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;aACzB,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YAEtC,MAAM,CAAC,KAAK,GAAG,KAAK,IAAI,EAAE,CAAC,CAAC;gBAC1B,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,GAAG;gBACX,UAAU,EAAE,cAAc;aACd,CAAA,CAAC;YAEf,MAAM,MAAM,CAAC,OAAO,CAClB,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC,EACtC,wCAAwC,CACzC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;YACrE,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;gBACxB,MAAM,EAAE,QAAQ;gBAChB,kBAAkB,EAAE,aAAa;gBACjC,oBAAoB,EAAE,wBAAwB;aAC/C,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YAEtC,MAAM,CAAC,KAAK,GAAG,KAAK,EAAE,GAA2B,EAAE,OAAqB,EAAE,EAAE;gBAC1E,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,OAA0B,CAAC,CAAC,CAAC;gBAC9D,IAAI,GAAG,CAAC,QAAQ,EAAE,KAAK,gCAAgC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACnF,OAAO;wBACL,EAAE,EAAE,KAAK;wBACT,MAAM,EAAE,GAAG;wBACX,UAAU,EAAE,cAAc;qBACf,CAAC;gBAChB,CAAC;gBACD,IAAI,GAAG,CAAC,QAAQ,EAAE,KAAK,sDAAsD,EAAE,CAAC;oBAC9E,OAAO;wBACL,EAAE,EAAE,IAAI;wBACR,MAAM,EAAE,GAAG;wBACX,UAAU,EAAE,IAAI;wBAChB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,aAAa,EAAE,CAAC;qBACxD,CAAC;gBAChB,CAAC;gBACD,OAAO;oBACL,EAAE,EAAE,IAAI;oBACR,MAAM,EAAE,GAAG;oBACX,UAAU,EAAE,IAAI;oBAChB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;iBAC5B,CAAC;YAChB,CAAC,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;YAExE,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;YAC9C,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACnC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,aAAa,CAAC,CAAC;YACzE,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,sDAAsD,CAAC,CAAC;YACvF,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACjD,MAAM,EAAE,QAAQ;gBAChB,SAAS,EAAE,8BAA8B;gBACzC,YAAY,EAAE,IAAI;aACnB,CAAC,CAAC,CAAC;YACJ,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,aAAa,CAAC,CAAC;YACzE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;YACvF,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;gBACxB,MAAM,EAAE,QAAQ;gBAChB,kBAAkB,EAAE,aAAa;gBACjC,oBAAoB,EAAE,wBAAwB;aAC/C,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;YAE1C,MAAM,CAAC,KAAK,GAAG,KAAK,EAAE,GAA2B,EAAE,OAAqB,EAAE,EAAE;gBAC1E,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,OAA0B,CAAC,CAAC,CAAC;gBAC9D,IAAI,GAAG,CAAC,QAAQ,EAAE,KAAK,sDAAsD,EAAE,CAAC;oBAC9E,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;oBACxD,OAAO;wBACL,EAAE,EAAE,IAAI;wBACR,MAAM,EAAE,GAAG;wBACX,UAAU,EAAE,IAAI;wBAChB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,aAAa,EAAE,CAAC;qBACxD,CAAC;gBAChB,CAAC;gBAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC,CAAsB,CAAC;gBAC5E,MAAM,KAAK,GAAI,OAA2B,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;gBACtE,IAAI,KAAK,KAAK,aAAa,EAAE,CAAC;oBAC5B,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;oBACrC,OAAO;wBACL,EAAE,EAAE,KAAK;wBACT,MAAM,EAAE,GAAG;wBACX,UAAU,EAAE,cAAc;qBACf,CAAC;gBAChB,CAAC;gBAED,OAAO;oBACL,EAAE,EAAE,IAAI;oBACR,MAAM,EAAE,GAAG;oBACX,UAAU,EAAE,IAAI;oBAChB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;iBACnC,CAAC;YAChB,CAAC,CAAC;YAEF,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACxC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;gBAC3D,MAAM,CAAC,QAAQ,CAAC,sBAAsB,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;aAChE,CAAC,CAAC;YAEH,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;YAC5E,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;YACjF,MAAM,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,GAAG,CAAC,CAAC,kBAAkB,EAAE,sBAAsB,CAAC,CAAC,CAAC,CAAC;YACzF,MAAM,CAAC,KAAK,CACV,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,sDAAsD,CAAC,CAAC,MAAM,EACnG,CAAC,CACF,CAAC;YACF,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kFAAkF,EAAE,KAAK,IAAI,EAAE;YAChG,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;gBACxB,MAAM,EAAE,QAAQ;gBAChB,oBAAoB,EAAE,wBAAwB;aAC/C,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YAEtC,MAAM,CAAC,KAAK,GAAG,KAAK,EAAE,GAA2B,EAAE,OAAqB,EAAE,EAAE;gBAC1E,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,OAA0B,CAAC,CAAC,CAAC;gBAC9D,IAAI,GAAG,CAAC,QAAQ,EAAE,KAAK,sDAAsD,EAAE,CAAC;oBAC9E,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;oBACxD,OAAO;wBACL,EAAE,EAAE,IAAI;wBACR,MAAM,EAAE,GAAG;wBACX,UAAU,EAAE,IAAI;wBAChB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,eAAe,EAAE,CAAC;qBAC1D,CAAC;gBAChB,CAAC;gBAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC,CAAsB,CAAC;gBAC5E,OAAO;oBACL,EAAE,EAAE,IAAI;oBACR,MAAM,EAAE,GAAG;oBACX,UAAU,EAAE,IAAI;oBAChB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAG,OAA2B,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;iBAC5F,CAAC;YAChB,CAAC,CAAC;YAEF,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACxC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;gBAC3D,MAAM,CAAC,QAAQ,CAAC,sBAAsB,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;aAChE,CAAC,CAAC;YAEH,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;YAC9E,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;YACnF,MAAM,CAAC,KAAK,CACV,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,sDAAsD,CAAC,CAAC,MAAM,EACnG,CAAC,CACF,CAAC;YACF,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACjD,MAAM,EAAE,QAAQ;gBAChB,SAAS,EAAE,8BAA8B;gBACzC,YAAY,EAAE,KAAK;aACpB,CAAC,CAAC,CAAC;YACJ,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;YAC5E,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;gBACxB,MAAM,EAAE,QAAQ;gBAChB,oBAAoB,EAAE,wBAAwB;aAC/C,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YACtC,IAAI,iBAAiB,GAAG,CAAC,CAAC;YAE1B,MAAM,CAAC,KAAK,GAAG,KAAK,EAAE,GAA2B,EAAE,OAAqB,EAAE,EAAE;gBAC1E,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,OAA0B,CAAC,CAAC,CAAC;gBAC9D,IAAI,GAAG,CAAC,QAAQ,EAAE,KAAK,sDAAsD,EAAE,CAAC;oBAC9E,iBAAiB,IAAI,CAAC,CAAC;oBACvB,IAAI,iBAAiB,KAAK,CAAC,EAAE,CAAC;wBAC5B,OAAO;4BACL,EAAE,EAAE,KAAK;4BACT,MAAM,EAAE,GAAG;4BACX,UAAU,EAAE,qBAAqB;4BACjC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,oBAAoB;yBAC3B,CAAC;oBAChB,CAAC;oBACD,OAAO;wBACL,EAAE,EAAE,IAAI;wBACR,MAAM,EAAE,GAAG;wBACX,UAAU,EAAE,IAAI;wBAChB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,CAAC;qBAC5D,CAAC;gBAChB,CAAC;gBAED,OAAO;oBACL,EAAE,EAAE,IAAI;oBACR,MAAM,EAAE,GAAG;oBACX,UAAU,EAAE,IAAI;oBAChB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,KAAK,EAAG,OAA2B,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;iBAC3E,CAAC;YAChB,CAAC,CAAC;YAEF,MAAM,MAAM,CAAC,OAAO,CAClB,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,EACjE,mGAAmG,CACpG,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;YAEjF,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC,CAAC;YACvD,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;YACnC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4EAA4E,EAAE,KAAK,IAAI,EAAE;YAC1F,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,IAAI;gBACvB,gBAAgB,EAAE,IAAI;gBACtB,iBAAiB,EAAE,EAAE;gBACrB,oBAAoB,EAAE,CAAC;gBACvB,MAAM,EAAE,QAAQ;gBAChB,kBAAkB,EAAE,aAAa;gBACjC,oBAAoB,EAAE,wBAAwB;aAC/C,CAAC;YACF,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YAC1C,IAAI,iBAAiB,GAAG,CAAC,CAAC;YAC1B,IAAI,gBAAgB,GAAG,CAAC,CAAC;YACzB,MAAM,aAAa,GAAa,EAAE,CAAC;YACnC,IAAI,cAAwC,CAAC;YAC7C,MAAM,WAAW,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gBAChD,cAAc,GAAG,OAAO,CAAC;YAC3B,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,KAAK,GAAG,KAAK,EAAE,GAA2B,EAAE,OAAqB,EAAE,EAAE;gBAC1E,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,OAA0B,CAAC,CAAC,CAAC;gBAC9D,IAAI,GAAG,CAAC,QAAQ,EAAE,KAAK,sDAAsD,EAAE,CAAC;oBAC9E,iBAAiB,IAAI,CAAC,CAAC;oBACvB,MAAM,WAAW,CAAC;oBAClB,OAAO;wBACL,EAAE,EAAE,IAAI;wBACR,MAAM,EAAE,GAAG;wBACX,UAAU,EAAE,IAAI;wBAChB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,CAAC;qBAC/D,CAAC;gBAChB,CAAC;gBAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC,CAAsB,CAAC;gBAC5E,MAAM,KAAK,GAAI,OAA2B,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;gBACtE,IAAI,KAAK,KAAK,aAAa,EAAE,CAAC;oBAC5B,OAAO;wBACL,EAAE,EAAE,KAAK;wBACT,MAAM,EAAE,GAAG;wBACX,UAAU,EAAE,cAAc;qBACf,CAAC;gBAChB,CAAC;gBAED,OAAO;oBACL,EAAE,EAAE,IAAI;oBACR,MAAM,EAAE,GAAG;oBACX,UAAU,EAAE,IAAI;oBAChB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;iBACnC,CAAC;YAChB,CAAC,CAAC;YAEF,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,MAAM,EAAE,CAAC,GAAW,EAAE,EAAE;gBAC3D,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACxB,gBAAgB,IAAI,CAAC,CAAC;gBACtB,MAAM,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;gBAChC,YAAY,CAAC,GAAG,EAAE;oBAChB,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC;oBACnC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACpB,IAAI,gBAAgB,KAAK,CAAC,EAAE,CAAC;wBAC3B,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC;wBACrC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;oBAC9D,CAAC;gBACH,CAAC,CAAC,CAAC;gBACH,OAAO,MAA8B,CAAC;YACxC,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC;gBACH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;oBACxB,qDAAqD;gBACvD,CAAC,CAAC,CAAC;gBAEH,MAAM,kBAAkB,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBACvD,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;gBAEjF,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBAC1C,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;oBACxF,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;wBAChC,IAAI,iBAAiB,KAAK,CAAC,IAAI,MAAM,CAAC,gCAAgC,EAAE,CAAC;4BACvE,aAAa,CAAC,QAAQ,CAAC,CAAC;4BACxB,YAAY,CAAC,KAAK,CAAC,CAAC;4BACpB,OAAO,EAAE,CAAC;wBACZ,CAAC;oBACH,CAAC,EAAE,CAAC,CAAC,CAAC;gBACR,CAAC,CAAC,CAAC;gBAEH,MAAM,oBAAoB,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBACjE,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;oBACvF,QAAQ,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE;wBAC5B,IAAI,gBAAgB,IAAI,CAAC,EAAE,CAAC;4BAC1B,YAAY,CAAC,KAAK,CAAC,CAAC;4BACpB,OAAO,EAAE,CAAC;wBACZ,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,cAAc,EAAE,EAAE,CAAC;gBACnB,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC;gBAC9B,MAAM,kBAAkB,CAAC;gBACzB,MAAM,oBAAoB,CAAC;gBAE3B,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC,CAAC;gBACpF,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;gBACnC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,CAAC;gBAC9D,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE,oBAAoB,CAAC,CAAC;YAC7G,CAAC;oBAAS,CAAC;gBACT,cAAc,EAAE,EAAE,CAAC;gBACnB,QAAQ,CAAC,UAAU,EAAE,CAAC;YACxB,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sFAAsF,EAAE,KAAK,IAAI,EAAE;YACpG,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;gBACxB,MAAM,EAAE,QAAQ;gBAChB,oBAAoB,EAAE,wBAAwB;aAC/C,CAAC;YACF,MAAM,aAAa,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YAC7C,MAAM,WAAW,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YAC3C,IAAI,iBAAiB,GAAG,CAAC,CAAC;YAC1B,IAAI,iBAAiB,GAAG,CAAC,CAAC;YAC1B,IAAI,qBAA+C,CAAC;YACpD,MAAM,kBAAkB,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gBACvD,qBAAqB,GAAG,OAAO,CAAC;YAClC,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,KAAK,GAAG,KAAK,EAAE,GAA2B,EAAE,OAAqB,EAAE,EAAE;gBAC1E,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,OAA0B,CAAC,CAAC,CAAC;gBAC9D,IAAI,GAAG,CAAC,QAAQ,EAAE,KAAK,sDAAsD,EAAE,CAAC;oBAC9E,iBAAiB,IAAI,CAAC,CAAC;oBACvB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC,CAA+B,CAAC;oBACrF,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;wBACtB,iBAAiB,IAAI,CAAC,CAAC;wBACvB,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;wBACxD,OAAO;4BACL,EAAE,EAAE,IAAI;4BACR,MAAM,EAAE,GAAG;4BACX,UAAU,EAAE,IAAI;4BAChB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,cAAc,EAAE,CAAC;yBACzD,CAAC;oBAChB,CAAC;oBACD,MAAM,kBAAkB,CAAC;oBACzB,OAAO;wBACL,EAAE,EAAE,IAAI;wBACR,MAAM,EAAE,GAAG;wBACX,UAAU,EAAE,IAAI;wBAChB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,eAAe,EAAE,CAAC;qBAC1D,CAAC;gBAChB,CAAC;gBAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC,CAAsB,CAAC;gBAC5E,MAAM,KAAK,GAAI,OAA2B,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;gBACtE,IAAI,KAAK,KAAK,eAAe,EAAE,CAAC;oBAC9B,OAAO;wBACL,EAAE,EAAE,KAAK;wBACT,MAAM,EAAE,GAAG;wBACX,UAAU,EAAE,cAAc;qBACf,CAAC;gBAChB,CAAC;gBAED,OAAO;oBACL,EAAE,EAAE,IAAI;oBACR,MAAM,EAAE,GAAG;oBACX,UAAU,EAAE,IAAI;oBAChB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;iBACnC,CAAC;YAChB,CAAC,CAAC;YAEF,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,aAAa,CAAC,QAAQ,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;gBAClF,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;oBAC1C,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;oBAC5F,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;wBAChC,IAAI,iBAAiB,KAAK,CAAC,IAAI,MAAM,CAAC,gCAAgC,EAAE,CAAC;4BACvE,aAAa,CAAC,QAAQ,CAAC,CAAC;4BACxB,YAAY,CAAC,KAAK,CAAC,CAAC;4BACpB,OAAO,EAAE,CAAC;wBACZ,CAAC;oBACH,CAAC,EAAE,CAAC,CAAC,CAAC;gBACR,CAAC,CAAC,CAAC;gBAEH,MAAM,cAAc,GAAG,WAAW,CAAC,QAAQ,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;gBACxF,MAAM,eAAe,GAAG,WAAW,CAAC,QAAQ,CAAC,sBAAsB,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;gBAE7F,qBAAqB,EAAE,EAAE,CAAC;gBAC1B,MAAM,CAAC,aAAa,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;oBAC7E,WAAW;oBACX,cAAc;oBACd,eAAe;iBAChB,CAAC,CAAC;gBAEH,MAAM,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;gBAChF,MAAM,CAAC,SAAS,CAAC,gBAAgB,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;gBACxF,MAAM,CAAC,SAAS,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;gBAC7F,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;gBACnC,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;gBACnC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC;YAC1D,CAAC;oBAAS,CAAC;gBACT,qBAAqB,EAAE,EAAE,CAAC;YAC5B,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;YAC5E,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;gBACxB,kBAAkB,EAAE,aAAa;gBACjC,oBAAoB,EAAE,wBAAwB;aAC/C,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YAEtC,MAAM,CAAC,KAAK,GAAG,KAAK,EAAE,GAA2B,EAAE,OAAqB,EAAE,EAAE;gBAC1E,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,OAA0B,CAAC,CAAC,CAAC;gBAC9D,IAAI,GAAG,CAAC,QAAQ,EAAE,KAAK,sDAAsD,EAAE,CAAC;oBAC9E,OAAO;wBACL,EAAE,EAAE,IAAI;wBACR,MAAM,EAAE,GAAG;wBACX,UAAU,EAAE,IAAI;wBAChB,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,aAAa,EAAE,CAAC;qBACxD,CAAC;gBAChB,CAAC;gBACD,OAAO;oBACL,EAAE,EAAE,KAAK;oBACT,MAAM,EAAE,GAAG;oBACX,UAAU,EAAE,cAAc;iBACf,CAAC;YAChB,CAAC,CAAC;YAEF,MAAM,MAAM,CAAC,OAAO,CAClB,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,EACxD,wCAAwC,CACzC,CAAC;YAEF,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACnC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,gCAAgC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAC/F,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,sDAAsD,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACvH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;YAC9C,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;aACzB,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YAEtC,MAAM,CAAC,KAAK,GAAG,KAAK,IAAI,EAAE,CAAC,CAAC;gBAC1B,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,GAAG;gBACX,UAAU,EAAE,WAAW;aACX,CAAA,CAAC;YAEf,MAAM,MAAM,CAAC,OAAO,CAClB,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,EACzC,qCAAqC,CACtC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;YACtC,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;aACzB,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YAEtC,MAAM,CAAC,KAAK,GAAG,KAAK,IAAI,EAAE;gBACxB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;YACnC,CAAC,CAAC;YAEF,MAAM,MAAM,CAAC,OAAO,CAClB,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC,EACtC,eAAe,CAChB,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;YACjE,MAAM,MAAM,GAAiB;gBAC3B,SAAS,EAAE,8BAA8B;gBACzC,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,GAAG;gBACtB,oBAAoB,EAAE,CAAC,CAAC;gBACxB,uBAAuB,EAAE,EAAE;aAC5B,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;YAEtC,MAAM,CAAC,KAAK,GAAG,KAAK,EAAE,GAA2B,EAAE,OAAqB,EAAE,EAAE;gBAC1E,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,OAA0B,CAAC,CAAC,CAAC;gBAC9D,OAAO,MAAM,IAAI,OAAO,CAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE;oBACtD,OAAO,EAAE,MAAM,EAAE,gBAAgB,CAC/B,OAAO,EACP,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,EAC5C,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAC;gBACJ,CAAC,CAAC,CAAC;YACL,CAAC,CAAC;YAEF,MAAM,MAAM,CAAC,OAAO,CAClB,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC,EACtC,yCAAyC,CAC1C,CAAC;YACF,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACnC,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,YAAY,WAAW,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aws-runtime-bridge",
3
- "version": "1.7.41",
3
+ "version": "1.7.43",
4
4
  "description": "AgentsWorkStudio runtime bridge service for machine-level agent runtime integration",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",