@terminai/core 0.21.0 → 0.25.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/docs/assets/image.png +0 -0
- package/dist/src/audit/redaction.js +24 -0
- package/dist/src/audit/redaction.js.map +1 -1
- package/dist/src/audit/redaction.test.d.ts +7 -0
- package/dist/src/audit/redaction.test.js +45 -0
- package/dist/src/audit/redaction.test.js.map +1 -0
- package/dist/src/auth/geminiAuthStatus.js +1 -1
- package/dist/src/auth/geminiAuthStatus.js.map +1 -1
- package/dist/src/auth/geminiAuthStatus.test.js +1 -1
- package/dist/src/auth/geminiAuthStatus.test.js.map +1 -1
- package/dist/src/auth/providerRegistry.js +20 -0
- package/dist/src/auth/providerRegistry.js.map +1 -1
- package/dist/src/auth/wizardSettings.d.ts +5 -0
- package/dist/src/auth/wizardSettings.js +48 -1
- package/dist/src/auth/wizardSettings.js.map +1 -1
- package/dist/src/auth/wizardSettings.test.js +30 -2
- package/dist/src/auth/wizardSettings.test.js.map +1 -1
- package/dist/src/auth/wizardState.d.ts +1 -1
- package/dist/src/auth/wizardState.js +6 -0
- package/dist/src/auth/wizardState.js.map +1 -1
- package/dist/src/auth/wizardState.test.js +23 -0
- package/dist/src/auth/wizardState.test.js.map +1 -1
- package/dist/src/availability/policyHelpers.test.js +4 -4
- package/dist/src/availability/policyHelpers.test.js.map +1 -1
- package/dist/src/brain/__tests__/environmentDetector.test.js +2 -1
- package/dist/src/brain/__tests__/environmentDetector.test.js.map +1 -1
- package/dist/src/brain/__tests__/orchestratorFlag.test.d.ts +7 -0
- package/dist/src/brain/__tests__/orchestratorFlag.test.js +47 -0
- package/dist/src/brain/__tests__/orchestratorFlag.test.js.map +1 -0
- package/dist/src/brain/__tests__/orchestratorRecovery.test.d.ts +7 -0
- package/dist/src/brain/__tests__/orchestratorRecovery.test.js +85 -0
- package/dist/src/brain/__tests__/orchestratorRecovery.test.js.map +1 -0
- package/dist/src/brain/__tests__/thinkingOrchestrator.test.js +1 -0
- package/dist/src/brain/__tests__/thinkingOrchestrator.test.js.map +1 -1
- package/dist/src/brain/__tests__/toolIntegration.test.d.ts +7 -0
- package/dist/src/brain/__tests__/toolIntegration.test.js +154 -0
- package/dist/src/brain/__tests__/toolIntegration.test.js.map +1 -0
- package/dist/src/brain/advisors/codeGenerator.js +3 -2
- package/dist/src/brain/advisors/codeGenerator.js.map +1 -1
- package/dist/src/brain/advisors/depScanner.js +3 -2
- package/dist/src/brain/advisors/depScanner.js.map +1 -1
- package/dist/src/brain/advisors/enumerator.js +3 -2
- package/dist/src/brain/advisors/enumerator.js.map +1 -1
- package/dist/src/brain/advisors/fallbackChain.js +3 -2
- package/dist/src/brain/advisors/fallbackChain.js.map +1 -1
- package/dist/src/brain/advisors/patternMatcher.js +3 -2
- package/dist/src/brain/advisors/patternMatcher.js.map +1 -1
- package/dist/src/brain/consensus.js +2 -1
- package/dist/src/brain/consensus.js.map +1 -1
- package/dist/src/brain/environmentDetector.d.ts +1 -0
- package/dist/src/brain/environmentDetector.js +35 -20
- package/dist/src/brain/environmentDetector.js.map +1 -1
- package/dist/src/brain/pacLoop.js +2 -1
- package/dist/src/brain/pacLoop.js.map +1 -1
- package/dist/src/brain/riskAssessor.d.ts +6 -2
- package/dist/src/brain/riskAssessor.js +7 -4
- package/dist/src/brain/riskAssessor.js.map +1 -1
- package/dist/src/brain/stepBackEvaluator.js +2 -1
- package/dist/src/brain/stepBackEvaluator.js.map +1 -1
- package/dist/src/brain/thinkingOrchestrator.d.ts +9 -1
- package/dist/src/brain/thinkingOrchestrator.js +47 -1
- package/dist/src/brain/thinkingOrchestrator.js.map +1 -1
- package/dist/src/brain/toolIntegration.d.ts +51 -0
- package/dist/src/brain/toolIntegration.js +202 -0
- package/dist/src/brain/toolIntegration.js.map +1 -0
- package/dist/src/code_assist/oauth2.begin.test.js +4 -1
- package/dist/src/code_assist/oauth2.begin.test.js.map +1 -1
- package/dist/src/code_assist/oauth2.d.ts +1 -1
- package/dist/src/code_assist/oauth2.js +9 -13
- package/dist/src/code_assist/oauth2.js.map +1 -1
- package/dist/src/code_assist/oauth2.test.js +69 -41
- package/dist/src/code_assist/oauth2.test.js.map +1 -1
- package/dist/src/commands/init.js +5 -0
- package/dist/src/commands/init.js.map +1 -1
- package/dist/src/computer/PersistentShell.d.ts +5 -0
- package/dist/src/computer/PersistentShell.js +21 -2
- package/dist/src/computer/PersistentShell.js.map +1 -1
- package/dist/src/computer/PersistentShell.test.js +23 -11
- package/dist/src/computer/PersistentShell.test.js.map +1 -1
- package/dist/src/config/builder.js +78 -5
- package/dist/src/config/builder.js.map +1 -1
- package/dist/src/config/config.d.ts +12 -1
- package/dist/src/config/config.js +64 -0
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/config.test.js +39 -0
- package/dist/src/config/config.test.js.map +1 -1
- package/dist/src/config/models.d.ts +2 -2
- package/dist/src/config/models.js +2 -2
- package/dist/src/config/models.js.map +1 -1
- package/dist/src/config/models.test.js +1 -1
- package/dist/src/config/settings/schema.d.ts +78 -4
- package/dist/src/config/settings/schema.js +76 -4
- package/dist/src/config/settings/schema.js.map +1 -1
- package/dist/src/core/chatGptCodexContentGenerator.d.ts +35 -0
- package/dist/src/core/chatGptCodexContentGenerator.js +605 -0
- package/dist/src/core/chatGptCodexContentGenerator.js.map +1 -0
- package/dist/src/core/chatGptCodexContentGenerator.test.d.ts +7 -0
- package/dist/src/core/chatGptCodexContentGenerator.test.js +250 -0
- package/dist/src/core/chatGptCodexContentGenerator.test.js.map +1 -0
- package/dist/src/core/contentGenerator.d.ts +2 -1
- package/dist/src/core/contentGenerator.js +10 -0
- package/dist/src/core/contentGenerator.js.map +1 -1
- package/dist/src/core/contentGenerator.test.js +36 -0
- package/dist/src/core/contentGenerator.test.js.map +1 -1
- package/dist/src/core/loggingContentGenerator.d.ts +1 -0
- package/dist/src/core/loggingContentGenerator.js +30 -0
- package/dist/src/core/loggingContentGenerator.js.map +1 -1
- package/dist/src/core/loggingContentGenerator.test.js +62 -0
- package/dist/src/core/loggingContentGenerator.test.js.map +1 -1
- package/dist/src/core/openaiContentGenerator.d.ts +16 -0
- package/dist/src/core/openaiContentGenerator.js +252 -53
- package/dist/src/core/openaiContentGenerator.js.map +1 -1
- package/dist/src/core/openaiContentGenerator.test.js +176 -7
- package/dist/src/core/openaiContentGenerator.test.js.map +1 -1
- package/dist/src/core/providerTypes.d.ts +17 -1
- package/dist/src/core/providerTypes.js +10 -0
- package/dist/src/core/providerTypes.js.map +1 -1
- package/dist/src/core/providerTypes.test.js +11 -0
- package/dist/src/core/providerTypes.test.js.map +1 -1
- package/dist/src/core/turn.js +1 -1
- package/dist/src/core/turn.js.map +1 -1
- package/dist/src/core/turn.test.js +1 -1
- package/dist/src/core/turn.test.js.map +1 -1
- package/dist/src/fallback/handler.test.js +14 -14
- package/dist/src/fallback/handler.test.js.map +1 -1
- package/dist/src/generated/git-commit.d.ts +2 -2
- package/dist/src/generated/git-commit.js +2 -2
- package/dist/src/generated/git-commit.js.map +1 -1
- package/dist/src/gui/drivers/__tests__/sidecarContract.test.d.ts +2 -2
- package/dist/src/gui/drivers/__tests__/sidecarContract.test.js +3 -4
- package/dist/src/gui/drivers/__tests__/sidecarContract.test.js.map +1 -1
- package/dist/src/gui/drivers/linuxAtspiDriver.js +11 -4
- package/dist/src/gui/drivers/linuxAtspiDriver.js.map +1 -1
- package/dist/src/gui/drivers/windowsUiaDriver.js +2 -2
- package/dist/src/gui/drivers/windowsUiaDriver.js.map +1 -1
- package/dist/src/gui/selectors/__tests__/selectors.test.js +5 -2
- package/dist/src/gui/selectors/__tests__/selectors.test.js.map +1 -1
- package/dist/src/gui/selectors/parser.d.ts +1 -1
- package/dist/src/gui/selectors/parser.js +1 -1
- package/dist/src/gui/selectors/parser.js.map +1 -1
- package/dist/src/gui/service/DesktopAutomationService.d.ts +1 -1
- package/dist/src/gui/service/DesktopAutomationService.js +8 -9
- package/dist/src/gui/service/DesktopAutomationService.js.map +1 -1
- package/dist/src/gui/service/__tests__/capabilities.test.d.ts +6 -0
- package/dist/src/gui/service/__tests__/capabilities.test.js +32 -4
- package/dist/src/gui/service/__tests__/capabilities.test.js.map +1 -1
- package/dist/src/gui/service/__tests__/diagnose.test.d.ts +6 -0
- package/dist/src/gui/service/__tests__/diagnose.test.js +6 -0
- package/dist/src/gui/service/__tests__/diagnose.test.js.map +1 -1
- package/dist/src/gui/service/__tests__/progressive.test.d.ts +6 -0
- package/dist/src/gui/service/__tests__/progressive.test.js +30 -3
- package/dist/src/gui/service/__tests__/progressive.test.js.map +1 -1
- package/dist/src/gui/service/__tests__/redaction.test.d.ts +6 -0
- package/dist/src/gui/service/__tests__/redaction.test.js +27 -1
- package/dist/src/gui/service/__tests__/redaction.test.js.map +1 -1
- package/dist/src/gui/service/__tests__/selectorError.test.d.ts +6 -0
- package/dist/src/gui/service/__tests__/selectorError.test.js +6 -0
- package/dist/src/gui/service/__tests__/selectorError.test.js.map +1 -1
- package/dist/src/gui/service/__tests__/wait.test.d.ts +6 -0
- package/dist/src/gui/service/__tests__/wait.test.js +29 -2
- package/dist/src/gui/service/__tests__/wait.test.js.map +1 -1
- package/dist/src/index.d.ts +6 -0
- package/dist/src/index.js +7 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/openai_chatgpt/constants.d.ts +23 -0
- package/dist/src/openai_chatgpt/constants.js +35 -0
- package/dist/src/openai_chatgpt/constants.js.map +1 -0
- package/dist/src/openai_chatgpt/credentialStorage.d.ts +18 -0
- package/dist/src/openai_chatgpt/credentialStorage.js +116 -0
- package/dist/src/openai_chatgpt/credentialStorage.js.map +1 -0
- package/dist/src/openai_chatgpt/credentialStorage.test.d.ts +7 -0
- package/dist/src/openai_chatgpt/credentialStorage.test.js +73 -0
- package/dist/src/openai_chatgpt/credentialStorage.test.js.map +1 -0
- package/dist/src/openai_chatgpt/imports.d.ts +10 -0
- package/dist/src/openai_chatgpt/imports.js +164 -0
- package/dist/src/openai_chatgpt/imports.js.map +1 -0
- package/dist/src/openai_chatgpt/imports.test.d.ts +7 -0
- package/dist/src/openai_chatgpt/imports.test.js +82 -0
- package/dist/src/openai_chatgpt/imports.test.js.map +1 -0
- package/dist/src/openai_chatgpt/jwt.d.ts +7 -0
- package/dist/src/openai_chatgpt/jwt.js +31 -0
- package/dist/src/openai_chatgpt/jwt.js.map +1 -0
- package/dist/src/openai_chatgpt/jwt.test.d.ts +7 -0
- package/dist/src/openai_chatgpt/jwt.test.js +23 -0
- package/dist/src/openai_chatgpt/jwt.test.js.map +1 -0
- package/dist/src/openai_chatgpt/oauthClient.d.ts +52 -0
- package/dist/src/openai_chatgpt/oauthClient.js +196 -0
- package/dist/src/openai_chatgpt/oauthClient.js.map +1 -0
- package/dist/src/openai_chatgpt/oauthClient.test.d.ts +7 -0
- package/dist/src/openai_chatgpt/oauthClient.test.js +138 -0
- package/dist/src/openai_chatgpt/oauthClient.test.js.map +1 -0
- package/dist/src/openai_chatgpt/types.d.ts +34 -0
- package/dist/src/openai_chatgpt/types.js +8 -0
- package/dist/src/openai_chatgpt/types.js.map +1 -0
- package/dist/src/policy/shell-safety.test.js +2 -1
- package/dist/src/policy/shell-safety.test.js.map +1 -1
- package/dist/src/safety/approval-ladder/__tests__/buildShellActionProfile.test.js +2 -1
- package/dist/src/safety/approval-ladder/__tests__/buildShellActionProfile.test.js.map +1 -1
- package/dist/src/safety/built-in.test.js +4 -2
- package/dist/src/safety/built-in.test.js.map +1 -1
- package/dist/src/telemetry/metrics.test.js +95 -75
- package/dist/src/telemetry/metrics.test.js.map +1 -1
- package/dist/src/tools/__tests__/edit.risk.test.d.ts +7 -0
- package/dist/src/tools/__tests__/edit.risk.test.js +138 -0
- package/dist/src/tools/__tests__/edit.risk.test.js.map +1 -0
- package/dist/src/tools/__tests__/memoryToolDedupe.test.d.ts +7 -0
- package/dist/src/tools/__tests__/memoryToolDedupe.test.js +53 -0
- package/dist/src/tools/__tests__/memoryToolDedupe.test.js.map +1 -0
- package/dist/src/tools/__tests__/shell.pin.test.js +2 -1
- package/dist/src/tools/__tests__/shell.pin.test.js.map +1 -1
- package/dist/src/tools/__tests__/shell.provenance.test.js +14 -4
- package/dist/src/tools/__tests__/shell.provenance.test.js.map +1 -1
- package/dist/src/tools/__tests__/ui-diagnose.test.d.ts +6 -0
- package/dist/src/tools/__tests__/ui-diagnose.test.js +11 -8
- package/dist/src/tools/__tests__/ui-diagnose.test.js.map +1 -1
- package/dist/src/tools/__tests__/ui-health.test.d.ts +6 -0
- package/dist/src/tools/__tests__/ui-health.test.js +37 -37
- package/dist/src/tools/__tests__/ui-health.test.js.map +1 -1
- package/dist/src/tools/agent-control.js +6 -18
- package/dist/src/tools/agent-control.js.map +1 -1
- package/dist/src/tools/agent-control.test.js +2 -28
- package/dist/src/tools/agent-control.test.js.map +1 -1
- package/dist/src/tools/edit.js +49 -9
- package/dist/src/tools/edit.js.map +1 -1
- package/dist/src/tools/edit.test.js +1 -19
- package/dist/src/tools/edit.test.js.map +1 -1
- package/dist/src/tools/file-ops.js +9 -10
- package/dist/src/tools/file-ops.js.map +1 -1
- package/dist/src/tools/file-ops.test.js +0 -7
- package/dist/src/tools/file-ops.test.js.map +1 -1
- package/dist/src/tools/glob.js +4 -16
- package/dist/src/tools/glob.js.map +1 -1
- package/dist/src/tools/glob.test.js +0 -29
- package/dist/src/tools/glob.test.js.map +1 -1
- package/dist/src/tools/grep.js +4 -10
- package/dist/src/tools/grep.js.map +1 -1
- package/dist/src/tools/ls.d.ts +1 -1
- package/dist/src/tools/ls.js +8 -7
- package/dist/src/tools/ls.js.map +1 -1
- package/dist/src/tools/ls.test.js +0 -7
- package/dist/src/tools/ls.test.js.map +1 -1
- package/dist/src/tools/mcp-client-manager.js +8 -6
- package/dist/src/tools/mcp-client-manager.js.map +1 -1
- package/dist/src/tools/mcp-client-manager.test.js +0 -10
- package/dist/src/tools/mcp-client-manager.test.js.map +1 -1
- package/dist/src/tools/memoryTool.js +10 -0
- package/dist/src/tools/memoryTool.js.map +1 -1
- package/dist/src/tools/process-manager.js +6 -5
- package/dist/src/tools/process-manager.js.map +1 -1
- package/dist/src/tools/process-manager.test.js +2 -1
- package/dist/src/tools/process-manager.test.js.map +1 -1
- package/dist/src/tools/read-file.js +8 -10
- package/dist/src/tools/read-file.js.map +1 -1
- package/dist/src/tools/read-file.test.js +0 -12
- package/dist/src/tools/read-file.test.js.map +1 -1
- package/dist/src/tools/read-many-files.js +2 -7
- package/dist/src/tools/read-many-files.js.map +1 -1
- package/dist/src/tools/repl.js +10 -45
- package/dist/src/tools/repl.js.map +1 -1
- package/dist/src/tools/ripGrep.js +2 -5
- package/dist/src/tools/ripGrep.js.map +1 -1
- package/dist/src/tools/ripGrep.test.js +1 -1
- package/dist/src/tools/ripGrep.test.js.map +1 -1
- package/dist/src/tools/shell.d.ts +2 -11
- package/dist/src/tools/shell.js +31 -191
- package/dist/src/tools/shell.js.map +1 -1
- package/dist/src/tools/shell.test.js +2 -1
- package/dist/src/tools/shell.test.js.map +1 -1
- package/dist/src/tools/smart-edit.js +2 -5
- package/dist/src/tools/smart-edit.js.map +1 -1
- package/dist/src/tools/smart-edit.test.js +0 -9
- package/dist/src/tools/smart-edit.test.js.map +1 -1
- package/dist/src/tools/tools.d.ts +5 -0
- package/dist/src/tools/tools.js.map +1 -1
- package/dist/src/tools/ui-click.js +69 -3
- package/dist/src/tools/ui-click.js.map +1 -1
- package/dist/src/tools/write-file.js +34 -8
- package/dist/src/tools/write-file.js.map +1 -1
- package/dist/src/tools/write-file.test.js +1 -15
- package/dist/src/tools/write-file.test.js.map +1 -1
- package/dist/src/utils/errorReporting.js +1 -1
- package/dist/src/utils/errorReporting.js.map +1 -1
- package/dist/src/utils/errorReporting.test.js +1 -1
- package/dist/src/utils/errorReporting.test.js.map +1 -1
- package/dist/src/utils/events.d.ts +11 -0
- package/dist/src/utils/events.js +1 -0
- package/dist/src/utils/events.js.map +1 -1
- package/dist/src/utils/fileUtils.js +2 -7
- package/dist/src/utils/fileUtils.js.map +1 -1
- package/dist/src/utils/processUtils.d.ts +43 -0
- package/dist/src/utils/processUtils.js +134 -0
- package/dist/src/utils/processUtils.js.map +1 -0
- package/dist/src/utils/shell-permissions.d.ts +1 -0
- package/dist/src/utils/shell-permissions.js +3 -3
- package/dist/src/utils/shell-permissions.js.map +1 -1
- package/dist/src/utils/shell-permissions.test.js +11 -5
- package/dist/src/utils/shell-permissions.test.js.map +1 -1
- package/dist/src/utils/shell-utils.js +6 -3
- package/dist/src/utils/shell-utils.js.map +1 -1
- package/dist/src/utils/shell-utils.test.js +6 -2
- package/dist/src/utils/shell-utils.test.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -3
|
@@ -5,7 +5,6 @@
|
|
|
5
5
|
* SPDX-License-Identifier: Apache-2.0
|
|
6
6
|
*/
|
|
7
7
|
import { describe, it, expect, vi, beforeEach } from 'vitest';
|
|
8
|
-
import { FileOperation, MemoryMetricType, ToolExecutionPhase, ApiRequestPhase, } from './metrics.js';
|
|
9
8
|
import { makeFakeConfig } from '../test-utils/config.js';
|
|
10
9
|
import { ModelRoutingEvent, AgentFinishEvent } from './types.js';
|
|
11
10
|
import { AgentTerminateMode } from '../agents/types.js';
|
|
@@ -46,6 +45,10 @@ function originalOtelMockFactory() {
|
|
|
46
45
|
vi.mock('@opentelemetry/api');
|
|
47
46
|
vi.mock('./telemetryAttributes.js');
|
|
48
47
|
describe('Telemetry Metrics', () => {
|
|
48
|
+
let FileOperationEnum;
|
|
49
|
+
let MemoryMetricTypeEnum;
|
|
50
|
+
let ToolExecutionPhaseEnum;
|
|
51
|
+
let ApiRequestPhaseEnum;
|
|
49
52
|
let initializeMetricsModule;
|
|
50
53
|
let recordTokenUsageMetricsModule;
|
|
51
54
|
let recordFileOperationMetricModule;
|
|
@@ -82,6 +85,10 @@ describe('Telemetry Metrics', () => {
|
|
|
82
85
|
'user.email': 'test@example.com',
|
|
83
86
|
});
|
|
84
87
|
const metricsJsModule = await import('./metrics.js');
|
|
88
|
+
FileOperationEnum = metricsJsModule.FileOperation;
|
|
89
|
+
MemoryMetricTypeEnum = metricsJsModule.MemoryMetricType;
|
|
90
|
+
ToolExecutionPhaseEnum = metricsJsModule.ToolExecutionPhase;
|
|
91
|
+
ApiRequestPhaseEnum = metricsJsModule.ApiRequestPhase;
|
|
85
92
|
initializeMetricsModule = metricsJsModule.initializeMetrics;
|
|
86
93
|
recordTokenUsageMetricsModule = metricsJsModule.recordTokenUsageMetrics;
|
|
87
94
|
recordFileOperationMetricModule = metricsJsModule.recordFileOperationMetric;
|
|
@@ -296,68 +303,72 @@ describe('Telemetry Metrics', () => {
|
|
|
296
303
|
getSessionId: () => 'test-session-id',
|
|
297
304
|
getTelemetryEnabled: () => true,
|
|
298
305
|
};
|
|
299
|
-
|
|
300
|
-
{
|
|
301
|
-
|
|
306
|
+
function runTestCase({ initialized, attributes, shouldCall, }) {
|
|
307
|
+
if (initialized) {
|
|
308
|
+
initializeMetricsModule(mockConfig);
|
|
309
|
+
// The session start event also calls the counter.
|
|
310
|
+
mockCounterAddFn.mockClear();
|
|
311
|
+
}
|
|
312
|
+
recordFileOperationMetricModule(mockConfig, attributes);
|
|
313
|
+
if (shouldCall) {
|
|
314
|
+
expect(mockCounterAddFn).toHaveBeenCalledWith(1, {
|
|
315
|
+
'session.id': 'test-session-id',
|
|
316
|
+
'installation.id': 'test-installation-id',
|
|
317
|
+
'user.email': 'test@example.com',
|
|
318
|
+
...attributes,
|
|
319
|
+
});
|
|
320
|
+
}
|
|
321
|
+
else {
|
|
322
|
+
expect(mockCounterAddFn).not.toHaveBeenCalled();
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
it('should not record metrics if not initialized', () => {
|
|
326
|
+
runTestCase({
|
|
302
327
|
initialized: false,
|
|
303
328
|
attributes: {
|
|
304
|
-
operation:
|
|
329
|
+
operation: FileOperationEnum.CREATE,
|
|
305
330
|
lines: 10,
|
|
306
331
|
mimetype: 'text/plain',
|
|
307
332
|
extension: 'txt',
|
|
308
333
|
},
|
|
309
334
|
shouldCall: false,
|
|
310
|
-
}
|
|
311
|
-
|
|
312
|
-
|
|
335
|
+
});
|
|
336
|
+
});
|
|
337
|
+
it('should record file creation with all attributes', () => {
|
|
338
|
+
runTestCase({
|
|
313
339
|
initialized: true,
|
|
314
340
|
attributes: {
|
|
315
|
-
operation:
|
|
341
|
+
operation: FileOperationEnum.CREATE,
|
|
316
342
|
lines: 10,
|
|
317
343
|
mimetype: 'text/plain',
|
|
318
344
|
extension: 'txt',
|
|
319
345
|
},
|
|
320
346
|
shouldCall: true,
|
|
321
|
-
}
|
|
322
|
-
|
|
323
|
-
|
|
347
|
+
});
|
|
348
|
+
});
|
|
349
|
+
it('should record file read with minimal attributes', () => {
|
|
350
|
+
runTestCase({
|
|
324
351
|
initialized: true,
|
|
325
|
-
attributes: { operation:
|
|
352
|
+
attributes: { operation: FileOperationEnum.READ },
|
|
326
353
|
shouldCall: true,
|
|
327
|
-
}
|
|
328
|
-
|
|
329
|
-
|
|
354
|
+
});
|
|
355
|
+
});
|
|
356
|
+
it('should record file update with some attributes', () => {
|
|
357
|
+
runTestCase({
|
|
330
358
|
initialized: true,
|
|
331
359
|
attributes: {
|
|
332
|
-
operation:
|
|
360
|
+
operation: FileOperationEnum.UPDATE,
|
|
333
361
|
mimetype: 'application/javascript',
|
|
334
362
|
},
|
|
335
363
|
shouldCall: true,
|
|
336
|
-
}
|
|
337
|
-
|
|
338
|
-
|
|
364
|
+
});
|
|
365
|
+
});
|
|
366
|
+
it('should record file update with no optional attributes', () => {
|
|
367
|
+
runTestCase({
|
|
339
368
|
initialized: true,
|
|
340
|
-
attributes: { operation:
|
|
369
|
+
attributes: { operation: FileOperationEnum.UPDATE },
|
|
341
370
|
shouldCall: true,
|
|
342
|
-
}
|
|
343
|
-
])('$name', ({ initialized, attributes, shouldCall }) => {
|
|
344
|
-
if (initialized) {
|
|
345
|
-
initializeMetricsModule(mockConfig);
|
|
346
|
-
// The session start event also calls the counter.
|
|
347
|
-
mockCounterAddFn.mockClear();
|
|
348
|
-
}
|
|
349
|
-
recordFileOperationMetricModule(mockConfig, attributes);
|
|
350
|
-
if (shouldCall) {
|
|
351
|
-
expect(mockCounterAddFn).toHaveBeenCalledWith(1, {
|
|
352
|
-
'session.id': 'test-session-id',
|
|
353
|
-
'installation.id': 'test-installation-id',
|
|
354
|
-
'user.email': 'test@example.com',
|
|
355
|
-
...attributes,
|
|
356
|
-
});
|
|
357
|
-
}
|
|
358
|
-
else {
|
|
359
|
-
expect(mockCounterAddFn).not.toHaveBeenCalled();
|
|
360
|
-
}
|
|
371
|
+
});
|
|
361
372
|
});
|
|
362
373
|
});
|
|
363
374
|
describe('recordModelRoutingMetrics', () => {
|
|
@@ -688,33 +699,7 @@ describe('Telemetry Metrics', () => {
|
|
|
688
699
|
});
|
|
689
700
|
});
|
|
690
701
|
describe('recordMemoryUsage', () => {
|
|
691
|
-
|
|
692
|
-
{
|
|
693
|
-
memory_type: MemoryMetricType.HEAP_USED,
|
|
694
|
-
component: 'startup',
|
|
695
|
-
value: 15728640,
|
|
696
|
-
},
|
|
697
|
-
{
|
|
698
|
-
memory_type: MemoryMetricType.HEAP_TOTAL,
|
|
699
|
-
component: 'api_call',
|
|
700
|
-
value: 31457280,
|
|
701
|
-
},
|
|
702
|
-
{
|
|
703
|
-
memory_type: MemoryMetricType.EXTERNAL,
|
|
704
|
-
component: 'tool_execution',
|
|
705
|
-
value: 2097152,
|
|
706
|
-
},
|
|
707
|
-
{
|
|
708
|
-
memory_type: MemoryMetricType.RSS,
|
|
709
|
-
component: 'memory_monitor',
|
|
710
|
-
value: 41943040,
|
|
711
|
-
},
|
|
712
|
-
{
|
|
713
|
-
memory_type: MemoryMetricType.HEAP_USED,
|
|
714
|
-
component: undefined,
|
|
715
|
-
value: 15728640,
|
|
716
|
-
},
|
|
717
|
-
])('should record memory usage for $memory_type', ({ memory_type, component, value }) => {
|
|
702
|
+
function assertMemoryUsage({ memory_type, component, value, }) {
|
|
718
703
|
initializeMetricsModule(mockConfig);
|
|
719
704
|
mockHistogramRecordFn.mockClear();
|
|
720
705
|
recordMemoryUsageModule(mockConfig, value, {
|
|
@@ -731,6 +716,41 @@ describe('Telemetry Metrics', () => {
|
|
|
731
716
|
expectedAttributes['component'] = component;
|
|
732
717
|
}
|
|
733
718
|
expect(mockHistogramRecordFn).toHaveBeenCalledWith(value, expectedAttributes);
|
|
719
|
+
}
|
|
720
|
+
it('should record heap used memory usage', () => {
|
|
721
|
+
assertMemoryUsage({
|
|
722
|
+
memory_type: MemoryMetricTypeEnum.HEAP_USED,
|
|
723
|
+
component: 'startup',
|
|
724
|
+
value: 15728640,
|
|
725
|
+
});
|
|
726
|
+
});
|
|
727
|
+
it('should record heap total memory usage', () => {
|
|
728
|
+
assertMemoryUsage({
|
|
729
|
+
memory_type: MemoryMetricTypeEnum.HEAP_TOTAL,
|
|
730
|
+
component: 'api_call',
|
|
731
|
+
value: 31457280,
|
|
732
|
+
});
|
|
733
|
+
});
|
|
734
|
+
it('should record external memory usage', () => {
|
|
735
|
+
assertMemoryUsage({
|
|
736
|
+
memory_type: MemoryMetricTypeEnum.EXTERNAL,
|
|
737
|
+
component: 'tool_execution',
|
|
738
|
+
value: 2097152,
|
|
739
|
+
});
|
|
740
|
+
});
|
|
741
|
+
it('should record RSS memory usage', () => {
|
|
742
|
+
assertMemoryUsage({
|
|
743
|
+
memory_type: MemoryMetricTypeEnum.RSS,
|
|
744
|
+
component: 'memory_monitor',
|
|
745
|
+
value: 41943040,
|
|
746
|
+
});
|
|
747
|
+
});
|
|
748
|
+
it('should record memory usage without component', () => {
|
|
749
|
+
assertMemoryUsage({
|
|
750
|
+
memory_type: MemoryMetricTypeEnum.HEAP_USED,
|
|
751
|
+
component: undefined,
|
|
752
|
+
value: 15728640,
|
|
753
|
+
});
|
|
734
754
|
});
|
|
735
755
|
});
|
|
736
756
|
describe('recordCpuUsage', () => {
|
|
@@ -786,7 +806,7 @@ describe('Telemetry Metrics', () => {
|
|
|
786
806
|
mockHistogramRecordFn.mockClear();
|
|
787
807
|
recordToolExecutionBreakdownModule(mockConfig, 25, {
|
|
788
808
|
function_name: 'Read',
|
|
789
|
-
phase:
|
|
809
|
+
phase: ToolExecutionPhaseEnum.VALIDATION,
|
|
790
810
|
});
|
|
791
811
|
expect(mockHistogramRecordFn).toHaveBeenCalledWith(25, {
|
|
792
812
|
'session.id': 'test-session-id',
|
|
@@ -801,15 +821,15 @@ describe('Telemetry Metrics', () => {
|
|
|
801
821
|
mockHistogramRecordFn.mockClear();
|
|
802
822
|
recordToolExecutionBreakdownModule(mockConfig, 50, {
|
|
803
823
|
function_name: 'Bash',
|
|
804
|
-
phase:
|
|
824
|
+
phase: ToolExecutionPhaseEnum.PREPARATION,
|
|
805
825
|
});
|
|
806
826
|
recordToolExecutionBreakdownModule(mockConfig, 1500, {
|
|
807
827
|
function_name: 'Bash',
|
|
808
|
-
phase:
|
|
828
|
+
phase: ToolExecutionPhaseEnum.EXECUTION,
|
|
809
829
|
});
|
|
810
830
|
recordToolExecutionBreakdownModule(mockConfig, 75, {
|
|
811
831
|
function_name: 'Bash',
|
|
812
|
-
phase:
|
|
832
|
+
phase: ToolExecutionPhaseEnum.RESULT_PROCESSING,
|
|
813
833
|
});
|
|
814
834
|
expect(mockHistogramRecordFn).toHaveBeenCalledTimes(3); // One for each call
|
|
815
835
|
expect(mockHistogramRecordFn).toHaveBeenNthCalledWith(1, 50, {
|
|
@@ -875,7 +895,7 @@ describe('Telemetry Metrics', () => {
|
|
|
875
895
|
mockHistogramRecordFn.mockClear();
|
|
876
896
|
recordApiRequestBreakdownModule(mockConfig, 15, {
|
|
877
897
|
model: 'gemini-pro',
|
|
878
|
-
phase:
|
|
898
|
+
phase: ApiRequestPhaseEnum.REQUEST_PREPARATION,
|
|
879
899
|
});
|
|
880
900
|
expect(mockHistogramRecordFn).toHaveBeenCalledWith(15, {
|
|
881
901
|
'session.id': 'test-session-id',
|
|
@@ -890,15 +910,15 @@ describe('Telemetry Metrics', () => {
|
|
|
890
910
|
mockHistogramRecordFn.mockClear();
|
|
891
911
|
recordApiRequestBreakdownModule(mockConfig, 250, {
|
|
892
912
|
model: 'gemini-pro',
|
|
893
|
-
phase:
|
|
913
|
+
phase: ApiRequestPhaseEnum.NETWORK_LATENCY,
|
|
894
914
|
});
|
|
895
915
|
recordApiRequestBreakdownModule(mockConfig, 100, {
|
|
896
916
|
model: 'gemini-pro',
|
|
897
|
-
phase:
|
|
917
|
+
phase: ApiRequestPhaseEnum.RESPONSE_PROCESSING,
|
|
898
918
|
});
|
|
899
919
|
recordApiRequestBreakdownModule(mockConfig, 50, {
|
|
900
920
|
model: 'gemini-pro',
|
|
901
|
-
phase:
|
|
921
|
+
phase: ApiRequestPhaseEnum.TOKEN_PROCESSING,
|
|
902
922
|
});
|
|
903
923
|
expect(mockHistogramRecordFn).toHaveBeenCalledTimes(3); // One for each call
|
|
904
924
|
expect(mockHistogramRecordFn).toHaveBeenNthCalledWith(1, 250, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metrics.test.js","sourceRoot":"","sources":["../../../src/telemetry/metrics.test.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAa,MAAM,QAAQ,CAAC;AASzE,OAAO,EACL,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,GAChB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,MAAM,gBAAgB,GAElB,EAAE,CAAC,EAAE,EAAE,CAAC;AACZ,MAAM,qBAAqB,GAEvB,EAAE,CAAC,EAAE,EAAE,CAAC;AAEZ,MAAM,mBAAmB,GACvB,EAAE,CAAC,EAAE,EAAE,CAAC;AACV,MAAM,qBAAqB,GAEvB,EAAE,CAAC,EAAE,EAAE,CAAC;AAEZ,MAAM,mBAAmB,GAAY;IACnC,GAAG,EAAE,gBAAgB;CACS,CAAC;AAEjC,MAAM,qBAAqB,GAAc;IACvC,MAAM,EAAE,qBAAqB;CACK,CAAC;AAErC,MAAM,iBAAiB,GAAU;IAC/B,aAAa,EAAE,mBAAmB,CAAC,eAAe,CAAC,mBAAmB,CAAC;IACvE,eAAe,EAAE,qBAAqB,CAAC,eAAe,CAAC,qBAAqB,CAAC;CACnD,CAAC;AAE7B,SAAS,uBAAuB;IAC9B,OAAO;QACL,OAAO,EAAE;YACP,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE;SAClB;QACD,SAAS,EAAE;YACT,GAAG,EAAE,CAAC;YACN,MAAM,EAAE,CAAC;SACV;QACD,IAAI,EAAE;YACJ,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE;YAClB,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;SACd;QACD,iBAAiB,EAAE,EAAE,CAAC,EAAE,EAAE;QAC1B,YAAY,EAAE;YACZ,IAAI,EAAE,CAAC;YACP,IAAI,EAAE,CAAC;SACR;KACO,CAAC;AACb,CAAC;AAED,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;AAC9B,EAAE,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;AAEpC,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,IAAI,uBAAwE,CAAC;IAC7E,IAAI,6BAAoF,CAAC;IACzF,IAAI,+BAAwF,CAAC;IAC7F,IAAI,kCAA8F,CAAC;IACnG,IAAI,+BAAwF,CAAC;IAC7F,IAAI,8BAAsF,CAAC;IAC3F,IAAI,uBAAwE,CAAC;IAC7E,IAAI,oBAAkE,CAAC;IACvE,IAAI,0BAA8E,CAAC;IACnF,IAAI,kCAA8F,CAAC;IACnG,IAAI,2BAAgF,CAAC;IACrF,IAAI,+BAAwF,CAAC;IAC7F,IAAI,4BAAkF,CAAC;IACvF,IAAI,iCAA4F,CAAC;IACjG,IAAI,8BAAsF,CAAC;IAC3F,IAAI,iCAA4F,CAAC;IACjG,IAAI,wCAA0G,CAAC;IAC/G,IAAI,wBAA0E,CAAC;IAC/E,IAAI,oBAAkE,CAAC;IACvE,IAAI,2BAAgF,CAAC;IACrF,IAAI,wBAA0E,CAAC;IAC/E,IAAI,sBAAsE,CAAC;IAE3E,UAAU,CAAC,KAAK,IAAI,EAAE;QACpB,EAAE,CAAC,YAAY,EAAE,CAAC;QAClB,EAAE,CAAC,MAAM,CAAC,oBAAoB,EAAE,GAAG,EAAE;YACnC,MAAM,SAAS,GAAG,uBAAuB,EAAE,CAAC;YAC5C,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC;YAC9D,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC,CAAC;QAEH,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAC;QACxE,mBAA4B,CAAC,eAAe,CAAC;YAC5C,YAAY,EAAE,iBAAiB;YAC/B,iBAAiB,EAAE,sBAAsB;YACzC,YAAY,EAAE,kBAAkB;SACjC,CAAC,CAAC;QAEH,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;QACrD,uBAAuB,GAAG,eAAe,CAAC,iBAAiB,CAAC;QAC5D,6BAA6B,GAAG,eAAe,CAAC,uBAAuB,CAAC;QACxE,+BAA+B,GAAG,eAAe,CAAC,yBAAyB,CAAC;QAC5E,kCAAkC;YAChC,eAAe,CAAC,4BAA4B,CAAC;QAC/C,+BAA+B,GAAG,eAAe,CAAC,yBAAyB,CAAC;QAC5E,8BAA8B,GAAG,eAAe,CAAC,wBAAwB,CAAC;QAC1E,uBAAuB,GAAG,eAAe,CAAC,iBAAiB,CAAC;QAC5D,oBAAoB,GAAG,eAAe,CAAC,cAAc,CAAC;QACtD,0BAA0B,GAAG,eAAe,CAAC,oBAAoB,CAAC;QAClE,kCAAkC;YAChC,eAAe,CAAC,4BAA4B,CAAC;QAC/C,2BAA2B,GAAG,eAAe,CAAC,qBAAqB,CAAC;QACpE,+BAA+B,GAAG,eAAe,CAAC,yBAAyB,CAAC;QAC5E,4BAA4B,GAAG,eAAe,CAAC,sBAAsB,CAAC;QACtE,iCAAiC;YAC/B,eAAe,CAAC,2BAA2B,CAAC;QAC9C,8BAA8B,GAAG,eAAe,CAAC,wBAAwB,CAAC;QAC1E,iCAAiC;YAC/B,eAAe,CAAC,2BAA2B,CAAC;QAC9C,wCAAwC;YACtC,eAAe,CAAC,kCAAkC,CAAC;QACrD,wBAAwB,GAAG,eAAe,CAAC,kBAAkB,CAAC;QAC9D,oBAAoB,GAAG,eAAe,CAAC,cAAc,CAAC;QACtD,2BAA2B,GAAG,eAAe,CAAC,qBAAqB,CAAC;QACpE,wBAAwB,GAAG,eAAe,CAAC,kBAAkB,CAAC;QAC9D,sBAAsB,GAAG,eAAe,CAAC,gBAAgB,CAAC;QAE1D,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;QAEzD,gBAAgB,CAAC,SAAS,EAAE,CAAC;QAC7B,mBAAmB,CAAC,SAAS,EAAE,CAAC;QAChC,qBAAqB,CAAC,SAAS,EAAE,CAAC;QAClC,qBAAqB,CAAC,SAAS,EAAE,CAAC;QACjC,aAAa,CAAC,OAAO,CAAC,QAAiB,CAAC,SAAS,EAAE,CAAC;QAEpD,aAAa,CAAC,OAAO,CAAC,QAAiB,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC;QAC5E,mBAAmB,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC;QACzD,qBAAqB,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC;IAC/D,CAAC,EAAE,KAAK,CAAC,CAAC;IAEV,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAClC,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;YACpD,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;YAClC,wBAAwB,CAAC,MAAM,CAAC,CAAC;YACjC,MAAM,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;YACxD,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;YAClC,uBAAuB,CAAC,MAAM,CAAC,CAAC;YAChC,wBAAwB,CAAC,MAAM,CAAC,CAAC;YAEjC,uCAAuC;YACvC,MAAM,CAAC,gBAAgB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YAClD,MAAM,CAAC,gBAAgB,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,CAAC,EAAE;gBACrD,YAAY,EAAE,iBAAiB;gBAC/B,iBAAiB,EAAE,sBAAsB;gBACzC,YAAY,EAAE,kBAAkB;aACjC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;YACpD,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;YAClC,oBAAoB,CAAC,MAAM,CAAC,CAAC;YAC7B,MAAM,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;YACpD,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;YAClC,uBAAuB,CAAC,MAAM,CAAC,CAAC;YAChC,oBAAoB,CAAC,MAAM,CAAC,CAAC;YAE7B,yCAAyC;YACzC,MAAM,CAAC,gBAAgB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YAClD,MAAM,CAAC,gBAAgB,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,CAAC,EAAE;gBACrD,YAAY,EAAE,iBAAiB;gBAC/B,iBAAiB,EAAE,sBAAsB;gBACzC,YAAY,EAAE,kBAAkB;aACjC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;YACpD,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;YAClC,sBAAsB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YACpC,MAAM,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACvD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACtD,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;YAClC,uBAAuB,CAAC,MAAM,CAAC,CAAC;YAChC,sBAAsB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAEpC,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE;gBACtD,YAAY,EAAE,iBAAiB;gBAC/B,iBAAiB,EAAE,sBAAsB;gBACzC,YAAY,EAAE,kBAAkB;aACjC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;QACjC,MAAM,UAAU,GAAG;YACjB,YAAY,EAAE,GAAG,EAAE,CAAC,iBAAiB;YACrC,mBAAmB,EAAE,GAAG,EAAE,CAAC,IAAI;SACX,CAAC;QAEvB,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;YACxD,uBAAuB,CAAC,UAAU,CAAC,CAAC;YAEpC,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE;gBAC/C,YAAY,EAAE,iBAAiB;gBAC/B,iBAAiB,EAAE,sBAAsB;gBACzC,YAAY,EAAE,kBAAkB;aACjC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;QAC5C,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;YACpD,MAAM,GAAG,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;YAE/B,kCAAkC,CAAC,GAAG,EAAE;gBACtC,YAAY,EAAE,GAAG;gBACjB,aAAa,EAAE,GAAG;aACnB,CAAC,CAAC;YAEH,MAAM,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;YAC/D,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;YAClC,uBAAuB,CAAC,MAAM,CAAC,CAAC;YAEhC,kCAAkC,CAAC,MAAM,EAAE;gBACzC,YAAY,EAAE,GAAG;gBACjB,aAAa,EAAE,GAAG;aACnB,CAAC,CAAC;YAEH,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE;gBAC/C,YAAY,EAAE,iBAAiB;gBAC/B,iBAAiB,EAAE,sBAAsB;gBACzC,YAAY,EAAE,kBAAkB;gBAChC,YAAY,EAAE,GAAG;gBACjB,aAAa,EAAE,GAAG;aACnB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACvC,MAAM,UAAU,GAAG;YACjB,YAAY,EAAE,GAAG,EAAE,CAAC,iBAAiB;YACrC,mBAAmB,EAAE,GAAG,EAAE,CAAC,IAAI;SACX,CAAC;QAEvB,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACtD,6BAA6B,CAAC,UAAU,EAAE,GAAG,EAAE;gBAC7C,KAAK,EAAE,YAAY;gBACnB,IAAI,EAAE,OAAO;aACd,CAAC,CAAC;YACH,MAAM,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,IAAI,CAAC;YACN,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,YAAY,EAAE;YACnD,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE;YACnD,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE;YACpD,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE;YAClD,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,YAAY,EAAE;YAClD,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,wBAAwB,EAAE;SAChE,CAAC,CACA,+EAA+E,EAC/E,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;YAC1B,uBAAuB,CAAC,UAAU,CAAC,CAAC;YACpC,gBAAgB,CAAC,SAAS,EAAE,CAAC;YAE7B,6BAA6B,CAAC,UAAU,EAAE,MAAM,EAAE;gBAChD,KAAK;gBACL,IAAI,EAAE,IAAyD;aAChE,CAAC,CAAC;YAEH,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,MAAM,EAAE;gBACpD,YAAY,EAAE,iBAAiB;gBAC/B,iBAAiB,EAAE,sBAAsB;gBACzC,YAAY,EAAE,kBAAkB;gBAChC,KAAK;gBACL,IAAI;aACL,CAAC,CAAC;QACL,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACzC,MAAM,UAAU,GAAG;YACjB,YAAY,EAAE,GAAG,EAAE,CAAC,iBAAiB;YACrC,mBAAmB,EAAE,GAAG,EAAE,CAAC,IAAI;SACX,CAAC;QAEvB,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;YAClE,wBAAwB,CAAC,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE;gBAChD,aAAa,EAAE,IAAI;aACpB,CAAC,CAAC;YACH,wBAAwB,CAAC,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE;gBACjD,aAAa,EAAE,IAAI;aACpB,CAAC,CAAC;YACH,MAAM,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;YAC3E,uBAAuB,CAAC,UAAU,CAAC,CAAC;YACpC,gBAAgB,CAAC,SAAS,EAAE,CAAC;YAC7B,wBAAwB,CAAC,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE;gBAChD,aAAa,EAAE,OAAO;aACvB,CAAC,CAAC;YACH,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,EAAE,EAAE;gBAChD,YAAY,EAAE,iBAAiB;gBAC/B,iBAAiB,EAAE,sBAAsB;gBACzC,YAAY,EAAE,kBAAkB;gBAChC,IAAI,EAAE,OAAO;gBACb,aAAa,EAAE,OAAO;aACvB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qEAAqE,EAAE,GAAG,EAAE;YAC7E,uBAAuB,CAAC,UAAU,CAAC,CAAC;YACpC,gBAAgB,CAAC,SAAS,EAAE,CAAC;YAC7B,wBAAwB,CAAC,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE;gBACjD,aAAa,EAAE,OAAO;aACvB,CAAC,CAAC;YACH,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE;gBAC/C,YAAY,EAAE,iBAAiB;gBAC/B,iBAAiB,EAAE,sBAAsB;gBACzC,YAAY,EAAE,kBAAkB;gBAChC,IAAI,EAAE,SAAS;gBACf,aAAa,EAAE,OAAO;aACvB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACzC,MAAM,UAAU,GAAG;YACjB,YAAY,EAAE,GAAG,EAAE,CAAC,iBAAiB;YACrC,mBAAmB,EAAE,GAAG,EAAE,CAAC,IAAI;SACX,CAAC;QAcvB,EAAE,CAAC,IAAI,CAAwB;YAC7B;gBACE,IAAI,EAAE,8CAA8C;gBACpD,WAAW,EAAE,KAAK;gBAClB,UAAU,EAAE;oBACV,SAAS,EAAE,aAAa,CAAC,MAAM;oBAC/B,KAAK,EAAE,EAAE;oBACT,QAAQ,EAAE,YAAY;oBACtB,SAAS,EAAE,KAAK;iBACjB;gBACD,UAAU,EAAE,KAAK;aAClB;YACD;gBACE,IAAI,EAAE,iDAAiD;gBACvD,WAAW,EAAE,IAAI;gBACjB,UAAU,EAAE;oBACV,SAAS,EAAE,aAAa,CAAC,MAAM;oBAC/B,KAAK,EAAE,EAAE;oBACT,QAAQ,EAAE,YAAY;oBACtB,SAAS,EAAE,KAAK;iBACjB;gBACD,UAAU,EAAE,IAAI;aACjB;YACD;gBACE,IAAI,EAAE,iDAAiD;gBACvD,WAAW,EAAE,IAAI;gBACjB,UAAU,EAAE,EAAE,SAAS,EAAE,aAAa,CAAC,IAAI,EAAE;gBAC7C,UAAU,EAAE,IAAI;aACjB;YACD;gBACE,IAAI,EAAE,gDAAgD;gBACtD,WAAW,EAAE,IAAI;gBACjB,UAAU,EAAE;oBACV,SAAS,EAAE,aAAa,CAAC,MAAM;oBAC/B,QAAQ,EAAE,wBAAwB;iBACnC;gBACD,UAAU,EAAE,IAAI;aACjB;YACD;gBACE,IAAI,EAAE,uDAAuD;gBAC7D,WAAW,EAAE,IAAI;gBACjB,UAAU,EAAE,EAAE,SAAS,EAAE,aAAa,CAAC,MAAM,EAAE;gBAC/C,UAAU,EAAE,IAAI;aACjB;SACF,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE;YACtD,IAAI,WAAW,EAAE,CAAC;gBAChB,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,kDAAkD;gBAClD,gBAAgB,CAAC,SAAS,EAAE,CAAC;YAC/B,CAAC;YAED,+BAA+B,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;YAExD,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE;oBAC/C,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,GAAG,UAAU;iBACd,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YAClD,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACzC,MAAM,UAAU,GAAG;YACjB,YAAY,EAAE,GAAG,EAAE,CAAC,iBAAiB;YACrC,mBAAmB,EAAE,GAAG,EAAE,CAAC,IAAI;SACX,CAAC;QAEvB,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACtD,MAAM,KAAK,GAAG,IAAI,iBAAiB,CACjC,YAAY,EACZ,SAAS,EACT,GAAG,EACH,aAAa,EACb,KAAK,EACL,SAAS,CACV,CAAC;YACF,+BAA+B,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YACnD,MAAM,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YACrD,MAAM,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;YACjE,uBAAuB,CAAC,UAAU,CAAC,CAAC;YACpC,MAAM,KAAK,GAAG,IAAI,iBAAiB,CACjC,YAAY,EACZ,SAAS,EACT,GAAG,EACH,aAAa,EACb,KAAK,EACL,SAAS,CACV,CAAC;YACF,+BAA+B,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAEnD,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE;gBACtD,YAAY,EAAE,iBAAiB;gBAC/B,iBAAiB,EAAE,sBAAsB;gBACzC,YAAY,EAAE,kBAAkB;gBAChC,wBAAwB,EAAE,YAAY;gBACtC,yBAAyB,EAAE,SAAS;aACrC,CAAC,CAAC;YACH,6CAA6C;YAC7C,MAAM,CAAC,gBAAgB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;YACzE,uBAAuB,CAAC,UAAU,CAAC,CAAC;YACpC,MAAM,KAAK,GAAG,IAAI,iBAAiB,CACjC,YAAY,EACZ,YAAY,EACZ,GAAG,EACH,aAAa,EACb,IAAI,EACJ,YAAY,CACb,CAAC;YACF,+BAA+B,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAEnD,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE;gBACtD,YAAY,EAAE,iBAAiB;gBAC/B,iBAAiB,EAAE,sBAAsB;gBACzC,YAAY,EAAE,kBAAkB;gBAChC,wBAAwB,EAAE,YAAY;gBACtC,yBAAyB,EAAE,YAAY;aACxC,CAAC,CAAC;YAEH,MAAM,CAAC,gBAAgB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YAClD,MAAM,CAAC,gBAAgB,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,CAAC,EAAE;gBACrD,YAAY,EAAE,iBAAiB;gBAC/B,iBAAiB,EAAE,sBAAsB;gBACzC,YAAY,EAAE,kBAAkB;gBAChC,yBAAyB,EAAE,YAAY;gBACvC,uBAAuB,EAAE,YAAY;aACtC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;QACrC,MAAM,UAAU,GAAG;YACjB,YAAY,EAAE,GAAG,EAAE,CAAC,iBAAiB;YACrC,mBAAmB,EAAE,GAAG,EAAE,CAAC,IAAI;SACX,CAAC;QAEvB,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACtD,MAAM,KAAK,GAAG,IAAI,gBAAgB,CAChC,WAAW,EACX,WAAW,EACX,IAAI,EACJ,CAAC,EACD,kBAAkB,CAAC,IAAI,CACxB,CAAC;YACF,2BAA2B,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAC/C,MAAM,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YAChD,MAAM,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACvD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;YACzC,uBAAuB,CAAC,UAAU,CAAC,CAAC;YACpC,gBAAgB,CAAC,SAAS,EAAE,CAAC;YAC7B,qBAAqB,CAAC,SAAS,EAAE,CAAC;YAElC,MAAM,KAAK,GAAG,IAAI,gBAAgB,CAChC,WAAW,EACX,WAAW,EACX,IAAI,EACJ,CAAC,EACD,kBAAkB,CAAC,IAAI,CACxB,CAAC;YACF,2BAA2B,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YAE/C,2BAA2B;YAC3B,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE;gBAC/C,YAAY,EAAE,iBAAiB;gBAC/B,iBAAiB,EAAE,sBAAsB;gBACzC,YAAY,EAAE,kBAAkB;gBAChC,UAAU,EAAE,WAAW;gBACvB,gBAAgB,EAAE,MAAM;aACzB,CAAC,CAAC;YAEH,kCAAkC;YAClC,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE;gBACvD,YAAY,EAAE,iBAAiB;gBAC/B,iBAAiB,EAAE,sBAAsB;gBACzC,YAAY,EAAE,kBAAkB;gBAChC,UAAU,EAAE,WAAW;aACxB,CAAC,CAAC;YAEH,+BAA+B;YAC/B,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE;gBACpD,YAAY,EAAE,iBAAiB;gBAC/B,iBAAiB,EAAE,sBAAsB;gBACzC,YAAY,EAAE,kBAAkB;gBAChC,UAAU,EAAE,WAAW;aACxB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iDAAiD,EAAE,GAAG,EAAE;QAC/D,MAAM,UAAU,GAAG;YACjB,YAAY,EAAE,GAAG,EAAE,CAAC,iBAAiB;YACrC,mBAAmB,EAAE,GAAG,EAAE,CAAC,IAAI;SACX,CAAC;QAEvB,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;YAC3C,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;gBACxD,iCAAiC,CAAC,UAAU,EAAE,GAAG,EAAE;oBACjD,uBAAuB,EAAE,kBAAkB;oBAC3C,sBAAsB,EAAE,YAAY;oBACpC,mBAAmB,EAAE,OAAO;iBAC7B,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YACvD,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;gBACjE,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,iCAAiC,CAAC,UAAU,EAAE,GAAG,EAAE;oBACjD,uBAAuB,EAAE,kBAAkB;oBAC3C,sBAAsB,EAAE,YAAY;oBACpC,mBAAmB,EAAE,OAAO;oBAC5B,sBAAsB,EAAE,kBAAkB;oBAC1C,uBAAuB,EAAE,kBAAkB;iBAC5C,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE;oBACtD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,uBAAuB,EAAE,kBAAkB;oBAC3C,sBAAsB,EAAE,YAAY;oBACpC,mBAAmB,EAAE,OAAO;oBAC5B,sBAAsB,EAAE,kBAAkB;oBAC1C,uBAAuB,EAAE,kBAAkB;iBAC5C,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;gBAClE,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,iCAAiC,CAAC,UAAU,EAAE,EAAE,EAAE;oBAChD,uBAAuB,EAAE,kBAAkB;oBAC3C,sBAAsB,EAAE,eAAe;oBACvC,mBAAmB,EAAE,QAAQ;oBAC7B,sBAAsB,EAAE,YAAY;iBACrC,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,EAAE,EAAE;oBACrD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,uBAAuB,EAAE,kBAAkB;oBAC3C,sBAAsB,EAAE,eAAe;oBACvC,mBAAmB,EAAE,QAAQ;oBAC7B,sBAAsB,EAAE,YAAY;iBACrC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;gBAC5D,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,iCAAiC,CAAC,UAAU,EAAE,GAAG,EAAE;oBACjD,uBAAuB,EAAE,kBAAkB;oBAC3C,sBAAsB,EAAE,eAAe;oBACvC,mBAAmB,EAAE,OAAO;oBAC5B,sBAAsB,EAAE,oBAAoB;oBAC5C,gBAAgB,EAAE,2BAA2B;oBAC7C,aAAa,EAAE,GAAG;iBACnB,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE;oBACtD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,uBAAuB,EAAE,kBAAkB;oBAC3C,sBAAsB,EAAE,eAAe;oBACvC,mBAAmB,EAAE,OAAO;oBAC5B,sBAAsB,EAAE,oBAAoB;oBAC5C,gBAAgB,EAAE,2BAA2B;oBAC7C,aAAa,EAAE,GAAG;iBACnB,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,oCAAoC,EAAE,GAAG,EAAE;YAClD,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;gBACxD,wCAAwC,CAAC,UAAU,EAAE,GAAG,EAAE;oBACxD,uBAAuB,EAAE,kBAAkB;oBAC3C,sBAAsB,EAAE,YAAY;iBACrC,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YACvD,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,qEAAqE,EAAE,GAAG,EAAE;gBAC7E,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,wCAAwC,CAAC,UAAU,EAAE,IAAI,EAAE;oBACzD,uBAAuB,EAAE,kBAAkB;oBAC3C,sBAAsB,EAAE,YAAY;oBACpC,sBAAsB,EAAE,kBAAkB;oBAC1C,uBAAuB,EAAE,kBAAkB;iBAC5C,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE;oBACvD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,uBAAuB,EAAE,kBAAkB;oBAC3C,sBAAsB,EAAE,YAAY;oBACpC,sBAAsB,EAAE,kBAAkB;oBAC1C,uBAAuB,EAAE,kBAAkB;iBAC5C,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;gBACjE,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,wCAAwC,CAAC,UAAU,EAAE,IAAI,EAAE;oBACzD,uBAAuB,EAAE,kBAAkB;oBAC3C,sBAAsB,EAAE,eAAe;oBACvC,sBAAsB,EAAE,YAAY;oBACpC,YAAY,EAAE,gBAAgB;iBAC/B,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE;oBACvD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,uBAAuB,EAAE,kBAAkB;oBAC3C,sBAAsB,EAAE,eAAe;oBACvC,sBAAsB,EAAE,YAAY;oBACpC,YAAY,EAAE,gBAAgB;iBAC/B,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;gBAC9D,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,wCAAwC,CAAC,UAAU,EAAE,IAAI,EAAE;oBACzD,uBAAuB,EAAE,kBAAkB;oBAC3C,sBAAsB,EAAE,eAAe;oBACvC,sBAAsB,EAAE,gBAAgB;oBACxC,uBAAuB,EAAE,oBAAoB;oBAC7C,gBAAgB,EAAE,uCAAuC;oBACzD,aAAa,EAAE,GAAG;iBACnB,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE;oBACvD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,uBAAuB,EAAE,kBAAkB;oBAC3C,sBAAsB,EAAE,eAAe;oBACvC,sBAAsB,EAAE,gBAAgB;oBACxC,uBAAuB,EAAE,oBAAoB;oBAC7C,gBAAgB,EAAE,uCAAuC;oBACzD,aAAa,EAAE,GAAG;iBACnB,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;gBACnD,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,wCAAwC,CAAC,UAAU,EAAE,GAAG,EAAE;oBACxD,uBAAuB,EAAE,kBAAkB;oBAC3C,sBAAsB,EAAE,YAAY;iBACrC,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE;oBACtD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,uBAAuB,EAAE,kBAAkB;oBAC3C,sBAAsB,EAAE,YAAY;iBACrC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;QAC9C,MAAM,UAAU,GAAG;YACjB,YAAY,EAAE,GAAG,EAAE,CAAC,iBAAiB;YACrC,mBAAmB,EAAE,GAAG,EAAE,CAAC,IAAI;SACX,CAAC;QAEvB,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;YACxC,EAAE,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;gBACjF,uEAAuE;gBACvE,MAAM,kBAAkB,GAAG;oBACzB,YAAY,EAAE,GAAG,EAAE,CAAC,iBAAiB;oBACrC,mBAAmB,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,sDAAsD;iBACpE,CAAC;gBAEvB,uBAAuB,CAAC,kBAAkB,CAAC,CAAC;gBAC5C,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,8BAA8B,CAAC,kBAAkB,EAAE,GAAG,EAAE;oBACtD,KAAK,EAAE,kBAAkB;oBACzB,OAAO,EAAE;wBACP,SAAS,EAAE,QAAQ;qBACpB;iBACF,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YACvD,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;gBAClE,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,8BAA8B,CAAC,UAAU,EAAE,GAAG,EAAE;oBAC9C,KAAK,EAAE,kBAAkB;oBACzB,OAAO,EAAE;wBACP,SAAS,EAAE,QAAQ;wBACnB,iBAAiB,EAAE,IAAI;wBACvB,gBAAgB,EAAE,CAAC;qBACpB;iBACF,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE;oBACtD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,KAAK,EAAE,kBAAkB;oBACzB,SAAS,EAAE,QAAQ;oBACnB,iBAAiB,EAAE,IAAI;oBACvB,gBAAgB,EAAE,CAAC;iBACpB,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;gBAC3D,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,8BAA8B,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;gBAErE,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,EAAE,EAAE;oBACrD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,KAAK,EAAE,SAAS;iBACjB,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,qEAAqE,EAAE,GAAG,EAAE;gBAC7E,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,gFAAgF;gBAChF,MAAM,qBAAqB,GAAG,SAAS,CAAC;gBACxC,8BAA8B,CAAC,UAAU,EAAE,qBAAqB,EAAE;oBAChE,KAAK,EAAE,eAAe;oBACtB,OAAO,EAAE;wBACP,MAAM,EAAE,IAAI;wBACZ,YAAY,EAAE,KAAK;qBACpB;iBACF,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAChD,qBAAqB,EACrB;oBACE,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,KAAK,EAAE,eAAe;oBACtB,MAAM,EAAE,IAAI;oBACZ,YAAY,EAAE,KAAK;iBACpB,CACF,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;YACjC,EAAE,CAAC,IAAI,CAAC;gBACN;oBACE,WAAW,EAAE,gBAAgB,CAAC,SAAS;oBACvC,SAAS,EAAE,SAAS;oBACpB,KAAK,EAAE,QAAQ;iBAChB;gBACD;oBACE,WAAW,EAAE,gBAAgB,CAAC,UAAU;oBACxC,SAAS,EAAE,UAAU;oBACrB,KAAK,EAAE,QAAQ;iBAChB;gBACD;oBACE,WAAW,EAAE,gBAAgB,CAAC,QAAQ;oBACtC,SAAS,EAAE,gBAAgB;oBAC3B,KAAK,EAAE,OAAO;iBACf;gBACD;oBACE,WAAW,EAAE,gBAAgB,CAAC,GAAG;oBACjC,SAAS,EAAE,gBAAgB;oBAC3B,KAAK,EAAE,QAAQ;iBAChB;gBACD;oBACE,WAAW,EAAE,gBAAgB,CAAC,SAAS;oBACvC,SAAS,EAAE,SAAS;oBACpB,KAAK,EAAE,QAAQ;iBAChB;aACF,CAAC,CACA,6CAA6C,EAC7C,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE;gBACpC,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,uBAAuB,CAAC,UAAU,EAAE,KAAK,EAAE;oBACzC,WAAW;oBACX,SAAS;iBACV,CAAC,CAAC;gBAEH,MAAM,kBAAkB,GAA4B;oBAClD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,WAAW;iBACZ,CAAC;gBAEF,IAAI,SAAS,EAAE,CAAC;oBACd,kBAAkB,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC;gBAC9C,CAAC;gBAED,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAChD,KAAK,EACL,kBAAkB,CACnB,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;YAC9B,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;gBAC5C,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,oBAAoB,CAAC,UAAU,EAAE,IAAI,EAAE;oBACrC,SAAS,EAAE,gBAAgB;iBAC5B,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE;oBACvD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,SAAS,EAAE,gBAAgB;iBAC5B,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;gBACnD,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,oBAAoB,CAAC,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;gBAE3C,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE;oBACvD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;iBACjC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;YACpC,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;gBACxC,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,0BAA0B,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;gBAE1C,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE;oBACpD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;iBACjC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;gBACxC,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,0BAA0B,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;gBAE1C,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE;oBACpD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;iBACjC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;YAC5C,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;gBAC/D,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,kCAAkC,CAAC,UAAU,EAAE,EAAE,EAAE;oBACjD,aAAa,EAAE,MAAM;oBACrB,KAAK,EAAE,kBAAkB,CAAC,UAAU;iBACrC,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,EAAE,EAAE;oBACrD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,aAAa,EAAE,MAAM;oBACrB,KAAK,EAAE,YAAY;iBACpB,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;gBAChE,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,kCAAkC,CAAC,UAAU,EAAE,EAAE,EAAE;oBACjD,aAAa,EAAE,MAAM;oBACrB,KAAK,EAAE,kBAAkB,CAAC,WAAW;iBACtC,CAAC,CAAC;gBACH,kCAAkC,CAAC,UAAU,EAAE,IAAI,EAAE;oBACnD,aAAa,EAAE,MAAM;oBACrB,KAAK,EAAE,kBAAkB,CAAC,SAAS;iBACpC,CAAC,CAAC;gBACH,kCAAkC,CAAC,UAAU,EAAE,EAAE,EAAE;oBACjD,aAAa,EAAE,MAAM;oBACrB,KAAK,EAAE,kBAAkB,CAAC,iBAAiB;iBAC5C,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAoB;gBAC5E,MAAM,CAAC,qBAAqB,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,EAAE,EAAE;oBAC3D,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,aAAa,EAAE,MAAM;oBACrB,KAAK,EAAE,aAAa;iBACrB,CAAC,CAAC;gBACH,MAAM,CAAC,qBAAqB,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,IAAI,EAAE;oBAC7D,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,aAAa,EAAE,MAAM;oBACrB,KAAK,EAAE,WAAW;iBACnB,CAAC,CAAC;gBACH,MAAM,CAAC,qBAAqB,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,EAAE,EAAE;oBAC3D,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,aAAa,EAAE,MAAM;oBACrB,KAAK,EAAE,mBAAmB;iBAC3B,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;YACrC,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;gBAChD,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,2BAA2B,CAAC,UAAU,EAAE,IAAI,EAAE;oBAC5C,KAAK,EAAE,YAAY;oBACnB,MAAM,EAAE,gBAAgB;oBACxB,OAAO,EAAE,aAAa;iBACvB,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE;oBACvD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,KAAK,EAAE,YAAY;oBACnB,MAAM,EAAE,gBAAgB;oBACxB,OAAO,EAAE,aAAa;iBACvB,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;gBACxD,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,2BAA2B,CAAC,UAAU,EAAE,KAAK,EAAE;oBAC7C,KAAK,EAAE,YAAY;oBACnB,MAAM,EAAE,sBAAsB;iBAC/B,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,KAAK,EAAE;oBACxD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,KAAK,EAAE,YAAY;oBACnB,MAAM,EAAE,sBAAsB;iBAC/B,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACzC,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;gBAC5D,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,+BAA+B,CAAC,UAAU,EAAE,EAAE,EAAE;oBAC9C,KAAK,EAAE,YAAY;oBACnB,KAAK,EAAE,eAAe,CAAC,mBAAmB;iBAC3C,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,EAAE,EAAE;oBACrD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,KAAK,EAAE,YAAY;oBACnB,KAAK,EAAE,qBAAqB;iBAC7B,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;gBAClE,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,+BAA+B,CAAC,UAAU,EAAE,GAAG,EAAE;oBAC/C,KAAK,EAAE,YAAY;oBACnB,KAAK,EAAE,eAAe,CAAC,eAAe;iBACvC,CAAC,CAAC;gBACH,+BAA+B,CAAC,UAAU,EAAE,GAAG,EAAE;oBAC/C,KAAK,EAAE,YAAY;oBACnB,KAAK,EAAE,eAAe,CAAC,mBAAmB;iBAC3C,CAAC,CAAC;gBACH,+BAA+B,CAAC,UAAU,EAAE,EAAE,EAAE;oBAC9C,KAAK,EAAE,YAAY;oBACnB,KAAK,EAAE,eAAe,CAAC,gBAAgB;iBACxC,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAoB;gBAC5E,MAAM,CAAC,qBAAqB,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,GAAG,EAAE;oBAC5D,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,KAAK,EAAE,YAAY;oBACnB,KAAK,EAAE,iBAAiB;iBACzB,CAAC,CAAC;gBACH,MAAM,CAAC,qBAAqB,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,GAAG,EAAE;oBAC5D,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,KAAK,EAAE,YAAY;oBACnB,KAAK,EAAE,qBAAqB;iBAC7B,CAAC,CAAC;gBACH,MAAM,CAAC,qBAAqB,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,EAAE,EAAE;oBAC3D,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,KAAK,EAAE,YAAY;oBACnB,KAAK,EAAE,kBAAkB;iBAC1B,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;YACtC,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;gBACpE,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,4BAA4B,CAAC,UAAU,EAAE,IAAI,EAAE;oBAC7C,QAAQ,EAAE,mBAAmB;oBAC7B,QAAQ,EAAE,IAAI;iBACf,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE;oBACvD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,QAAQ,EAAE,mBAAmB;oBAC7B,QAAQ,EAAE,IAAI;iBACf,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;gBAC1D,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,4BAA4B,CAAC,UAAU,EAAE,IAAI,EAAE;oBAC7C,QAAQ,EAAE,qBAAqB;iBAChC,CAAC,CAAC;gBAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE;oBACvD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,QAAQ,EAAE,qBAAqB;iBAChC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;YAC3C,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;gBACvE,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,gBAAgB,CAAC,SAAS,EAAE,CAAC;gBAC7B,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,iCAAiC,CAAC,UAAU,EAAE;oBAC5C,MAAM,EAAE,cAAc;oBACtB,aAAa,EAAE,IAAI;oBACnB,cAAc,EAAE,IAAI;oBACpB,QAAQ,EAAE,QAAQ;iBACnB,CAAC,CAAC;gBAEH,4BAA4B;gBAC5B,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE;oBAC/C,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,MAAM,EAAE,cAAc;oBACtB,QAAQ,EAAE,QAAQ;oBAClB,aAAa,EAAE,IAAI;oBACnB,cAAc,EAAE,IAAI;iBACrB,CAAC,CAAC;gBAEH,sDAAsD;gBACtD,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,EAAE,EAAE;oBACrD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,MAAM,EAAE,cAAc;oBACtB,QAAQ,EAAE,QAAQ;oBAClB,aAAa,EAAE,IAAI;oBACnB,cAAc,EAAE,IAAI;iBACrB,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;gBACtD,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,gBAAgB,CAAC,SAAS,EAAE,CAAC;gBAC7B,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,iCAAiC,CAAC,UAAU,EAAE;oBAC5C,MAAM,EAAE,cAAc;oBACtB,aAAa,EAAE,GAAG;oBAClB,cAAc,EAAE,CAAC;oBACjB,QAAQ,EAAE,MAAM;iBACjB,CAAC,CAAC;gBAEH,2CAA2C;gBAC3C,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE;oBAC/C,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,MAAM,EAAE,cAAc;oBACtB,QAAQ,EAAE,MAAM;oBAChB,aAAa,EAAE,GAAG;oBAClB,cAAc,EAAE,CAAC;iBAClB,CAAC,CAAC;gBAEH,qDAAqD;gBACrD,MAAM,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YACvD,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;gBACjD,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,gBAAgB,CAAC,SAAS,EAAE,CAAC;gBAE7B,iCAAiC,CAAC,UAAU,EAAE;oBAC5C,MAAM,EAAE,aAAa;oBACrB,aAAa,EAAE,GAAG;oBAClB,cAAc,EAAE,GAAG;oBACnB,QAAQ,EAAE,KAAK;iBAChB,CAAC,CAAC;gBACH,iCAAiC,CAAC,UAAU,EAAE;oBAC5C,MAAM,EAAE,WAAW;oBACnB,aAAa,EAAE,EAAE;oBACjB,cAAc,EAAE,EAAE;oBAClB,QAAQ,EAAE,MAAM;iBACjB,CAAC,CAAC;gBAEH,MAAM,CAAC,gBAAgB,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,CAAC,EAAE;oBACrD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,MAAM,EAAE,aAAa;oBACrB,QAAQ,EAAE,KAAK;oBACf,aAAa,EAAE,GAAG;oBAClB,cAAc,EAAE,GAAG;iBACpB,CAAC,CAAC;gBACH,MAAM,CAAC,gBAAgB,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,CAAC,EAAE;oBACrD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,MAAM,EAAE,WAAW;oBACnB,QAAQ,EAAE,MAAM;oBAChB,aAAa,EAAE,EAAE;oBACjB,cAAc,EAAE,EAAE;iBACnB,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;YACxC,EAAE,CAAC,0DAA0D,EAAE,GAAG,EAAE;gBAClE,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,8BAA8B,CAAC,UAAU,EAAE;oBACzC,MAAM,EAAE,cAAc;oBACtB,aAAa,EAAE,GAAG;oBAClB,cAAc,EAAE,GAAG;oBACnB,QAAQ,EAAE,sBAAsB;iBACjC,CAAC,CAAC;gBAEH,8CAA8C;gBAC9C,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,EAAE,EAAE;oBACrD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,MAAM,EAAE,cAAc;oBACtB,QAAQ,EAAE,sBAAsB;oBAChC,aAAa,EAAE,GAAG;oBAClB,cAAc,EAAE,GAAG;iBACpB,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;gBAChE,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,8BAA8B,CAAC,UAAU,EAAE;oBACzC,MAAM,EAAE,cAAc;oBACtB,aAAa,EAAE,GAAG;oBAClB,cAAc,EAAE,IAAI;oBACpB,QAAQ,EAAE,cAAc;iBACzB,CAAC,CAAC;gBAEH,iDAAiD;gBACjD,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE,EAAE;oBACtD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,MAAM,EAAE,cAAc;oBACtB,QAAQ,EAAE,cAAc;oBACxB,aAAa,EAAE,GAAG;oBAClB,cAAc,EAAE,IAAI;iBACrB,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;gBAC3D,kCAAkC;gBAClC,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAE9D,CAAC;gBACF,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAEpD,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,8BAA8B,CAAC,UAAU,EAAE;oBACzC,MAAM,EAAE,YAAY;oBACpB,aAAa,EAAE,EAAE;oBACjB,cAAc,EAAE,CAAC;oBACjB,QAAQ,EAAE,SAAS;iBACpB,CAAC,CAAC;gBAEH,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAClC,8CAA8C,CAC/C,CAAC;gBACF,MAAM,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YACvD,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;YACrC,IAAI,2BAAgF,CAAC;YAErF,UAAU,CAAC,KAAK,IAAI,EAAE;gBACpB,2BAA2B,GAAG,CAAC,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;qBACzD,qBAAqB,CAAC;YAC3B,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;gBACpE,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,gBAAgB,CAAC,SAAS,EAAE,CAAC;gBAC7B,qBAAqB,CAAC,SAAS,EAAE,CAAC;gBAElC,2BAA2B,CACzB,UAAU,EACV,YAAY,EACZ,WAAW,EACX,GAAG,EACH,IAAI,CACL,CAAC;gBAEF,0BAA0B;gBAC1B,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE;oBAC/C,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,eAAe,EAAE,YAAY;oBAC7B,SAAS,EAAE,WAAW;oBACtB,OAAO,EAAE,IAAI;iBACd,CAAC,CAAC;gBAEH,4BAA4B;gBAC5B,MAAM,CAAC,qBAAqB,CAAC,CAAC,oBAAoB,CAAC,GAAG,EAAE;oBACtD,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,eAAe,EAAE,YAAY;oBAC7B,SAAS,EAAE,WAAW;oBACtB,OAAO,EAAE,IAAI;iBACd,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;gBACjE,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,gBAAgB,CAAC,SAAS,EAAE,CAAC;gBAE7B,qDAAqD;gBACrD,2BAA2B,CACzB,UAAU,EACV,YAAY,EACZ,0DAA0D,EAC1D,GAAG,EACH,IAAI,CACL,CAAC;gBAEF,0FAA0F;gBAC1F,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,CAAC,CAAC,EAAE;oBAC/C,YAAY,EAAE,iBAAiB;oBAC/B,iBAAiB,EAAE,sBAAsB;oBACzC,YAAY,EAAE,kBAAkB;oBAChC,eAAe,EAAE,YAAY;oBAC7B,SAAS,EAAE,kBAAkB,EAAE,YAAY;oBAC3C,OAAO,EAAE,IAAI;iBACd,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;gBAC/C,uBAAuB,CAAC,UAAU,CAAC,CAAC;gBACpC,gBAAgB,CAAC,SAAS,EAAE,CAAC;gBAE7B,eAAe;gBACf,2BAA2B,CACzB,UAAU,EACV,YAAY,EACZ,WAAW,EACX,GAAG,EACH,IAAI,CACL,CAAC;gBAEF,MAAM,CAAC,gBAAgB,CAAC,CAAC,uBAAuB,CAC9C,CAAC,EACD,CAAC,EACD,MAAM,CAAC,gBAAgB,CAAC;oBACtB,eAAe,EAAE,YAAY;oBAC7B,SAAS,EAAE,WAAW;oBACtB,OAAO,EAAE,IAAI;iBACd,CAAC,CACH,CAAC;gBAEF,eAAe;gBACf,2BAA2B,CACzB,UAAU,EACV,WAAW,EACX,WAAW,EACX,GAAG,EACH,KAAK,CACN,CAAC;gBAEF,MAAM,CAAC,gBAAgB,CAAC,CAAC,uBAAuB,CAC9C,CAAC,EACD,CAAC,EACD,MAAM,CAAC,gBAAgB,CAAC;oBACtB,eAAe,EAAE,WAAW;oBAC5B,SAAS,EAAE,WAAW;oBACtB,OAAO,EAAE,KAAK;iBACf,CAAC,CACH,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"metrics.test.js","sourceRoot":"","sources":["../../../src/telemetry/metrics.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 Google LLC
|
|
4
|
+
* Portions Copyright 2025 TerminaI Authors
|
|
5
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
6
|
+
*/
|
|
7
|
+
import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
|
|
8
|
+
import { ApprovalMode } from '../../policy/types.js';
|
|
9
|
+
// Track the evaluateBrain calls
|
|
10
|
+
let evaluateBrainCalls = [];
|
|
11
|
+
// Mock BrainRiskManager to capture evaluateBrain calls
|
|
12
|
+
vi.mock('../../brain/toolIntegration.js', () => ({
|
|
13
|
+
BrainRiskManager: vi.fn().mockImplementation(() => ({
|
|
14
|
+
evaluateBrain: vi
|
|
15
|
+
.fn()
|
|
16
|
+
.mockImplementation((request, commandOrAction, systemContext) => {
|
|
17
|
+
evaluateBrainCalls.push({
|
|
18
|
+
request,
|
|
19
|
+
commandOrAction,
|
|
20
|
+
systemContext,
|
|
21
|
+
});
|
|
22
|
+
return Promise.resolve({
|
|
23
|
+
assessment: { overallRisk: 'low' },
|
|
24
|
+
decision: { requiresConfirmation: false },
|
|
25
|
+
confidenceAction: { type: 'proceed' },
|
|
26
|
+
request,
|
|
27
|
+
});
|
|
28
|
+
}),
|
|
29
|
+
applyBrainAuthority: vi.fn((review) => review),
|
|
30
|
+
formatRiskPreamble: vi
|
|
31
|
+
.fn()
|
|
32
|
+
.mockReturnValue({ text: '', surfaceToUser: false }),
|
|
33
|
+
recordOutcome: vi.fn(),
|
|
34
|
+
getBrainContext: vi.fn().mockReturnValue(null),
|
|
35
|
+
})),
|
|
36
|
+
}));
|
|
37
|
+
// Now import EditTool after mock is set up
|
|
38
|
+
import { EditTool } from '../edit.js';
|
|
39
|
+
// Skip on Windows - tests time out due to platform-specific issues
|
|
40
|
+
describe.skipIf(process.platform === 'win32')('EditTool Risk Assessment (P0.4)', () => {
|
|
41
|
+
let mockConfig;
|
|
42
|
+
let mockFileSystemService;
|
|
43
|
+
beforeEach(() => {
|
|
44
|
+
evaluateBrainCalls = [];
|
|
45
|
+
mockFileSystemService = {
|
|
46
|
+
writeTextFile: vi.fn().mockResolvedValue(undefined),
|
|
47
|
+
readTextFile: vi.fn().mockRejectedValue({ code: 'ENOENT' }),
|
|
48
|
+
};
|
|
49
|
+
mockConfig = {
|
|
50
|
+
isInteractive: () => true,
|
|
51
|
+
getApprovalMode: () => ApprovalMode.DEFAULT,
|
|
52
|
+
getWorkspaceContext: () => ({
|
|
53
|
+
targetDir: '/app',
|
|
54
|
+
isPathWithinWorkspace: vi.fn().mockReturnValue(true),
|
|
55
|
+
getDirectories: vi.fn().mockReturnValue(['/app']),
|
|
56
|
+
}),
|
|
57
|
+
getAllowedTools: () => [],
|
|
58
|
+
getTargetDir: () => '/app',
|
|
59
|
+
// Use 'governing' authority to ensure brain evaluation is called
|
|
60
|
+
getBrainAuthority: () => 'governing',
|
|
61
|
+
getSecurityProfile: () => 'balanced',
|
|
62
|
+
getTrustedDomains: () => [],
|
|
63
|
+
getCriticalPaths: () => [],
|
|
64
|
+
getFileSystemService: () => mockFileSystemService,
|
|
65
|
+
getGeminiClient: () => null,
|
|
66
|
+
getBaseLlmClient: () => ({
|
|
67
|
+
generateContent: vi.fn().mockResolvedValue({
|
|
68
|
+
candidates: [{ content: { parts: [{ text: '{}' }] } }],
|
|
69
|
+
}),
|
|
70
|
+
}),
|
|
71
|
+
getIdeMode: () => false,
|
|
72
|
+
};
|
|
73
|
+
});
|
|
74
|
+
afterEach(() => {
|
|
75
|
+
vi.clearAllMocks();
|
|
76
|
+
});
|
|
77
|
+
it('sanitizes input for brain risk assessment (no raw content) for new file', async () => {
|
|
78
|
+
// Simulate file doesn't exist (new file creation)
|
|
79
|
+
mockFileSystemService.readTextFile = vi
|
|
80
|
+
.fn()
|
|
81
|
+
.mockRejectedValue({ code: 'ENOENT' });
|
|
82
|
+
const tool = new EditTool(mockConfig);
|
|
83
|
+
const params = {
|
|
84
|
+
file_path: '/app/secret.txt',
|
|
85
|
+
old_string: '', // Empty means new file
|
|
86
|
+
new_string: 'super secret API_KEY=12345',
|
|
87
|
+
};
|
|
88
|
+
const invocation = tool.build(params);
|
|
89
|
+
// Call shouldConfirmExecute which triggers brain evaluation
|
|
90
|
+
await invocation.shouldConfirmExecute(new AbortController().signal);
|
|
91
|
+
// For new file creation, the approval ladder may give level A which
|
|
92
|
+
// combined with brain evaluation means brain may or may not be called.
|
|
93
|
+
// This test focuses on ensuring if brain IS called, it's sanitized.
|
|
94
|
+
// The edit test below validates the sanitization logic more thoroughly.
|
|
95
|
+
if (evaluateBrainCalls.length > 0) {
|
|
96
|
+
const call = evaluateBrainCalls[0];
|
|
97
|
+
const riskDescription = call.commandOrAction;
|
|
98
|
+
// Critical assertions:
|
|
99
|
+
// 1. Must NOT contain raw param content (secrets)
|
|
100
|
+
expect(riskDescription).not.toContain('super secret');
|
|
101
|
+
expect(riskDescription).not.toContain('API_KEY');
|
|
102
|
+
expect(riskDescription).not.toContain('12345');
|
|
103
|
+
// 2. Must contain metadata about the operation
|
|
104
|
+
expect(riskDescription).toContain('Creating new file');
|
|
105
|
+
expect(riskDescription).toContain('chars');
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
it('sanitizes input for brain risk assessment (no raw content) for edit', async () => {
|
|
109
|
+
// Simulate existing file
|
|
110
|
+
mockFileSystemService.readTextFile = vi
|
|
111
|
+
.fn()
|
|
112
|
+
.mockResolvedValue('old secret content with PASSWORD=abc123');
|
|
113
|
+
const tool = new EditTool(mockConfig);
|
|
114
|
+
const params = {
|
|
115
|
+
file_path: '/app/config.env',
|
|
116
|
+
old_string: 'old secret content with PASSWORD=abc123',
|
|
117
|
+
new_string: 'new secret content with PASSWORD=xyz789',
|
|
118
|
+
};
|
|
119
|
+
const invocation = tool.build(params);
|
|
120
|
+
await invocation.shouldConfirmExecute(new AbortController().signal);
|
|
121
|
+
// Verify evaluateBrain was called
|
|
122
|
+
expect(evaluateBrainCalls.length).toBeGreaterThan(0);
|
|
123
|
+
const call = evaluateBrainCalls[0];
|
|
124
|
+
const riskDescription = call.commandOrAction;
|
|
125
|
+
// Critical assertions:
|
|
126
|
+
// 1. Must NOT contain raw param content (secrets)
|
|
127
|
+
expect(riskDescription).not.toContain('old secret content');
|
|
128
|
+
expect(riskDescription).not.toContain('new secret content');
|
|
129
|
+
expect(riskDescription).not.toContain('PASSWORD');
|
|
130
|
+
expect(riskDescription).not.toContain('abc123');
|
|
131
|
+
expect(riskDescription).not.toContain('xyz789');
|
|
132
|
+
// 2. Must contain metadata about the operation
|
|
133
|
+
expect(riskDescription).toContain('Replacing');
|
|
134
|
+
expect(riskDescription).toContain('chars');
|
|
135
|
+
expect(riskDescription).toContain('.env'); // file extension
|
|
136
|
+
});
|
|
137
|
+
});
|
|
138
|
+
//# sourceMappingURL=edit.risk.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edit.risk.test.js","sourceRoot":"","sources":["../../../../src/tools/__tests__/edit.risk.test.ts"],"names":[],"mappings":"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"}
|