@superblocksteam/vite-plugin-file-sync 2.0.159-next.0 → 2.0.160
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/ai-service/agent/middleware.d.ts +2 -1
- package/dist/ai-service/agent/middleware.d.ts.map +1 -1
- package/dist/ai-service/agent/middleware.js +3 -2
- package/dist/ai-service/agent/middleware.js.map +1 -1
- package/dist/ai-service/agent/prompts/build-base-system-prompt.d.ts.map +1 -1
- package/dist/ai-service/agent/prompts/build-base-system-prompt.js +4 -5
- package/dist/ai-service/agent/prompts/build-base-system-prompt.js.map +1 -1
- package/dist/ai-service/agent/tool-message-utils.d.ts.map +1 -1
- package/dist/ai-service/agent/tool-message-utils.js +1 -16
- package/dist/ai-service/agent/tool-message-utils.js.map +1 -1
- package/dist/ai-service/agent/tools/apis/test-api.d.ts +1 -50
- package/dist/ai-service/agent/tools/apis/test-api.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/apis/test-api.js +10 -132
- package/dist/ai-service/agent/tools/apis/test-api.js.map +1 -1
- package/dist/ai-service/agent/tools/build-delete-file.d.ts +2 -1
- package/dist/ai-service/agent/tools/build-delete-file.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-delete-file.js +0 -2
- package/dist/ai-service/agent/tools/build-delete-file.js.map +1 -1
- package/dist/ai-service/agent/tools/build-edit-file.d.ts +2 -1
- package/dist/ai-service/agent/tools/build-edit-file.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-edit-file.js +0 -2
- package/dist/ai-service/agent/tools/build-edit-file.js.map +1 -1
- package/dist/ai-service/agent/tools/build-install-packages.d.ts +0 -1
- package/dist/ai-service/agent/tools/build-install-packages.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-install-packages.js +16 -123
- package/dist/ai-service/agent/tools/build-install-packages.js.map +1 -1
- package/dist/ai-service/agent/tools/build-lookup-npm-package.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-lookup-npm-package.js +16 -4
- package/dist/ai-service/agent/tools/build-lookup-npm-package.js.map +1 -1
- package/dist/ai-service/agent/tools/build-manage-checklist.d.ts +7 -11
- package/dist/ai-service/agent/tools/build-manage-checklist.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-manage-checklist.js +9 -18
- package/dist/ai-service/agent/tools/build-manage-checklist.js.map +1 -1
- package/dist/ai-service/agent/tools/build-multi-edit-file.d.ts +2 -1
- package/dist/ai-service/agent/tools/build-multi-edit-file.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-multi-edit-file.js +0 -2
- package/dist/ai-service/agent/tools/build-multi-edit-file.js.map +1 -1
- package/dist/ai-service/agent/tools/build-read-file.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-read-file.js +18 -31
- package/dist/ai-service/agent/tools/build-read-file.js.map +1 -1
- package/dist/ai-service/agent/tools/build-rename-file.d.ts +2 -1
- package/dist/ai-service/agent/tools/build-rename-file.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-rename-file.js +0 -2
- package/dist/ai-service/agent/tools/build-rename-file.js.map +1 -1
- package/dist/ai-service/agent/tools/build-write-file.d.ts +2 -1
- package/dist/ai-service/agent/tools/build-write-file.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-write-file.js +0 -2
- package/dist/ai-service/agent/tools/build-write-file.js.map +1 -1
- package/dist/ai-service/agent/tools/databases/dev-database-tasks.d.ts +3 -3
- package/dist/ai-service/agent/tools/databases/dev-database-tasks.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/databases/dev-database-tasks.js +7 -5
- package/dist/ai-service/agent/tools/databases/dev-database-tasks.js.map +1 -1
- package/dist/ai-service/agent/tools/debug-cache.d.ts +14 -16
- package/dist/ai-service/agent/tools/debug-cache.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/debug-cache.js +42 -200
- package/dist/ai-service/agent/tools/debug-cache.js.map +1 -1
- package/dist/ai-service/agent/tools/integrations/execute-request.d.ts +13 -13
- package/dist/ai-service/agent/tools/integrations/execute-request.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/integrations/execute-request.js +20 -52
- package/dist/ai-service/agent/tools/integrations/execute-request.js.map +1 -1
- package/dist/ai-service/agent/tools/integrations/sql-classification.d.ts +1 -7
- package/dist/ai-service/agent/tools/integrations/sql-classification.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/integrations/sql-classification.js +11 -229
- package/dist/ai-service/agent/tools/integrations/sql-classification.js.map +1 -1
- package/dist/ai-service/agent/tools/report-security-findings.d.ts +5 -5
- package/dist/ai-service/agent/tools.d.ts +0 -32
- package/dist/ai-service/agent/tools.d.ts.map +1 -1
- package/dist/ai-service/agent/tools.js +33 -54
- package/dist/ai-service/agent/tools.js.map +1 -1
- package/dist/ai-service/agent/tools2/registry.d.ts +1 -1
- package/dist/ai-service/agent/tools2/registry.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/registry.js +4 -21
- package/dist/ai-service/agent/tools2/registry.js.map +1 -1
- package/dist/ai-service/agent/tools2/tools/end-test-run.d.ts +2 -2
- package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js +11 -20
- package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js.map +1 -1
- package/dist/ai-service/agent/tools2/tools/grep-metadata-ripgrep.d.ts +0 -4
- package/dist/ai-service/agent/tools2/tools/grep-metadata-ripgrep.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/tools/grep-metadata-ripgrep.js +8 -28
- package/dist/ai-service/agent/tools2/tools/grep-metadata-ripgrep.js.map +1 -1
- package/dist/ai-service/agent/tools2/tools/update-test-case-status.d.ts +2 -2
- package/dist/ai-service/app-interface/shell.d.ts +3 -20
- package/dist/ai-service/app-interface/shell.d.ts.map +1 -1
- package/dist/ai-service/app-interface/shell.js +65 -139
- package/dist/ai-service/app-interface/shell.js.map +1 -1
- package/dist/ai-service/attachment-upload.d.ts.map +1 -1
- package/dist/ai-service/attachment-upload.js +1 -4
- package/dist/ai-service/attachment-upload.js.map +1 -1
- package/dist/ai-service/chat/chat-session-store.d.ts +8 -0
- package/dist/ai-service/chat/chat-session-store.d.ts.map +1 -1
- package/dist/ai-service/chat/chat-session-store.js +611 -34
- package/dist/ai-service/chat/chat-session-store.js.map +1 -1
- package/dist/ai-service/chat/utils.d.ts +6 -2
- package/dist/ai-service/chat/utils.d.ts.map +1 -1
- package/dist/ai-service/chat/utils.js +95 -2
- package/dist/ai-service/chat/utils.js.map +1 -1
- package/dist/ai-service/index.d.ts +2 -3
- package/dist/ai-service/index.d.ts.map +1 -1
- package/dist/ai-service/index.js +48 -138
- package/dist/ai-service/index.js.map +1 -1
- package/dist/ai-service/integrations/store.d.ts +0 -9
- package/dist/ai-service/integrations/store.d.ts.map +1 -1
- package/dist/ai-service/integrations/store.js +1 -11
- package/dist/ai-service/integrations/store.js.map +1 -1
- package/dist/ai-service/llm/client.d.ts.map +1 -1
- package/dist/ai-service/llm/client.js +4 -67
- package/dist/ai-service/llm/client.js.map +1 -1
- package/dist/ai-service/llm/context-v2/adapter.d.ts +0 -1
- package/dist/ai-service/llm/context-v2/adapter.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/adapter.js +0 -3
- package/dist/ai-service/llm/context-v2/adapter.js.map +1 -1
- package/dist/ai-service/llm/context-v2/compaction/client-side.d.ts +0 -7
- package/dist/ai-service/llm/context-v2/compaction/client-side.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/compaction/client-side.js +6 -28
- package/dist/ai-service/llm/context-v2/compaction/client-side.js.map +1 -1
- package/dist/ai-service/llm/context-v2/compaction/compaction-strategy.d.ts +0 -12
- package/dist/ai-service/llm/context-v2/compaction/compaction-strategy.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/compactor.d.ts +0 -8
- package/dist/ai-service/llm/context-v2/compactor.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/compactor.js +3 -15
- package/dist/ai-service/llm/context-v2/compactor.js.map +1 -1
- package/dist/ai-service/llm/context-v2/config.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/config.js +0 -1
- package/dist/ai-service/llm/context-v2/config.js.map +1 -1
- package/dist/ai-service/llm/context-v2/context-metrics.d.ts +1 -44
- package/dist/ai-service/llm/context-v2/context-metrics.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/context-metrics.js +12 -97
- package/dist/ai-service/llm/context-v2/context-metrics.js.map +1 -1
- package/dist/ai-service/llm/context-v2/context.d.ts +0 -125
- package/dist/ai-service/llm/context-v2/context.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/context.js +14 -478
- package/dist/ai-service/llm/context-v2/context.js.map +1 -1
- package/dist/ai-service/llm/context-v2/conversation-context.d.ts +0 -12
- package/dist/ai-service/llm/context-v2/conversation-context.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/phase1-tool-summarizer.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/phase1-tool-summarizer.js +1 -2
- package/dist/ai-service/llm/context-v2/phase1-tool-summarizer.js.map +1 -1
- package/dist/ai-service/llm/context-v2/phase2-session-summarizer.js +3 -3
- package/dist/ai-service/llm/context-v2/phase2-session-summarizer.js.map +1 -1
- package/dist/ai-service/llm/context-v2/token-tracker.d.ts +1 -49
- package/dist/ai-service/llm/context-v2/token-tracker.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/token-tracker.js +0 -119
- package/dist/ai-service/llm/context-v2/token-tracker.js.map +1 -1
- package/dist/ai-service/llm/context-v2/truncation-fallback.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/truncation-fallback.js +1 -2
- package/dist/ai-service/llm/context-v2/truncation-fallback.js.map +1 -1
- package/dist/ai-service/llm/context-v2/types.d.ts +0 -9
- package/dist/ai-service/llm/context-v2/types.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/types.js.map +1 -1
- package/dist/ai-service/llm/error.d.ts +1 -22
- package/dist/ai-service/llm/error.d.ts.map +1 -1
- package/dist/ai-service/llm/error.js +22 -159
- package/dist/ai-service/llm/error.js.map +1 -1
- package/dist/ai-service/llm/stream/empty-tool-call-tracker.d.ts +3 -4
- package/dist/ai-service/llm/stream/empty-tool-call-tracker.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/empty-tool-call-tracker.js +4 -5
- package/dist/ai-service/llm/stream/empty-tool-call-tracker.js.map +1 -1
- package/dist/ai-service/llm/stream/idle-monitor.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/idle-monitor.js +0 -5
- package/dist/ai-service/llm/stream/idle-monitor.js.map +1 -1
- package/dist/ai-service/llm/stream/observers/logging.d.ts +0 -6
- package/dist/ai-service/llm/stream/observers/logging.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/observers/logging.js +3 -44
- package/dist/ai-service/llm/stream/observers/logging.js.map +1 -1
- package/dist/ai-service/llm/stream/orchestrator.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/orchestrator.js +4 -28
- package/dist/ai-service/llm/stream/orchestrator.js.map +1 -1
- package/dist/ai-service/llm/stream/retry-engine.d.ts +1 -1
- package/dist/ai-service/llm/stream/retry-engine.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/retry-engine.js +1 -9
- package/dist/ai-service/llm/stream/retry-engine.js.map +1 -1
- package/dist/ai-service/llm/stream/session.d.ts +0 -6
- package/dist/ai-service/llm/stream/session.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/session.js +0 -6
- package/dist/ai-service/llm/stream/session.js.map +1 -1
- package/dist/ai-service/llm/stream/terminal-reason.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/terminal-reason.js +1 -11
- package/dist/ai-service/llm/stream/terminal-reason.js.map +1 -1
- package/dist/ai-service/llm/stream/wait-state-tracker.d.ts +3 -4
- package/dist/ai-service/llm/stream/wait-state-tracker.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/wait-state-tracker.js +8 -12
- package/dist/ai-service/llm/stream/wait-state-tracker.js.map +1 -1
- package/dist/ai-service/policy-agent-metrics.d.ts +1 -2
- package/dist/ai-service/policy-agent-metrics.d.ts.map +1 -1
- package/dist/ai-service/policy-agent-metrics.js +2 -11
- package/dist/ai-service/policy-agent-metrics.js.map +1 -1
- package/dist/ai-service/resolve-generation-state-for-ui.js +1 -1
- package/dist/ai-service/resolve-generation-state-for-ui.js.map +1 -1
- package/dist/ai-service/security/secret-scanner-service.d.ts +6 -3
- package/dist/ai-service/security/secret-scanner-service.d.ts.map +1 -1
- package/dist/ai-service/security/secret-scanner-service.js +97 -229
- package/dist/ai-service/security/secret-scanner-service.js.map +1 -1
- package/dist/ai-service/security/secret-scanner.d.ts +5 -28
- package/dist/ai-service/security/secret-scanner.d.ts.map +1 -1
- package/dist/ai-service/security/secret-scanner.js +42 -197
- package/dist/ai-service/security/secret-scanner.js.map +1 -1
- package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.d.ts +1 -1
- package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.d.ts.map +1 -1
- package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.js +0 -49
- package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.js.map +1 -1
- package/dist/ai-service/skills/system/third-party-migration/skill.generated.d.ts +1 -1
- package/dist/ai-service/skills/system/third-party-migration/skill.generated.d.ts.map +1 -1
- package/dist/ai-service/skills/system/third-party-migration/skill.generated.js +0 -1
- package/dist/ai-service/skills/system/third-party-migration/skill.generated.js.map +1 -1
- package/dist/ai-service/state-machine/clark-fsm.d.ts +0 -2
- package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
- package/dist/ai-service/state-machine/clark-fsm.js +1 -1
- package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
- package/dist/ai-service/state-machine/handlers/agent-planning.d.ts +1 -1
- package/dist/ai-service/state-machine/handlers/agent-planning.d.ts.map +1 -1
- package/dist/ai-service/state-machine/handlers/agent-planning.js +3 -74
- package/dist/ai-service/state-machine/handlers/agent-planning.js.map +1 -1
- package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -1
- package/dist/ai-service/state-machine/handlers/llm-generating.js +11 -1
- package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
- package/dist/ai-service/state-machine/helpers/policy-gate-usage-metrics.d.ts +2 -3
- package/dist/ai-service/state-machine/helpers/policy-gate-usage-metrics.d.ts.map +1 -1
- package/dist/ai-service/state-machine/helpers/policy-gate-usage-metrics.js +5 -25
- package/dist/ai-service/state-machine/helpers/policy-gate-usage-metrics.js.map +1 -1
- package/dist/ai-service/state-machine/helpers/prompt-billing-metrics.d.ts.map +1 -1
- package/dist/ai-service/state-machine/helpers/prompt-billing-metrics.js +0 -1
- package/dist/ai-service/state-machine/helpers/prompt-billing-metrics.js.map +1 -1
- package/dist/ai-service/state-machine/helpers/stable-peer.d.ts +0 -4
- package/dist/ai-service/state-machine/helpers/stable-peer.d.ts.map +1 -1
- package/dist/ai-service/state-machine/helpers/stable-peer.js +1 -6
- package/dist/ai-service/state-machine/helpers/stable-peer.js.map +1 -1
- package/dist/ai-service/test-utils/metrics-harness.d.ts +0 -6
- package/dist/ai-service/test-utils/metrics-harness.d.ts.map +1 -1
- package/dist/ai-service/test-utils/metrics-harness.js.map +1 -1
- package/dist/ai-service/transform/api-builder/shared.d.ts.map +1 -1
- package/dist/ai-service/transform/api-builder/shared.js +1 -2
- package/dist/ai-service/transform/api-builder/shared.js.map +1 -1
- package/dist/dev-server-ws-smoke-client.d.ts.map +1 -1
- package/dist/dev-server-ws-smoke-client.js +0 -1
- package/dist/dev-server-ws-smoke-client.js.map +1 -1
- package/dist/file-sync-vite-plugin.d.ts +0 -21
- package/dist/file-sync-vite-plugin.d.ts.map +1 -1
- package/dist/file-sync-vite-plugin.js +11 -131
- package/dist/file-sync-vite-plugin.js.map +1 -1
- package/dist/file-system-helpers.d.ts +2 -2
- package/dist/file-system-helpers.d.ts.map +1 -1
- package/dist/file-system-helpers.js +12 -2
- package/dist/file-system-helpers.js.map +1 -1
- package/dist/parsing/jsx.d.ts +0 -12
- package/dist/parsing/jsx.d.ts.map +1 -1
- package/dist/parsing/jsx.js +12 -30
- package/dist/parsing/jsx.js.map +1 -1
- package/dist/parsing/page.d.ts.map +1 -1
- package/dist/parsing/page.js +8 -16
- package/dist/parsing/page.js.map +1 -1
- package/dist/plugin-options.d.ts +0 -4
- package/dist/plugin-options.d.ts.map +1 -1
- package/dist/plugin-options.js.map +1 -1
- package/dist/policy-gate-callback-mapper.d.ts +1 -2
- package/dist/policy-gate-callback-mapper.d.ts.map +1 -1
- package/dist/policy-gate-callback-mapper.js +5 -3
- package/dist/policy-gate-callback-mapper.js.map +1 -1
- package/dist/policy-gate-run-registry.d.ts +2 -4
- package/dist/policy-gate-run-registry.d.ts.map +1 -1
- package/dist/policy-gate-run-registry.js +2 -17
- package/dist/policy-gate-run-registry.js.map +1 -1
- package/dist/policy-gate-runner.d.ts +1 -1
- package/dist/policy-gate-runner.d.ts.map +1 -1
- package/dist/policy-gate-runner.js +7 -41
- package/dist/policy-gate-runner.js.map +1 -1
- package/dist/router-parser.d.ts +1 -6
- package/dist/router-parser.d.ts.map +1 -1
- package/dist/router-parser.js +17 -72
- package/dist/router-parser.js.map +1 -1
- package/dist/scan-scope-merge.d.ts +1 -1
- package/dist/scan-scope-merge.js +1 -1
- package/dist/source-tracker.d.ts.map +1 -1
- package/dist/source-tracker.js +6 -2
- package/dist/source-tracker.js.map +1 -1
- package/dist/sync-service/download.d.ts.map +1 -1
- package/dist/sync-service/download.js +2 -10
- package/dist/sync-service/download.js.map +1 -1
- package/dist/sync-service/index.d.ts +0 -5
- package/dist/sync-service/index.d.ts.map +1 -1
- package/dist/sync-service/index.js +14 -66
- package/dist/sync-service/index.js.map +1 -1
- package/dist/sync-service/list-dir.d.ts.map +1 -1
- package/dist/sync-service/list-dir.js +4 -8
- package/dist/sync-service/list-dir.js.map +1 -1
- package/dist/sync-service/snapshot/upload-snapshot.d.ts.map +1 -1
- package/dist/sync-service/snapshot/upload-snapshot.js +0 -20
- package/dist/sync-service/snapshot/upload-snapshot.js.map +1 -1
- package/dist/util/log-sanitizer.d.ts.map +1 -1
- package/dist/util/log-sanitizer.js +8 -10
- package/dist/util/log-sanitizer.js.map +1 -1
- package/dist/util/logger.d.ts +0 -2
- package/dist/util/logger.d.ts.map +1 -1
- package/dist/util/logger.js +38 -357
- package/dist/util/logger.js.map +1 -1
- package/dist/util.d.ts +1 -3
- package/dist/util.d.ts.map +1 -1
- package/dist/util.js +2 -2
- package/dist/util.js.map +1 -1
- package/package.json +9 -9
- package/dist/ai-service/agent/tool-result-metrics.d.ts +0 -29
- package/dist/ai-service/agent/tool-result-metrics.d.ts.map +0 -1
- package/dist/ai-service/agent/tool-result-metrics.js +0 -162
- package/dist/ai-service/agent/tool-result-metrics.js.map +0 -1
- package/dist/ai-service/agent/tools/page-edit-guidance.d.ts +0 -2
- package/dist/ai-service/agent/tools/page-edit-guidance.d.ts.map +0 -1
- package/dist/ai-service/agent/tools/page-edit-guidance.js +0 -11
- package/dist/ai-service/agent/tools/page-edit-guidance.js.map +0 -1
- package/dist/ai-service/app-interface/cancellable-exec.d.ts +0 -34
- package/dist/ai-service/app-interface/cancellable-exec.d.ts.map +0 -1
- package/dist/ai-service/app-interface/cancellable-exec.js +0 -98
- package/dist/ai-service/app-interface/cancellable-exec.js.map +0 -1
- package/dist/ai-service/attachments/parse-data-url.d.ts +0 -5
- package/dist/ai-service/attachments/parse-data-url.d.ts.map +0 -1
- package/dist/ai-service/attachments/parse-data-url.js +0 -14
- package/dist/ai-service/attachments/parse-data-url.js.map +0 -1
- package/dist/ai-service/integrations/mention-safe-tag-name.d.ts +0 -12
- package/dist/ai-service/integrations/mention-safe-tag-name.d.ts.map +0 -1
- package/dist/ai-service/integrations/mention-safe-tag-name.js +0 -18
- package/dist/ai-service/integrations/mention-safe-tag-name.js.map +0 -1
- package/dist/ai-service/llm/context-v2/well-formed-text.d.ts +0 -24
- package/dist/ai-service/llm/context-v2/well-formed-text.d.ts.map +0 -1
- package/dist/ai-service/llm/context-v2/well-formed-text.js +0 -73
- package/dist/ai-service/llm/context-v2/well-formed-text.js.map +0 -1
- package/dist/ai-service/policy-gate-error.d.ts +0 -3
- package/dist/ai-service/policy-gate-error.d.ts.map +0 -1
- package/dist/ai-service/policy-gate-error.js +0 -33
- package/dist/ai-service/policy-gate-error.js.map +0 -1
- package/dist/migration-templates/app-fullstack/.gitignore +0 -50
- package/dist/parsing/parse-tsx-module.d.ts +0 -4
- package/dist/parsing/parse-tsx-module.d.ts.map +0 -1
- package/dist/parsing/parse-tsx-module.js +0 -13
- package/dist/parsing/parse-tsx-module.js.map +0 -1
- package/dist/router-parser-metrics.d.ts +0 -2
- package/dist/router-parser-metrics.d.ts.map +0 -1
- package/dist/router-parser-metrics.js +0 -13
- package/dist/router-parser-metrics.js.map +0 -1
|
@@ -6,7 +6,6 @@ import { getLogger } from "../../../../util/logger.js";
|
|
|
6
6
|
* treated as a read and no row-limit claim is made about it.
|
|
7
7
|
*/
|
|
8
8
|
const UNCLASSIFIED = {
|
|
9
|
-
changesSchema: false,
|
|
10
9
|
kind: "unknown",
|
|
11
10
|
supportsRowLimit: false,
|
|
12
11
|
returnsRows: false,
|
|
@@ -34,90 +33,6 @@ const MUTATION_STATEMENT_KEYS = new Set([
|
|
|
34
33
|
"MergeStmt",
|
|
35
34
|
"UpdateStmt",
|
|
36
35
|
]);
|
|
37
|
-
/** Top-level statement kinds that change database objects. */
|
|
38
|
-
const DDL_STATEMENT_KEYS = new Set([
|
|
39
|
-
"AlterSeqStmt",
|
|
40
|
-
"AlterTableStmt",
|
|
41
|
-
"CommentStmt",
|
|
42
|
-
"CreateSchemaStmt",
|
|
43
|
-
"CreateSeqStmt",
|
|
44
|
-
"CreateStmt",
|
|
45
|
-
"CreateTableAsStmt",
|
|
46
|
-
"DropStmt",
|
|
47
|
-
"IndexStmt",
|
|
48
|
-
"RenameStmt",
|
|
49
|
-
"TruncateStmt",
|
|
50
|
-
"ViewStmt",
|
|
51
|
-
]);
|
|
52
|
-
/**
|
|
53
|
-
* The object classes a DDL statement may name.
|
|
54
|
-
*
|
|
55
|
-
* Postgres uses one AST node per operation, not per object: every `DROP` is a
|
|
56
|
-
* `DropStmt` and every `RENAME` is a `RenameStmt`, whatever they act on. So
|
|
57
|
-
* `DROP TABLE`, `DROP POLICY` and `DROP FUNCTION` are the same node, and the
|
|
58
|
-
* object class is the only thing separating a table change from removing a
|
|
59
|
-
* row-level-security policy or an audit trigger. Approving "DDL" must not also
|
|
60
|
-
* approve those.
|
|
61
|
-
*/
|
|
62
|
-
const DDL_OBJECT_CLASSES = new Set([
|
|
63
|
-
"OBJECT_COLUMN",
|
|
64
|
-
"OBJECT_INDEX",
|
|
65
|
-
"OBJECT_MATVIEW",
|
|
66
|
-
"OBJECT_SCHEMA",
|
|
67
|
-
"OBJECT_SEQUENCE",
|
|
68
|
-
"OBJECT_TABCONSTRAINT",
|
|
69
|
-
"OBJECT_TABLE",
|
|
70
|
-
"OBJECT_VIEW",
|
|
71
|
-
]);
|
|
72
|
-
/**
|
|
73
|
-
* The field naming the object class, per statement node that shares one node
|
|
74
|
-
* across object classes. Nodes absent here name only one kind of object, so
|
|
75
|
-
* the node key alone already says what they touch.
|
|
76
|
-
*/
|
|
77
|
-
const DDL_OBJECT_CLASS_FIELDS = new Map([
|
|
78
|
-
["AlterTableStmt", "objtype"],
|
|
79
|
-
["CommentStmt", "objtype"],
|
|
80
|
-
["DropStmt", "removeType"],
|
|
81
|
-
["RenameStmt", "renameType"],
|
|
82
|
-
]);
|
|
83
|
-
/**
|
|
84
|
-
* The `ALTER TABLE` subcommands that change a table's shape.
|
|
85
|
-
*
|
|
86
|
-
* Naming a table is not enough to make an `ALTER TABLE` safe. The statement
|
|
87
|
-
* carries a list of subcommands, and some of them change access control
|
|
88
|
-
* rather than shape: `DISABLE ROW LEVEL SECURITY` drops a row-filtering
|
|
89
|
-
* policy's effect, `DISABLE TRIGGER` silences an audit trigger, and `OWNER TO`
|
|
90
|
-
* hands the table to another role. Those belong with the privilege statements
|
|
91
|
-
* this tool rejects, so the list is an allowlist of shape changes and anything
|
|
92
|
-
* else is refused. Row-level security appears in neither direction: turning it
|
|
93
|
-
* on or off is an access-control change, not a schema change.
|
|
94
|
-
*/
|
|
95
|
-
const ALTER_TABLE_SHAPE_SUBCOMMANDS = new Set([
|
|
96
|
-
"AT_AddColumn",
|
|
97
|
-
"AT_AddConstraint",
|
|
98
|
-
"AT_AddIdentity",
|
|
99
|
-
"AT_AlterColumnType",
|
|
100
|
-
"AT_AttachPartition",
|
|
101
|
-
"AT_ClusterOn",
|
|
102
|
-
"AT_ColumnDefault",
|
|
103
|
-
"AT_DetachPartition",
|
|
104
|
-
"AT_DropColumn",
|
|
105
|
-
"AT_DropCluster",
|
|
106
|
-
"AT_DropConstraint",
|
|
107
|
-
"AT_DropExpression",
|
|
108
|
-
"AT_DropIdentity",
|
|
109
|
-
"AT_DropNotNull",
|
|
110
|
-
"AT_SetAccessMethod",
|
|
111
|
-
"AT_SetCompression",
|
|
112
|
-
"AT_SetExpression",
|
|
113
|
-
"AT_SetIdentity",
|
|
114
|
-
"AT_SetLogged",
|
|
115
|
-
"AT_SetNotNull",
|
|
116
|
-
"AT_SetStatistics",
|
|
117
|
-
"AT_SetStorage",
|
|
118
|
-
"AT_SetUnLogged",
|
|
119
|
-
"AT_ValidateConstraint",
|
|
120
|
-
]);
|
|
121
36
|
/** Top-level statement kinds that only read. */
|
|
122
37
|
const READ_STATEMENT_KEYS = new Set([
|
|
123
38
|
"SelectStmt",
|
|
@@ -128,7 +43,7 @@ const READ_STATEMENT_KEYS = new Set([
|
|
|
128
43
|
* INTO newtable` parses as an ordinary `SelectStmt` carrying an `intoClause`,
|
|
129
44
|
* but it creates a table.
|
|
130
45
|
*/
|
|
131
|
-
const
|
|
46
|
+
const NESTED_SCHEMA_KEYS = new Set(["intoClause"]);
|
|
132
47
|
/**
|
|
133
48
|
* Keys that mean a read-shaped statement actually writes or locks rows.
|
|
134
49
|
*
|
|
@@ -143,20 +58,6 @@ const NESTED_MUTATION_KEYS = new Set([
|
|
|
143
58
|
...MUTATION_STATEMENT_KEYS,
|
|
144
59
|
"lockingClause",
|
|
145
60
|
]);
|
|
146
|
-
/**
|
|
147
|
-
* Statements that stay blocked even nested inside an allowed DDL statement.
|
|
148
|
-
*
|
|
149
|
-
* `CREATE SCHEMA` takes a list of schema elements, and the grammar allows
|
|
150
|
-
* `GRANT` and `CREATE TRIGGER` among them. Those are one statement with the
|
|
151
|
-
* `CREATE SCHEMA`, so classifying by the top-level node alone lets a privilege
|
|
152
|
-
* grant ride along on an approval written for creating a schema.
|
|
153
|
-
*/
|
|
154
|
-
const NESTED_BLOCKED_KEYS = new Set([
|
|
155
|
-
"CreatePolicyStmt",
|
|
156
|
-
"CreateTrigStmt",
|
|
157
|
-
"GrantRoleStmt",
|
|
158
|
-
"GrantStmt",
|
|
159
|
-
]);
|
|
160
61
|
/**
|
|
161
62
|
* Keywords that block a query on dialects with no parser. Preserves the
|
|
162
63
|
* screening this tool has always applied, so those integrations keep their
|
|
@@ -293,25 +194,6 @@ function classifyExplain(explain) {
|
|
|
293
194
|
// An ANALYZE whose target cannot be read is not assumed harmless.
|
|
294
195
|
return explained === undefined ? "unknown" : classifyStatement(explained);
|
|
295
196
|
}
|
|
296
|
-
/**
|
|
297
|
-
* Whether a DDL statement names an object class Clark may change.
|
|
298
|
-
*
|
|
299
|
-
* Fails closed when the class is missing or unrecognized: a parser release
|
|
300
|
-
* that renamed the field must reject the statement rather than wave through
|
|
301
|
-
* every `DROP` it can no longer identify.
|
|
302
|
-
*/
|
|
303
|
-
function targetsAllowedObjectClass(statement, statementKey) {
|
|
304
|
-
const field = DDL_OBJECT_CLASS_FIELDS.get(statementKey);
|
|
305
|
-
if (field === undefined) {
|
|
306
|
-
return true;
|
|
307
|
-
}
|
|
308
|
-
const body = nodeField(statement, statementKey);
|
|
309
|
-
if (body === undefined) {
|
|
310
|
-
return false;
|
|
311
|
-
}
|
|
312
|
-
const objectClass = Reflect.get(body, field);
|
|
313
|
-
return typeof objectClass === "string" && DDL_OBJECT_CLASSES.has(objectClass);
|
|
314
|
-
}
|
|
315
197
|
function classifyStatement(statement) {
|
|
316
198
|
const [statementKey] = Object.keys(statement);
|
|
317
199
|
if (statementKey === undefined) {
|
|
@@ -324,100 +206,15 @@ function classifyStatement(statement) {
|
|
|
324
206
|
if (MUTATION_STATEMENT_KEYS.has(statementKey)) {
|
|
325
207
|
return "data_mutation";
|
|
326
208
|
}
|
|
327
|
-
if (DDL_STATEMENT_KEYS.has(statementKey)) {
|
|
328
|
-
return classifyDdl(statement, statementKey);
|
|
329
|
-
}
|
|
330
209
|
if (READ_STATEMENT_KEYS.has(statementKey)) {
|
|
331
|
-
|
|
332
|
-
// (INSERT ...) SELECT * INTO y FROM x` both creates a table and writes
|
|
333
|
-
// rows, and the write is the part that needs saying.
|
|
334
|
-
if (containsKey(statement, NESTED_MUTATION_KEYS)) {
|
|
335
|
-
return "data_mutation";
|
|
336
|
-
}
|
|
337
|
-
return containsKey(statement, NESTED_DDL_KEYS) ? "ddl" : "read";
|
|
338
|
-
}
|
|
339
|
-
return "schema_or_session";
|
|
340
|
-
}
|
|
341
|
-
function statementChangesSchema(statement) {
|
|
342
|
-
const [statementKey] = Object.keys(statement);
|
|
343
|
-
if (statementKey === undefined) {
|
|
344
|
-
return false;
|
|
345
|
-
}
|
|
346
|
-
if (statementKey === "ExplainStmt") {
|
|
347
|
-
const explain = nodeField(statement, statementKey);
|
|
348
|
-
if (explain === undefined || !explainRunsStatement(explain)) {
|
|
349
|
-
return false;
|
|
350
|
-
}
|
|
351
|
-
const explained = nodeField(explain, "query");
|
|
352
|
-
return explained !== undefined && statementChangesSchema(explained);
|
|
353
|
-
}
|
|
354
|
-
return (DDL_STATEMENT_KEYS.has(statementKey) ||
|
|
355
|
-
containsKey(statement, NESTED_DDL_KEYS));
|
|
356
|
-
}
|
|
357
|
-
/**
|
|
358
|
-
* Whether every subcommand of an `ALTER TABLE` only changes the table's shape.
|
|
359
|
-
*
|
|
360
|
-
* Subcommands are a list, so a statement that reads as "add a column" can
|
|
361
|
-
* carry a blocked one alongside it: `ALTER TABLE users ADD COLUMN email text,
|
|
362
|
-
* DISABLE ROW LEVEL SECURITY` is a single statement. Fails closed on a
|
|
363
|
-
* subcommand list it cannot read.
|
|
364
|
-
*/
|
|
365
|
-
function changesOnlyTableShape(statement) {
|
|
366
|
-
const body = nodeField(statement, "AlterTableStmt");
|
|
367
|
-
if (body === undefined) {
|
|
368
|
-
return false;
|
|
369
|
-
}
|
|
370
|
-
const commands = Reflect.get(body, "cmds");
|
|
371
|
-
if (!Array.isArray(commands)) {
|
|
372
|
-
return false;
|
|
373
|
-
}
|
|
374
|
-
return commands.every((command) => {
|
|
375
|
-
const cmd = nodeField(command, "AlterTableCmd") ?? {};
|
|
376
|
-
// CASCADE is stored on the subcommand, not the ALTER TABLE node.
|
|
377
|
-
// `DROP COLUMN email CASCADE` would otherwise pass as a shape change
|
|
378
|
-
// and drop every dependent view and foreign key.
|
|
379
|
-
if (Reflect.get(cmd, "behavior") === "DROP_CASCADE") {
|
|
380
|
-
return false;
|
|
381
|
-
}
|
|
382
|
-
const subtype = Reflect.get(cmd, "subtype");
|
|
383
|
-
return (typeof subtype === "string" && ALTER_TABLE_SHAPE_SUBCOMMANDS.has(subtype));
|
|
384
|
-
});
|
|
385
|
-
}
|
|
386
|
-
/**
|
|
387
|
-
* Narrows an allowed DDL node by what it actually does. The node key says a
|
|
388
|
-
* statement changes database objects; it does not say which objects, which
|
|
389
|
-
* parts of them, nor whether the statement smuggles a blocked operation in a
|
|
390
|
-
* nested clause.
|
|
391
|
-
*/
|
|
392
|
-
function classifyDdl(statement, statementKey) {
|
|
393
|
-
if (!targetsAllowedObjectClass(statement, statementKey) ||
|
|
394
|
-
containsKey(statement, NESTED_BLOCKED_KEYS)) {
|
|
395
|
-
return "schema_or_session";
|
|
396
|
-
}
|
|
397
|
-
if (statementKey === "AlterTableStmt" && !changesOnlyTableShape(statement)) {
|
|
398
|
-
return "schema_or_session";
|
|
399
|
-
}
|
|
400
|
-
if (statementKey === "ViewStmt") {
|
|
401
|
-
const body = nodeField(statement, statementKey);
|
|
402
|
-
// Relation options on CREATE VIEW (`WITH (security_barrier = false)`)
|
|
403
|
-
// are the same access-control knobs blocked on ALTER VIEW SET/RESET.
|
|
404
|
-
if (body === undefined || carriesValue(Reflect.get(body, "options"))) {
|
|
405
|
-
return "schema_or_session";
|
|
406
|
-
}
|
|
407
|
-
}
|
|
408
|
-
if (statementKey === "CreateSchemaStmt") {
|
|
409
|
-
const body = nodeField(statement, statementKey);
|
|
410
|
-
if (body === undefined || Reflect.has(body, "authrole")) {
|
|
210
|
+
if (containsKey(statement, NESTED_SCHEMA_KEYS)) {
|
|
411
211
|
return "schema_or_session";
|
|
412
212
|
}
|
|
213
|
+
return containsKey(statement, NESTED_MUTATION_KEYS)
|
|
214
|
+
? "data_mutation"
|
|
215
|
+
: "read";
|
|
413
216
|
}
|
|
414
|
-
|
|
415
|
-
Reflect.get(nodeField(statement, statementKey) ?? {}, "behavior") ===
|
|
416
|
-
"DROP_CASCADE") {
|
|
417
|
-
return "schema_or_session";
|
|
418
|
-
}
|
|
419
|
-
// `CREATE TABLE AS` accepts a data-modifying CTE, so DDL can carry a write.
|
|
420
|
-
return containsKey(statement, NESTED_MUTATION_KEYS) ? "data_mutation" : "ddl";
|
|
217
|
+
return "schema_or_session";
|
|
421
218
|
}
|
|
422
219
|
/**
|
|
423
220
|
* Whether a statement hands back rows. A `SELECT` always does. A mutation does
|
|
@@ -441,22 +238,15 @@ function statementReturnsRows(statement) {
|
|
|
441
238
|
function classifyWithoutParser(query) {
|
|
442
239
|
const normalizedQuery = query.trim().toUpperCase();
|
|
443
240
|
const hasWriteKeyword = UNPARSED_DIALECT_WRITE_KEYWORDS.some((keyword) =>
|
|
444
|
-
// Match the keyword at the start, or after whitespace
|
|
445
|
-
|
|
446
|
-
new RegExp(`(^|[\\s;(])${keyword}\\s`, "i").test(normalizedQuery));
|
|
241
|
+
// Match the keyword at the start, or after whitespace or a semicolon.
|
|
242
|
+
new RegExp(`(^|\\s|;)${keyword}\\s`, "i").test(normalizedQuery));
|
|
447
243
|
return hasWriteKeyword
|
|
448
244
|
? {
|
|
449
|
-
changesSchema: false,
|
|
450
245
|
kind: "unsupported_dialect",
|
|
451
246
|
supportsRowLimit: false,
|
|
452
247
|
returnsRows: false,
|
|
453
248
|
}
|
|
454
|
-
: {
|
|
455
|
-
changesSchema: false,
|
|
456
|
-
kind: "read",
|
|
457
|
-
supportsRowLimit: true,
|
|
458
|
-
returnsRows: true,
|
|
459
|
-
};
|
|
249
|
+
: { kind: "read", supportsRowLimit: true, returnsRows: true };
|
|
460
250
|
}
|
|
461
251
|
async function classifyWithParser(query) {
|
|
462
252
|
try {
|
|
@@ -487,19 +277,11 @@ async function classifyWithParser(query) {
|
|
|
487
277
|
return UNCLASSIFIED;
|
|
488
278
|
}
|
|
489
279
|
try {
|
|
490
|
-
// `SELECT ... INTO t` is a SELECT that creates a table: it reports a row
|
|
491
|
-
// count, not rows, and the rows it selects become the table's contents.
|
|
492
|
-
// Demanding a `LIMIT` there rejects the natural form and makes the
|
|
493
|
-
// "corrected" one silently wrong, because `SELECT * INTO archive FROM
|
|
494
|
-
// users LIMIT 10` copies ten rows instead of the table. `CREATE TABLE AS`
|
|
495
|
-
// is the same operation and is already exempt, having its own node key.
|
|
496
|
-
const createsTable = containsKey(statement, NESTED_DDL_KEYS);
|
|
497
280
|
return {
|
|
498
|
-
changesSchema: statementChangesSchema(statement),
|
|
499
281
|
kind: classifyStatement(statement),
|
|
500
282
|
// A top-level SELECT is the only shape that can carry a LIMIT clause.
|
|
501
|
-
supportsRowLimit:
|
|
502
|
-
returnsRows:
|
|
283
|
+
supportsRowLimit: Object.keys(statement).includes("SelectStmt"),
|
|
284
|
+
returnsRows: statementReturnsRows(statement),
|
|
503
285
|
};
|
|
504
286
|
}
|
|
505
287
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sql-classification.js","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools/integrations/sql-classification.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sql-classification.js","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools/integrations/sql-classification.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,10 +25,10 @@ declare const securityScanResultSchema: z.ZodObject<{
|
|
|
25
25
|
title: z.ZodString;
|
|
26
26
|
}, "strip", z.ZodTypeAny, {
|
|
27
27
|
description: string;
|
|
28
|
-
category: "config" | "other" | "auth" | "crypto" | "data_exposure" | "injection" | "secret" | "xss";
|
|
29
28
|
title: string;
|
|
30
29
|
id: string;
|
|
31
30
|
severity: "info" | "medium" | "critical" | "high" | "low";
|
|
31
|
+
category: "config" | "other" | "auth" | "crypto" | "data_exposure" | "injection" | "secret" | "xss";
|
|
32
32
|
clarkRemediable: boolean;
|
|
33
33
|
confidence: "medium" | "high" | "low";
|
|
34
34
|
evidence: string;
|
|
@@ -40,10 +40,10 @@ declare const securityScanResultSchema: z.ZodObject<{
|
|
|
40
40
|
suggestedFix?: string | undefined;
|
|
41
41
|
}, {
|
|
42
42
|
description: string;
|
|
43
|
-
category: "config" | "other" | "auth" | "crypto" | "data_exposure" | "injection" | "secret" | "xss";
|
|
44
43
|
title: string;
|
|
45
44
|
id: string;
|
|
46
45
|
severity: "info" | "medium" | "critical" | "high" | "low";
|
|
46
|
+
category: "config" | "other" | "auth" | "crypto" | "data_exposure" | "injection" | "secret" | "xss";
|
|
47
47
|
confidence: "medium" | "high" | "low";
|
|
48
48
|
evidence: string;
|
|
49
49
|
location: {
|
|
@@ -89,10 +89,10 @@ declare const securityScanResultSchema: z.ZodObject<{
|
|
|
89
89
|
};
|
|
90
90
|
findings: {
|
|
91
91
|
description: string;
|
|
92
|
-
category: "config" | "other" | "auth" | "crypto" | "data_exposure" | "injection" | "secret" | "xss";
|
|
93
92
|
title: string;
|
|
94
93
|
id: string;
|
|
95
94
|
severity: "info" | "medium" | "critical" | "high" | "low";
|
|
95
|
+
category: "config" | "other" | "auth" | "crypto" | "data_exposure" | "injection" | "secret" | "xss";
|
|
96
96
|
clarkRemediable: boolean;
|
|
97
97
|
confidence: "medium" | "high" | "low";
|
|
98
98
|
evidence: string;
|
|
@@ -116,10 +116,10 @@ declare const securityScanResultSchema: z.ZodObject<{
|
|
|
116
116
|
};
|
|
117
117
|
findings: {
|
|
118
118
|
description: string;
|
|
119
|
-
category: "config" | "other" | "auth" | "crypto" | "data_exposure" | "injection" | "secret" | "xss";
|
|
120
119
|
title: string;
|
|
121
120
|
id: string;
|
|
122
121
|
severity: "info" | "medium" | "critical" | "high" | "low";
|
|
122
|
+
category: "config" | "other" | "auth" | "crypto" | "data_exposure" | "injection" | "secret" | "xss";
|
|
123
123
|
confidence: "medium" | "high" | "low";
|
|
124
124
|
evidence: string;
|
|
125
125
|
location: {
|
|
@@ -146,10 +146,10 @@ export declare const reportReviewRunToolFactory: import("../tools2/types.js").To
|
|
|
146
146
|
};
|
|
147
147
|
findings: {
|
|
148
148
|
description: string;
|
|
149
|
-
category: "config" | "other" | "auth" | "crypto" | "data_exposure" | "injection" | "secret" | "xss";
|
|
150
149
|
title: string;
|
|
151
150
|
id: string;
|
|
152
151
|
severity: "info" | "medium" | "critical" | "high" | "low";
|
|
152
|
+
category: "config" | "other" | "auth" | "crypto" | "data_exposure" | "injection" | "secret" | "xss";
|
|
153
153
|
clarkRemediable: boolean;
|
|
154
154
|
confidence: "medium" | "high" | "low";
|
|
155
155
|
evidence: string;
|
|
@@ -1,41 +1,9 @@
|
|
|
1
|
-
import type { JSONValue } from "@ai-sdk/provider";
|
|
2
1
|
import { type ManagedNativeDbAvailabilityInput } from "../managed-native-db-availability.js";
|
|
3
2
|
import type { Clark } from "../state-machine/clark-fsm.js";
|
|
4
3
|
import type { ClarkStateHandlerParams } from "../state-machine/clark-fsm.js";
|
|
5
4
|
import { type UpdateAppEnvironmentDeps } from "./tools/app-environment/update-app-environment.js";
|
|
6
5
|
import { ToolRegistry, type SummaryStoreCallback } from "./tools2/registry.js";
|
|
7
6
|
import { type Tool } from "./tools2/types.js";
|
|
8
|
-
/**
|
|
9
|
-
* Output handling shared by every Playwright MCP tool.
|
|
10
|
-
*
|
|
11
|
-
* Screenshots become image parts and skip the output limit. Everything else -
|
|
12
|
-
* page text, accessibility snapshots, console and network reads - goes through
|
|
13
|
-
* the limiter as JSON, so one huge page dump cannot be stored in the
|
|
14
|
-
* conversation and push it past the model's input window.
|
|
15
|
-
*
|
|
16
|
-
* The screenshot branch sends only the image. Fields the server returns next to
|
|
17
|
-
* it (success, error, context, runtime errors, page snapshots) are left out on
|
|
18
|
-
* purpose: what `toModelOutput` returns is exactly what the AI SDK stores in the
|
|
19
|
-
* conversation, so dropping them keeps a screenshot result bounded by the image
|
|
20
|
-
* itself no matter how big the page was. Adding them back would need its own
|
|
21
|
-
* size cap and would put unscanned page content into stored history.
|
|
22
|
-
*/
|
|
23
|
-
export declare const playwrightMcpOutputConfig: {
|
|
24
|
-
skipOutputLimit: (_toolName: string) => (output: unknown) => boolean;
|
|
25
|
-
toModelOutput: (_toolName: string) => ({ output }: {
|
|
26
|
-
output: unknown;
|
|
27
|
-
}) => {
|
|
28
|
-
type: "content";
|
|
29
|
-
value: {
|
|
30
|
-
type: "image-data";
|
|
31
|
-
data: string;
|
|
32
|
-
mediaType: string;
|
|
33
|
-
}[];
|
|
34
|
-
} | {
|
|
35
|
-
type: "json";
|
|
36
|
-
value: JSONValue;
|
|
37
|
-
};
|
|
38
|
-
};
|
|
39
7
|
/**
|
|
40
8
|
* Gate for Clark's background-tasks framework AND its dev-DB provisioning
|
|
41
9
|
* tools. Single source of truth consulted by `agent/tools.ts` (tool
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/ai-service/agent/tools.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/ai-service/agent/tools.ts"],"names":[],"mappings":"AAyBA,OAAO,EAGL,KAAK,gCAAgC,EACtC,MAAM,sCAAsC,CAAC;AAQ9C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAiB7E,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,mDAAmD,CAAC;AAiE3D,OAAO,EACL,YAAY,EAEZ,KAAK,oBAAoB,EAC1B,MAAM,sBAAsB,CAAC;AAoB9B,OAAO,EAIL,KAAK,IAAI,EAEV,MAAM,mBAAmB,CAAC;AA+D3B;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,gCAAgC,GACvC,OAAO,CAET;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,YAAY,EACtB,qBAAqB,EAAE,OAAO,GAAG,SAAS,EAC1C,IAAI,EAAE,wBAAwB,EAC9B,eAAe,EAAE,OAAO,GAAG,SAAS,GACnC,IAAI,CAIN;AAED,eAAO,MAAM,UAAU,GACrB,OAAO,KAAK,EACZ,UAAU,uBAAuB,EACjC,wBAAwB,OAAO,4CAgyBhC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACtC,uBAAuB,EACvB,UAAU,GAAG,UAAU,GAAG,kBAAkB,GAAG,WAAW,GAAG,aAAa,CAC3E,GAAG;IACF,YAAY,EAAE,oBAAoB,CAAC;CACpC,CAAC;AAEF,eAAO,MAAM,sBAAsB,GACjC,OAAO,KAAK,EACZ,UAAU,qBAAqB,KAC9B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CA0C7B,CAAC"}
|
|
@@ -41,59 +41,6 @@ function toJsonValue(value) {
|
|
|
41
41
|
return String(value);
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
|
-
const SCREENSHOT_MEDIA_TYPES = {
|
|
45
|
-
png: "image/png",
|
|
46
|
-
jpeg: "image/jpeg",
|
|
47
|
-
webp: "image/webp",
|
|
48
|
-
};
|
|
49
|
-
/**
|
|
50
|
-
* Turns a Playwright MCP output into an image part, or returns undefined when
|
|
51
|
-
* the output is not a screenshot.
|
|
52
|
-
*
|
|
53
|
-
* A screenshot output is a base64 `screenshot` string. It is sent to the model
|
|
54
|
-
* as an image part, which the character-based output limit cannot measure, so
|
|
55
|
-
* screenshots are the only Playwright outputs allowed to skip that limit.
|
|
56
|
-
*/
|
|
57
|
-
function playwrightScreenshotPart(output) {
|
|
58
|
-
if (typeof output !== "object" ||
|
|
59
|
-
output === null ||
|
|
60
|
-
!("screenshot" in output) ||
|
|
61
|
-
typeof output.screenshot !== "string") {
|
|
62
|
-
return undefined;
|
|
63
|
-
}
|
|
64
|
-
const format = "format" in output && typeof output.format === "string"
|
|
65
|
-
? output.format
|
|
66
|
-
: "png";
|
|
67
|
-
return {
|
|
68
|
-
type: "image-data",
|
|
69
|
-
data: output.screenshot,
|
|
70
|
-
mediaType: SCREENSHOT_MEDIA_TYPES[format] ?? "image/png",
|
|
71
|
-
};
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* Output handling shared by every Playwright MCP tool.
|
|
75
|
-
*
|
|
76
|
-
* Screenshots become image parts and skip the output limit. Everything else -
|
|
77
|
-
* page text, accessibility snapshots, console and network reads - goes through
|
|
78
|
-
* the limiter as JSON, so one huge page dump cannot be stored in the
|
|
79
|
-
* conversation and push it past the model's input window.
|
|
80
|
-
*
|
|
81
|
-
* The screenshot branch sends only the image. Fields the server returns next to
|
|
82
|
-
* it (success, error, context, runtime errors, page snapshots) are left out on
|
|
83
|
-
* purpose: what `toModelOutput` returns is exactly what the AI SDK stores in the
|
|
84
|
-
* conversation, so dropping them keeps a screenshot result bounded by the image
|
|
85
|
-
* itself no matter how big the page was. Adding them back would need its own
|
|
86
|
-
* size cap and would put unscanned page content into stored history.
|
|
87
|
-
*/
|
|
88
|
-
export const playwrightMcpOutputConfig = {
|
|
89
|
-
skipOutputLimit: (_toolName) => (output) => playwrightScreenshotPart(output) !== undefined,
|
|
90
|
-
toModelOutput: (_toolName) => ({ output }) => {
|
|
91
|
-
const screenshot = playwrightScreenshotPart(output);
|
|
92
|
-
return screenshot
|
|
93
|
-
? { type: "content", value: [screenshot] }
|
|
94
|
-
: { type: "json", value: toJsonValue(output) };
|
|
95
|
-
},
|
|
96
|
-
};
|
|
97
44
|
const fileToolConfig = {
|
|
98
45
|
extractDisplayName: (parameters) => {
|
|
99
46
|
const params = parameters;
|
|
@@ -665,7 +612,39 @@ export const buildTools = async (clark, services, canManageEnvironments) => {
|
|
|
665
612
|
category: ToolCategory.TEST,
|
|
666
613
|
defaultPermission: PermissionLevel.ALLOW,
|
|
667
614
|
toolNameTransform: (_serverName, toolName) => `browser_${toolName}`,
|
|
668
|
-
|
|
615
|
+
skipOutputLimit: (_toolName) => (_output) => true,
|
|
616
|
+
toModelOutput: (_toolName) => ({ output }) => {
|
|
617
|
+
if (output &&
|
|
618
|
+
typeof output === "object" &&
|
|
619
|
+
"screenshot" in output &&
|
|
620
|
+
typeof output.screenshot === "string") {
|
|
621
|
+
// Determine media type based on format (defaults to png)
|
|
622
|
+
const format = output.format ?? "png";
|
|
623
|
+
const mediaType = format === "png"
|
|
624
|
+
? "image/png"
|
|
625
|
+
: format === "jpeg"
|
|
626
|
+
? "image/jpeg"
|
|
627
|
+
: format === "webp"
|
|
628
|
+
? "image/webp"
|
|
629
|
+
: "image/png";
|
|
630
|
+
return {
|
|
631
|
+
type: "content",
|
|
632
|
+
value: [
|
|
633
|
+
{
|
|
634
|
+
type: "image-data",
|
|
635
|
+
data: output.screenshot,
|
|
636
|
+
mediaType,
|
|
637
|
+
},
|
|
638
|
+
],
|
|
639
|
+
};
|
|
640
|
+
}
|
|
641
|
+
else {
|
|
642
|
+
return {
|
|
643
|
+
type: "json",
|
|
644
|
+
value: toJsonValue(output),
|
|
645
|
+
};
|
|
646
|
+
}
|
|
647
|
+
},
|
|
669
648
|
}, mcpClient);
|
|
670
649
|
logger.info(`[Playwright] ✓ Registered ${registeredTools.length} browser tools: ${registeredTools.join(", ")}`);
|
|
671
650
|
// Register test subagent tools only if the mcp server is successfully started
|