@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
|
@@ -4,51 +4,20 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { logs } from '@opentelemetry/api-logs';
|
|
7
|
-
import {
|
|
8
|
-
import { EVENT_API_ERROR,
|
|
9
|
-
import { recordApiErrorMetrics,
|
|
7
|
+
import { SERVICE_NAME } from './constants.js';
|
|
8
|
+
import { EVENT_API_ERROR, EVENT_API_RESPONSE, EVENT_TOOL_CALL, } from './types.js';
|
|
9
|
+
import { recordApiErrorMetrics, recordToolCallMetrics, recordChatCompressionMetrics, recordFileOperationMetric, recordInvalidChunk, recordContentRetry, recordContentRetryFailure, recordModelRoutingMetrics, recordModelSlashCommand, getConventionAttributes, recordTokenUsageMetrics, recordApiResponseMetrics, recordAgentRunMetrics, } from './metrics.js';
|
|
10
10
|
import { isTelemetrySdkInitialized } from './sdk.js';
|
|
11
11
|
import { uiTelemetryService } from './uiTelemetry.js';
|
|
12
12
|
import { ClearcutLogger } from './clearcut-logger/clearcut-logger.js';
|
|
13
|
-
import { safeJsonStringify } from '../utils/safeJsonStringify.js';
|
|
14
|
-
import { UserAccountManager } from '../utils/userAccountManager.js';
|
|
15
|
-
const shouldLogUserPrompts = (config) => config.getTelemetryLogPromptsEnabled();
|
|
16
|
-
function getCommonAttributes(config) {
|
|
17
|
-
const userAccountManager = new UserAccountManager();
|
|
18
|
-
const email = userAccountManager.getCachedGoogleAccount();
|
|
19
|
-
return {
|
|
20
|
-
'session.id': config.getSessionId(),
|
|
21
|
-
...(email && { 'user.email': email }),
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
13
|
export function logCliConfiguration(config, event) {
|
|
25
14
|
ClearcutLogger.getInstance(config)?.logStartSessionEvent(event);
|
|
26
15
|
if (!isTelemetrySdkInitialized())
|
|
27
16
|
return;
|
|
28
|
-
const attributes = {
|
|
29
|
-
...getCommonAttributes(config),
|
|
30
|
-
'event.name': EVENT_CLI_CONFIG,
|
|
31
|
-
'event.timestamp': new Date().toISOString(),
|
|
32
|
-
model: event.model,
|
|
33
|
-
embedding_model: event.embedding_model,
|
|
34
|
-
sandbox_enabled: event.sandbox_enabled,
|
|
35
|
-
core_tools_enabled: event.core_tools_enabled,
|
|
36
|
-
approval_mode: event.approval_mode,
|
|
37
|
-
api_key_enabled: event.api_key_enabled,
|
|
38
|
-
vertex_ai_enabled: event.vertex_ai_enabled,
|
|
39
|
-
log_user_prompts_enabled: event.telemetry_log_user_prompts_enabled,
|
|
40
|
-
file_filtering_respect_git_ignore: event.file_filtering_respect_git_ignore,
|
|
41
|
-
debug_mode: event.debug_enabled,
|
|
42
|
-
mcp_servers: event.mcp_servers,
|
|
43
|
-
mcp_servers_count: event.mcp_servers_count,
|
|
44
|
-
mcp_tools: event.mcp_tools,
|
|
45
|
-
mcp_tools_count: event.mcp_tools_count,
|
|
46
|
-
output_format: event.output_format,
|
|
47
|
-
};
|
|
48
17
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
49
18
|
const logRecord = {
|
|
50
|
-
body:
|
|
51
|
-
attributes,
|
|
19
|
+
body: event.toLogBody(),
|
|
20
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
52
21
|
};
|
|
53
22
|
logger.emit(logRecord);
|
|
54
23
|
}
|
|
@@ -56,23 +25,10 @@ export function logUserPrompt(config, event) {
|
|
|
56
25
|
ClearcutLogger.getInstance(config)?.logNewPromptEvent(event);
|
|
57
26
|
if (!isTelemetrySdkInitialized())
|
|
58
27
|
return;
|
|
59
|
-
const attributes = {
|
|
60
|
-
...getCommonAttributes(config),
|
|
61
|
-
'event.name': EVENT_USER_PROMPT,
|
|
62
|
-
'event.timestamp': new Date().toISOString(),
|
|
63
|
-
prompt_length: event.prompt_length,
|
|
64
|
-
prompt_id: event.prompt_id,
|
|
65
|
-
};
|
|
66
|
-
if (event.auth_type) {
|
|
67
|
-
attributes['auth_type'] = event.auth_type;
|
|
68
|
-
}
|
|
69
|
-
if (shouldLogUserPrompts(config)) {
|
|
70
|
-
attributes['prompt'] = event.prompt;
|
|
71
|
-
}
|
|
72
28
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
73
29
|
const logRecord = {
|
|
74
|
-
body:
|
|
75
|
-
attributes,
|
|
30
|
+
body: event.toLogBody(),
|
|
31
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
76
32
|
};
|
|
77
33
|
logger.emit(logRecord);
|
|
78
34
|
}
|
|
@@ -86,23 +42,10 @@ export function logToolCall(config, event) {
|
|
|
86
42
|
ClearcutLogger.getInstance(config)?.logToolCallEvent(event);
|
|
87
43
|
if (!isTelemetrySdkInitialized())
|
|
88
44
|
return;
|
|
89
|
-
const attributes = {
|
|
90
|
-
...getCommonAttributes(config),
|
|
91
|
-
...event,
|
|
92
|
-
'event.name': EVENT_TOOL_CALL,
|
|
93
|
-
'event.timestamp': new Date().toISOString(),
|
|
94
|
-
function_args: safeJsonStringify(event.function_args, 2),
|
|
95
|
-
};
|
|
96
|
-
if (event.error) {
|
|
97
|
-
attributes['error.message'] = event.error;
|
|
98
|
-
if (event.error_type) {
|
|
99
|
-
attributes['error.type'] = event.error_type;
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
45
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
103
46
|
const logRecord = {
|
|
104
|
-
body:
|
|
105
|
-
attributes,
|
|
47
|
+
body: event.toLogBody(),
|
|
48
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
106
49
|
};
|
|
107
50
|
logger.emit(logRecord);
|
|
108
51
|
recordToolCallMetrics(config, event.duration_ms, {
|
|
@@ -110,22 +53,24 @@ export function logToolCall(config, event) {
|
|
|
110
53
|
success: event.success,
|
|
111
54
|
decision: event.decision,
|
|
112
55
|
tool_type: event.tool_type,
|
|
56
|
+
...(event.metadata
|
|
57
|
+
? {
|
|
58
|
+
model_added_lines: event.metadata['model_added_lines'],
|
|
59
|
+
model_removed_lines: event.metadata['model_removed_lines'],
|
|
60
|
+
user_added_lines: event.metadata['user_added_lines'],
|
|
61
|
+
user_removed_lines: event.metadata['user_removed_lines'],
|
|
62
|
+
}
|
|
63
|
+
: {}),
|
|
113
64
|
});
|
|
114
65
|
}
|
|
115
66
|
export function logToolOutputTruncated(config, event) {
|
|
116
67
|
ClearcutLogger.getInstance(config)?.logToolOutputTruncatedEvent(event);
|
|
117
68
|
if (!isTelemetrySdkInitialized())
|
|
118
69
|
return;
|
|
119
|
-
const attributes = {
|
|
120
|
-
...getCommonAttributes(config),
|
|
121
|
-
...event,
|
|
122
|
-
'event.name': 'tool_output_truncated',
|
|
123
|
-
'event.timestamp': new Date().toISOString(),
|
|
124
|
-
};
|
|
125
70
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
126
71
|
const logRecord = {
|
|
127
|
-
body:
|
|
128
|
-
attributes,
|
|
72
|
+
body: event.toLogBody(),
|
|
73
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
129
74
|
};
|
|
130
75
|
logger.emit(logRecord);
|
|
131
76
|
}
|
|
@@ -133,29 +78,10 @@ export function logFileOperation(config, event) {
|
|
|
133
78
|
ClearcutLogger.getInstance(config)?.logFileOperationEvent(event);
|
|
134
79
|
if (!isTelemetrySdkInitialized())
|
|
135
80
|
return;
|
|
136
|
-
const attributes = {
|
|
137
|
-
...getCommonAttributes(config),
|
|
138
|
-
'event.name': EVENT_FILE_OPERATION,
|
|
139
|
-
'event.timestamp': new Date().toISOString(),
|
|
140
|
-
tool_name: event.tool_name,
|
|
141
|
-
operation: event.operation,
|
|
142
|
-
};
|
|
143
|
-
if (event.lines) {
|
|
144
|
-
attributes['lines'] = event.lines;
|
|
145
|
-
}
|
|
146
|
-
if (event.mimetype) {
|
|
147
|
-
attributes['mimetype'] = event.mimetype;
|
|
148
|
-
}
|
|
149
|
-
if (event.extension) {
|
|
150
|
-
attributes['extension'] = event.extension;
|
|
151
|
-
}
|
|
152
|
-
if (event.programming_language) {
|
|
153
|
-
attributes['programming_language'] = event.programming_language;
|
|
154
|
-
}
|
|
155
81
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
156
82
|
const logRecord = {
|
|
157
|
-
body:
|
|
158
|
-
attributes,
|
|
83
|
+
body: event.toLogBody(),
|
|
84
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
159
85
|
};
|
|
160
86
|
logger.emit(logRecord);
|
|
161
87
|
recordFileOperationMetric(config, {
|
|
@@ -170,16 +96,10 @@ export function logApiRequest(config, event) {
|
|
|
170
96
|
ClearcutLogger.getInstance(config)?.logApiRequestEvent(event);
|
|
171
97
|
if (!isTelemetrySdkInitialized())
|
|
172
98
|
return;
|
|
173
|
-
const attributes = {
|
|
174
|
-
...getCommonAttributes(config),
|
|
175
|
-
...event,
|
|
176
|
-
'event.name': EVENT_API_REQUEST,
|
|
177
|
-
'event.timestamp': new Date().toISOString(),
|
|
178
|
-
};
|
|
179
99
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
180
100
|
const logRecord = {
|
|
181
|
-
body:
|
|
182
|
-
attributes,
|
|
101
|
+
body: event.toLogBody(),
|
|
102
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
183
103
|
};
|
|
184
104
|
logger.emit(logRecord);
|
|
185
105
|
}
|
|
@@ -187,16 +107,10 @@ export function logFlashFallback(config, event) {
|
|
|
187
107
|
ClearcutLogger.getInstance(config)?.logFlashFallbackEvent();
|
|
188
108
|
if (!isTelemetrySdkInitialized())
|
|
189
109
|
return;
|
|
190
|
-
const attributes = {
|
|
191
|
-
...getCommonAttributes(config),
|
|
192
|
-
...event,
|
|
193
|
-
'event.name': EVENT_FLASH_FALLBACK,
|
|
194
|
-
'event.timestamp': new Date().toISOString(),
|
|
195
|
-
};
|
|
196
110
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
197
111
|
const logRecord = {
|
|
198
|
-
body:
|
|
199
|
-
attributes,
|
|
112
|
+
body: event.toLogBody(),
|
|
113
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
200
114
|
};
|
|
201
115
|
logger.emit(logRecord);
|
|
202
116
|
}
|
|
@@ -204,16 +118,10 @@ export function logRipgrepFallback(config, event) {
|
|
|
204
118
|
ClearcutLogger.getInstance(config)?.logRipgrepFallbackEvent();
|
|
205
119
|
if (!isTelemetrySdkInitialized())
|
|
206
120
|
return;
|
|
207
|
-
const attributes = {
|
|
208
|
-
...getCommonAttributes(config),
|
|
209
|
-
...event,
|
|
210
|
-
'event.name': EVENT_RIPGREP_FALLBACK,
|
|
211
|
-
'event.timestamp': new Date().toISOString(),
|
|
212
|
-
};
|
|
213
121
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
214
122
|
const logRecord = {
|
|
215
|
-
body:
|
|
216
|
-
attributes,
|
|
123
|
+
body: event.toLogBody(),
|
|
124
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
217
125
|
};
|
|
218
126
|
logger.emit(logRecord);
|
|
219
127
|
}
|
|
@@ -227,25 +135,10 @@ export function logApiError(config, event) {
|
|
|
227
135
|
ClearcutLogger.getInstance(config)?.logApiErrorEvent(event);
|
|
228
136
|
if (!isTelemetrySdkInitialized())
|
|
229
137
|
return;
|
|
230
|
-
const attributes = {
|
|
231
|
-
...getCommonAttributes(config),
|
|
232
|
-
...event,
|
|
233
|
-
'event.name': EVENT_API_ERROR,
|
|
234
|
-
'event.timestamp': new Date().toISOString(),
|
|
235
|
-
['error.message']: event.error,
|
|
236
|
-
model_name: event.model,
|
|
237
|
-
duration: event.duration_ms,
|
|
238
|
-
};
|
|
239
|
-
if (event.error_type) {
|
|
240
|
-
attributes['error.type'] = event.error_type;
|
|
241
|
-
}
|
|
242
|
-
if (typeof event.status_code === 'number') {
|
|
243
|
-
attributes[SemanticAttributes.HTTP_STATUS_CODE] = event.status_code;
|
|
244
|
-
}
|
|
245
138
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
246
139
|
const logRecord = {
|
|
247
|
-
body:
|
|
248
|
-
attributes,
|
|
140
|
+
body: event.toLogBody(),
|
|
141
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
249
142
|
};
|
|
250
143
|
logger.emit(logRecord);
|
|
251
144
|
recordApiErrorMetrics(config, event.duration_ms, {
|
|
@@ -253,6 +146,16 @@ export function logApiError(config, event) {
|
|
|
253
146
|
status_code: event.status_code,
|
|
254
147
|
error_type: event.error_type,
|
|
255
148
|
});
|
|
149
|
+
// Record GenAI operation duration for errors
|
|
150
|
+
const conventionAttributes = getConventionAttributes(event);
|
|
151
|
+
recordApiResponseMetrics(config, event.duration_ms, {
|
|
152
|
+
model: event.model,
|
|
153
|
+
status_code: event.status_code,
|
|
154
|
+
genAiAttributes: {
|
|
155
|
+
...conventionAttributes,
|
|
156
|
+
'error.type': event.error_type || 'unknown',
|
|
157
|
+
},
|
|
158
|
+
});
|
|
256
159
|
}
|
|
257
160
|
export function logApiResponse(config, event) {
|
|
258
161
|
const uiEvent = {
|
|
@@ -264,82 +167,63 @@ export function logApiResponse(config, event) {
|
|
|
264
167
|
ClearcutLogger.getInstance(config)?.logApiResponseEvent(event);
|
|
265
168
|
if (!isTelemetrySdkInitialized())
|
|
266
169
|
return;
|
|
267
|
-
const attributes = {
|
|
268
|
-
...getCommonAttributes(config),
|
|
269
|
-
...event,
|
|
270
|
-
'event.name': EVENT_API_RESPONSE,
|
|
271
|
-
'event.timestamp': new Date().toISOString(),
|
|
272
|
-
};
|
|
273
|
-
if (event.response_text) {
|
|
274
|
-
attributes['response_text'] = event.response_text;
|
|
275
|
-
}
|
|
276
|
-
if (event.status_code) {
|
|
277
|
-
if (typeof event.status_code === 'number') {
|
|
278
|
-
attributes[SemanticAttributes.HTTP_STATUS_CODE] = event.status_code;
|
|
279
|
-
}
|
|
280
|
-
}
|
|
281
170
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
282
171
|
const logRecord = {
|
|
283
|
-
body:
|
|
284
|
-
attributes,
|
|
172
|
+
body: event.toLogBody(),
|
|
173
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
285
174
|
};
|
|
286
175
|
logger.emit(logRecord);
|
|
176
|
+
const conventionAttributes = getConventionAttributes(event);
|
|
287
177
|
recordApiResponseMetrics(config, event.duration_ms, {
|
|
288
178
|
model: event.model,
|
|
289
179
|
status_code: event.status_code,
|
|
180
|
+
genAiAttributes: conventionAttributes,
|
|
290
181
|
});
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
type: '
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
})
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
type: 'thought',
|
|
306
|
-
});
|
|
307
|
-
recordTokenUsageMetrics(config, event.tool_token_count, {
|
|
308
|
-
model: event.model,
|
|
309
|
-
type: 'tool',
|
|
310
|
-
});
|
|
182
|
+
const tokenUsageData = [
|
|
183
|
+
{ count: event.input_token_count, type: 'input' },
|
|
184
|
+
{ count: event.output_token_count, type: 'output' },
|
|
185
|
+
{ count: event.cached_content_token_count, type: 'cache' },
|
|
186
|
+
{ count: event.thoughts_token_count, type: 'thought' },
|
|
187
|
+
{ count: event.tool_token_count, type: 'tool' },
|
|
188
|
+
];
|
|
189
|
+
for (const { count, type } of tokenUsageData) {
|
|
190
|
+
recordTokenUsageMetrics(config, count, {
|
|
191
|
+
model: event.model,
|
|
192
|
+
type,
|
|
193
|
+
genAiAttributes: conventionAttributes,
|
|
194
|
+
});
|
|
195
|
+
}
|
|
311
196
|
}
|
|
312
197
|
export function logLoopDetected(config, event) {
|
|
313
198
|
ClearcutLogger.getInstance(config)?.logLoopDetectedEvent(event);
|
|
314
199
|
if (!isTelemetrySdkInitialized())
|
|
315
200
|
return;
|
|
316
|
-
const attributes = {
|
|
317
|
-
...getCommonAttributes(config),
|
|
318
|
-
...event,
|
|
319
|
-
};
|
|
320
201
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
321
202
|
const logRecord = {
|
|
322
|
-
body:
|
|
323
|
-
attributes,
|
|
203
|
+
body: event.toLogBody(),
|
|
204
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
324
205
|
};
|
|
325
206
|
logger.emit(logRecord);
|
|
326
207
|
}
|
|
327
|
-
export function logLoopDetectionDisabled(config,
|
|
208
|
+
export function logLoopDetectionDisabled(config, event) {
|
|
328
209
|
ClearcutLogger.getInstance(config)?.logLoopDetectionDisabledEvent();
|
|
210
|
+
if (!isTelemetrySdkInitialized())
|
|
211
|
+
return;
|
|
212
|
+
const logger = logs.getLogger(SERVICE_NAME);
|
|
213
|
+
const logRecord = {
|
|
214
|
+
body: event.toLogBody(),
|
|
215
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
216
|
+
};
|
|
217
|
+
logger.emit(logRecord);
|
|
329
218
|
}
|
|
330
219
|
export function logNextSpeakerCheck(config, event) {
|
|
331
220
|
ClearcutLogger.getInstance(config)?.logNextSpeakerCheck(event);
|
|
332
221
|
if (!isTelemetrySdkInitialized())
|
|
333
222
|
return;
|
|
334
|
-
const attributes = {
|
|
335
|
-
...getCommonAttributes(config),
|
|
336
|
-
...event,
|
|
337
|
-
'event.name': EVENT_NEXT_SPEAKER_CHECK,
|
|
338
|
-
};
|
|
339
223
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
340
224
|
const logRecord = {
|
|
341
|
-
body:
|
|
342
|
-
attributes,
|
|
225
|
+
body: event.toLogBody(),
|
|
226
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
343
227
|
};
|
|
344
228
|
logger.emit(logRecord);
|
|
345
229
|
}
|
|
@@ -347,15 +231,10 @@ export function logSlashCommand(config, event) {
|
|
|
347
231
|
ClearcutLogger.getInstance(config)?.logSlashCommandEvent(event);
|
|
348
232
|
if (!isTelemetrySdkInitialized())
|
|
349
233
|
return;
|
|
350
|
-
const attributes = {
|
|
351
|
-
...getCommonAttributes(config),
|
|
352
|
-
...event,
|
|
353
|
-
'event.name': EVENT_SLASH_COMMAND,
|
|
354
|
-
};
|
|
355
234
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
356
235
|
const logRecord = {
|
|
357
|
-
body:
|
|
358
|
-
attributes,
|
|
236
|
+
body: event.toLogBody(),
|
|
237
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
359
238
|
};
|
|
360
239
|
logger.emit(logRecord);
|
|
361
240
|
}
|
|
@@ -363,15 +242,10 @@ export function logIdeConnection(config, event) {
|
|
|
363
242
|
ClearcutLogger.getInstance(config)?.logIdeConnectionEvent(event);
|
|
364
243
|
if (!isTelemetrySdkInitialized())
|
|
365
244
|
return;
|
|
366
|
-
const attributes = {
|
|
367
|
-
...getCommonAttributes(config),
|
|
368
|
-
...event,
|
|
369
|
-
'event.name': EVENT_IDE_CONNECTION,
|
|
370
|
-
};
|
|
371
245
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
372
246
|
const logRecord = {
|
|
373
|
-
body:
|
|
374
|
-
attributes,
|
|
247
|
+
body: event.toLogBody(),
|
|
248
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
375
249
|
};
|
|
376
250
|
logger.emit(logRecord);
|
|
377
251
|
}
|
|
@@ -379,29 +253,19 @@ export function logConversationFinishedEvent(config, event) {
|
|
|
379
253
|
ClearcutLogger.getInstance(config)?.logConversationFinishedEvent(event);
|
|
380
254
|
if (!isTelemetrySdkInitialized())
|
|
381
255
|
return;
|
|
382
|
-
const attributes = {
|
|
383
|
-
...getCommonAttributes(config),
|
|
384
|
-
...event,
|
|
385
|
-
'event.name': EVENT_CONVERSATION_FINISHED,
|
|
386
|
-
};
|
|
387
256
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
388
257
|
const logRecord = {
|
|
389
|
-
body:
|
|
390
|
-
attributes,
|
|
258
|
+
body: event.toLogBody(),
|
|
259
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
391
260
|
};
|
|
392
261
|
logger.emit(logRecord);
|
|
393
262
|
}
|
|
394
263
|
export function logChatCompression(config, event) {
|
|
395
264
|
ClearcutLogger.getInstance(config)?.logChatCompressionEvent(event);
|
|
396
|
-
const attributes = {
|
|
397
|
-
...getCommonAttributes(config),
|
|
398
|
-
...event,
|
|
399
|
-
'event.name': EVENT_CHAT_COMPRESSION,
|
|
400
|
-
};
|
|
401
265
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
402
266
|
const logRecord = {
|
|
403
|
-
body:
|
|
404
|
-
attributes,
|
|
267
|
+
body: event.toLogBody(),
|
|
268
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
405
269
|
};
|
|
406
270
|
logger.emit(logRecord);
|
|
407
271
|
recordChatCompressionMetrics(config, {
|
|
@@ -413,14 +277,10 @@ export function logKittySequenceOverflow(config, event) {
|
|
|
413
277
|
ClearcutLogger.getInstance(config)?.logKittySequenceOverflowEvent(event);
|
|
414
278
|
if (!isTelemetrySdkInitialized())
|
|
415
279
|
return;
|
|
416
|
-
const attributes = {
|
|
417
|
-
...getCommonAttributes(config),
|
|
418
|
-
...event,
|
|
419
|
-
};
|
|
420
280
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
421
281
|
const logRecord = {
|
|
422
|
-
body:
|
|
423
|
-
attributes,
|
|
282
|
+
body: event.toLogBody(),
|
|
283
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
424
284
|
};
|
|
425
285
|
logger.emit(logRecord);
|
|
426
286
|
}
|
|
@@ -428,15 +288,10 @@ export function logMalformedJsonResponse(config, event) {
|
|
|
428
288
|
ClearcutLogger.getInstance(config)?.logMalformedJsonResponseEvent(event);
|
|
429
289
|
if (!isTelemetrySdkInitialized())
|
|
430
290
|
return;
|
|
431
|
-
const attributes = {
|
|
432
|
-
...getCommonAttributes(config),
|
|
433
|
-
...event,
|
|
434
|
-
'event.name': EVENT_MALFORMED_JSON_RESPONSE,
|
|
435
|
-
};
|
|
436
291
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
437
292
|
const logRecord = {
|
|
438
|
-
body:
|
|
439
|
-
attributes,
|
|
293
|
+
body: event.toLogBody(),
|
|
294
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
440
295
|
};
|
|
441
296
|
logger.emit(logRecord);
|
|
442
297
|
}
|
|
@@ -444,18 +299,10 @@ export function logInvalidChunk(config, event) {
|
|
|
444
299
|
ClearcutLogger.getInstance(config)?.logInvalidChunkEvent(event);
|
|
445
300
|
if (!isTelemetrySdkInitialized())
|
|
446
301
|
return;
|
|
447
|
-
const attributes = {
|
|
448
|
-
...getCommonAttributes(config),
|
|
449
|
-
'event.name': EVENT_INVALID_CHUNK,
|
|
450
|
-
'event.timestamp': event['event.timestamp'],
|
|
451
|
-
};
|
|
452
|
-
if (event.error_message) {
|
|
453
|
-
attributes['error.message'] = event.error_message;
|
|
454
|
-
}
|
|
455
302
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
456
303
|
const logRecord = {
|
|
457
|
-
body:
|
|
458
|
-
attributes,
|
|
304
|
+
body: event.toLogBody(),
|
|
305
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
459
306
|
};
|
|
460
307
|
logger.emit(logRecord);
|
|
461
308
|
recordInvalidChunk(config);
|
|
@@ -464,15 +311,10 @@ export function logContentRetry(config, event) {
|
|
|
464
311
|
ClearcutLogger.getInstance(config)?.logContentRetryEvent(event);
|
|
465
312
|
if (!isTelemetrySdkInitialized())
|
|
466
313
|
return;
|
|
467
|
-
const attributes = {
|
|
468
|
-
...getCommonAttributes(config),
|
|
469
|
-
...event,
|
|
470
|
-
'event.name': EVENT_CONTENT_RETRY,
|
|
471
|
-
};
|
|
472
314
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
473
315
|
const logRecord = {
|
|
474
|
-
body:
|
|
475
|
-
attributes,
|
|
316
|
+
body: event.toLogBody(),
|
|
317
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
476
318
|
};
|
|
477
319
|
logger.emit(logRecord);
|
|
478
320
|
recordContentRetry(config);
|
|
@@ -481,15 +323,10 @@ export function logContentRetryFailure(config, event) {
|
|
|
481
323
|
ClearcutLogger.getInstance(config)?.logContentRetryFailureEvent(event);
|
|
482
324
|
if (!isTelemetrySdkInitialized())
|
|
483
325
|
return;
|
|
484
|
-
const attributes = {
|
|
485
|
-
...getCommonAttributes(config),
|
|
486
|
-
...event,
|
|
487
|
-
'event.name': EVENT_CONTENT_RETRY_FAILURE,
|
|
488
|
-
};
|
|
489
326
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
490
327
|
const logRecord = {
|
|
491
|
-
body:
|
|
492
|
-
attributes,
|
|
328
|
+
body: event.toLogBody(),
|
|
329
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
493
330
|
};
|
|
494
331
|
logger.emit(logRecord);
|
|
495
332
|
recordContentRetryFailure(config);
|
|
@@ -498,15 +335,10 @@ export function logModelRouting(config, event) {
|
|
|
498
335
|
ClearcutLogger.getInstance(config)?.logModelRoutingEvent(event);
|
|
499
336
|
if (!isTelemetrySdkInitialized())
|
|
500
337
|
return;
|
|
501
|
-
const attributes = {
|
|
502
|
-
...getCommonAttributes(config),
|
|
503
|
-
...event,
|
|
504
|
-
'event.name': EVENT_MODEL_ROUTING,
|
|
505
|
-
};
|
|
506
338
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
507
339
|
const logRecord = {
|
|
508
|
-
body:
|
|
509
|
-
attributes,
|
|
340
|
+
body: event.toLogBody(),
|
|
341
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
510
342
|
};
|
|
511
343
|
logger.emit(logRecord);
|
|
512
344
|
recordModelRoutingMetrics(config, event);
|
|
@@ -515,15 +347,10 @@ export function logModelSlashCommand(config, event) {
|
|
|
515
347
|
ClearcutLogger.getInstance(config)?.logModelSlashCommandEvent(event);
|
|
516
348
|
if (!isTelemetrySdkInitialized())
|
|
517
349
|
return;
|
|
518
|
-
const attributes = {
|
|
519
|
-
...getCommonAttributes(config),
|
|
520
|
-
...event,
|
|
521
|
-
'event.name': EVENT_MODEL_SLASH_COMMAND,
|
|
522
|
-
};
|
|
523
350
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
524
351
|
const logRecord = {
|
|
525
|
-
body:
|
|
526
|
-
attributes,
|
|
352
|
+
body: event.toLogBody(),
|
|
353
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
527
354
|
};
|
|
528
355
|
logger.emit(logRecord);
|
|
529
356
|
recordModelSlashCommand(config, event);
|
|
@@ -532,20 +359,10 @@ export function logExtensionInstallEvent(config, event) {
|
|
|
532
359
|
ClearcutLogger.getInstance(config)?.logExtensionInstallEvent(event);
|
|
533
360
|
if (!isTelemetrySdkInitialized())
|
|
534
361
|
return;
|
|
535
|
-
const attributes = {
|
|
536
|
-
...getCommonAttributes(config),
|
|
537
|
-
...event,
|
|
538
|
-
'event.name': EVENT_EXTENSION_INSTALL,
|
|
539
|
-
'event.timestamp': new Date().toISOString(),
|
|
540
|
-
extension_name: event.extension_name,
|
|
541
|
-
extension_version: event.extension_version,
|
|
542
|
-
extension_source: event.extension_source,
|
|
543
|
-
status: event.status,
|
|
544
|
-
};
|
|
545
362
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
546
363
|
const logRecord = {
|
|
547
|
-
body:
|
|
548
|
-
attributes,
|
|
364
|
+
body: event.toLogBody(),
|
|
365
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
549
366
|
};
|
|
550
367
|
logger.emit(logRecord);
|
|
551
368
|
}
|
|
@@ -553,16 +370,21 @@ export function logExtensionUninstall(config, event) {
|
|
|
553
370
|
ClearcutLogger.getInstance(config)?.logExtensionUninstallEvent(event);
|
|
554
371
|
if (!isTelemetrySdkInitialized())
|
|
555
372
|
return;
|
|
556
|
-
const
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
'event.timestamp': new Date().toISOString(),
|
|
373
|
+
const logger = logs.getLogger(SERVICE_NAME);
|
|
374
|
+
const logRecord = {
|
|
375
|
+
body: event.toLogBody(),
|
|
376
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
561
377
|
};
|
|
378
|
+
logger.emit(logRecord);
|
|
379
|
+
}
|
|
380
|
+
export function logExtensionUpdateEvent(config, event) {
|
|
381
|
+
ClearcutLogger.getInstance(config)?.logExtensionUpdateEvent(event);
|
|
382
|
+
if (!isTelemetrySdkInitialized())
|
|
383
|
+
return;
|
|
562
384
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
563
385
|
const logRecord = {
|
|
564
|
-
body:
|
|
565
|
-
attributes,
|
|
386
|
+
body: event.toLogBody(),
|
|
387
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
566
388
|
};
|
|
567
389
|
logger.emit(logRecord);
|
|
568
390
|
}
|
|
@@ -570,16 +392,10 @@ export function logExtensionEnable(config, event) {
|
|
|
570
392
|
ClearcutLogger.getInstance(config)?.logExtensionEnableEvent(event);
|
|
571
393
|
if (!isTelemetrySdkInitialized())
|
|
572
394
|
return;
|
|
573
|
-
const attributes = {
|
|
574
|
-
...getCommonAttributes(config),
|
|
575
|
-
...event,
|
|
576
|
-
'event.name': EVENT_EXTENSION_ENABLE,
|
|
577
|
-
'event.timestamp': new Date().toISOString(),
|
|
578
|
-
};
|
|
579
395
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
580
396
|
const logRecord = {
|
|
581
|
-
body:
|
|
582
|
-
attributes,
|
|
397
|
+
body: event.toLogBody(),
|
|
398
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
583
399
|
};
|
|
584
400
|
logger.emit(logRecord);
|
|
585
401
|
}
|
|
@@ -587,16 +403,66 @@ export function logExtensionDisable(config, event) {
|
|
|
587
403
|
ClearcutLogger.getInstance(config)?.logExtensionDisableEvent(event);
|
|
588
404
|
if (!isTelemetrySdkInitialized())
|
|
589
405
|
return;
|
|
590
|
-
const
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
406
|
+
const logger = logs.getLogger(SERVICE_NAME);
|
|
407
|
+
const logRecord = {
|
|
408
|
+
body: event.toLogBody(),
|
|
409
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
410
|
+
};
|
|
411
|
+
logger.emit(logRecord);
|
|
412
|
+
}
|
|
413
|
+
export function logSmartEditStrategy(config, event) {
|
|
414
|
+
ClearcutLogger.getInstance(config)?.logSmartEditStrategyEvent(event);
|
|
415
|
+
if (!isTelemetrySdkInitialized())
|
|
416
|
+
return;
|
|
417
|
+
const logger = logs.getLogger(SERVICE_NAME);
|
|
418
|
+
const logRecord = {
|
|
419
|
+
body: event.toLogBody(),
|
|
420
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
595
421
|
};
|
|
422
|
+
logger.emit(logRecord);
|
|
423
|
+
}
|
|
424
|
+
export function logSmartEditCorrectionEvent(config, event) {
|
|
425
|
+
ClearcutLogger.getInstance(config)?.logSmartEditCorrectionEvent(event);
|
|
426
|
+
if (!isTelemetrySdkInitialized())
|
|
427
|
+
return;
|
|
428
|
+
const logger = logs.getLogger(SERVICE_NAME);
|
|
429
|
+
const logRecord = {
|
|
430
|
+
body: event.toLogBody(),
|
|
431
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
432
|
+
};
|
|
433
|
+
logger.emit(logRecord);
|
|
434
|
+
}
|
|
435
|
+
export function logAgentStart(config, event) {
|
|
436
|
+
ClearcutLogger.getInstance(config)?.logAgentStartEvent(event);
|
|
437
|
+
if (!isTelemetrySdkInitialized())
|
|
438
|
+
return;
|
|
439
|
+
const logger = logs.getLogger(SERVICE_NAME);
|
|
440
|
+
const logRecord = {
|
|
441
|
+
body: event.toLogBody(),
|
|
442
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
443
|
+
};
|
|
444
|
+
logger.emit(logRecord);
|
|
445
|
+
}
|
|
446
|
+
export function logAgentFinish(config, event) {
|
|
447
|
+
ClearcutLogger.getInstance(config)?.logAgentFinishEvent(event);
|
|
448
|
+
if (!isTelemetrySdkInitialized())
|
|
449
|
+
return;
|
|
450
|
+
const logger = logs.getLogger(SERVICE_NAME);
|
|
451
|
+
const logRecord = {
|
|
452
|
+
body: event.toLogBody(),
|
|
453
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
454
|
+
};
|
|
455
|
+
logger.emit(logRecord);
|
|
456
|
+
recordAgentRunMetrics(config, event);
|
|
457
|
+
}
|
|
458
|
+
export function logWebFetchFallbackAttempt(config, event) {
|
|
459
|
+
ClearcutLogger.getInstance(config)?.logWebFetchFallbackAttemptEvent(event);
|
|
460
|
+
if (!isTelemetrySdkInitialized())
|
|
461
|
+
return;
|
|
596
462
|
const logger = logs.getLogger(SERVICE_NAME);
|
|
597
463
|
const logRecord = {
|
|
598
|
-
body:
|
|
599
|
-
attributes,
|
|
464
|
+
body: event.toLogBody(),
|
|
465
|
+
attributes: event.toOpenTelemetryAttributes(config),
|
|
600
466
|
};
|
|
601
467
|
logger.emit(logRecord);
|
|
602
468
|
}
|