@machina.ai/cell-cli-core 1.8.2-rc1 → 1.11.0-rc1
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/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/package.json +5 -3
- package/dist/src/agents/codebase-investigator.d.ts +36 -1
- package/dist/src/agents/codebase-investigator.js +93 -34
- package/dist/src/agents/codebase-investigator.js.map +1 -1
- package/dist/src/agents/executor.d.ts +15 -11
- package/dist/src/agents/executor.js +271 -115
- package/dist/src/agents/executor.js.map +1 -1
- package/dist/src/agents/executor.test.js +508 -242
- package/dist/src/agents/executor.test.js.map +1 -1
- package/dist/src/agents/invocation.d.ts +5 -2
- package/dist/src/agents/invocation.js +4 -2
- package/dist/src/agents/invocation.js.map +1 -1
- package/dist/src/agents/invocation.test.js +9 -0
- package/dist/src/agents/invocation.test.js.map +1 -1
- package/dist/src/agents/registry.d.ts +2 -1
- package/dist/src/agents/registry.js +28 -4
- package/dist/src/agents/registry.js.map +1 -1
- package/dist/src/agents/subagent-tool-wrapper.d.ts +3 -1
- package/dist/src/agents/subagent-tool-wrapper.js +4 -3
- package/dist/src/agents/subagent-tool-wrapper.js.map +1 -1
- package/dist/src/agents/subagent-tool-wrapper.test.js +8 -1
- package/dist/src/agents/subagent-tool-wrapper.test.js.map +1 -1
- package/dist/src/agents/types.d.ts +35 -6
- package/dist/src/agents/types.js +1 -0
- package/dist/src/agents/types.js.map +1 -1
- package/dist/src/code_assist/converter.d.ts +1 -0
- package/dist/src/code_assist/converter.js +1 -0
- package/dist/src/code_assist/converter.js.map +1 -1
- package/dist/src/code_assist/converter.test.js +19 -0
- package/dist/src/code_assist/converter.test.js.map +1 -1
- package/dist/src/code_assist/oauth-credential-storage.js +1 -1
- package/dist/src/code_assist/oauth-credential-storage.js.map +1 -1
- package/dist/src/code_assist/oauth-credential-storage.test.js +1 -1
- package/dist/src/code_assist/oauth-credential-storage.test.js.map +1 -1
- package/dist/src/code_assist/oauth2.js +13 -12
- package/dist/src/code_assist/oauth2.js.map +1 -1
- package/dist/src/code_assist/oauth2.test.js +14 -13
- package/dist/src/code_assist/oauth2.test.js.map +1 -1
- package/dist/src/code_assist/setup.js +4 -2
- package/dist/src/code_assist/setup.js.map +1 -1
- package/dist/src/config/config.d.ts +58 -18
- package/dist/src/config/config.js +125 -36
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/config.test.js +125 -18
- package/dist/src/config/config.test.js.map +1 -1
- package/dist/src/config/storage.d.ts +0 -1
- package/dist/src/config/storage.js +2 -2
- package/dist/src/config/storage.js.map +1 -1
- package/dist/src/config/storage.test.js +7 -6
- package/dist/src/config/storage.test.js.map +1 -1
- package/dist/src/confirmation-bus/message-bus.d.ts +2 -1
- package/dist/src/confirmation-bus/message-bus.js +7 -1
- package/dist/src/confirmation-bus/message-bus.js.map +1 -1
- package/dist/src/confirmation-bus/types.d.ts +12 -2
- package/dist/src/confirmation-bus/types.js +1 -0
- package/dist/src/confirmation-bus/types.js.map +1 -1
- package/dist/src/core/client.d.ts +3 -1
- package/dist/src/core/client.js +70 -19
- package/dist/src/core/client.js.map +1 -1
- package/dist/src/core/client.test.js +199 -25
- package/dist/src/core/client.test.js.map +1 -1
- package/dist/src/core/contentGenerator.js +3 -1
- package/dist/src/core/contentGenerator.js.map +1 -1
- package/dist/src/core/coreToolScheduler.d.ts +7 -0
- package/dist/src/core/coreToolScheduler.js +58 -22
- package/dist/src/core/coreToolScheduler.js.map +1 -1
- package/dist/src/core/coreToolScheduler.test.js +351 -3
- package/dist/src/core/coreToolScheduler.test.js.map +1 -1
- package/dist/src/core/geminiChat.d.ts +7 -11
- package/dist/src/core/geminiChat.js +33 -70
- package/dist/src/core/geminiChat.js.map +1 -1
- package/dist/src/core/geminiChat.test.js +93 -228
- package/dist/src/core/geminiChat.test.js.map +1 -1
- package/dist/src/core/logger.js +11 -10
- package/dist/src/core/logger.js.map +1 -1
- package/dist/src/core/logger.test.js +2 -2
- package/dist/src/core/logger.test.js.map +1 -1
- package/dist/src/core/nonInteractiveToolExecutor.d.ts +3 -2
- package/dist/src/core/nonInteractiveToolExecutor.js +2 -2
- package/dist/src/core/nonInteractiveToolExecutor.js.map +1 -1
- package/dist/src/core/nonInteractiveToolExecutor.test.js +11 -8
- package/dist/src/core/nonInteractiveToolExecutor.test.js.map +1 -1
- package/dist/src/core/prompts.d.ts +2 -1
- package/dist/src/core/prompts.js +58 -123
- package/dist/src/core/prompts.js.map +1 -1
- package/dist/src/core/prompts.test.js +83 -29
- package/dist/src/core/prompts.test.js.map +1 -1
- package/dist/src/core/turn.d.ts +16 -2
- package/dist/src/core/turn.js +15 -2
- package/dist/src/core/turn.js.map +1 -1
- package/dist/src/core/turn.test.js +62 -2
- package/dist/src/core/turn.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/ide/detect-ide.test.js +11 -0
- package/dist/src/ide/detect-ide.test.js.map +1 -1
- package/dist/src/ide/ide-client.js +5 -4
- package/dist/src/ide/ide-client.js.map +1 -1
- package/dist/src/ide/ide-client.test.js +4 -4
- package/dist/src/ide/ide-installer.js +1 -1
- package/dist/src/ide/ide-installer.js.map +1 -1
- package/dist/src/ide/ide-installer.test.js +13 -1
- package/dist/src/ide/ide-installer.test.js.map +1 -1
- package/dist/src/ide/process-utils.js +85 -75
- package/dist/src/ide/process-utils.js.map +1 -1
- package/dist/src/ide/process-utils.test.js +83 -90
- package/dist/src/ide/process-utils.test.js.map +1 -1
- package/dist/src/index.d.ts +6 -0
- package/dist/src/index.js +6 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/mcp/oauth-provider.js +21 -20
- package/dist/src/mcp/oauth-provider.js.map +1 -1
- package/dist/src/mcp/oauth-utils.js +9 -8
- package/dist/src/mcp/oauth-utils.js.map +1 -1
- package/dist/src/mcp/oauth-utils.test.js +13 -2
- package/dist/src/mcp/oauth-utils.test.js.map +1 -1
- package/dist/src/mcp/token-storage/file-token-storage.js +2 -1
- package/dist/src/mcp/token-storage/file-token-storage.js.map +1 -1
- package/dist/src/mcp/token-storage/file-token-storage.test.js +4 -3
- package/dist/src/mcp/token-storage/file-token-storage.test.js.map +1 -1
- package/dist/src/output/stream-json-formatter.d.ts +32 -0
- package/dist/src/output/stream-json-formatter.js +52 -0
- package/dist/src/output/stream-json-formatter.js.map +1 -0
- package/dist/src/output/stream-json-formatter.test.js +479 -0
- package/dist/src/output/stream-json-formatter.test.js.map +1 -0
- package/dist/src/output/types.d.ts +63 -1
- package/dist/src/output/types.js +11 -0
- package/dist/src/output/types.js.map +1 -1
- package/dist/src/prompts/prompt-registry.js +2 -1
- package/dist/src/prompts/prompt-registry.js.map +1 -1
- package/dist/src/routing/strategies/classifierStrategy.js +3 -2
- package/dist/src/routing/strategies/classifierStrategy.js.map +1 -1
- package/dist/src/services/chatRecordingService.d.ts +2 -1
- package/dist/src/services/chatRecordingService.js +2 -1
- package/dist/src/services/chatRecordingService.js.map +1 -1
- package/dist/src/services/loopDetectionService.js +3 -2
- package/dist/src/services/loopDetectionService.js.map +1 -1
- package/dist/src/services/shellExecutionService.d.ts +1 -0
- package/dist/src/services/shellExecutionService.js +177 -91
- package/dist/src/services/shellExecutionService.js.map +1 -1
- package/dist/src/services/shellExecutionService.test.js +113 -12
- package/dist/src/services/shellExecutionService.test.js.map +1 -1
- package/dist/src/telemetry/activity-monitor.d.ts +116 -0
- package/dist/src/telemetry/activity-monitor.js +209 -0
- package/dist/src/telemetry/activity-monitor.js.map +1 -0
- package/dist/src/telemetry/activity-monitor.test.d.ts +6 -0
- package/dist/src/telemetry/activity-monitor.test.js +248 -0
- package/dist/src/telemetry/activity-monitor.test.js.map +1 -0
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +15 -2
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +154 -31
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +84 -15
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +1 -1
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +16 -3
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +38 -5
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
- package/dist/src/telemetry/constants.d.ts +0 -28
- package/dist/src/telemetry/constants.js +0 -29
- package/dist/src/telemetry/constants.js.map +1 -1
- package/dist/src/telemetry/index.d.ts +6 -3
- package/dist/src/telemetry/index.js +12 -4
- package/dist/src/telemetry/index.js.map +1 -1
- package/dist/src/telemetry/loggers.d.ts +8 -2
- package/dist/src/telemetry/loggers.js +165 -299
- package/dist/src/telemetry/loggers.js.map +1 -1
- package/dist/src/telemetry/loggers.test.js +213 -21
- package/dist/src/telemetry/loggers.test.js.map +1 -1
- package/dist/src/telemetry/memory-monitor.d.ts +149 -0
- package/dist/src/telemetry/memory-monitor.js +335 -0
- package/dist/src/telemetry/memory-monitor.js.map +1 -0
- package/dist/src/telemetry/memory-monitor.test.d.ts +6 -0
- package/dist/src/telemetry/memory-monitor.test.js +472 -0
- package/dist/src/telemetry/memory-monitor.test.js.map +1 -0
- package/dist/src/telemetry/metrics.d.ts +131 -4
- package/dist/src/telemetry/metrics.js +182 -6
- package/dist/src/telemetry/metrics.js.map +1 -1
- package/dist/src/telemetry/metrics.test.js +360 -1
- package/dist/src/telemetry/metrics.test.js.map +1 -1
- package/dist/src/telemetry/sdk.js +3 -2
- package/dist/src/telemetry/sdk.js.map +1 -1
- package/dist/src/telemetry/telemetryAttributes.d.ts +8 -0
- package/dist/src/telemetry/telemetryAttributes.js +18 -0
- package/dist/src/telemetry/telemetryAttributes.js.map +1 -0
- package/dist/src/telemetry/types.d.ts +163 -7
- package/dist/src/telemetry/types.js +691 -38
- package/dist/src/telemetry/types.js.map +1 -1
- package/dist/src/telemetry/uiTelemetry.d.ts +1 -1
- package/dist/src/telemetry/uiTelemetry.js +1 -1
- package/dist/src/telemetry/uiTelemetry.js.map +1 -1
- package/dist/src/telemetry/uiTelemetry.test.js +1 -1
- package/dist/src/telemetry/uiTelemetry.test.js.map +1 -1
- package/dist/src/tools/edit.js +8 -7
- package/dist/src/tools/edit.js.map +1 -1
- package/dist/src/tools/edit.test.js +0 -1
- package/dist/src/tools/edit.test.js.map +1 -1
- package/dist/src/tools/glob.d.ts +3 -2
- package/dist/src/tools/glob.js +8 -7
- package/dist/src/tools/glob.js.map +1 -1
- package/dist/src/tools/grep.d.ts +3 -2
- package/dist/src/tools/grep.js +20 -14
- package/dist/src/tools/grep.js.map +1 -1
- package/dist/src/tools/ls.d.ts +3 -2
- package/dist/src/tools/ls.js +8 -7
- package/dist/src/tools/ls.js.map +1 -1
- package/dist/src/tools/mcp-client-manager.d.ts +2 -9
- package/dist/src/tools/mcp-client-manager.js +6 -14
- package/dist/src/tools/mcp-client-manager.js.map +1 -1
- package/dist/src/tools/mcp-client-manager.test.js +16 -6
- package/dist/src/tools/mcp-client-manager.test.js.map +1 -1
- package/dist/src/tools/mcp-client.d.ts +3 -2
- package/dist/src/tools/mcp-client.js +49 -52
- package/dist/src/tools/mcp-client.js.map +1 -1
- package/dist/src/tools/mcp-client.test.js +168 -5
- package/dist/src/tools/mcp-client.test.js.map +1 -1
- package/dist/src/tools/mcp-tool.d.ts +2 -1
- package/dist/src/tools/mcp-tool.js +7 -3
- package/dist/src/tools/mcp-tool.js.map +1 -1
- package/dist/src/tools/memoryTool.d.ts +2 -2
- package/dist/src/tools/memoryTool.js +4 -4
- package/dist/src/tools/memoryTool.js.map +1 -1
- package/dist/src/tools/memoryTool.test.js +9 -8
- package/dist/src/tools/memoryTool.test.js.map +1 -1
- package/dist/src/tools/message-bus-integration.test.js +14 -1
- package/dist/src/tools/message-bus-integration.test.js.map +1 -1
- package/dist/src/tools/read-file.d.ts +4 -3
- package/dist/src/tools/read-file.js +9 -8
- package/dist/src/tools/read-file.js.map +1 -1
- package/dist/src/tools/read-many-files.d.ts +4 -3
- package/dist/src/tools/read-many-files.js +11 -8
- package/dist/src/tools/read-many-files.js.map +1 -1
- package/dist/src/tools/read-many-files.test.js +0 -1
- package/dist/src/tools/read-many-files.test.js.map +1 -1
- package/dist/src/tools/ripGrep.d.ts +3 -2
- package/dist/src/tools/ripGrep.js +47 -17
- package/dist/src/tools/ripGrep.js.map +1 -1
- package/dist/src/tools/ripGrep.test.js +106 -60
- package/dist/src/tools/ripGrep.test.js.map +1 -1
- package/dist/src/tools/shell.d.ts +1 -1
- package/dist/src/tools/shell.js +31 -14
- package/dist/src/tools/shell.js.map +1 -1
- package/dist/src/tools/shell.test.js +63 -9
- package/dist/src/tools/shell.test.js.map +1 -1
- package/dist/src/tools/smart-edit.d.ts +1 -20
- package/dist/src/tools/smart-edit.js +64 -61
- package/dist/src/tools/smart-edit.js.map +1 -1
- package/dist/src/tools/smart-edit.test.js +70 -87
- package/dist/src/tools/smart-edit.test.js.map +1 -1
- package/dist/src/tools/tool-error.d.ts +21 -0
- package/dist/src/tools/tool-error.js +27 -0
- package/dist/src/tools/tool-error.js.map +1 -1
- package/dist/src/tools/tool-names.d.ts +17 -0
- package/dist/src/tools/tool-names.js +21 -0
- package/dist/src/tools/tool-names.js.map +1 -0
- package/dist/src/tools/tool-registry.js +4 -3
- package/dist/src/tools/tool-registry.js.map +1 -1
- package/dist/src/tools/tools.d.ts +17 -10
- package/dist/src/tools/tools.js +54 -39
- package/dist/src/tools/tools.js.map +1 -1
- package/dist/src/tools/web-fetch.d.ts +11 -3
- package/dist/src/tools/web-fetch.js +90 -32
- package/dist/src/tools/web-fetch.js.map +1 -1
- package/dist/src/tools/web-fetch.test.js +388 -8
- package/dist/src/tools/web-fetch.test.js.map +1 -1
- package/dist/src/tools/web-search.d.ts +4 -3
- package/dist/src/tools/web-search.js +10 -7
- package/dist/src/tools/web-search.js.map +1 -1
- package/dist/src/tools/write-file.d.ts +1 -1
- package/dist/src/tools/write-file.js +3 -2
- package/dist/src/tools/write-file.js.map +1 -1
- package/dist/src/tools/write-file.test.js +0 -1
- package/dist/src/tools/write-file.test.js.map +1 -1
- package/dist/src/tools/write-todos.d.ts +3 -8
- package/dist/src/tools/write-todos.js +14 -7
- package/dist/src/tools/write-todos.js.map +1 -1
- package/dist/src/tools/write-todos.test.js +2 -2
- package/dist/src/tools/write-todos.test.js.map +1 -1
- package/dist/src/utils/bfsFileSearch.js +3 -2
- package/dist/src/utils/bfsFileSearch.js.map +1 -1
- package/dist/src/utils/debugLogger.d.ts +25 -0
- package/dist/src/utils/debugLogger.js +33 -0
- package/dist/src/utils/debugLogger.js.map +1 -0
- package/dist/src/utils/debugLogger.test.d.ts +6 -0
- package/dist/src/utils/debugLogger.test.js +67 -0
- package/dist/src/utils/debugLogger.test.js.map +1 -0
- package/dist/src/utils/delay.d.ts +16 -0
- package/dist/src/utils/delay.js +43 -0
- package/dist/src/utils/delay.js.map +1 -0
- package/dist/src/utils/delay.test.d.ts +6 -0
- package/dist/src/utils/delay.test.js +88 -0
- package/dist/src/utils/delay.test.js.map +1 -0
- package/dist/src/utils/editCorrector.js +6 -10
- package/dist/src/utils/editCorrector.js.map +1 -1
- package/dist/src/utils/editCorrector.test.js +3 -5
- package/dist/src/utils/editCorrector.test.js.map +1 -1
- package/dist/src/utils/editor.js +33 -37
- package/dist/src/utils/editor.js.map +1 -1
- package/dist/src/utils/editor.test.js +1 -0
- package/dist/src/utils/editor.test.js.map +1 -1
- package/dist/src/utils/environmentContext.js +0 -33
- package/dist/src/utils/environmentContext.js.map +1 -1
- package/dist/src/utils/environmentContext.test.js +0 -34
- package/dist/src/utils/environmentContext.test.js.map +1 -1
- package/dist/src/utils/fetch.d.ts +1 -0
- package/dist/src/utils/fetch.js +9 -0
- package/dist/src/utils/fetch.js.map +1 -1
- package/dist/src/utils/fileUtils.d.ts +4 -0
- package/dist/src/utils/fileUtils.js +34 -2
- package/dist/src/utils/fileUtils.js.map +1 -1
- package/dist/src/utils/fileUtils.test.js +12 -1
- package/dist/src/utils/fileUtils.test.js.map +1 -1
- package/dist/src/utils/formatters.d.ts +1 -0
- package/dist/src/utils/formatters.js +2 -1
- package/dist/src/utils/formatters.js.map +1 -1
- package/dist/src/utils/formatters.test.d.ts +6 -0
- package/dist/src/utils/formatters.test.js +26 -0
- package/dist/src/utils/formatters.test.js.map +1 -0
- package/dist/src/utils/getFolderStructure.js +2 -1
- package/dist/src/utils/getFolderStructure.js.map +1 -1
- package/dist/src/utils/getFolderStructure.test.js +7 -6
- package/dist/src/utils/getFolderStructure.test.js.map +1 -1
- package/dist/src/utils/gitIgnoreParser.js +7 -6
- package/dist/src/utils/gitIgnoreParser.js.map +1 -1
- package/dist/src/utils/gitIgnoreParser.test.js +30 -0
- package/dist/src/utils/gitIgnoreParser.test.js.map +1 -1
- package/dist/src/utils/installationManager.test.js +2 -1
- package/dist/src/utils/installationManager.test.js.map +1 -1
- package/dist/src/utils/llm-edit-fixer.js +5 -4
- package/dist/src/utils/llm-edit-fixer.js.map +1 -1
- package/dist/src/utils/memoryDiscovery.d.ts +3 -1
- package/dist/src/utils/memoryDiscovery.js +14 -12
- package/dist/src/utils/memoryDiscovery.js.map +1 -1
- package/dist/src/utils/memoryDiscovery.test.js +136 -36
- package/dist/src/utils/memoryDiscovery.test.js.map +1 -1
- package/dist/src/utils/memoryImportProcessor.js +3 -2
- package/dist/src/utils/memoryImportProcessor.js.map +1 -1
- package/dist/src/utils/nextSpeakerChecker.js +2 -1
- package/dist/src/utils/nextSpeakerChecker.js.map +1 -1
- package/dist/src/utils/pathCorrector.d.ts +25 -0
- package/dist/src/utils/pathCorrector.js +33 -0
- package/dist/src/utils/pathCorrector.js.map +1 -0
- package/dist/src/utils/pathCorrector.test.d.ts +6 -0
- package/dist/src/utils/pathCorrector.test.js +83 -0
- package/dist/src/utils/pathCorrector.test.js.map +1 -0
- package/dist/src/utils/retry.d.ts +3 -1
- package/dist/src/utils/retry.js +44 -33
- package/dist/src/utils/retry.js.map +1 -1
- package/dist/src/utils/retry.test.js +102 -40
- package/dist/src/utils/retry.test.js.map +1 -1
- package/dist/src/utils/safeJsonStringify.d.ts +4 -4
- package/dist/src/utils/safeJsonStringify.js +31 -7
- package/dist/src/utils/safeJsonStringify.js.map +1 -1
- package/dist/src/utils/shell-utils.d.ts +15 -2
- package/dist/src/utils/shell-utils.js +354 -137
- package/dist/src/utils/shell-utils.js.map +1 -1
- package/dist/src/utils/shell-utils.test.js +154 -60
- package/dist/src/utils/shell-utils.test.js.map +1 -1
- package/dist/src/utils/systemEncoding.js +5 -4
- package/dist/src/utils/systemEncoding.js.map +1 -1
- package/dist/src/utils/tool-utils.d.ts +2 -2
- package/dist/src/utils/tool-utils.js +15 -6
- package/dist/src/utils/tool-utils.js.map +1 -1
- package/dist/src/utils/tool-utils.test.js +8 -0
- package/dist/src/utils/tool-utils.test.js.map +1 -1
- package/dist/src/utils/userAccountManager.js +5 -4
- package/dist/src/utils/userAccountManager.js.map +1 -1
- package/dist/src/utils/userAccountManager.test.js +2 -1
- package/dist/src/utils/userAccountManager.test.js.map +1 -1
- package/dist/src/utils/workspaceContext.js +2 -1
- package/dist/src/utils/workspaceContext.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -3
- package/dist/src/core/subagent.d.ts +0 -236
- package/dist/src/core/subagent.js +0 -482
- package/dist/src/core/subagent.js.map +0 -1
- package/dist/src/core/subagent.test.js +0 -530
- package/dist/src/core/subagent.test.js.map +0 -1
- /package/dist/src/{core/subagent.test.d.ts → output/stream-json-formatter.test.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loggers.js","sourceRoot":"","sources":["../../../src/telemetry/loggers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"loggers.js","sourceRoot":"","sources":["../../../src/telemetry/loggers.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,12 +7,11 @@ import { AuthType, EditTool, GeminiClient, ToolConfirmationOutcome, ToolErrorTyp
|
|
|
7
7
|
import { OutputFormat } from '../output/types.js';
|
|
8
8
|
import { logs } from '@opentelemetry/api-logs';
|
|
9
9
|
import { SemanticAttributes } from '@opentelemetry/semantic-conventions';
|
|
10
|
-
import {
|
|
11
|
-
import { logApiRequest, logApiResponse, logCliConfiguration, logUserPrompt, logToolCall, logFlashFallback, logChatCompression, logMalformedJsonResponse, logFileOperation, logRipgrepFallback, logToolOutputTruncated, logModelRouting, logExtensionEnable, logExtensionDisable, logExtensionInstallEvent, logExtensionUninstall, } from './loggers.js';
|
|
10
|
+
import { logApiRequest, logApiResponse, logCliConfiguration, logUserPrompt, logToolCall, logFlashFallback, logChatCompression, logMalformedJsonResponse, logFileOperation, logRipgrepFallback, logToolOutputTruncated, logModelRouting, logExtensionEnable, logExtensionDisable, logExtensionInstallEvent, logExtensionUninstall, logAgentStart, logAgentFinish, logWebFetchFallbackAttempt, logExtensionUpdateEvent, } from './loggers.js';
|
|
12
11
|
import { ToolCallDecision } from './tool-call-decision.js';
|
|
13
|
-
import { ApiRequestEvent, ApiResponseEvent, StartSessionEvent, ToolCallEvent, UserPromptEvent, FlashFallbackEvent, RipgrepFallbackEvent, MalformedJsonResponseEvent, makeChatCompressionEvent, FileOperationEvent, ToolOutputTruncatedEvent, ModelRoutingEvent, ExtensionEnableEvent, ExtensionDisableEvent, ExtensionInstallEvent, ExtensionUninstallEvent, } from './types.js';
|
|
12
|
+
import { EVENT_API_REQUEST, EVENT_API_RESPONSE, EVENT_CLI_CONFIG, EVENT_TOOL_CALL, EVENT_USER_PROMPT, EVENT_FLASH_FALLBACK, EVENT_MALFORMED_JSON_RESPONSE, EVENT_FILE_OPERATION, EVENT_RIPGREP_FALLBACK, EVENT_MODEL_ROUTING, EVENT_EXTENSION_ENABLE, EVENT_EXTENSION_DISABLE, EVENT_EXTENSION_INSTALL, EVENT_EXTENSION_UNINSTALL, EVENT_TOOL_OUTPUT_TRUNCATED, EVENT_AGENT_START, EVENT_AGENT_FINISH, EVENT_WEB_FETCH_FALLBACK_ATTEMPT, ApiRequestEvent, ApiResponseEvent, StartSessionEvent, ToolCallEvent, UserPromptEvent, FlashFallbackEvent, RipgrepFallbackEvent, MalformedJsonResponseEvent, makeChatCompressionEvent, FileOperationEvent, ToolOutputTruncatedEvent, ModelRoutingEvent, ExtensionEnableEvent, ExtensionDisableEvent, ExtensionInstallEvent, ExtensionUninstallEvent, AgentStartEvent, AgentFinishEvent, WebFetchFallbackAttemptEvent, ExtensionUpdateEvent, EVENT_EXTENSION_UPDATE, } from './types.js';
|
|
14
13
|
import * as metrics from './metrics.js';
|
|
15
|
-
import { FileOperation } from './metrics.js';
|
|
14
|
+
import { FileOperation, GenAiOperationName, GenAiProviderName, } from './metrics.js';
|
|
16
15
|
import * as sdk from './sdk.js';
|
|
17
16
|
import { vi, describe, beforeEach, it, expect, afterEach } from 'vitest';
|
|
18
17
|
import { DiscoveredMCPTool } from '../tools/mcp-tool.js';
|
|
@@ -20,6 +19,8 @@ import * as uiTelemetry from './uiTelemetry.js';
|
|
|
20
19
|
import { makeFakeConfig } from '../test-utils/config.js';
|
|
21
20
|
import { ClearcutLogger } from './clearcut-logger/clearcut-logger.js';
|
|
22
21
|
import { UserAccountManager } from '../utils/userAccountManager.js';
|
|
22
|
+
import { InstallationManager } from '../utils/installationManager.js';
|
|
23
|
+
import { AgentTerminateMode } from '../agents/types.js';
|
|
23
24
|
describe('loggers', () => {
|
|
24
25
|
const mockLogger = {
|
|
25
26
|
emit: vi.fn(),
|
|
@@ -33,6 +34,7 @@ describe('loggers', () => {
|
|
|
33
34
|
vi.spyOn(logs, 'getLogger').mockReturnValue(mockLogger);
|
|
34
35
|
vi.spyOn(uiTelemetry.uiTelemetryService, 'addEvent').mockImplementation(mockUiEvent.addEvent);
|
|
35
36
|
vi.spyOn(UserAccountManager.prototype, 'getCachedGoogleAccount').mockReturnValue('test-user@example.com');
|
|
37
|
+
vi.spyOn(InstallationManager.prototype, 'getInstallationId').mockReturnValue('test-installation-id');
|
|
36
38
|
vi.useFakeTimers();
|
|
37
39
|
vi.setSystemTime(new Date('2025-01-01T00:00:00.000Z'));
|
|
38
40
|
});
|
|
@@ -88,6 +90,7 @@ describe('loggers', () => {
|
|
|
88
90
|
getTargetDir: () => 'target-dir',
|
|
89
91
|
getProxy: () => 'http://test.proxy.com:8080',
|
|
90
92
|
getOutputFormat: () => OutputFormat.JSON,
|
|
93
|
+
getExtensions: () => [],
|
|
91
94
|
};
|
|
92
95
|
const startSessionEvent = new StartSessionEvent(mockConfig);
|
|
93
96
|
logCliConfiguration(mockConfig, startSessionEvent);
|
|
@@ -96,6 +99,7 @@ describe('loggers', () => {
|
|
|
96
99
|
attributes: {
|
|
97
100
|
'session.id': 'test-session-id',
|
|
98
101
|
'user.email': 'test-user@example.com',
|
|
102
|
+
'installation.id': 'test-installation-id',
|
|
99
103
|
'event.name': EVENT_CLI_CONFIG,
|
|
100
104
|
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
101
105
|
model: 'test-model',
|
|
@@ -113,6 +117,8 @@ describe('loggers', () => {
|
|
|
113
117
|
mcp_tools: undefined,
|
|
114
118
|
mcp_tools_count: undefined,
|
|
115
119
|
output_format: 'json',
|
|
120
|
+
extension_ids: '',
|
|
121
|
+
extensions_count: 0,
|
|
116
122
|
},
|
|
117
123
|
});
|
|
118
124
|
});
|
|
@@ -132,6 +138,7 @@ describe('loggers', () => {
|
|
|
132
138
|
attributes: {
|
|
133
139
|
'session.id': 'test-session-id',
|
|
134
140
|
'user.email': 'test-user@example.com',
|
|
141
|
+
'installation.id': 'test-installation-id',
|
|
135
142
|
'event.name': EVENT_USER_PROMPT,
|
|
136
143
|
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
137
144
|
prompt_length: 11,
|
|
@@ -156,6 +163,7 @@ describe('loggers', () => {
|
|
|
156
163
|
attributes: {
|
|
157
164
|
'session.id': 'test-session-id',
|
|
158
165
|
'user.email': 'test-user@example.com',
|
|
166
|
+
'installation.id': 'test-installation-id',
|
|
159
167
|
'event.name': EVENT_USER_PROMPT,
|
|
160
168
|
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
161
169
|
prompt_length: 11,
|
|
@@ -176,10 +184,17 @@ describe('loggers', () => {
|
|
|
176
184
|
const mockMetrics = {
|
|
177
185
|
recordApiResponseMetrics: vi.fn(),
|
|
178
186
|
recordTokenUsageMetrics: vi.fn(),
|
|
187
|
+
getConventionAttributes: vi.fn(() => ({
|
|
188
|
+
'gen_ai.operation.name': GenAiOperationName.GENERATE_CONTENT,
|
|
189
|
+
'gen_ai.provider.name': GenAiProviderName.GCP_VERTEX_AI,
|
|
190
|
+
'gen_ai.request.model': 'test-model',
|
|
191
|
+
'gen_ai.response.model': 'test-model',
|
|
192
|
+
})),
|
|
179
193
|
};
|
|
180
194
|
beforeEach(() => {
|
|
181
195
|
vi.spyOn(metrics, 'recordApiResponseMetrics').mockImplementation(mockMetrics.recordApiResponseMetrics);
|
|
182
196
|
vi.spyOn(metrics, 'recordTokenUsageMetrics').mockImplementation(mockMetrics.recordTokenUsageMetrics);
|
|
197
|
+
vi.spyOn(metrics, 'getConventionAttributes').mockImplementation(mockMetrics.getConventionAttributes);
|
|
183
198
|
});
|
|
184
199
|
it('should log an API response with all fields', () => {
|
|
185
200
|
const usageData = {
|
|
@@ -196,6 +211,7 @@ describe('loggers', () => {
|
|
|
196
211
|
attributes: {
|
|
197
212
|
'session.id': 'test-session-id',
|
|
198
213
|
'user.email': 'test-user@example.com',
|
|
214
|
+
'installation.id': 'test-installation-id',
|
|
199
215
|
'event.name': EVENT_API_RESPONSE,
|
|
200
216
|
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
201
217
|
[SemanticAttributes.HTTP_STATUS_CODE]: 200,
|
|
@@ -213,8 +229,37 @@ describe('loggers', () => {
|
|
|
213
229
|
auth_type: 'oauth-personal',
|
|
214
230
|
},
|
|
215
231
|
});
|
|
216
|
-
expect(mockMetrics.recordApiResponseMetrics).toHaveBeenCalledWith(mockConfig, 100, {
|
|
217
|
-
|
|
232
|
+
expect(mockMetrics.recordApiResponseMetrics).toHaveBeenCalledWith(mockConfig, 100, {
|
|
233
|
+
model: 'test-model',
|
|
234
|
+
status_code: 200,
|
|
235
|
+
genAiAttributes: {
|
|
236
|
+
'gen_ai.operation.name': 'generate_content',
|
|
237
|
+
'gen_ai.provider.name': 'gcp.vertex_ai',
|
|
238
|
+
'gen_ai.request.model': 'test-model',
|
|
239
|
+
'gen_ai.response.model': 'test-model',
|
|
240
|
+
},
|
|
241
|
+
});
|
|
242
|
+
// Verify token usage calls for all token types
|
|
243
|
+
expect(mockMetrics.recordTokenUsageMetrics).toHaveBeenCalledWith(mockConfig, 17, {
|
|
244
|
+
model: 'test-model',
|
|
245
|
+
type: 'input',
|
|
246
|
+
genAiAttributes: {
|
|
247
|
+
'gen_ai.operation.name': 'generate_content',
|
|
248
|
+
'gen_ai.provider.name': 'gcp.vertex_ai',
|
|
249
|
+
'gen_ai.request.model': 'test-model',
|
|
250
|
+
'gen_ai.response.model': 'test-model',
|
|
251
|
+
},
|
|
252
|
+
});
|
|
253
|
+
expect(mockMetrics.recordTokenUsageMetrics).toHaveBeenCalledWith(mockConfig, 50, {
|
|
254
|
+
model: 'test-model',
|
|
255
|
+
type: 'output',
|
|
256
|
+
genAiAttributes: {
|
|
257
|
+
'gen_ai.operation.name': 'generate_content',
|
|
258
|
+
'gen_ai.provider.name': 'gcp.vertex_ai',
|
|
259
|
+
'gen_ai.request.model': 'test-model',
|
|
260
|
+
'gen_ai.response.model': 'test-model',
|
|
261
|
+
},
|
|
262
|
+
});
|
|
218
263
|
expect(mockUiEvent.addEvent).toHaveBeenCalledWith({
|
|
219
264
|
...event,
|
|
220
265
|
'event.name': EVENT_API_RESPONSE,
|
|
@@ -238,6 +283,7 @@ describe('loggers', () => {
|
|
|
238
283
|
attributes: {
|
|
239
284
|
'session.id': 'test-session-id',
|
|
240
285
|
'user.email': 'test-user@example.com',
|
|
286
|
+
'installation.id': 'test-installation-id',
|
|
241
287
|
'event.name': EVENT_API_REQUEST,
|
|
242
288
|
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
243
289
|
model: 'test-model',
|
|
@@ -254,6 +300,7 @@ describe('loggers', () => {
|
|
|
254
300
|
attributes: {
|
|
255
301
|
'session.id': 'test-session-id',
|
|
256
302
|
'user.email': 'test-user@example.com',
|
|
303
|
+
'installation.id': 'test-installation-id',
|
|
257
304
|
'event.name': EVENT_API_REQUEST,
|
|
258
305
|
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
259
306
|
model: 'test-model',
|
|
@@ -275,6 +322,7 @@ describe('loggers', () => {
|
|
|
275
322
|
attributes: {
|
|
276
323
|
'session.id': 'test-session-id',
|
|
277
324
|
'user.email': 'test-user@example.com',
|
|
325
|
+
'installation.id': 'test-installation-id',
|
|
278
326
|
'event.name': EVENT_FLASH_FALLBACK,
|
|
279
327
|
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
280
328
|
auth_type: 'vertex-ai',
|
|
@@ -299,6 +347,7 @@ describe('loggers', () => {
|
|
|
299
347
|
expect(emittedEvent.attributes).toEqual(expect.objectContaining({
|
|
300
348
|
'session.id': 'test-session-id',
|
|
301
349
|
'user.email': 'test-user@example.com',
|
|
350
|
+
'installation.id': 'test-installation-id',
|
|
302
351
|
'event.name': EVENT_RIPGREP_FALLBACK,
|
|
303
352
|
error: undefined,
|
|
304
353
|
}));
|
|
@@ -312,6 +361,7 @@ describe('loggers', () => {
|
|
|
312
361
|
expect(emittedEvent.attributes).toEqual(expect.objectContaining({
|
|
313
362
|
'session.id': 'test-session-id',
|
|
314
363
|
'user.email': 'test-user@example.com',
|
|
364
|
+
'installation.id': 'test-installation-id',
|
|
315
365
|
'event.name': EVENT_RIPGREP_FALLBACK,
|
|
316
366
|
error: 'rg not found',
|
|
317
367
|
}));
|
|
@@ -345,7 +395,6 @@ describe('loggers', () => {
|
|
|
345
395
|
}),
|
|
346
396
|
getQuestion: () => 'test-question',
|
|
347
397
|
getToolRegistry: () => new ToolRegistry(cfg1),
|
|
348
|
-
getFullContext: () => false,
|
|
349
398
|
getUserMemory: () => 'user-memory',
|
|
350
399
|
};
|
|
351
400
|
const mockGeminiClient = new GeminiClient(cfg2);
|
|
@@ -413,6 +462,7 @@ describe('loggers', () => {
|
|
|
413
462
|
attributes: {
|
|
414
463
|
'session.id': 'test-session-id',
|
|
415
464
|
'user.email': 'test-user@example.com',
|
|
465
|
+
'installation.id': 'test-installation-id',
|
|
416
466
|
'event.name': EVENT_TOOL_CALL,
|
|
417
467
|
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
418
468
|
function_name: 'test-function',
|
|
@@ -445,6 +495,10 @@ describe('loggers', () => {
|
|
|
445
495
|
success: true,
|
|
446
496
|
decision: ToolCallDecision.ACCEPT,
|
|
447
497
|
tool_type: 'native',
|
|
498
|
+
model_added_lines: 1,
|
|
499
|
+
model_removed_lines: 2,
|
|
500
|
+
user_added_lines: 5,
|
|
501
|
+
user_removed_lines: 6,
|
|
448
502
|
});
|
|
449
503
|
expect(mockUiEvent.addEvent).toHaveBeenCalledWith({
|
|
450
504
|
...event,
|
|
@@ -483,6 +537,7 @@ describe('loggers', () => {
|
|
|
483
537
|
attributes: {
|
|
484
538
|
'session.id': 'test-session-id',
|
|
485
539
|
'user.email': 'test-user@example.com',
|
|
540
|
+
'installation.id': 'test-installation-id',
|
|
486
541
|
'event.name': EVENT_TOOL_CALL,
|
|
487
542
|
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
488
543
|
function_name: 'test-function',
|
|
@@ -546,6 +601,7 @@ describe('loggers', () => {
|
|
|
546
601
|
attributes: {
|
|
547
602
|
'session.id': 'test-session-id',
|
|
548
603
|
'user.email': 'test-user@example.com',
|
|
604
|
+
'installation.id': 'test-installation-id',
|
|
549
605
|
'event.name': EVENT_TOOL_CALL,
|
|
550
606
|
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
551
607
|
function_name: 'test-function',
|
|
@@ -608,6 +664,7 @@ describe('loggers', () => {
|
|
|
608
664
|
attributes: {
|
|
609
665
|
'session.id': 'test-session-id',
|
|
610
666
|
'user.email': 'test-user@example.com',
|
|
667
|
+
'installation.id': 'test-installation-id',
|
|
611
668
|
'event.name': EVENT_TOOL_CALL,
|
|
612
669
|
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
613
670
|
function_name: 'test-function',
|
|
@@ -669,6 +726,7 @@ describe('loggers', () => {
|
|
|
669
726
|
attributes: {
|
|
670
727
|
'session.id': 'test-session-id',
|
|
671
728
|
'user.email': 'test-user@example.com',
|
|
729
|
+
'installation.id': 'test-installation-id',
|
|
672
730
|
'event.name': EVENT_TOOL_CALL,
|
|
673
731
|
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
674
732
|
function_name: 'test-function',
|
|
@@ -709,7 +767,7 @@ describe('loggers', () => {
|
|
|
709
767
|
arg2: { type: 'number' },
|
|
710
768
|
},
|
|
711
769
|
required: ['arg1', 'arg2'],
|
|
712
|
-
});
|
|
770
|
+
}, false, undefined, undefined, 'test-extension');
|
|
713
771
|
const call = {
|
|
714
772
|
status: 'success',
|
|
715
773
|
request: {
|
|
@@ -737,8 +795,10 @@ describe('loggers', () => {
|
|
|
737
795
|
attributes: {
|
|
738
796
|
'session.id': 'test-session-id',
|
|
739
797
|
'user.email': 'test-user@example.com',
|
|
798
|
+
'installation.id': 'test-installation-id',
|
|
740
799
|
'event.name': EVENT_TOOL_CALL,
|
|
741
800
|
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
801
|
+
extension_id: 'test-extension',
|
|
742
802
|
function_name: 'mock_mcp_tool',
|
|
743
803
|
function_args: JSON.stringify({
|
|
744
804
|
arg1: 'value1',
|
|
@@ -753,6 +813,7 @@ describe('loggers', () => {
|
|
|
753
813
|
error: undefined,
|
|
754
814
|
error_type: undefined,
|
|
755
815
|
metadata: undefined,
|
|
816
|
+
content_length: undefined,
|
|
756
817
|
},
|
|
757
818
|
});
|
|
758
819
|
});
|
|
@@ -771,6 +832,7 @@ describe('loggers', () => {
|
|
|
771
832
|
attributes: {
|
|
772
833
|
'session.id': 'test-session-id',
|
|
773
834
|
'user.email': 'test-user@example.com',
|
|
835
|
+
'installation.id': 'test-installation-id',
|
|
774
836
|
'event.name': EVENT_MALFORMED_JSON_RESPONSE,
|
|
775
837
|
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
776
838
|
model: 'test-model',
|
|
@@ -800,6 +862,7 @@ describe('loggers', () => {
|
|
|
800
862
|
attributes: {
|
|
801
863
|
'session.id': 'test-session-id',
|
|
802
864
|
'user.email': 'test-user@example.com',
|
|
865
|
+
'installation.id': 'test-installation-id',
|
|
803
866
|
'event.name': EVENT_FILE_OPERATION,
|
|
804
867
|
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
805
868
|
tool_name: 'test-tool',
|
|
@@ -838,7 +901,8 @@ describe('loggers', () => {
|
|
|
838
901
|
attributes: {
|
|
839
902
|
'session.id': 'test-session-id',
|
|
840
903
|
'user.email': 'test-user@example.com',
|
|
841
|
-
'
|
|
904
|
+
'installation.id': 'test-installation-id',
|
|
905
|
+
'event.name': EVENT_TOOL_OUTPUT_TRUNCATED,
|
|
842
906
|
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
843
907
|
eventName: 'tool_output_truncated',
|
|
844
908
|
prompt_id: 'prompt-id-1',
|
|
@@ -869,6 +933,7 @@ describe('loggers', () => {
|
|
|
869
933
|
attributes: {
|
|
870
934
|
'session.id': 'test-session-id',
|
|
871
935
|
'user.email': 'test-user@example.com',
|
|
936
|
+
'installation.id': 'test-installation-id',
|
|
872
937
|
...event,
|
|
873
938
|
'event.name': EVENT_MODEL_ROUTING,
|
|
874
939
|
},
|
|
@@ -888,6 +953,9 @@ describe('loggers', () => {
|
|
|
888
953
|
const mockConfig = {
|
|
889
954
|
getSessionId: () => 'test-session-id',
|
|
890
955
|
getUsageStatisticsEnabled: () => true,
|
|
956
|
+
getContentGeneratorConfig: () => null,
|
|
957
|
+
getUseSmartEdit: () => null,
|
|
958
|
+
getUseModelRouter: () => null,
|
|
891
959
|
};
|
|
892
960
|
beforeEach(() => {
|
|
893
961
|
vi.spyOn(ClearcutLogger.prototype, 'logExtensionInstallEvent');
|
|
@@ -896,17 +964,18 @@ describe('loggers', () => {
|
|
|
896
964
|
vi.resetAllMocks();
|
|
897
965
|
});
|
|
898
966
|
it('should log extension install event', () => {
|
|
899
|
-
const event = new ExtensionInstallEvent('
|
|
967
|
+
const event = new ExtensionInstallEvent('testing', 'testing-id', '0.1.0', 'git', 'success');
|
|
900
968
|
logExtensionInstallEvent(mockConfig, event);
|
|
901
969
|
expect(ClearcutLogger.prototype.logExtensionInstallEvent).toHaveBeenCalledWith(event);
|
|
902
970
|
expect(mockLogger.emit).toHaveBeenCalledWith({
|
|
903
|
-
body: 'Installed extension
|
|
971
|
+
body: 'Installed extension testing',
|
|
904
972
|
attributes: {
|
|
905
973
|
'session.id': 'test-session-id',
|
|
906
974
|
'user.email': 'test-user@example.com',
|
|
975
|
+
'installation.id': 'test-installation-id',
|
|
907
976
|
'event.name': EVENT_EXTENSION_INSTALL,
|
|
908
977
|
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
909
|
-
extension_name: '
|
|
978
|
+
extension_name: 'testing',
|
|
910
979
|
extension_version: '0.1.0',
|
|
911
980
|
extension_source: 'git',
|
|
912
981
|
status: 'success',
|
|
@@ -914,10 +983,48 @@ describe('loggers', () => {
|
|
|
914
983
|
});
|
|
915
984
|
});
|
|
916
985
|
});
|
|
986
|
+
describe('logExtensionUpdate', () => {
|
|
987
|
+
const mockConfig = {
|
|
988
|
+
getSessionId: () => 'test-session-id',
|
|
989
|
+
getUsageStatisticsEnabled: () => true,
|
|
990
|
+
getContentGeneratorConfig: () => null,
|
|
991
|
+
getUseSmartEdit: () => null,
|
|
992
|
+
getUseModelRouter: () => null,
|
|
993
|
+
};
|
|
994
|
+
beforeEach(() => {
|
|
995
|
+
vi.spyOn(ClearcutLogger.prototype, 'logExtensionUpdateEvent');
|
|
996
|
+
});
|
|
997
|
+
afterEach(() => {
|
|
998
|
+
vi.resetAllMocks();
|
|
999
|
+
});
|
|
1000
|
+
it('should log extension update event', () => {
|
|
1001
|
+
const event = new ExtensionUpdateEvent('testing', 'testing-id', '0.1.0', '0.1.1', 'git', 'success');
|
|
1002
|
+
logExtensionUpdateEvent(mockConfig, event);
|
|
1003
|
+
expect(ClearcutLogger.prototype.logExtensionUpdateEvent).toHaveBeenCalledWith(event);
|
|
1004
|
+
expect(mockLogger.emit).toHaveBeenCalledWith({
|
|
1005
|
+
body: 'Updated extension testing',
|
|
1006
|
+
attributes: {
|
|
1007
|
+
'session.id': 'test-session-id',
|
|
1008
|
+
'user.email': 'test-user@example.com',
|
|
1009
|
+
'installation.id': 'test-installation-id',
|
|
1010
|
+
'event.name': EVENT_EXTENSION_UPDATE,
|
|
1011
|
+
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
1012
|
+
extension_name: 'testing',
|
|
1013
|
+
extension_version: '0.1.0',
|
|
1014
|
+
extension_previous_version: '0.1.1',
|
|
1015
|
+
extension_source: 'git',
|
|
1016
|
+
status: 'success',
|
|
1017
|
+
},
|
|
1018
|
+
});
|
|
1019
|
+
});
|
|
1020
|
+
});
|
|
917
1021
|
describe('logExtensionUninstall', () => {
|
|
918
1022
|
const mockConfig = {
|
|
919
1023
|
getSessionId: () => 'test-session-id',
|
|
920
1024
|
getUsageStatisticsEnabled: () => true,
|
|
1025
|
+
getContentGeneratorConfig: () => null,
|
|
1026
|
+
getUseSmartEdit: () => null,
|
|
1027
|
+
getUseModelRouter: () => null,
|
|
921
1028
|
};
|
|
922
1029
|
beforeEach(() => {
|
|
923
1030
|
vi.spyOn(ClearcutLogger.prototype, 'logExtensionUninstallEvent');
|
|
@@ -926,17 +1033,18 @@ describe('loggers', () => {
|
|
|
926
1033
|
vi.resetAllMocks();
|
|
927
1034
|
});
|
|
928
1035
|
it('should log extension uninstall event', () => {
|
|
929
|
-
const event = new ExtensionUninstallEvent('
|
|
1036
|
+
const event = new ExtensionUninstallEvent('testing', 'testing-id', 'success');
|
|
930
1037
|
logExtensionUninstall(mockConfig, event);
|
|
931
1038
|
expect(ClearcutLogger.prototype.logExtensionUninstallEvent).toHaveBeenCalledWith(event);
|
|
932
1039
|
expect(mockLogger.emit).toHaveBeenCalledWith({
|
|
933
|
-
body: 'Uninstalled extension
|
|
1040
|
+
body: 'Uninstalled extension testing',
|
|
934
1041
|
attributes: {
|
|
935
1042
|
'session.id': 'test-session-id',
|
|
936
1043
|
'user.email': 'test-user@example.com',
|
|
1044
|
+
'installation.id': 'test-installation-id',
|
|
937
1045
|
'event.name': EVENT_EXTENSION_UNINSTALL,
|
|
938
1046
|
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
939
|
-
extension_name: '
|
|
1047
|
+
extension_name: 'testing',
|
|
940
1048
|
status: 'success',
|
|
941
1049
|
},
|
|
942
1050
|
});
|
|
@@ -954,17 +1062,18 @@ describe('loggers', () => {
|
|
|
954
1062
|
vi.resetAllMocks();
|
|
955
1063
|
});
|
|
956
1064
|
it('should log extension enable event', () => {
|
|
957
|
-
const event = new ExtensionEnableEvent('
|
|
1065
|
+
const event = new ExtensionEnableEvent('testing', 'testing-id', 'user');
|
|
958
1066
|
logExtensionEnable(mockConfig, event);
|
|
959
1067
|
expect(ClearcutLogger.prototype.logExtensionEnableEvent).toHaveBeenCalledWith(event);
|
|
960
1068
|
expect(mockLogger.emit).toHaveBeenCalledWith({
|
|
961
|
-
body: 'Enabled extension
|
|
1069
|
+
body: 'Enabled extension testing',
|
|
962
1070
|
attributes: {
|
|
963
1071
|
'session.id': 'test-session-id',
|
|
964
1072
|
'user.email': 'test-user@example.com',
|
|
1073
|
+
'installation.id': 'test-installation-id',
|
|
965
1074
|
'event.name': EVENT_EXTENSION_ENABLE,
|
|
966
1075
|
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
967
|
-
extension_name: '
|
|
1076
|
+
extension_name: 'testing',
|
|
968
1077
|
setting_scope: 'user',
|
|
969
1078
|
},
|
|
970
1079
|
});
|
|
@@ -982,21 +1091,104 @@ describe('loggers', () => {
|
|
|
982
1091
|
vi.resetAllMocks();
|
|
983
1092
|
});
|
|
984
1093
|
it('should log extension disable event', () => {
|
|
985
|
-
const event = new ExtensionDisableEvent('
|
|
1094
|
+
const event = new ExtensionDisableEvent('testing', 'testing-id', 'user');
|
|
986
1095
|
logExtensionDisable(mockConfig, event);
|
|
987
1096
|
expect(ClearcutLogger.prototype.logExtensionDisableEvent).toHaveBeenCalledWith(event);
|
|
988
1097
|
expect(mockLogger.emit).toHaveBeenCalledWith({
|
|
989
|
-
body: 'Disabled extension
|
|
1098
|
+
body: 'Disabled extension testing',
|
|
990
1099
|
attributes: {
|
|
991
1100
|
'session.id': 'test-session-id',
|
|
992
1101
|
'user.email': 'test-user@example.com',
|
|
1102
|
+
'installation.id': 'test-installation-id',
|
|
993
1103
|
'event.name': EVENT_EXTENSION_DISABLE,
|
|
994
1104
|
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
995
|
-
extension_name: '
|
|
1105
|
+
extension_name: 'testing',
|
|
996
1106
|
setting_scope: 'user',
|
|
997
1107
|
},
|
|
998
1108
|
});
|
|
999
1109
|
});
|
|
1000
1110
|
});
|
|
1111
|
+
describe('logAgentStart', () => {
|
|
1112
|
+
const mockConfig = {
|
|
1113
|
+
getSessionId: () => 'test-session-id',
|
|
1114
|
+
getUsageStatisticsEnabled: () => true,
|
|
1115
|
+
};
|
|
1116
|
+
beforeEach(() => {
|
|
1117
|
+
vi.spyOn(ClearcutLogger.prototype, 'logAgentStartEvent');
|
|
1118
|
+
});
|
|
1119
|
+
it('should log agent start event', () => {
|
|
1120
|
+
const event = new AgentStartEvent('agent-123', 'TestAgent');
|
|
1121
|
+
logAgentStart(mockConfig, event);
|
|
1122
|
+
expect(ClearcutLogger.prototype.logAgentStartEvent).toHaveBeenCalledWith(event);
|
|
1123
|
+
expect(mockLogger.emit).toHaveBeenCalledWith({
|
|
1124
|
+
body: 'Agent TestAgent started. ID: agent-123',
|
|
1125
|
+
attributes: {
|
|
1126
|
+
'session.id': 'test-session-id',
|
|
1127
|
+
'user.email': 'test-user@example.com',
|
|
1128
|
+
'installation.id': 'test-installation-id',
|
|
1129
|
+
'event.name': EVENT_AGENT_START,
|
|
1130
|
+
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
1131
|
+
agent_id: 'agent-123',
|
|
1132
|
+
agent_name: 'TestAgent',
|
|
1133
|
+
},
|
|
1134
|
+
});
|
|
1135
|
+
});
|
|
1136
|
+
});
|
|
1137
|
+
describe('logAgentFinish', () => {
|
|
1138
|
+
const mockConfig = {
|
|
1139
|
+
getSessionId: () => 'test-session-id',
|
|
1140
|
+
getUsageStatisticsEnabled: () => true,
|
|
1141
|
+
};
|
|
1142
|
+
beforeEach(() => {
|
|
1143
|
+
vi.spyOn(ClearcutLogger.prototype, 'logAgentFinishEvent');
|
|
1144
|
+
vi.spyOn(metrics, 'recordAgentRunMetrics');
|
|
1145
|
+
});
|
|
1146
|
+
it('should log agent finish event and record metrics', () => {
|
|
1147
|
+
const event = new AgentFinishEvent('agent-123', 'TestAgent', 1000, 5, AgentTerminateMode.GOAL);
|
|
1148
|
+
logAgentFinish(mockConfig, event);
|
|
1149
|
+
expect(ClearcutLogger.prototype.logAgentFinishEvent).toHaveBeenCalledWith(event);
|
|
1150
|
+
expect(mockLogger.emit).toHaveBeenCalledWith({
|
|
1151
|
+
body: 'Agent TestAgent finished. Reason: GOAL. Duration: 1000ms. Turns: 5.',
|
|
1152
|
+
attributes: {
|
|
1153
|
+
'session.id': 'test-session-id',
|
|
1154
|
+
'user.email': 'test-user@example.com',
|
|
1155
|
+
'installation.id': 'test-installation-id',
|
|
1156
|
+
'event.name': EVENT_AGENT_FINISH,
|
|
1157
|
+
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
1158
|
+
agent_id: 'agent-123',
|
|
1159
|
+
agent_name: 'TestAgent',
|
|
1160
|
+
duration_ms: 1000,
|
|
1161
|
+
turn_count: 5,
|
|
1162
|
+
terminate_reason: 'GOAL',
|
|
1163
|
+
},
|
|
1164
|
+
});
|
|
1165
|
+
expect(metrics.recordAgentRunMetrics).toHaveBeenCalledWith(mockConfig, event);
|
|
1166
|
+
});
|
|
1167
|
+
});
|
|
1168
|
+
describe('logWebFetchFallbackAttempt', () => {
|
|
1169
|
+
const mockConfig = {
|
|
1170
|
+
getSessionId: () => 'test-session-id',
|
|
1171
|
+
getUsageStatisticsEnabled: () => true,
|
|
1172
|
+
};
|
|
1173
|
+
beforeEach(() => {
|
|
1174
|
+
vi.spyOn(ClearcutLogger.prototype, 'logWebFetchFallbackAttemptEvent');
|
|
1175
|
+
});
|
|
1176
|
+
it('should log web fetch fallback attempt event', () => {
|
|
1177
|
+
const event = new WebFetchFallbackAttemptEvent('private_ip');
|
|
1178
|
+
logWebFetchFallbackAttempt(mockConfig, event);
|
|
1179
|
+
expect(ClearcutLogger.prototype.logWebFetchFallbackAttemptEvent).toHaveBeenCalledWith(event);
|
|
1180
|
+
expect(mockLogger.emit).toHaveBeenCalledWith({
|
|
1181
|
+
body: 'Web fetch fallback attempt. Reason: private_ip',
|
|
1182
|
+
attributes: {
|
|
1183
|
+
'session.id': 'test-session-id',
|
|
1184
|
+
'user.email': 'test-user@example.com',
|
|
1185
|
+
'installation.id': 'test-installation-id',
|
|
1186
|
+
'event.name': EVENT_WEB_FETCH_FALLBACK_ATTEMPT,
|
|
1187
|
+
'event.timestamp': '2025-01-01T00:00:00.000Z',
|
|
1188
|
+
reason: 'private_ip',
|
|
1189
|
+
},
|
|
1190
|
+
});
|
|
1191
|
+
});
|
|
1192
|
+
});
|
|
1001
1193
|
});
|
|
1002
1194
|
//# sourceMappingURL=loggers.test.js.map
|