@qduc/term2 0.1.8 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +5 -3
- package/dist/agent.js.map +1 -1
- package/dist/app.d.ts +1 -5
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +31 -274
- package/dist/app.js.map +1 -1
- package/dist/app.parseInput.test.js +1 -9
- package/dist/app.parseInput.test.js.map +1 -1
- package/dist/cli.js +1 -0
- package/dist/cli.js.map +1 -1
- package/dist/components/ApprovalPrompt.d.ts +2 -1
- package/dist/components/ApprovalPrompt.d.ts.map +1 -1
- package/dist/components/ApprovalPrompt.js +15 -0
- package/dist/components/ApprovalPrompt.js.map +1 -1
- package/dist/components/BottomArea.d.ts +1 -1
- package/dist/components/BottomArea.d.ts.map +1 -1
- package/dist/components/Input/determine-active-menu.d.ts +23 -0
- package/dist/components/Input/determine-active-menu.d.ts.map +1 -0
- package/dist/components/Input/determine-active-menu.js +57 -0
- package/dist/components/Input/determine-active-menu.js.map +1 -0
- package/dist/components/Input/input-width.d.ts +7 -0
- package/dist/components/Input/input-width.d.ts.map +1 -0
- package/dist/components/Input/input-width.js +20 -0
- package/dist/components/Input/input-width.js.map +1 -0
- package/dist/components/Input/insertions.d.ts +34 -0
- package/dist/components/Input/insertions.d.ts.map +1 -0
- package/dist/components/Input/insertions.js +52 -0
- package/dist/components/Input/insertions.js.map +1 -0
- package/dist/components/Input/popup-props.d.ts +18 -0
- package/dist/components/Input/popup-props.d.ts.map +1 -0
- package/dist/components/Input/popup-props.js +42 -0
- package/dist/components/Input/popup-props.js.map +1 -0
- package/dist/components/Input/triggers.d.ts +9 -0
- package/dist/components/Input/triggers.d.ts.map +1 -0
- package/dist/components/Input/triggers.js +25 -0
- package/dist/components/Input/triggers.js.map +1 -0
- package/dist/components/InputBox.d.ts +2 -6
- package/dist/components/InputBox.d.ts.map +1 -1
- package/dist/components/InputBox.js +118 -406
- package/dist/components/InputBox.js.map +1 -1
- package/dist/components/InputBox.menu-logic.test.js +82 -99
- package/dist/components/InputBox.menu-logic.test.js.map +1 -1
- package/dist/components/MarkdownRenderer.d.ts.map +1 -1
- package/dist/components/MarkdownRenderer.js +96 -23
- package/dist/components/MarkdownRenderer.js.map +1 -1
- package/dist/components/MessageList.d.ts +8 -0
- package/dist/components/MessageList.d.ts.map +1 -1
- package/dist/components/MessageList.js +25 -7
- package/dist/components/MessageList.js.map +1 -1
- package/dist/components/MessageList.test.js +48 -1
- package/dist/components/MessageList.test.js.map +1 -1
- package/dist/components/StatusBar.d.ts +1 -1
- package/dist/components/StatusBar.d.ts.map +1 -1
- package/dist/components/StatusBar.js +49 -38
- package/dist/components/StatusBar.js.map +1 -1
- package/dist/contracts/conversation.d.ts +9 -0
- package/dist/contracts/conversation.d.ts.map +1 -1
- package/dist/hooks/message-id.d.ts +3 -0
- package/dist/hooks/message-id.d.ts.map +1 -0
- package/dist/hooks/message-id.js +17 -0
- package/dist/hooks/message-id.js.map +1 -0
- package/dist/hooks/message-id.test.d.ts +2 -0
- package/dist/hooks/message-id.test.d.ts.map +1 -0
- package/dist/hooks/message-id.test.js +17 -0
- package/dist/hooks/message-id.test.js.map +1 -0
- package/dist/hooks/use-app-commands.d.ts +20 -0
- package/dist/hooks/use-app-commands.d.ts.map +1 -0
- package/dist/hooks/use-app-commands.js +197 -0
- package/dist/hooks/use-app-commands.js.map +1 -0
- package/dist/hooks/use-app-commands.test.d.ts +2 -0
- package/dist/hooks/use-app-commands.test.d.ts.map +1 -0
- package/dist/hooks/use-app-commands.test.js +34 -0
- package/dist/hooks/use-app-commands.test.js.map +1 -0
- package/dist/hooks/use-conversation.d.ts +11 -11
- package/dist/hooks/use-conversation.d.ts.map +1 -1
- package/dist/hooks/use-conversation.js +13 -10
- package/dist/hooks/use-conversation.js.map +1 -1
- package/dist/hooks/use-escape-key.d.ts +24 -0
- package/dist/hooks/use-escape-key.d.ts.map +1 -0
- package/dist/hooks/use-escape-key.js +60 -0
- package/dist/hooks/use-escape-key.js.map +1 -0
- package/dist/hooks/use-escape-key.test.d.ts +2 -0
- package/dist/hooks/use-escape-key.test.d.ts.map +1 -0
- package/dist/hooks/use-escape-key.test.js +49 -0
- package/dist/hooks/use-escape-key.test.js.map +1 -0
- package/dist/hooks/use-mode-handlers.d.ts +35 -0
- package/dist/hooks/use-mode-handlers.d.ts.map +1 -0
- package/dist/hooks/use-mode-handlers.js +79 -0
- package/dist/hooks/use-mode-handlers.js.map +1 -0
- package/dist/hooks/use-model-selection.d.ts +6 -3
- package/dist/hooks/use-model-selection.d.ts.map +1 -1
- package/dist/hooks/use-model-selection.js +19 -16
- package/dist/hooks/use-model-selection.js.map +1 -1
- package/dist/hooks/use-model-selection.test.d.ts.map +1 -1
- package/dist/hooks/use-model-selection.test.js +53 -22
- package/dist/hooks/use-model-selection.test.js.map +1 -1
- package/dist/hooks/use-path-completion.d.ts.map +1 -1
- package/dist/hooks/use-path-completion.js +5 -36
- package/dist/hooks/use-path-completion.js.map +1 -1
- package/dist/hooks/use-runtime-settings.d.ts +12 -0
- package/dist/hooks/use-runtime-settings.d.ts.map +1 -0
- package/dist/hooks/use-runtime-settings.js +68 -0
- package/dist/hooks/use-runtime-settings.js.map +1 -0
- package/dist/hooks/use-selection.d.ts +8 -0
- package/dist/hooks/use-selection.d.ts.map +1 -0
- package/dist/hooks/use-selection.js +31 -0
- package/dist/hooks/use-selection.js.map +1 -0
- package/dist/hooks/use-settings-completion.d.ts.map +1 -1
- package/dist/hooks/use-settings-completion.js +15 -30
- package/dist/hooks/use-settings-completion.js.map +1 -1
- package/dist/hooks/use-settings-completion.test.js +9 -9
- package/dist/hooks/use-settings-completion.test.js.map +1 -1
- package/dist/hooks/use-settings-value-completion.d.ts.map +1 -1
- package/dist/hooks/use-settings-value-completion.js +30 -28
- package/dist/hooks/use-settings-value-completion.js.map +1 -1
- package/dist/hooks/use-settings-value-completion.test.js +13 -0
- package/dist/hooks/use-settings-value-completion.test.js.map +1 -1
- package/dist/hooks/use-shell-mode.d.ts +31 -0
- package/dist/hooks/use-shell-mode.d.ts.map +1 -0
- package/dist/hooks/use-shell-mode.js +85 -0
- package/dist/hooks/use-shell-mode.js.map +1 -0
- package/dist/hooks/use-slash-commands.d.ts +1 -0
- package/dist/hooks/use-slash-commands.d.ts.map +1 -1
- package/dist/hooks/use-slash-commands.js +32 -23
- package/dist/hooks/use-slash-commands.js.map +1 -1
- package/dist/hooks/use-terminal-width.d.ts +7 -0
- package/dist/hooks/use-terminal-width.d.ts.map +1 -0
- package/dist/hooks/use-terminal-width.js +33 -0
- package/dist/hooks/use-terminal-width.js.map +1 -0
- package/dist/hooks/use-trigger-detection.d.ts +40 -0
- package/dist/hooks/use-trigger-detection.d.ts.map +1 -0
- package/dist/hooks/use-trigger-detection.js +45 -0
- package/dist/hooks/use-trigger-detection.js.map +1 -0
- package/dist/lib/editor-impl.js +6 -6
- package/dist/lib/editor-impl.js.map +1 -1
- package/dist/lib/openai-agent-client.d.ts +2 -0
- package/dist/lib/openai-agent-client.d.ts.map +1 -1
- package/dist/lib/openai-agent-client.js +187 -191
- package/dist/lib/openai-agent-client.js.map +1 -1
- package/dist/lib/openai-agent-client.public-methods.test.js +61 -13
- package/dist/lib/openai-agent-client.public-methods.test.js.map +1 -1
- package/dist/lib/retry-executor.d.ts +16 -0
- package/dist/lib/retry-executor.d.ts.map +1 -0
- package/dist/lib/retry-executor.js +71 -0
- package/dist/lib/retry-executor.js.map +1 -0
- package/dist/lib/retry-executor.test.d.ts +2 -0
- package/dist/lib/retry-executor.test.d.ts.map +1 -0
- package/dist/lib/retry-executor.test.js +178 -0
- package/dist/lib/retry-executor.test.js.map +1 -0
- package/dist/lib/tool-selection-policy.d.ts +14 -0
- package/dist/lib/tool-selection-policy.d.ts.map +1 -0
- package/dist/lib/tool-selection-policy.js +17 -0
- package/dist/lib/tool-selection-policy.js.map +1 -0
- package/dist/lib/tool-selection-policy.test.d.ts +2 -0
- package/dist/lib/tool-selection-policy.test.d.ts.map +1 -0
- package/dist/lib/tool-selection-policy.test.js +69 -0
- package/dist/lib/tool-selection-policy.test.js.map +1 -0
- package/dist/providers/index.d.ts +1 -1
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js +1 -1
- package/dist/providers/index.js.map +1 -1
- package/dist/providers/openai-compatible/model.d.ts.map +1 -1
- package/dist/providers/openai-compatible/model.js +68 -7
- package/dist/providers/openai-compatible/model.js.map +1 -1
- package/dist/providers/openai-compatible/reasoning-content.test.js +107 -6
- package/dist/providers/openai-compatible/reasoning-content.test.js.map +1 -1
- package/dist/providers/openai-compatible.provider.d.ts.map +1 -1
- package/dist/providers/openai-compatible.provider.js.map +1 -1
- package/dist/providers/openai.provider.js +2 -0
- package/dist/providers/openai.provider.js.map +1 -1
- package/dist/providers/openrouter/converters.d.ts.map +1 -1
- package/dist/providers/openrouter/converters.js +8 -6
- package/dist/providers/openrouter/converters.js.map +1 -1
- package/dist/providers/openrouter/converters.test.js +24 -0
- package/dist/providers/openrouter/converters.test.js.map +1 -1
- package/dist/providers/openrouter/model.d.ts.map +1 -1
- package/dist/providers/openrouter/model.js +13 -5
- package/dist/providers/openrouter/model.js.map +1 -1
- package/dist/providers/openrouter/reasoning-content.test.js +48 -2
- package/dist/providers/openrouter/reasoning-content.test.js.map +1 -1
- package/dist/providers/openrouter.provider.createRunner.test.js +17 -9
- package/dist/providers/openrouter.provider.createRunner.test.js.map +1 -1
- package/dist/providers/openrouter.provider.js.map +1 -1
- package/dist/providers/openrouter.test.js +0 -2
- package/dist/providers/openrouter.test.js.map +1 -1
- package/dist/providers/registry.d.ts +17 -8
- package/dist/providers/registry.d.ts.map +1 -1
- package/dist/providers/registry.js +9 -0
- package/dist/providers/registry.js.map +1 -1
- package/dist/providers/web-search/exa.provider.d.ts +15 -0
- package/dist/providers/web-search/exa.provider.d.ts.map +1 -0
- package/dist/providers/web-search/exa.provider.js +82 -0
- package/dist/providers/web-search/exa.provider.js.map +1 -0
- package/dist/providers/web-search/exa.provider.test.d.ts +2 -0
- package/dist/providers/web-search/exa.provider.test.d.ts.map +1 -0
- package/dist/providers/web-search/exa.provider.test.js +67 -0
- package/dist/providers/web-search/exa.provider.test.js.map +1 -0
- package/dist/providers/web-search/index.d.ts +1 -0
- package/dist/providers/web-search/index.d.ts.map +1 -1
- package/dist/providers/web-search/index.js +1 -0
- package/dist/providers/web-search/index.js.map +1 -1
- package/dist/scripts/eval-auto-approval/cache.d.ts +9 -0
- package/dist/scripts/eval-auto-approval/cache.d.ts.map +1 -0
- package/dist/scripts/eval-auto-approval/cache.js +64 -0
- package/dist/scripts/eval-auto-approval/cache.js.map +1 -0
- package/dist/scripts/eval-auto-approval/dataset.d.ts +45 -0
- package/dist/scripts/eval-auto-approval/dataset.d.ts.map +1 -0
- package/dist/scripts/eval-auto-approval/dataset.js +65 -0
- package/dist/scripts/eval-auto-approval/dataset.js.map +1 -0
- package/dist/scripts/eval-auto-approval/dataset.test.d.ts +2 -0
- package/dist/scripts/eval-auto-approval/dataset.test.d.ts.map +1 -0
- package/dist/scripts/eval-auto-approval/dataset.test.js +88 -0
- package/dist/scripts/eval-auto-approval/dataset.test.js.map +1 -0
- package/dist/scripts/eval-auto-approval/leaderboard.d.ts +92 -0
- package/dist/scripts/eval-auto-approval/leaderboard.d.ts.map +1 -0
- package/dist/scripts/eval-auto-approval/leaderboard.js +402 -0
- package/dist/scripts/eval-auto-approval/leaderboard.js.map +1 -0
- package/dist/scripts/eval-auto-approval/leaderboard.test.d.ts +2 -0
- package/dist/scripts/eval-auto-approval/leaderboard.test.d.ts.map +1 -0
- package/dist/scripts/eval-auto-approval/leaderboard.test.js +689 -0
- package/dist/scripts/eval-auto-approval/leaderboard.test.js.map +1 -0
- package/dist/scripts/eval-auto-approval/metrics.d.ts +34 -0
- package/dist/scripts/eval-auto-approval/metrics.d.ts.map +1 -0
- package/dist/scripts/eval-auto-approval/metrics.js +74 -0
- package/dist/scripts/eval-auto-approval/metrics.js.map +1 -0
- package/dist/scripts/eval-auto-approval/metrics.test.d.ts +2 -0
- package/dist/scripts/eval-auto-approval/metrics.test.d.ts.map +1 -0
- package/dist/scripts/eval-auto-approval/metrics.test.js +79 -0
- package/dist/scripts/eval-auto-approval/metrics.test.js.map +1 -0
- package/dist/scripts/eval-auto-approval/report.d.ts +5 -0
- package/dist/scripts/eval-auto-approval/report.d.ts.map +1 -0
- package/dist/scripts/eval-auto-approval/report.js +51 -0
- package/dist/scripts/eval-auto-approval/report.js.map +1 -0
- package/dist/scripts/eval-auto-approval/report.test.d.ts +2 -0
- package/dist/scripts/eval-auto-approval/report.test.d.ts.map +1 -0
- package/dist/scripts/eval-auto-approval/report.test.js +23 -0
- package/dist/scripts/eval-auto-approval/report.test.js.map +1 -0
- package/dist/scripts/eval-auto-approval/runner-utils.d.ts +41 -0
- package/dist/scripts/eval-auto-approval/runner-utils.d.ts.map +1 -0
- package/dist/scripts/eval-auto-approval/runner-utils.js +187 -0
- package/dist/scripts/eval-auto-approval/runner-utils.js.map +1 -0
- package/dist/scripts/eval-auto-approval/runner-utils.test.d.ts +2 -0
- package/dist/scripts/eval-auto-approval/runner-utils.test.d.ts.map +1 -0
- package/dist/scripts/eval-auto-approval/runner-utils.test.js +135 -0
- package/dist/scripts/eval-auto-approval/runner-utils.test.js.map +1 -0
- package/dist/scripts/eval-auto-approval/runner.d.ts +2 -0
- package/dist/scripts/eval-auto-approval/runner.d.ts.map +1 -0
- package/dist/scripts/eval-auto-approval/runner.js +326 -0
- package/dist/scripts/eval-auto-approval/runner.js.map +1 -0
- package/dist/services/agent-stream.d.ts +11 -0
- package/dist/services/agent-stream.d.ts.map +1 -0
- package/dist/services/agent-stream.js +2 -0
- package/dist/services/agent-stream.js.map +1 -0
- package/dist/services/approval-flow-coordinator.d.ts +43 -0
- package/dist/services/approval-flow-coordinator.d.ts.map +1 -0
- package/dist/services/approval-flow-coordinator.js +120 -0
- package/dist/services/approval-flow-coordinator.js.map +1 -0
- package/dist/services/approval-flow-coordinator.test.d.ts +2 -0
- package/dist/services/approval-flow-coordinator.test.d.ts.map +1 -0
- package/dist/services/approval-flow-coordinator.test.js +168 -0
- package/dist/services/approval-flow-coordinator.test.js.map +1 -0
- package/dist/services/approval-rejection-interceptor.d.ts +16 -0
- package/dist/services/approval-rejection-interceptor.d.ts.map +1 -0
- package/dist/services/approval-rejection-interceptor.js +20 -0
- package/dist/services/approval-rejection-interceptor.js.map +1 -0
- package/dist/services/approval-rejection-interceptor.test.d.ts +2 -0
- package/dist/services/approval-rejection-interceptor.test.d.ts.map +1 -0
- package/dist/services/approval-rejection-interceptor.test.js +60 -0
- package/dist/services/approval-rejection-interceptor.test.js.map +1 -0
- package/dist/services/conversation-events.d.ts +4 -2
- package/dist/services/conversation-events.d.ts.map +1 -1
- package/dist/services/conversation-result-builder.d.ts +34 -34
- package/dist/services/conversation-result-builder.d.ts.map +1 -1
- package/dist/services/conversation-result-builder.js +64 -76
- package/dist/services/conversation-result-builder.js.map +1 -1
- package/dist/services/conversation-result-builder.test.js +145 -65
- package/dist/services/conversation-result-builder.test.js.map +1 -1
- package/dist/services/conversation-retry-policy.d.ts +37 -0
- package/dist/services/conversation-retry-policy.d.ts.map +1 -0
- package/dist/services/conversation-retry-policy.js +51 -0
- package/dist/services/conversation-retry-policy.js.map +1 -0
- package/dist/services/conversation-retry-policy.test.d.ts +2 -0
- package/dist/services/conversation-retry-policy.test.d.ts.map +1 -0
- package/dist/services/conversation-retry-policy.test.js +79 -0
- package/dist/services/conversation-retry-policy.test.js.map +1 -0
- package/dist/services/conversation-service.d.ts +2 -1
- package/dist/services/conversation-service.d.ts.map +1 -1
- package/dist/services/conversation-session.auto-approval.test.d.ts +2 -0
- package/dist/services/conversation-session.auto-approval.test.d.ts.map +1 -0
- package/dist/services/conversation-session.auto-approval.test.js +617 -0
- package/dist/services/conversation-session.auto-approval.test.js.map +1 -0
- package/dist/services/conversation-session.d.ts +6 -3
- package/dist/services/conversation-session.d.ts.map +1 -1
- package/dist/services/conversation-session.js +164 -696
- package/dist/services/conversation-session.js.map +1 -1
- package/dist/services/interruption-info.d.ts +13 -0
- package/dist/services/interruption-info.d.ts.map +1 -0
- package/dist/services/interruption-info.js +89 -0
- package/dist/services/interruption-info.js.map +1 -0
- package/dist/services/interruption-info.test.d.ts +2 -0
- package/dist/services/interruption-info.test.d.ts.map +1 -0
- package/dist/services/interruption-info.test.js +84 -0
- package/dist/services/interruption-info.test.js.map +1 -0
- package/dist/services/logging-contract.d.ts +1 -1
- package/dist/services/logging-service.d.ts +6 -2
- package/dist/services/logging-service.d.ts.map +1 -1
- package/dist/services/logging-service.js +48 -91
- package/dist/services/logging-service.js.map +1 -1
- package/dist/services/settings-env.d.ts.map +1 -1
- package/dist/services/settings-env.js +3 -0
- package/dist/services/settings-env.js.map +1 -1
- package/dist/services/settings-schema.d.ts +34 -0
- package/dist/services/settings-schema.d.ts.map +1 -1
- package/dist/services/settings-schema.js +37 -0
- package/dist/services/settings-schema.js.map +1 -1
- package/dist/services/settings-service.d.ts.map +1 -1
- package/dist/services/settings-service.js +12 -166
- package/dist/services/settings-service.js.map +1 -1
- package/dist/services/settings-sources.d.ts +5 -0
- package/dist/services/settings-sources.d.ts.map +1 -0
- package/dist/services/settings-sources.js +92 -0
- package/dist/services/settings-sources.js.map +1 -0
- package/dist/services/settings-sources.test.d.ts +2 -0
- package/dist/services/settings-sources.test.d.ts.map +1 -0
- package/dist/services/settings-sources.test.js +34 -0
- package/dist/services/settings-sources.test.js.map +1 -0
- package/dist/services/shell-auto-approval-evaluator.d.ts +19 -0
- package/dist/services/shell-auto-approval-evaluator.d.ts.map +1 -0
- package/dist/services/shell-auto-approval-evaluator.js +207 -0
- package/dist/services/shell-auto-approval-evaluator.js.map +1 -0
- package/dist/services/shell-auto-approval-evaluator.test.d.ts +2 -0
- package/dist/services/shell-auto-approval-evaluator.test.d.ts.map +1 -0
- package/dist/services/shell-auto-approval-evaluator.test.js +211 -0
- package/dist/services/shell-auto-approval-evaluator.test.js.map +1 -0
- package/dist/services/shell-auto-approval-resolver.d.ts +24 -0
- package/dist/services/shell-auto-approval-resolver.d.ts.map +1 -0
- package/dist/services/shell-auto-approval-resolver.js +59 -0
- package/dist/services/shell-auto-approval-resolver.js.map +1 -0
- package/dist/services/shell-auto-approval-resolver.test.d.ts +2 -0
- package/dist/services/shell-auto-approval-resolver.test.d.ts.map +1 -0
- package/dist/services/shell-auto-approval-resolver.test.js +110 -0
- package/dist/services/shell-auto-approval-resolver.test.js.map +1 -0
- package/dist/services/ssh-service.test.js +2 -2
- package/dist/services/ssh-service.test.js.map +1 -1
- package/dist/services/stream-event-processor.d.ts +18 -23
- package/dist/services/stream-event-processor.d.ts.map +1 -1
- package/dist/services/stream-event-processor.js +186 -325
- package/dist/services/stream-event-processor.js.map +1 -1
- package/dist/services/stream-event-processor.test.js +143 -90
- package/dist/services/stream-event-processor.test.js.map +1 -1
- package/dist/services/terminal-result-collector.d.ts +12 -0
- package/dist/services/terminal-result-collector.d.ts.map +1 -0
- package/dist/services/terminal-result-collector.js +64 -0
- package/dist/services/terminal-result-collector.js.map +1 -0
- package/dist/services/terminal-result-collector.test.d.ts +2 -0
- package/dist/services/terminal-result-collector.test.d.ts.map +1 -0
- package/dist/services/terminal-result-collector.test.js +93 -0
- package/dist/services/terminal-result-collector.test.js.map +1 -0
- package/dist/tools/apply-patch.js +5 -5
- package/dist/tools/apply-patch.js.map +1 -1
- package/dist/tools/create-file.js +2 -2
- package/dist/tools/create-file.js.map +1 -1
- package/dist/tools/edit-healing.d.ts.map +1 -1
- package/dist/tools/edit-healing.js +4 -1
- package/dist/tools/edit-healing.js.map +1 -1
- package/dist/tools/edit-healing.test.js +22 -0
- package/dist/tools/edit-healing.test.js.map +1 -1
- package/dist/tools/search-replace.d.ts.map +1 -1
- package/dist/tools/search-replace.js +114 -194
- package/dist/tools/search-replace.js.map +1 -1
- package/dist/tools/search-replace.test.js +38 -0
- package/dist/tools/search-replace.test.js.map +1 -1
- package/dist/tools/shell.js +2 -2
- package/dist/tools/shell.js.map +1 -1
- package/dist/tools/shell.test.js +0 -5
- package/dist/tools/shell.test.js.map +1 -1
- package/dist/tools/web-fetch.test.js +3 -3
- package/dist/tools/web-fetch.test.js.map +1 -1
- package/dist/utils/clipboard.d.ts +16 -0
- package/dist/utils/clipboard.d.ts.map +1 -0
- package/dist/utils/clipboard.js +55 -0
- package/dist/utils/clipboard.js.map +1 -0
- package/dist/utils/clipboard.test.d.ts +2 -0
- package/dist/utils/clipboard.test.d.ts.map +1 -0
- package/dist/utils/clipboard.test.js +59 -0
- package/dist/utils/clipboard.test.js.map +1 -0
- package/dist/utils/command-safety/constants.d.ts.map +1 -1
- package/dist/utils/command-safety/constants.js +3 -21
- package/dist/utils/command-safety/constants.js.map +1 -1
- package/dist/utils/command-safety/find-helpers.d.ts.map +1 -1
- package/dist/utils/command-safety/find-helpers.js +13 -95
- package/dist/utils/command-safety/find-helpers.js.map +1 -1
- package/dist/utils/command-safety/handlers/sed-handler.d.ts.map +1 -1
- package/dist/utils/command-safety/handlers/sed-handler.js +2 -4
- package/dist/utils/command-safety/handlers/sed-handler.js.map +1 -1
- package/dist/utils/command-safety/index.d.ts +9 -0
- package/dist/utils/command-safety/index.d.ts.map +1 -1
- package/dist/utils/command-safety/index.js +12 -2
- package/dist/utils/command-safety/index.js.map +1 -1
- package/dist/utils/command-safety/path-analysis.d.ts.map +1 -1
- package/dist/utils/command-safety/path-analysis.js +7 -6
- package/dist/utils/command-safety/path-analysis.js.map +1 -1
- package/dist/utils/command-safety.find.test.js +56 -39
- package/dist/utils/command-safety.find.test.js.map +1 -1
- package/dist/utils/command-safety.path.test.js +7 -7
- package/dist/utils/command-safety.path.test.js.map +1 -1
- package/dist/utils/command-safety.red-yellow-policy.test.d.ts +2 -0
- package/dist/utils/command-safety.red-yellow-policy.test.d.ts.map +1 -0
- package/dist/utils/command-safety.red-yellow-policy.test.js +36 -0
- package/dist/utils/command-safety.red-yellow-policy.test.js.map +1 -0
- package/dist/utils/conversation-event-handler.d.ts +4 -3
- package/dist/utils/conversation-event-handler.d.ts.map +1 -1
- package/dist/utils/conversation-event-handler.js +15 -5
- package/dist/utils/conversation-event-handler.js.map +1 -1
- package/dist/utils/conversation-event-handler.test.js +24 -0
- package/dist/utils/conversation-event-handler.test.js.map +1 -1
- package/dist/utils/conversation-utils.d.ts +1 -1
- package/dist/utils/execute-shell.d.ts +10 -0
- package/dist/utils/execute-shell.d.ts.map +1 -1
- package/dist/utils/execute-shell.js +3 -3
- package/dist/utils/execute-shell.js.map +1 -1
- package/dist/utils/execute-shell.test.js +19 -3
- package/dist/utils/execute-shell.test.js.map +1 -1
- package/dist/utils/input-parser.d.ts +13 -0
- package/dist/utils/input-parser.d.ts.map +1 -0
- package/dist/utils/input-parser.js +10 -0
- package/dist/utils/input-parser.js.map +1 -0
- package/dist/utils/model-provider-arg.d.ts +5 -0
- package/dist/utils/model-provider-arg.d.ts.map +1 -0
- package/dist/utils/model-provider-arg.js +15 -0
- package/dist/utils/model-provider-arg.js.map +1 -0
- package/dist/utils/model-provider-arg.test.d.ts +2 -0
- package/dist/utils/model-provider-arg.test.d.ts.map +1 -0
- package/dist/utils/model-provider-arg.test.js +21 -0
- package/dist/utils/model-provider-arg.test.js.map +1 -0
- package/dist/utils/model-settings.d.ts +12 -0
- package/dist/utils/model-settings.d.ts.map +1 -0
- package/dist/utils/model-settings.js +35 -0
- package/dist/utils/model-settings.js.map +1 -0
- package/dist/utils/provider-traffic-extractor.d.ts +1 -0
- package/dist/utils/provider-traffic-extractor.d.ts.map +1 -1
- package/dist/utils/provider-traffic-extractor.js +90 -5
- package/dist/utils/provider-traffic-extractor.js.map +1 -1
- package/dist/utils/settings-command.d.ts.map +1 -1
- package/dist/utils/settings-command.js +10 -8
- package/dist/utils/settings-command.js.map +1 -1
- package/dist/utils/streaming-session-factory.d.ts +1 -1
- package/dist/utils/streaming-session-factory.d.ts.map +1 -1
- package/dist/utils/streaming-session-factory.js +5 -2
- package/dist/utils/streaming-session-factory.js.map +1 -1
- package/dist/utils/streaming-session-factory.test.js +2 -2
- package/dist/utils/streaming-session-factory.test.js.map +1 -1
- package/dist/utils/streaming-updater.d.ts +2 -1
- package/dist/utils/streaming-updater.d.ts.map +1 -1
- package/dist/utils/streaming-updater.js +2 -2
- package/dist/utils/streaming-updater.js.map +1 -1
- package/dist/utils/throttle.d.ts +6 -1
- package/dist/utils/throttle.d.ts.map +1 -1
- package/dist/utils/throttle.js +11 -6
- package/dist/utils/throttle.js.map +1 -1
- package/dist/utils/viewport.d.ts +6 -0
- package/dist/utils/viewport.d.ts.map +1 -0
- package/dist/utils/viewport.js +20 -0
- package/dist/utils/viewport.js.map +1 -0
- package/dist/utils/viewport.test.d.ts +2 -0
- package/dist/utils/viewport.test.d.ts.map +1 -0
- package/dist/utils/viewport.test.js +43 -0
- package/dist/utils/viewport.test.js.map +1 -0
- package/package.json +5 -4
- package/dist/app.model-command-feedback.test.d.ts +0 -2
- package/dist/app.model-command-feedback.test.d.ts.map +0 -1
- package/dist/app.model-command-feedback.test.js +0 -19
- package/dist/app.model-command-feedback.test.js.map +0 -1
- package/dist/components/MentorMode.test.d.ts +0 -2
- package/dist/components/MentorMode.test.d.ts.map +0 -1
- package/dist/components/MentorMode.test.js.map +0 -1
- package/dist/components/ModelSelectionMenu.error-tabs.test.d.ts +0 -2
- package/dist/components/ModelSelectionMenu.error-tabs.test.d.ts.map +0 -1
- package/dist/components/ModelSelectionMenu.error-tabs.test.js +0 -18
- package/dist/components/ModelSelectionMenu.error-tabs.test.js.map +0 -1
- package/dist/components/StatusBar.test.d.ts +0 -2
- package/dist/components/StatusBar.test.d.ts.map +0 -1
- package/dist/components/StatusBar.test.js +0 -19
- package/dist/components/StatusBar.test.js.map +0 -1
- package/dist/components/TextInput.d.ts +0 -42
- package/dist/components/TextInput.d.ts.map +0 -1
- package/dist/components/TextInput.js +0 -397
- package/dist/components/TextInput.js.map +0 -1
- package/dist/components/TextInput.test.d.ts +0 -2
- package/dist/components/TextInput.test.d.ts.map +0 -1
- package/dist/components/TextInput.test.js +0 -75
- package/dist/components/TextInput.test.js.map +0 -1
- package/dist/debug-schema.d.ts +0 -2
- package/dist/debug-schema.d.ts.map +0 -1
- package/dist/debug-schema.js +0 -22
- package/dist/debug-schema.js.map +0 -1
- package/dist/hooks/use-path-completion.test.d.ts +0 -2
- package/dist/hooks/use-path-completion.test.d.ts.map +0 -1
- package/dist/hooks/use-path-completion.test.js +0 -29
- package/dist/hooks/use-path-completion.test.js.map +0 -1
- package/dist/lib/mentor-client.d.ts +0 -41
- package/dist/lib/mentor-client.d.ts.map +0 -1
- package/dist/lib/mentor-client.js +0 -146
- package/dist/lib/mentor-client.js.map +0 -1
- package/dist/lib/mentor-client.test.d.ts +0 -2
- package/dist/lib/mentor-client.test.d.ts.map +0 -1
- package/dist/lib/mentor-client.test.js +0 -440
- package/dist/lib/mentor-client.test.js.map +0 -1
- package/dist/lib/retry-strategy.d.ts +0 -43
- package/dist/lib/retry-strategy.d.ts.map +0 -1
- package/dist/lib/retry-strategy.js +0 -93
- package/dist/lib/retry-strategy.js.map +0 -1
- package/dist/lib/retry-strategy.test.d.ts +0 -2
- package/dist/lib/retry-strategy.test.d.ts.map +0 -1
- package/dist/lib/retry-strategy.test.js +0 -200
- package/dist/lib/retry-strategy.test.js.map +0 -1
- package/dist/lib/shell.d.ts +0 -7
- package/dist/lib/shell.d.ts.map +0 -1
- package/dist/lib/shell.js +0 -56
- package/dist/lib/shell.js.map +0 -1
- package/dist/prompts/default.md.bak +0 -77
- package/dist/prompts/simple-mentor.md +0 -207
- package/dist/providers/github-copilot/converters.d.ts +0 -45
- package/dist/providers/github-copilot/converters.d.ts.map +0 -1
- package/dist/providers/github-copilot/converters.js +0 -118
- package/dist/providers/github-copilot/converters.js.map +0 -1
- package/dist/providers/github-copilot/converters.test.d.ts +0 -2
- package/dist/providers/github-copilot/converters.test.d.ts.map +0 -1
- package/dist/providers/github-copilot/converters.test.js +0 -162
- package/dist/providers/github-copilot/converters.test.js.map +0 -1
- package/dist/providers/github-copilot/github-copilot.provider.d.ts +0 -2
- package/dist/providers/github-copilot/github-copilot.provider.d.ts.map +0 -1
- package/dist/providers/github-copilot/github-copilot.provider.js +0 -75
- package/dist/providers/github-copilot/github-copilot.provider.js.map +0 -1
- package/dist/providers/github-copilot/github-copilot.provider.test.d.ts +0 -2
- package/dist/providers/github-copilot/github-copilot.provider.test.d.ts.map +0 -1
- package/dist/providers/github-copilot/github-copilot.provider.test.js +0 -26
- package/dist/providers/github-copilot/github-copilot.provider.test.js.map +0 -1
- package/dist/providers/github-copilot/index.d.ts +0 -4
- package/dist/providers/github-copilot/index.d.ts.map +0 -1
- package/dist/providers/github-copilot/index.js +0 -4
- package/dist/providers/github-copilot/index.js.map +0 -1
- package/dist/providers/github-copilot/model-direct.d.ts +0 -34
- package/dist/providers/github-copilot/model-direct.d.ts.map +0 -1
- package/dist/providers/github-copilot/model-direct.js +0 -443
- package/dist/providers/github-copilot/model-direct.js.map +0 -1
- package/dist/providers/github-copilot/model.d.ts +0 -24
- package/dist/providers/github-copilot/model.d.ts.map +0 -1
- package/dist/providers/github-copilot/model.delta.test.d.ts +0 -2
- package/dist/providers/github-copilot/model.delta.test.d.ts.map +0 -1
- package/dist/providers/github-copilot/model.delta.test.js +0 -15
- package/dist/providers/github-copilot/model.delta.test.js.map +0 -1
- package/dist/providers/github-copilot/model.js +0 -581
- package/dist/providers/github-copilot/model.js.map +0 -1
- package/dist/providers/github-copilot/provider.d.ts +0 -20
- package/dist/providers/github-copilot/provider.d.ts.map +0 -1
- package/dist/providers/github-copilot/provider.js +0 -30
- package/dist/providers/github-copilot/provider.js.map +0 -1
- package/dist/providers/github-copilot/provider.test.d.ts +0 -2
- package/dist/providers/github-copilot/provider.test.d.ts.map +0 -1
- package/dist/providers/github-copilot/provider.test.js +0 -52
- package/dist/providers/github-copilot/provider.test.js.map +0 -1
- package/dist/providers/github-copilot/utils.d.ts +0 -20
- package/dist/providers/github-copilot/utils.d.ts.map +0 -1
- package/dist/providers/github-copilot/utils.js +0 -142
- package/dist/providers/github-copilot/utils.js.map +0 -1
- package/dist/providers/github-copilot/utils.test.d.ts +0 -2
- package/dist/providers/github-copilot/utils.test.d.ts.map +0 -1
- package/dist/providers/github-copilot/utils.test.js +0 -21
- package/dist/providers/github-copilot/utils.test.js.map +0 -1
- package/dist/providers/openrouter/merge-messages.test.d.ts +0 -2
- package/dist/providers/openrouter/merge-messages.test.d.ts.map +0 -1
- package/dist/providers/openrouter/merge-messages.test.js +0 -83
- package/dist/providers/openrouter/merge-messages.test.js.map +0 -1
- package/dist/providers/openrouter.history.test.d.ts +0 -2
- package/dist/providers/openrouter.history.test.d.ts.map +0 -1
- package/dist/providers/openrouter.history.test.js +0 -533
- package/dist/providers/openrouter.history.test.js.map +0 -1
- package/dist/reproduce_issue.test.d.ts +0 -2
- package/dist/reproduce_issue.test.d.ts.map +0 -1
- package/dist/reproduce_issue.test.js +0 -31
- package/dist/reproduce_issue.test.js.map +0 -1
- package/dist/safety-checker.js +0 -57
- package/dist/services/conversation-service.test.js +0 -190
- package/dist/services/conversation-session.usage.test.d.ts +0 -2
- package/dist/services/conversation-session.usage.test.d.ts.map +0 -1
- package/dist/services/conversation-session.usage.test.js +0 -59
- package/dist/services/conversation-session.usage.test.js.map +0 -1
- package/dist/test-search-tool.d.ts +0 -2
- package/dist/test-search-tool.d.ts.map +0 -1
- package/dist/test-search-tool.js +0 -36
- package/dist/test-search-tool.js.map +0 -1
- package/dist/tools/bash.d.ts +0 -10
- package/dist/tools/bash.d.ts.map +0 -1
- package/dist/tools/bash.js +0 -55
- package/dist/tools/bash.js.map +0 -1
- package/dist/types/messages.d.ts +0 -29
- package/dist/types/messages.d.ts.map +0 -1
- package/dist/types/messages.js +0 -2
- package/dist/types/messages.js.map +0 -1
- package/dist/utils/command-safety.d.ts +0 -21
- package/dist/utils/command-safety.d.ts.map +0 -1
- package/dist/utils/command-safety.js +0 -702
- package/dist/utils/command-safety.js.map +0 -1
- package/dist/utils/extract-command-messages.repro.test.d.ts +0 -2
- package/dist/utils/extract-command-messages.repro.test.d.ts.map +0 -1
- package/dist/utils/extract-command-messages.repro.test.js +0 -31
- package/dist/utils/extract-command-messages.repro.test.js.map +0 -1
- package/dist/utils/extract-command-messages.test.js +0 -57
- package/dist/utils/message-utils.d.ts +0 -17
- package/dist/utils/message-utils.d.ts.map +0 -1
- package/dist/utils/message-utils.js +0 -52
- package/dist/utils/message-utils.js.map +0 -1
- package/dist/utils/message-utils.test.d.ts +0 -2
- package/dist/utils/message-utils.test.d.ts.map +0 -1
- package/dist/utils/message-utils.test.js +0 -48
- package/dist/utils/message-utils.test.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation-session.js","sourceRoot":"","sources":["../../source/services/conversation-session.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"conversation-session.js","sourceRoot":"","sources":["../../source/services/conversation-session.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export type UnknownRecord = Record<string, unknown>;
|
|
2
|
+
export declare const asRecord: (value: unknown) => UnknownRecord | undefined;
|
|
3
|
+
export declare const getString: (record: UnknownRecord | undefined, key: string) => string | undefined;
|
|
4
|
+
export declare const getMethod: <TArgs extends unknown[], TResult>(target: unknown, key: string) => ((...args: TArgs) => TResult) | null;
|
|
5
|
+
export declare const getCallIdFromObject: (value: unknown) => string | undefined;
|
|
6
|
+
export declare const getCommandFromArgs: (args: unknown) => string;
|
|
7
|
+
export interface InterruptionToolInfo {
|
|
8
|
+
toolName: string;
|
|
9
|
+
argumentsText: string;
|
|
10
|
+
rawArguments: unknown;
|
|
11
|
+
}
|
|
12
|
+
export declare const getToolInfoFromInterruption: (interruption: unknown) => InterruptionToolInfo;
|
|
13
|
+
//# sourceMappingURL=interruption-info.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interruption-info.d.ts","sourceRoot":"","sources":["../../source/services/interruption-info.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEpD,eAAO,MAAM,QAAQ,GAAI,OAAO,OAAO,KAAG,aAAa,GAAG,SAC0C,CAAC;AAErG,eAAO,MAAM,SAAS,GAAI,QAAQ,aAAa,GAAG,SAAS,EAAE,KAAK,MAAM,KAAG,MAAM,GAAG,SAGnF,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,KAAK,SAAS,OAAO,EAAE,EAAE,OAAO,EACxD,QAAQ,OAAO,EACf,KAAK,MAAM,KACV,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,GAAG,IAIlC,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,OAAO,OAAO,KAAG,MAAM,GAAG,SAqB7D,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,MAAM,OAAO,KAAG,MA2ClD,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,eAAO,MAAM,2BAA2B,GAAI,cAAc,OAAO,KAAG,oBAiBnE,CAAC"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
export const asRecord = (value) => value && typeof value === 'object' && !Array.isArray(value) ? value : undefined;
|
|
2
|
+
export const getString = (record, key) => {
|
|
3
|
+
const value = record?.[key];
|
|
4
|
+
return typeof value === 'string' ? value : undefined;
|
|
5
|
+
};
|
|
6
|
+
export const getMethod = (target, key) => {
|
|
7
|
+
const record = asRecord(target);
|
|
8
|
+
const candidate = record?.[key];
|
|
9
|
+
return typeof candidate === 'function' ? candidate : null;
|
|
10
|
+
};
|
|
11
|
+
export const getCallIdFromObject = (value) => {
|
|
12
|
+
const record = asRecord(value);
|
|
13
|
+
const callId = getString(record, 'callId') ??
|
|
14
|
+
getString(record, 'call_id') ??
|
|
15
|
+
getString(record, 'tool_call_id') ??
|
|
16
|
+
getString(record, 'toolCallId') ??
|
|
17
|
+
getString(record, 'id');
|
|
18
|
+
if (callId) {
|
|
19
|
+
return callId;
|
|
20
|
+
}
|
|
21
|
+
const rawItem = asRecord(record?.rawItem);
|
|
22
|
+
return (getString(rawItem, 'callId') ??
|
|
23
|
+
getString(rawItem, 'call_id') ??
|
|
24
|
+
getString(rawItem, 'tool_call_id') ??
|
|
25
|
+
getString(rawItem, 'toolCallId') ??
|
|
26
|
+
getString(rawItem, 'id'));
|
|
27
|
+
};
|
|
28
|
+
export const getCommandFromArgs = (args) => {
|
|
29
|
+
if (!args) {
|
|
30
|
+
return '';
|
|
31
|
+
}
|
|
32
|
+
if (typeof args === 'string') {
|
|
33
|
+
try {
|
|
34
|
+
const parsed = JSON.parse(args);
|
|
35
|
+
if (parsed?.command) {
|
|
36
|
+
return parsed.command;
|
|
37
|
+
}
|
|
38
|
+
if (Array.isArray(parsed?.commands)) {
|
|
39
|
+
return parsed.commands.join('\n');
|
|
40
|
+
}
|
|
41
|
+
return JSON.stringify(parsed);
|
|
42
|
+
}
|
|
43
|
+
catch {
|
|
44
|
+
return args;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
if (typeof args === 'object') {
|
|
48
|
+
const argsRecord = asRecord(args);
|
|
49
|
+
const cmdFromObject = argsRecord?.command !== undefined ? String(argsRecord.command) : undefined;
|
|
50
|
+
if (Array.isArray(argsRecord?.commands)) {
|
|
51
|
+
return argsRecord.commands.join('\n');
|
|
52
|
+
}
|
|
53
|
+
let argsFromObject;
|
|
54
|
+
if (argsRecord?.arguments !== undefined) {
|
|
55
|
+
const rawArguments = argsRecord.arguments;
|
|
56
|
+
if (typeof rawArguments === 'string') {
|
|
57
|
+
try {
|
|
58
|
+
argsFromObject = JSON.stringify(JSON.parse(rawArguments));
|
|
59
|
+
}
|
|
60
|
+
catch {
|
|
61
|
+
argsFromObject = String(rawArguments);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
else if (rawArguments !== undefined) {
|
|
65
|
+
argsFromObject = String(rawArguments);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return cmdFromObject ?? argsFromObject ?? JSON.stringify(args);
|
|
69
|
+
}
|
|
70
|
+
return String(args);
|
|
71
|
+
};
|
|
72
|
+
export const getToolInfoFromInterruption = (interruption) => {
|
|
73
|
+
const interruptionRecord = asRecord(interruption);
|
|
74
|
+
const toolName = getString(interruptionRecord, 'name') ?? 'unknown';
|
|
75
|
+
const rawArguments = interruptionRecord?.arguments;
|
|
76
|
+
let argumentsText = '';
|
|
77
|
+
if (getString(interruptionRecord, 'type') === 'shell_call') {
|
|
78
|
+
const action = asRecord(interruptionRecord?.action);
|
|
79
|
+
const actionCommands = action?.commands;
|
|
80
|
+
if (actionCommands) {
|
|
81
|
+
argumentsText = Array.isArray(actionCommands) ? actionCommands.join('\n') : String(actionCommands);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
argumentsText = getCommandFromArgs(rawArguments);
|
|
86
|
+
}
|
|
87
|
+
return { toolName, argumentsText, rawArguments };
|
|
88
|
+
};
|
|
89
|
+
//# sourceMappingURL=interruption-info.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interruption-info.js","sourceRoot":"","sources":["../../source/services/interruption-info.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interruption-info.test.d.ts","sourceRoot":"","sources":["../../source/services/interruption-info.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import test from 'ava';
|
|
2
|
+
import { asRecord, getString, getMethod, getCallIdFromObject, getCommandFromArgs, getToolInfoFromInterruption, } from './interruption-info.js';
|
|
3
|
+
test('asRecord returns the object for plain records and undefined otherwise', (t) => {
|
|
4
|
+
t.deepEqual(asRecord({ a: 1 }), { a: 1 });
|
|
5
|
+
t.is(asRecord(null), undefined);
|
|
6
|
+
t.is(asRecord(undefined), undefined);
|
|
7
|
+
t.is(asRecord([1, 2]), undefined);
|
|
8
|
+
t.is(asRecord('string'), undefined);
|
|
9
|
+
});
|
|
10
|
+
test('getString returns string values and undefined for non-strings', (t) => {
|
|
11
|
+
t.is(getString({ a: 'hello' }, 'a'), 'hello');
|
|
12
|
+
t.is(getString({ a: 42 }, 'a'), undefined);
|
|
13
|
+
t.is(getString(undefined, 'a'), undefined);
|
|
14
|
+
t.is(getString({ a: undefined }, 'a'), undefined);
|
|
15
|
+
});
|
|
16
|
+
test('getMethod returns callable function or null', (t) => {
|
|
17
|
+
const target = {
|
|
18
|
+
fn: (x) => x + 1,
|
|
19
|
+
notFn: 42,
|
|
20
|
+
};
|
|
21
|
+
const fn = getMethod(target, 'fn');
|
|
22
|
+
t.truthy(fn);
|
|
23
|
+
t.is(fn?.(2), 3);
|
|
24
|
+
t.is(getMethod(target, 'notFn'), null);
|
|
25
|
+
t.is(getMethod(target, 'missing'), null);
|
|
26
|
+
t.is(getMethod(undefined, 'fn'), null);
|
|
27
|
+
});
|
|
28
|
+
test('getCallIdFromObject reads canonical id keys at top level', (t) => {
|
|
29
|
+
t.is(getCallIdFromObject({ callId: 'a' }), 'a');
|
|
30
|
+
t.is(getCallIdFromObject({ call_id: 'b' }), 'b');
|
|
31
|
+
t.is(getCallIdFromObject({ tool_call_id: 'c' }), 'c');
|
|
32
|
+
t.is(getCallIdFromObject({ toolCallId: 'd' }), 'd');
|
|
33
|
+
t.is(getCallIdFromObject({ id: 'e' }), 'e');
|
|
34
|
+
});
|
|
35
|
+
test('getCallIdFromObject falls back to rawItem keys when top-level is missing', (t) => {
|
|
36
|
+
t.is(getCallIdFromObject({ rawItem: { callId: 'x' } }), 'x');
|
|
37
|
+
t.is(getCallIdFromObject({ rawItem: { id: 'y' } }), 'y');
|
|
38
|
+
t.is(getCallIdFromObject({}), undefined);
|
|
39
|
+
t.is(getCallIdFromObject(null), undefined);
|
|
40
|
+
});
|
|
41
|
+
test('getCommandFromArgs handles JSON-string command shape', (t) => {
|
|
42
|
+
t.is(getCommandFromArgs(JSON.stringify({ command: 'ls -la' })), 'ls -la');
|
|
43
|
+
});
|
|
44
|
+
test('getCommandFromArgs handles old commands array shape', (t) => {
|
|
45
|
+
t.is(getCommandFromArgs(JSON.stringify({ commands: ['ls', 'pwd'] })), 'ls\npwd');
|
|
46
|
+
});
|
|
47
|
+
test('getCommandFromArgs returns string verbatim if not JSON', (t) => {
|
|
48
|
+
t.is(getCommandFromArgs('echo hi'), 'echo hi');
|
|
49
|
+
});
|
|
50
|
+
test('getCommandFromArgs handles object command', (t) => {
|
|
51
|
+
t.is(getCommandFromArgs({ command: 'whoami' }), 'whoami');
|
|
52
|
+
});
|
|
53
|
+
test('getCommandFromArgs handles object with arguments JSON string', (t) => {
|
|
54
|
+
t.is(getCommandFromArgs({ arguments: JSON.stringify({ a: 1 }) }), '{"a":1}');
|
|
55
|
+
});
|
|
56
|
+
test('getCommandFromArgs returns empty string for falsy input', (t) => {
|
|
57
|
+
t.is(getCommandFromArgs(undefined), '');
|
|
58
|
+
t.is(getCommandFromArgs(null), '');
|
|
59
|
+
t.is(getCommandFromArgs(''), '');
|
|
60
|
+
});
|
|
61
|
+
test('getToolInfoFromInterruption reads function-tool shape', (t) => {
|
|
62
|
+
const info = getToolInfoFromInterruption({
|
|
63
|
+
name: 'shell',
|
|
64
|
+
arguments: { command: 'ls' },
|
|
65
|
+
});
|
|
66
|
+
t.is(info.toolName, 'shell');
|
|
67
|
+
t.is(info.argumentsText, 'ls');
|
|
68
|
+
t.deepEqual(info.rawArguments, { command: 'ls' });
|
|
69
|
+
});
|
|
70
|
+
test('getToolInfoFromInterruption reads shell_call action.commands array', (t) => {
|
|
71
|
+
const info = getToolInfoFromInterruption({
|
|
72
|
+
name: 'shell',
|
|
73
|
+
type: 'shell_call',
|
|
74
|
+
action: { commands: ['ls', 'pwd'] },
|
|
75
|
+
});
|
|
76
|
+
t.is(info.toolName, 'shell');
|
|
77
|
+
t.is(info.argumentsText, 'ls\npwd');
|
|
78
|
+
});
|
|
79
|
+
test('getToolInfoFromInterruption defaults toolName to unknown', (t) => {
|
|
80
|
+
const info = getToolInfoFromInterruption({});
|
|
81
|
+
t.is(info.toolName, 'unknown');
|
|
82
|
+
t.is(info.argumentsText, '');
|
|
83
|
+
});
|
|
84
|
+
//# sourceMappingURL=interruption-info.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interruption-info.test.js","sourceRoot":"","sources":["../../source/services/interruption-info.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,13 +12,13 @@ export declare const RuntimeLogSchema: z.ZodObject<{
|
|
|
12
12
|
model: z.ZodString;
|
|
13
13
|
phase: z.ZodEnum<{
|
|
14
14
|
abort: "abort";
|
|
15
|
+
execution: "execution";
|
|
15
16
|
retry: "retry";
|
|
16
17
|
request_start: "request_start";
|
|
17
18
|
provider_response: "provider_response";
|
|
18
19
|
approval: "approval";
|
|
19
20
|
normalization: "normalization";
|
|
20
21
|
validation: "validation";
|
|
21
|
-
execution: "execution";
|
|
22
22
|
runtime: "runtime";
|
|
23
23
|
}>;
|
|
24
24
|
toolName: z.ZodOptional<z.ZodString>;
|
|
@@ -23,8 +23,8 @@ export declare class LoggingService {
|
|
|
23
23
|
private correlationId;
|
|
24
24
|
private debugLogging;
|
|
25
25
|
private suppressConsoleOutput;
|
|
26
|
-
private openrouterLogger;
|
|
27
26
|
private providerTrafficDir;
|
|
27
|
+
private evaluatorTrafficDir;
|
|
28
28
|
private enabledCategories;
|
|
29
29
|
private verbosePayloads;
|
|
30
30
|
private sampleRate;
|
|
@@ -58,7 +58,6 @@ export declare class LoggingService {
|
|
|
58
58
|
* Log debug-level message
|
|
59
59
|
*/
|
|
60
60
|
debug(message: string, meta?: Record<string, any>): void;
|
|
61
|
-
logToOpenrouter(level: string, message: string, meta?: Record<string, any>): void;
|
|
62
61
|
/**
|
|
63
62
|
* Set correlation ID for tracking related operations
|
|
64
63
|
*/
|
|
@@ -71,6 +70,11 @@ export declare class LoggingService {
|
|
|
71
70
|
* Get correlation ID
|
|
72
71
|
*/
|
|
73
72
|
getCorrelationId(): string | undefined;
|
|
73
|
+
/**
|
|
74
|
+
* Remove provider and evaluator traffic logs older than maxFiles (default 30d)
|
|
75
|
+
*/
|
|
76
|
+
private cleanupProviderTraffic;
|
|
77
|
+
private cleanupTrafficDir;
|
|
74
78
|
private log;
|
|
75
79
|
private writeProviderTrafficArtifact;
|
|
76
80
|
private emitConsoleError;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logging-service.d.ts","sourceRoot":"","sources":["../../source/services/logging-service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"logging-service.d.ts","sourceRoot":"","sources":["../../source/services/logging-service.ts"],"names":[],"mappings":"AAoCA,UAAU,oBAAoB;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED;;;;;;;;;;GAUG;AACH,qBAAa,cAAc;;IACzB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,YAAY,CAAU;IAC9B,OAAO,CAAC,qBAAqB,CAAU;IACvC,OAAO,CAAC,kBAAkB,CAAS;IACnC,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,iBAAiB,CAA0B;IACnD,OAAO,CAAC,eAAe,CAAU;IACjC,OAAO,CAAC,UAAU,CAAS;gBAEf,MAAM,GAAE,oBAAyB;IAkG7C;;OAEG;IACH,WAAW,IAAI,MAAM;IAQrB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAI9C;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAuBhC;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAIxD;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAIvD;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAIvD;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAI3D;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAIxD;;OAEG;IACH,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAIlC;;OAEG;IACH,kBAAkB,IAAI,IAAI;IAI1B;;OAEG;IACH,gBAAgB,IAAI,MAAM,GAAG,SAAS;IAItC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAK9B,OAAO,CAAC,iBAAiB;IAoCzB,OAAO,CAAC,GAAG;IAkDX,OAAO,CAAC,4BAA4B;IAmCpC,OAAO,CAAC,gBAAgB;CAMzB;AA8BD,eAAO,MAAM,cAAc,gBAyBzB,CAAC"}
|
|
@@ -4,7 +4,7 @@ import * as fs from 'node:fs';
|
|
|
4
4
|
import envPaths from 'env-paths';
|
|
5
5
|
import DailyRotateFile from 'winston-daily-rotate-file';
|
|
6
6
|
import { RuntimeLogSchema, buildRuntimeLogRecord, parseCategoryFilter, shouldIncludeVerbosePayload, shouldLogForCategory, shouldSampleLog, } from './logging-contract.js';
|
|
7
|
-
import { extractProviderTrafficRecordFromRuntimeLog } from '../utils/provider-traffic-extractor.js';
|
|
7
|
+
import { extractProviderTrafficRecordFromRuntimeLog, } from '../utils/provider-traffic-extractor.js';
|
|
8
8
|
const LOG_LEVELS = {
|
|
9
9
|
error: 0,
|
|
10
10
|
warn: 1,
|
|
@@ -35,8 +35,8 @@ export class LoggingService {
|
|
|
35
35
|
correlationId;
|
|
36
36
|
debugLogging;
|
|
37
37
|
suppressConsoleOutput;
|
|
38
|
-
openrouterLogger;
|
|
39
38
|
providerTrafficDir;
|
|
39
|
+
evaluatorTrafficDir;
|
|
40
40
|
enabledCategories;
|
|
41
41
|
verbosePayloads;
|
|
42
42
|
sampleRate;
|
|
@@ -54,12 +54,14 @@ export class LoggingService {
|
|
|
54
54
|
// Determine log directory
|
|
55
55
|
const finalLogDir = logDir || path.join(envPaths('term2').log, 'logs');
|
|
56
56
|
this.providerTrafficDir = path.join(finalLogDir, 'provider-traffic');
|
|
57
|
+
this.evaluatorTrafficDir = path.join(finalLogDir, 'evaluator-traffic');
|
|
57
58
|
// Create log directory if needed and logging is enabled
|
|
58
59
|
if (!resolvedDisableLogging) {
|
|
59
60
|
try {
|
|
60
61
|
if (!fs.existsSync(finalLogDir)) {
|
|
61
62
|
fs.mkdirSync(finalLogDir, { recursive: true });
|
|
62
63
|
}
|
|
64
|
+
this.cleanupProviderTraffic();
|
|
63
65
|
}
|
|
64
66
|
catch (error) {
|
|
65
67
|
// Graceful degradation: log creation errors to stderr only
|
|
@@ -112,55 +114,6 @@ export class LoggingService {
|
|
|
112
114
|
};
|
|
113
115
|
}
|
|
114
116
|
});
|
|
115
|
-
// Create openrouter logger
|
|
116
|
-
if (!resolvedDisableLogging) {
|
|
117
|
-
try {
|
|
118
|
-
const openrouterTransport = new DailyRotateFile({
|
|
119
|
-
dirname: finalLogDir,
|
|
120
|
-
filename: 'term2-openrouter-%DATE%.log',
|
|
121
|
-
datePattern: 'YYYY-MM-DD',
|
|
122
|
-
maxSize: '10m',
|
|
123
|
-
maxFiles: '14d',
|
|
124
|
-
format: winston.format.json(),
|
|
125
|
-
level: logLevel,
|
|
126
|
-
});
|
|
127
|
-
openrouterTransport.on('error', (error) => {
|
|
128
|
-
this.emitConsoleError(`[LoggingService] OpenRouter file transport error: ${error.message}`);
|
|
129
|
-
});
|
|
130
|
-
this.openrouterLogger = winston.createLogger({
|
|
131
|
-
levels: LOG_LEVELS,
|
|
132
|
-
format: winston.format.combine(winston.format.timestamp({
|
|
133
|
-
format: 'YYYY-MM-DD HH:mm:ss',
|
|
134
|
-
}), winston.format.json()),
|
|
135
|
-
defaultMeta: {},
|
|
136
|
-
transports: [openrouterTransport],
|
|
137
|
-
});
|
|
138
|
-
// Add custom log levels
|
|
139
|
-
Object.keys(LOG_LEVELS).forEach((level) => {
|
|
140
|
-
if (typeof this.openrouterLogger[level] !== 'function') {
|
|
141
|
-
this.openrouterLogger[level] = (message, meta) => {
|
|
142
|
-
this.openrouterLogger.log(level, message, meta);
|
|
143
|
-
};
|
|
144
|
-
}
|
|
145
|
-
});
|
|
146
|
-
}
|
|
147
|
-
catch (error) {
|
|
148
|
-
if (this.debugLogging) {
|
|
149
|
-
this.emitConsoleError(`[LoggingService] Failed to configure openrouter transport: ${error.message}`);
|
|
150
|
-
}
|
|
151
|
-
// Fallback
|
|
152
|
-
this.openrouterLogger = winston.createLogger({
|
|
153
|
-
levels: LOG_LEVELS,
|
|
154
|
-
transports: [new winston.transports.Console({ silent: true })],
|
|
155
|
-
});
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
else {
|
|
159
|
-
this.openrouterLogger = winston.createLogger({
|
|
160
|
-
levels: LOG_LEVELS,
|
|
161
|
-
transports: [new winston.transports.Console({ silent: true })],
|
|
162
|
-
});
|
|
163
|
-
}
|
|
164
117
|
}
|
|
165
118
|
/**
|
|
166
119
|
* Return the current effective log level for the logger
|
|
@@ -196,15 +149,6 @@ export class LoggingService {
|
|
|
196
149
|
// ignore
|
|
197
150
|
}
|
|
198
151
|
});
|
|
199
|
-
// Update openrouter logger transports
|
|
200
|
-
this.openrouterLogger.transports.forEach((t) => {
|
|
201
|
-
try {
|
|
202
|
-
t.level = level;
|
|
203
|
-
}
|
|
204
|
-
catch (err) {
|
|
205
|
-
// ignore
|
|
206
|
-
}
|
|
207
|
-
});
|
|
208
152
|
}
|
|
209
153
|
catch (error) {
|
|
210
154
|
this.emitConsoleError(`[LoggingService] Failed to set log level: ${error.message}`);
|
|
@@ -240,18 +184,6 @@ export class LoggingService {
|
|
|
240
184
|
debug(message, meta) {
|
|
241
185
|
this.#log('debug', message, meta);
|
|
242
186
|
}
|
|
243
|
-
logToOpenrouter(level, message, meta) {
|
|
244
|
-
try {
|
|
245
|
-
const metadata = {
|
|
246
|
-
...meta,
|
|
247
|
-
...(this.correlationId && { correlationId: this.correlationId }),
|
|
248
|
-
};
|
|
249
|
-
this.openrouterLogger.log(level, message, metadata);
|
|
250
|
-
}
|
|
251
|
-
catch (error) {
|
|
252
|
-
this.emitConsoleError(`[LoggingService] Error logging to openrouter: ${error.message}`);
|
|
253
|
-
}
|
|
254
|
-
}
|
|
255
187
|
/**
|
|
256
188
|
* Set correlation ID for tracking related operations
|
|
257
189
|
*/
|
|
@@ -270,6 +202,46 @@ export class LoggingService {
|
|
|
270
202
|
getCorrelationId() {
|
|
271
203
|
return this.correlationId;
|
|
272
204
|
}
|
|
205
|
+
/**
|
|
206
|
+
* Remove provider and evaluator traffic logs older than maxFiles (default 30d)
|
|
207
|
+
*/
|
|
208
|
+
cleanupProviderTraffic(maxDays = 30) {
|
|
209
|
+
this.cleanupTrafficDir(this.providerTrafficDir, maxDays);
|
|
210
|
+
this.cleanupTrafficDir(this.evaluatorTrafficDir, maxDays);
|
|
211
|
+
}
|
|
212
|
+
cleanupTrafficDir(dir, maxDays) {
|
|
213
|
+
try {
|
|
214
|
+
if (!fs.existsSync(dir)) {
|
|
215
|
+
return;
|
|
216
|
+
}
|
|
217
|
+
const now = new Date();
|
|
218
|
+
const threshold = new Date(now.getTime() - maxDays * 24 * 60 * 60 * 1000);
|
|
219
|
+
const thresholdStr = threshold.toISOString().slice(0, 10); // YYYY-MM-DD
|
|
220
|
+
const entries = fs.readdirSync(dir, { withFileTypes: true });
|
|
221
|
+
for (const entry of entries) {
|
|
222
|
+
if (!entry.isFile()) {
|
|
223
|
+
continue;
|
|
224
|
+
}
|
|
225
|
+
const match = entry.name.match(/^traffic-(\d{4}-\d{2}-\d{2})\.log$/);
|
|
226
|
+
if (!match) {
|
|
227
|
+
continue;
|
|
228
|
+
}
|
|
229
|
+
const dateKey = match[1];
|
|
230
|
+
if (dateKey < thresholdStr) {
|
|
231
|
+
const fullPath = path.join(dir, entry.name);
|
|
232
|
+
try {
|
|
233
|
+
fs.rmSync(fullPath, { force: true });
|
|
234
|
+
}
|
|
235
|
+
catch (err) {
|
|
236
|
+
this.emitConsoleError(`[LoggingService] Failed to delete old traffic log ${entry.name}: ${err.message}`);
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
catch (error) {
|
|
242
|
+
this.emitConsoleError(`[LoggingService] Error during provider traffic cleanup: ${error.message}`);
|
|
243
|
+
}
|
|
244
|
+
}
|
|
273
245
|
log(level, message, meta) {
|
|
274
246
|
try {
|
|
275
247
|
const metadata = {
|
|
@@ -321,7 +293,7 @@ export class LoggingService {
|
|
|
321
293
|
if (!trafficRecord) {
|
|
322
294
|
return;
|
|
323
295
|
}
|
|
324
|
-
const
|
|
296
|
+
const baseDir = trafficRecord.isEvaluator ? this.evaluatorTrafficDir : this.providerTrafficDir;
|
|
325
297
|
const dateKey = (() => {
|
|
326
298
|
const timestamp = String(trafficRecord.timestamp ?? '');
|
|
327
299
|
const matched = timestamp.match(/^(\d{4}-\d{2}-\d{2})/);
|
|
@@ -330,30 +302,15 @@ export class LoggingService {
|
|
|
330
302
|
}
|
|
331
303
|
return new Date().toISOString().slice(0, 10);
|
|
332
304
|
})();
|
|
333
|
-
const timestampKey = sanitizeFilePart(String(trafficRecord.timestamp || new Date().toISOString()).replace(/\s+/g, 'T'));
|
|
334
|
-
const traceKey = sanitizeFilePart(trafficRecord.traceId);
|
|
335
|
-
const messageId = sanitizeFilePart(String(runtimeRecord.messageId ?? `msg-${Date.now()}`));
|
|
336
|
-
const traceDir = path.join(this.providerTrafficDir, dateKey, traceKey);
|
|
337
|
-
const fileName = `${timestampKey}-${messageId}-${trafficRecord.direction}.json`;
|
|
338
|
-
const filePath = path.join(traceDir, fileName);
|
|
339
305
|
const artifact = {
|
|
340
306
|
...trafficRecord,
|
|
341
307
|
eventType: runtimeRecord.eventType,
|
|
342
308
|
messageId: runtimeRecord.messageId,
|
|
343
|
-
file: path.join(traceKey, fileName),
|
|
344
309
|
};
|
|
310
|
+
const filePath = path.join(baseDir, `traffic-${dateKey}.log`);
|
|
345
311
|
try {
|
|
346
|
-
fs.mkdirSync(
|
|
347
|
-
fs.
|
|
348
|
-
const indexPath = path.join(this.providerTrafficDir, dateKey, 'index.ndjson');
|
|
349
|
-
fs.appendFileSync(indexPath, `${JSON.stringify({
|
|
350
|
-
traceId: trafficRecord.traceId,
|
|
351
|
-
timestamp: trafficRecord.timestamp,
|
|
352
|
-
direction: trafficRecord.direction,
|
|
353
|
-
eventType: runtimeRecord.eventType,
|
|
354
|
-
messageId: runtimeRecord.messageId,
|
|
355
|
-
file: path.join(traceKey, fileName),
|
|
356
|
-
})}\n`, 'utf8');
|
|
312
|
+
fs.mkdirSync(baseDir, { recursive: true });
|
|
313
|
+
fs.appendFileSync(filePath, `${JSON.stringify(artifact)}\n`, 'utf8');
|
|
357
314
|
}
|
|
358
315
|
catch (error) {
|
|
359
316
|
this.emitConsoleError(`[LoggingService] Failed to write provider traffic artifact: ${error.message}`);
|