@superblocksteam/vite-plugin-file-sync 2.0.170-next.1 → 2.0.171-next.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/ai-service/agent/prompts/api-prompts.d.ts.map +1 -1
- package/dist/ai-service/agent/prompts/api-prompts.js +4 -6
- package/dist/ai-service/agent/prompts/api-prompts.js.map +1 -1
- package/dist/ai-service/agent/prompts/build-base-system-prompt.d.ts +3 -12
- 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 +144 -71
- package/dist/ai-service/agent/prompts/build-base-system-prompt.js.map +1 -1
- package/dist/ai-service/agent/subagents/testing/types.d.ts +2 -1
- package/dist/ai-service/agent/subagents/testing/types.d.ts.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 +47 -36
- package/dist/ai-service/agent/tool-message-utils.js.map +1 -1
- package/dist/ai-service/agent/tool-result-metrics.d.ts +15 -0
- package/dist/ai-service/agent/tool-result-metrics.d.ts.map +1 -1
- package/dist/ai-service/agent/tool-result-metrics.js +28 -0
- package/dist/ai-service/agent/tool-result-metrics.js.map +1 -1
- package/dist/ai-service/agent/tools/apis/analysis.d.ts +24 -2
- package/dist/ai-service/agent/tools/apis/analysis.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/apis/analysis.js +164 -11
- package/dist/ai-service/agent/tools/apis/analysis.js.map +1 -1
- package/dist/ai-service/agent/tools/apis/api-comparator.d.ts +2 -1
- package/dist/ai-service/agent/tools/apis/api-comparator.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/apis/contained-source-reader.d.ts +11 -0
- package/dist/ai-service/agent/tools/apis/contained-source-reader.d.ts.map +1 -0
- package/dist/ai-service/agent/tools/apis/contained-source-reader.js +48 -0
- package/dist/ai-service/agent/tools/apis/contained-source-reader.js.map +1 -0
- package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.d.ts +37 -10
- package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.js +140 -70
- package/dist/ai-service/agent/tools/apis/get-sdk-api-docs.js.map +1 -1
- package/dist/ai-service/agent/tools/apis/spreadsheet-csv.d.ts +6 -20
- package/dist/ai-service/agent/tools/apis/spreadsheet-csv.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/apis/spreadsheet-csv.js +3 -3
- package/dist/ai-service/agent/tools/apis/spreadsheet-csv.js.map +1 -1
- package/dist/ai-service/agent/tools/apis/test-api-metrics.d.ts +8 -0
- package/dist/ai-service/agent/tools/apis/test-api-metrics.d.ts.map +1 -0
- package/dist/ai-service/agent/tools/apis/test-api-metrics.js +41 -0
- package/dist/ai-service/agent/tools/apis/test-api-metrics.js.map +1 -0
- package/dist/ai-service/agent/tools/apis/test-api-timing.d.ts +27 -0
- package/dist/ai-service/agent/tools/apis/test-api-timing.d.ts.map +1 -0
- package/dist/ai-service/agent/tools/apis/test-api-timing.js +25 -0
- package/dist/ai-service/agent/tools/apis/test-api-timing.js.map +1 -0
- package/dist/ai-service/agent/tools/apis/test-api.d.ts +4 -0
- package/dist/ai-service/agent/tools/apis/test-api.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/apis/test-api.js +119 -20
- package/dist/ai-service/agent/tools/apis/test-api.js.map +1 -1
- package/dist/ai-service/agent/tools/build-capture-screenshot.d.ts +0 -18
- package/dist/ai-service/agent/tools/build-capture-screenshot.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-capture-screenshot.js +2 -2
- package/dist/ai-service/agent/tools/build-capture-screenshot.js.map +1 -1
- package/dist/ai-service/agent/tools/build-install-packages.d.ts +32 -5
- package/dist/ai-service/agent/tools/build-install-packages.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-install-packages.js +20 -19
- package/dist/ai-service/agent/tools/build-install-packages.js.map +1 -1
- package/dist/ai-service/agent/tools/build-manage-checklist.d.ts +1 -1
- package/dist/ai-service/agent/tools/build-manage-packages.d.ts +19 -0
- package/dist/ai-service/agent/tools/build-manage-packages.d.ts.map +1 -0
- package/dist/ai-service/agent/tools/build-manage-packages.js +220 -0
- package/dist/ai-service/agent/tools/build-manage-packages.js.map +1 -0
- package/dist/ai-service/agent/tools/build-read-file.d.ts +5 -14
- package/dist/ai-service/agent/tools/build-read-file.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-read-file.js +5 -8
- package/dist/ai-service/agent/tools/build-read-file.js.map +1 -1
- package/dist/ai-service/agent/tools/databases/dev-database-tasks.d.ts +2 -90
- 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 +1 -2
- package/dist/ai-service/agent/tools/databases/dev-database-tasks.js.map +1 -1
- package/dist/ai-service/agent/tools/debug-cache.d.ts +0 -12
- package/dist/ai-service/agent/tools/debug-cache.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/debug-cache.js +1 -1
- package/dist/ai-service/agent/tools/debug-cache.js.map +1 -1
- package/dist/ai-service/agent/tools/index.d.ts +3 -3
- package/dist/ai-service/agent/tools/index.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/index.js +2 -2
- package/dist/ai-service/agent/tools/index.js.map +1 -1
- package/dist/ai-service/agent/tools/integrations/errors.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/integrations/errors.js +3 -0
- package/dist/ai-service/agent/tools/integrations/errors.js.map +1 -1
- package/dist/ai-service/agent/tools/integrations/execute-request.d.ts +27 -0
- package/dist/ai-service/agent/tools/integrations/execute-request.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/integrations/execute-request.js +85 -11
- package/dist/ai-service/agent/tools/integrations/execute-request.js.map +1 -1
- package/dist/ai-service/agent/tools/integrations/managed-app-database.d.ts +0 -2
- package/dist/ai-service/agent/tools/integrations/managed-app-database.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/integrations/managed-app-database.js +1 -1
- package/dist/ai-service/agent/tools/integrations/managed-app-database.js.map +1 -1
- package/dist/ai-service/agent/tools/integrations/metadata.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/integrations/metadata.js +1 -0
- package/dist/ai-service/agent/tools/integrations/metadata.js.map +1 -1
- package/dist/ai-service/agent/tools/read-state-trackers.d.ts +16 -2
- package/dist/ai-service/agent/tools/read-state-trackers.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/read-state-trackers.js +11 -2
- package/dist/ai-service/agent/tools/read-state-trackers.js.map +1 -1
- package/dist/ai-service/agent/tools.d.ts.map +1 -1
- package/dist/ai-service/agent/tools.js +13 -6
- package/dist/ai-service/agent/tools.js.map +1 -1
- package/dist/ai-service/agent/tools2/registry.d.ts +20 -1
- package/dist/ai-service/agent/tools2/registry.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/registry.js +55 -9
- package/dist/ai-service/agent/tools2/registry.js.map +1 -1
- 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 +25 -0
- package/dist/ai-service/agent/tools2/tools/grep-metadata-ripgrep.js.map +1 -1
- package/dist/ai-service/agent/tools2/tools/grep-metadata.d.ts +8 -2
- package/dist/ai-service/agent/tools2/tools/grep-metadata.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/tools/grep-metadata.js +17 -0
- package/dist/ai-service/agent/tools2/tools/grep-metadata.js.map +1 -1
- package/dist/ai-service/agent/tools2/tools/grep.d.ts.map +1 -1
- package/dist/ai-service/agent/tools2/tools/grep.js +50 -25
- package/dist/ai-service/agent/tools2/tools/grep.js.map +1 -1
- package/dist/ai-service/agent/utils.d.ts.map +1 -1
- package/dist/ai-service/agent/utils.js +3 -3
- package/dist/ai-service/agent/utils.js.map +1 -1
- package/dist/ai-service/app-interface/file-system-interface.d.ts +0 -6
- package/dist/ai-service/app-interface/file-system-interface.d.ts.map +1 -1
- package/dist/ai-service/app-interface/file-system-interface.js +39 -97
- package/dist/ai-service/app-interface/file-system-interface.js.map +1 -1
- package/dist/ai-service/app-interface/filesystem/handlers/skill-handler.d.ts.map +1 -1
- package/dist/ai-service/app-interface/filesystem/handlers/skill-handler.js +2 -2
- package/dist/ai-service/app-interface/filesystem/handlers/skill-handler.js.map +1 -1
- package/dist/ai-service/app-interface/filesystem/validation.js +1 -1
- package/dist/ai-service/app-interface/filesystem/validation.js.map +1 -1
- package/dist/ai-service/app-interface/npm-package-lookup.d.ts +1 -3
- package/dist/ai-service/app-interface/npm-package-lookup.d.ts.map +1 -1
- package/dist/ai-service/app-interface/npm-package-lookup.js +1 -1
- package/dist/ai-service/app-interface/npm-package-lookup.js.map +1 -1
- package/dist/ai-service/app-interface/pnpm-lockfile.d.ts.map +1 -1
- package/dist/ai-service/app-interface/pnpm-lockfile.js +2 -4
- package/dist/ai-service/app-interface/pnpm-lockfile.js.map +1 -1
- package/dist/ai-service/app-interface/shell.d.ts +38 -15
- package/dist/ai-service/app-interface/shell.d.ts.map +1 -1
- package/dist/ai-service/app-interface/shell.js +646 -48
- package/dist/ai-service/app-interface/shell.js.map +1 -1
- package/dist/ai-service/app-interface/vulnerability-gate.d.ts +7 -0
- package/dist/ai-service/app-interface/vulnerability-gate.d.ts.map +1 -1
- package/dist/ai-service/app-interface/vulnerability-gate.js +16 -6
- package/dist/ai-service/app-interface/vulnerability-gate.js.map +1 -1
- package/dist/ai-service/app-layout.d.ts +3 -0
- package/dist/ai-service/app-layout.d.ts.map +1 -1
- package/dist/ai-service/app-layout.js +14 -0
- package/dist/ai-service/app-layout.js.map +1 -1
- package/dist/ai-service/app-skills/parser.d.ts +2 -1
- package/dist/ai-service/app-skills/parser.d.ts.map +1 -1
- package/dist/ai-service/attachments/store.d.ts +4 -4
- package/dist/ai-service/attachments/store.d.ts.map +1 -1
- package/dist/ai-service/chat/chat-session-store-metrics.d.ts +1 -2
- package/dist/ai-service/chat/chat-session-store-metrics.d.ts.map +1 -1
- package/dist/ai-service/chat/chat-session-store-metrics.js +0 -6
- package/dist/ai-service/chat/chat-session-store-metrics.js.map +1 -1
- package/dist/ai-service/chat/chat-session-store.d.ts +2 -11
- package/dist/ai-service/chat/chat-session-store.d.ts.map +1 -1
- package/dist/ai-service/chat/chat-session-store.js +21 -4
- package/dist/ai-service/chat/chat-session-store.js.map +1 -1
- package/dist/ai-service/chat/utils.d.ts +1 -2
- package/dist/ai-service/chat/utils.d.ts.map +1 -1
- package/dist/ai-service/chat/utils.js +0 -1
- package/dist/ai-service/chat/utils.js.map +1 -1
- package/dist/ai-service/checklist/persisted-checklist-store.d.ts +3 -3
- package/dist/ai-service/checklist/persisted-checklist-store.d.ts.map +1 -1
- package/dist/ai-service/checklist/persisted-checklist-store.js +4 -2
- package/dist/ai-service/checklist/persisted-checklist-store.js.map +1 -1
- package/dist/ai-service/context/app-context.d.ts +7 -39
- package/dist/ai-service/context/app-context.d.ts.map +1 -1
- package/dist/ai-service/context/app-context.js +29 -110
- package/dist/ai-service/context/app-context.js.map +1 -1
- package/dist/ai-service/context-clear-metrics.d.ts +11 -0
- package/dist/ai-service/context-clear-metrics.d.ts.map +1 -0
- package/dist/ai-service/context-clear-metrics.js +64 -0
- package/dist/ai-service/context-clear-metrics.js.map +1 -0
- package/dist/ai-service/context-download.js +2 -2
- package/dist/ai-service/context-download.js.map +1 -1
- package/dist/ai-service/edit-after-clark.d.ts +0 -5
- package/dist/ai-service/edit-after-clark.d.ts.map +1 -1
- package/dist/ai-service/edit-after-clark.js +1 -1
- package/dist/ai-service/edit-after-clark.js.map +1 -1
- package/dist/ai-service/features.d.ts +20 -4
- package/dist/ai-service/features.d.ts.map +1 -1
- package/dist/ai-service/features.js +20 -4
- package/dist/ai-service/features.js.map +1 -1
- package/dist/ai-service/filter-disabled-tools-for-migration.js +1 -1
- package/dist/ai-service/filter-disabled-tools-for-migration.js.map +1 -1
- package/dist/ai-service/index.d.ts +58 -0
- package/dist/ai-service/index.d.ts.map +1 -1
- package/dist/ai-service/index.js +186 -21
- package/dist/ai-service/index.js.map +1 -1
- package/dist/ai-service/integrations/store.d.ts +6 -0
- package/dist/ai-service/integrations/store.d.ts.map +1 -1
- package/dist/ai-service/integrations/store.js +101 -3
- package/dist/ai-service/integrations/store.js.map +1 -1
- package/dist/ai-service/live-edit-events/forwarder.d.ts +1 -12
- package/dist/ai-service/live-edit-events/forwarder.d.ts.map +1 -1
- package/dist/ai-service/live-edit-events/forwarder.js +1 -7
- package/dist/ai-service/live-edit-events/forwarder.js.map +1 -1
- 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 +15 -5
- 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 +6 -0
- package/dist/ai-service/llm/context-v2/compaction/compaction-strategy.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/compaction/server-side.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/compaction/server-side.js +5 -1
- package/dist/ai-service/llm/context-v2/compaction/server-side.js.map +1 -1
- package/dist/ai-service/llm/context-v2/compactor.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/compactor.js +34 -12
- package/dist/ai-service/llm/context-v2/compactor.js.map +1 -1
- package/dist/ai-service/llm/context-v2/context-management.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/context-management.js +9 -0
- package/dist/ai-service/llm/context-v2/context-management.js.map +1 -1
- package/dist/ai-service/llm/context-v2/context-metrics.d.ts +4 -0
- package/dist/ai-service/llm/context-v2/context-metrics.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/context-metrics.js +15 -3
- package/dist/ai-service/llm/context-v2/context-metrics.js.map +1 -1
- package/dist/ai-service/llm/context-v2/context.d.ts +36 -6
- package/dist/ai-service/llm/context-v2/context.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/context.js +72 -28
- package/dist/ai-service/llm/context-v2/context.js.map +1 -1
- package/dist/ai-service/llm/context-v2/manager.d.ts +3 -3
- package/dist/ai-service/llm/context-v2/manager.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/manager.js +13 -7
- package/dist/ai-service/llm/context-v2/manager.js.map +1 -1
- package/dist/ai-service/llm/context-v2/migrations/types.d.ts +2 -1
- package/dist/ai-service/llm/context-v2/migrations/types.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/storage/event-types.d.ts +5 -5
- package/dist/ai-service/llm/context-v2/storage/event-types.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/storage/event-types.js +3 -23
- package/dist/ai-service/llm/context-v2/storage/event-types.js.map +1 -1
- package/dist/ai-service/llm/context-v2/types.d.ts +9 -1
- 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/context-v2/uniquify-filenames.d.ts +20 -4
- package/dist/ai-service/llm/context-v2/uniquify-filenames.d.ts.map +1 -1
- package/dist/ai-service/llm/context-v2/uniquify-filenames.js +128 -29
- package/dist/ai-service/llm/context-v2/uniquify-filenames.js.map +1 -1
- package/dist/ai-service/llm/error.d.ts +1 -1
- package/dist/ai-service/llm/error.d.ts.map +1 -1
- package/dist/ai-service/llm/error.js +57 -7
- package/dist/ai-service/llm/error.js.map +1 -1
- package/dist/ai-service/llm/stream/config.d.ts +3 -3
- package/dist/ai-service/llm/stream/config.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/errors.d.ts +3 -0
- package/dist/ai-service/llm/stream/errors.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/errors.js +72 -4
- package/dist/ai-service/llm/stream/errors.js.map +1 -1
- package/dist/ai-service/llm/stream/observers/workflow-usage.d.ts +0 -6
- package/dist/ai-service/llm/stream/observers/workflow-usage.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/observers/workflow-usage.js +2 -2
- package/dist/ai-service/llm/stream/observers/workflow-usage.js.map +1 -1
- package/dist/ai-service/llm/stream/orchestrator.d.ts.map +1 -1
- package/dist/ai-service/llm/stream/orchestrator.js +6 -1
- package/dist/ai-service/llm/stream/orchestrator.js.map +1 -1
- package/dist/ai-service/managed-native-db-availability.d.ts +5 -2
- package/dist/ai-service/managed-native-db-availability.d.ts.map +1 -1
- package/dist/ai-service/managed-native-db-availability.js +5 -1
- package/dist/ai-service/managed-native-db-availability.js.map +1 -1
- package/dist/ai-service/mcp/embedded-playwright-mcp-server.js +2 -0
- package/dist/ai-service/mcp/embedded-playwright-mcp-server.js.map +1 -1
- package/dist/ai-service/migration-prompt-gating.d.ts +1 -0
- package/dist/ai-service/migration-prompt-gating.d.ts.map +1 -1
- package/dist/ai-service/migration-prompt-gating.js +3 -0
- package/dist/ai-service/migration-prompt-gating.js.map +1 -1
- package/dist/ai-service/migration-turns-log.d.ts +3 -2
- package/dist/ai-service/migration-turns-log.d.ts.map +1 -1
- package/dist/ai-service/migration-turns-log.js.map +1 -1
- package/dist/ai-service/policy-agent-metrics.d.ts +2 -4
- package/dist/ai-service/policy-agent-metrics.d.ts.map +1 -1
- package/dist/ai-service/policy-agent-metrics.js +3 -3
- package/dist/ai-service/policy-agent-metrics.js.map +1 -1
- package/dist/ai-service/policy-gate-remediation-usage.d.ts.map +1 -1
- package/dist/ai-service/policy-gate-remediation-usage.js +29 -19
- package/dist/ai-service/policy-gate-remediation-usage.js.map +1 -1
- package/dist/ai-service/prompt-builder-service/classifiers/prompt-interpret-task.js +1 -1
- package/dist/ai-service/prompt-builder-service/classifiers/prompt-interpret-task.js.map +1 -1
- package/dist/ai-service/recording/types.d.ts +6 -5
- package/dist/ai-service/recording/types.d.ts.map +1 -1
- package/dist/ai-service/skills/system/_registry.generated.d.ts.map +1 -1
- package/dist/ai-service/skills/system/_registry.generated.js +10 -0
- package/dist/ai-service/skills/system/_registry.generated.js.map +1 -1
- package/dist/ai-service/skills/system/app-database/skill.generated.d.ts +2 -0
- package/dist/ai-service/skills/system/app-database/skill.generated.d.ts.map +1 -0
- package/dist/ai-service/skills/system/app-database/skill.generated.js +79 -0
- package/dist/ai-service/skills/system/app-database/skill.generated.js.map +1 -0
- package/dist/ai-service/skills/system/resolve.d.ts +1 -1
- package/dist/ai-service/skills/system/resolve.d.ts.map +1 -1
- package/dist/ai-service/skills/system/resolve.js +25 -2
- package/dist/ai-service/skills/system/resolve.js.map +1 -1
- package/dist/ai-service/skills/system/spreadsheet-import/skill.generated.d.ts +1 -1
- package/dist/ai-service/skills/system/spreadsheet-import/skill.generated.d.ts.map +1 -1
- package/dist/ai-service/skills/system/spreadsheet-import/skill.generated.js +1 -1
- package/dist/ai-service/skills/system/superblocks-frontend/_variants/base-ui-plain.generated.d.ts +2 -0
- package/dist/ai-service/skills/system/superblocks-frontend/_variants/base-ui-plain.generated.d.ts.map +1 -0
- package/dist/ai-service/skills/system/superblocks-frontend/_variants/base-ui-plain.generated.js +5 -0
- package/dist/ai-service/skills/system/superblocks-frontend/_variants/base-ui-plain.generated.js.map +1 -0
- package/dist/ai-service/skills/system/superblocks-frontend/_variants/base-ui-registered.generated.d.ts +2 -0
- package/dist/ai-service/skills/system/superblocks-frontend/_variants/base-ui-registered.generated.d.ts.map +1 -0
- package/dist/ai-service/skills/system/superblocks-frontend/_variants/base-ui-registered.generated.js +5 -0
- package/dist/ai-service/skills/system/superblocks-frontend/_variants/base-ui-registered.generated.js.map +1 -0
- package/dist/ai-service/skills/system/superblocks-frontend/_variants/icons-lucide.generated.d.ts +2 -0
- package/dist/ai-service/skills/system/superblocks-frontend/_variants/icons-lucide.generated.d.ts.map +1 -0
- package/dist/ai-service/skills/system/superblocks-frontend/_variants/icons-lucide.generated.js +32 -0
- package/dist/ai-service/skills/system/superblocks-frontend/_variants/icons-lucide.generated.js.map +1 -0
- package/dist/ai-service/skills/system/superblocks-frontend/_variants/icons-wrapper.generated.d.ts +2 -0
- package/dist/ai-service/skills/system/superblocks-frontend/_variants/icons-wrapper.generated.d.ts.map +1 -0
- package/dist/ai-service/skills/system/superblocks-frontend/_variants/icons-wrapper.generated.js +34 -0
- package/dist/ai-service/skills/system/superblocks-frontend/_variants/icons-wrapper.generated.js.map +1 -0
- 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 +99 -68
- package/dist/ai-service/skills/system/superblocks-frontend/skill.generated.js.map +1 -1
- package/dist/ai-service/skills/system/superblocks-migration/skill.generated.d.ts +1 -1
- package/dist/ai-service/skills/system/superblocks-migration/skill.generated.d.ts.map +1 -1
- package/dist/ai-service/skills/system/superblocks-migration/skill.generated.js +4 -4
- package/dist/ai-service/skills/system/superblocks-sdk-api/skill.generated.d.ts +1 -1
- package/dist/ai-service/skills/system/superblocks-sdk-api/skill.generated.d.ts.map +1 -1
- package/dist/ai-service/skills/system/superblocks-sdk-api/skill.generated.js +7 -7
- 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 +1 -1
- package/dist/ai-service/state-machine/clark-fsm.d.ts +2 -3
- 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.map +1 -1
- package/dist/ai-service/state-machine/handlers/agent-planning.js +1 -4
- 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 +21 -12
- package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
- package/dist/ai-service/state-machine/helpers/prompt-degradation-cause.d.ts +63 -0
- package/dist/ai-service/state-machine/helpers/prompt-degradation-cause.d.ts.map +1 -0
- package/dist/ai-service/state-machine/helpers/prompt-degradation-cause.js +96 -0
- package/dist/ai-service/state-machine/helpers/prompt-degradation-cause.js.map +1 -0
- package/dist/ai-service/state-machine/helpers/prompt-degradation-metrics.d.ts +12 -3
- package/dist/ai-service/state-machine/helpers/prompt-degradation-metrics.d.ts.map +1 -1
- package/dist/ai-service/state-machine/helpers/prompt-degradation-metrics.js +89 -17
- package/dist/ai-service/state-machine/helpers/prompt-degradation-metrics.js.map +1 -1
- package/dist/ai-service/state-machine/helpers/prompt-org-claims.d.ts +17 -0
- package/dist/ai-service/state-machine/helpers/prompt-org-claims.d.ts.map +1 -0
- package/dist/ai-service/state-machine/helpers/prompt-org-claims.js +50 -0
- package/dist/ai-service/state-machine/helpers/prompt-org-claims.js.map +1 -0
- package/dist/ai-service/state-machine/helpers/prompt-request-metrics.d.ts +6 -0
- package/dist/ai-service/state-machine/helpers/prompt-request-metrics.d.ts.map +1 -1
- package/dist/ai-service/state-machine/helpers/prompt-request-metrics.js +35 -5
- package/dist/ai-service/state-machine/helpers/prompt-request-metrics.js.map +1 -1
- package/dist/ai-service/state-machine/mocks.d.ts.map +1 -1
- package/dist/ai-service/state-machine/mocks.js +1 -4
- package/dist/ai-service/state-machine/mocks.js.map +1 -1
- package/dist/ai-service/tasks/peer-push.d.ts +2 -1
- package/dist/ai-service/tasks/peer-push.d.ts.map +1 -1
- package/dist/ai-service/test-utils/metrics-harness.d.ts +2 -1
- package/dist/ai-service/test-utils/metrics-harness.d.ts.map +1 -1
- package/dist/ai-service/util/llm-config-utils.d.ts +16 -5
- package/dist/ai-service/util/llm-config-utils.d.ts.map +1 -1
- package/dist/ai-service/util/llm-config-utils.js +25 -3
- package/dist/ai-service/util/llm-config-utils.js.map +1 -1
- package/dist/ai-service/util/parse-jwt.d.ts +5 -1
- package/dist/ai-service/util/parse-jwt.d.ts.map +1 -1
- package/dist/ai-service/util/parse-jwt.js +9 -1
- package/dist/ai-service/util/parse-jwt.js.map +1 -1
- package/dist/app-scope-source.d.ts +13 -0
- package/dist/app-scope-source.d.ts.map +1 -0
- package/dist/app-scope-source.js +68 -0
- package/dist/app-scope-source.js.map +1 -0
- package/dist/extract-api-integrations.d.ts +28 -6
- package/dist/extract-api-integrations.d.ts.map +1 -1
- package/dist/extract-api-integrations.js +166 -98
- package/dist/extract-api-integrations.js.map +1 -1
- package/dist/file-sync-vite-plugin.d.ts +1 -5
- package/dist/file-sync-vite-plugin.d.ts.map +1 -1
- package/dist/file-sync-vite-plugin.js +44 -70
- package/dist/file-sync-vite-plugin.js.map +1 -1
- package/dist/file-system-helpers.d.ts +0 -5
- package/dist/file-system-helpers.d.ts.map +1 -1
- package/dist/file-system-helpers.js +1 -1
- package/dist/file-system-helpers.js.map +1 -1
- package/dist/file-system-manager.d.ts +2 -9
- package/dist/file-system-manager.d.ts.map +1 -1
- package/dist/file-system-manager.js +50 -118
- package/dist/file-system-manager.js.map +1 -1
- package/dist/git-service/index.d.ts.map +1 -1
- package/dist/git-service/index.js +8 -0
- package/dist/git-service/index.js.map +1 -1
- package/dist/lock-service/index.d.ts +24 -0
- package/dist/lock-service/index.d.ts.map +1 -1
- package/dist/lock-service/index.js +74 -2
- package/dist/lock-service/index.js.map +1 -1
- package/dist/migration/integration-write-policy.d.ts +2 -1
- package/dist/migration/integration-write-policy.d.ts.map +1 -1
- package/dist/migration/integration-write-policy.js.map +1 -1
- package/dist/migration/restructure.d.ts +1 -1
- package/dist/migration/restructure.d.ts.map +1 -1
- package/dist/migration/restructure.js +1 -1
- package/dist/migration/restructure.js.map +1 -1
- package/dist/migration/translation-prompt.js +1 -1
- package/dist/migration-templates/app-fullstack/client/components/ui/accordion.tsx +0 -69
- package/dist/migration-templates/app-fullstack/client/components/ui/aspect-ratio.tsx +0 -31
- package/dist/migration-templates/app-fullstack/client/components/ui/avatar.tsx +0 -52
- package/dist/migration-templates/app-fullstack/client/components/ui/badge.tsx +5 -79
- package/dist/migration-templates/app-fullstack/client/components/ui/breadcrumb.tsx +14 -161
- package/dist/migration-templates/app-fullstack/client/components/ui/button.tsx +1 -53
- package/dist/migration-templates/app-fullstack/client/components/ui/calendar.tsx +4 -56
- package/dist/migration-templates/app-fullstack/client/components/ui/card.tsx +0 -34
- package/dist/migration-templates/app-fullstack/client/components/ui/chart.tsx +3 -51
- package/dist/migration-templates/app-fullstack/client/components/ui/checkbox.tsx +0 -42
- package/dist/migration-templates/app-fullstack/client/components/ui/dialog.tsx +0 -55
- package/dist/migration-templates/app-fullstack/client/components/ui/dropdown-menu.tsx +0 -29
- package/dist/migration-templates/app-fullstack/client/components/ui/hover-card.tsx +0 -64
- package/dist/migration-templates/app-fullstack/client/components/ui/input.tsx +0 -57
- package/dist/migration-templates/app-fullstack/client/components/ui/label.tsx +0 -30
- package/dist/migration-templates/app-fullstack/client/components/ui/navigation-menu.tsx +16 -172
- package/dist/migration-templates/app-fullstack/client/components/ui/pagination.tsx +0 -44
- package/dist/migration-templates/app-fullstack/client/components/ui/popover.tsx +0 -64
- package/dist/migration-templates/app-fullstack/client/components/ui/progress.tsx +0 -31
- package/dist/migration-templates/app-fullstack/client/components/ui/scroll-area.tsx +0 -30
- package/dist/migration-templates/app-fullstack/client/components/ui/select.tsx +0 -41
- package/dist/migration-templates/app-fullstack/client/components/ui/separator.tsx +0 -29
- package/dist/migration-templates/app-fullstack/client/components/ui/sheet.tsx +0 -64
- package/dist/migration-templates/app-fullstack/client/components/ui/sidebar.tsx +30 -265
- package/dist/migration-templates/app-fullstack/client/components/ui/slider.tsx +0 -45
- package/dist/migration-templates/app-fullstack/client/components/ui/switch.tsx +0 -41
- package/dist/migration-templates/app-fullstack/client/components/ui/table.tsx +0 -32
- package/dist/migration-templates/app-fullstack/client/components/ui/tabs.tsx +0 -23
- package/dist/migration-templates/app-fullstack/client/components/ui/textarea.tsx +0 -48
- package/dist/migration-templates/app-fullstack/client/components/ui/toggle-group.tsx +0 -81
- package/dist/migration-templates/app-fullstack/client/components/ui/toggle.tsx +0 -46
- package/dist/migration-templates/app-fullstack/client/components/ui/tooltip.tsx +0 -63
- package/dist/migration-templates/app-fullstack/eslint.config.js +7 -0
- package/dist/migration-templates/app-fullstack/package.json +0 -3
- package/dist/parsing/types.d.ts +3 -2
- package/dist/parsing/types.d.ts.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.map +1 -1
- package/dist/reconnect-guard-plugin.d.ts +0 -1
- package/dist/reconnect-guard-plugin.d.ts.map +1 -1
- package/dist/reconnect-guard-plugin.js +1 -1
- package/dist/reconnect-guard-plugin.js.map +1 -1
- package/dist/resolver.d.ts +1 -1
- package/dist/resolver.d.ts.map +1 -1
- package/dist/resolver.js +2 -2
- package/dist/resolver.js.map +1 -1
- package/dist/socket-manager.d.ts.map +1 -1
- package/dist/socket-manager.js +12 -2
- package/dist/socket-manager.js.map +1 -1
- package/dist/source-tracker.d.ts +5 -15
- package/dist/source-tracker.d.ts.map +1 -1
- package/dist/source-tracker.js +28 -66
- package/dist/source-tracker.js.map +1 -1
- package/dist/sync-service/checkpoint-result.d.ts +6 -5
- package/dist/sync-service/checkpoint-result.d.ts.map +1 -1
- package/dist/sync-service/checkpoint-result.js +9 -8
- package/dist/sync-service/checkpoint-result.js.map +1 -1
- package/dist/sync-service/index.d.ts +1 -0
- package/dist/sync-service/index.d.ts.map +1 -1
- package/dist/sync-service/index.js +8 -1
- package/dist/sync-service/index.js.map +1 -1
- package/dist/sync-service/snapshot/types.d.ts +3 -2
- package/dist/sync-service/snapshot/types.d.ts.map +1 -1
- package/dist/util/generation-wait-timeout-error.d.ts +12 -0
- package/dist/util/generation-wait-timeout-error.d.ts.map +1 -0
- package/dist/util/generation-wait-timeout-error.js +16 -0
- package/dist/util/generation-wait-timeout-error.js.map +1 -0
- package/package.json +9 -13
- package/dist/ai-service/agent/tools/apis/sdk-root-documentation.d.ts +0 -20
- package/dist/ai-service/agent/tools/apis/sdk-root-documentation.d.ts.map +0 -1
- package/dist/ai-service/agent/tools/apis/sdk-root-documentation.js +0 -284
- package/dist/ai-service/agent/tools/apis/sdk-root-documentation.js.map +0 -1
- package/dist/migration-templates/app-fullstack/client/components/hooks/use-active-page.ts +0 -73
- package/dist/migration-templates/app-fullstack/client/components/ui/area-chart.tsx +0 -312
- package/dist/migration-templates/app-fullstack/client/components/ui/bar-chart.tsx +0 -264
- package/dist/migration-templates/app-fullstack/client/components/ui/code-block-content.tsx +0 -66
- package/dist/migration-templates/app-fullstack/client/components/ui/date-range-picker.tsx +0 -255
- package/dist/migration-templates/app-fullstack/client/components/ui/file-dropzone.tsx +0 -312
- package/dist/migration-templates/app-fullstack/client/components/ui/file-input.tsx +0 -105
- package/dist/migration-templates/app-fullstack/client/components/ui/icon.tsx +0 -120
- package/dist/migration-templates/app-fullstack/client/components/ui/image.tsx +0 -56
- package/dist/migration-templates/app-fullstack/client/components/ui/line-chart.tsx +0 -264
- package/dist/migration-templates/app-fullstack/client/components/ui/link.tsx +0 -119
- package/dist/migration-templates/app-fullstack/client/components/ui/pie-chart.tsx +0 -181
- package/dist/migration-templates/app-fullstack/client/components/ui/radar-chart.tsx +0 -252
- package/dist/migration-templates/app-fullstack/client/components/ui/radial-chart.tsx +0 -250
- package/dist/refactor/entities.d.ts +0 -6
- package/dist/refactor/entities.d.ts.map +0 -1
- package/dist/refactor/entities.js +0 -65
- package/dist/refactor/entities.js.map +0 -1
- package/dist/refactor/javascript.d.ts +0 -15
- package/dist/refactor/javascript.d.ts.map +0 -1
- package/dist/refactor/javascript.js +0 -283
- package/dist/refactor/javascript.js.map +0 -1
- package/dist/rename-manager.d.ts +0 -28
- package/dist/rename-manager.d.ts.map +0 -1
- package/dist/rename-manager.js +0 -161
- package/dist/rename-manager.js.map +0 -1
package/dist/ai-service/index.js
CHANGED
|
@@ -11,6 +11,7 @@ import { npmRegistryEmitter } from "@superblocksteam/telemetry";
|
|
|
11
11
|
import { applyTestApiDenialSideEffects, buildMigrationTestApiDenialContinuationPrompt, } from "../migration/mark-api-testing-denied.js";
|
|
12
12
|
import { buildTranslationPrompt } from "../migration/translation-prompt.js";
|
|
13
13
|
import { POLICY_GATE_RUN_IN_PROGRESS_ERROR, policyGateRunRegistry, } from "../policy-gate-run-registry.js";
|
|
14
|
+
import { GenerationWaitTimeoutError } from "../util/generation-wait-timeout-error.js";
|
|
14
15
|
import { getErrorMeta, getLogger, setDefaultLogger } from "../util/logger.js";
|
|
15
16
|
import { OperationQueue } from "../util/operation-queue.js";
|
|
16
17
|
import { composeSecurityAgentPrompt, } from "./agent/prompts/build-security-scan-prompt.js";
|
|
@@ -41,6 +42,7 @@ import { ChatSessionStore } from "./chat/chat-session-store.js";
|
|
|
41
42
|
import { normalizeTextAttachmentForModel } from "./chat/utils.js";
|
|
42
43
|
import { API_MIGRATION_ORIGINS, cancelPolicyRemediation, seedPolicyRemediationChecklist, isApiMigrationOrigin, readPersistedChecklist, readRemediationRun, updateChecklistItem, advancePolicyRemediationTurn, MAX_REMEDIATION_TURNS, failPolicyRemediationDispatch, } from "./checklist/persisted-checklist-store.js";
|
|
43
44
|
import { fetchRemediationFindings } from "./checklist/remediation-findings-client.js";
|
|
45
|
+
import { recordDeferredContextClear, registerPendingContextClearSource, } from "./context-clear-metrics.js";
|
|
44
46
|
import { downloadContextFromBucketeer, downloadLatestContextFromBucketeer, restoreContextFromCheckpoint, } from "./context-download.js";
|
|
45
47
|
import { restoreConversationToCheckpoint, } from "./context-restore.js";
|
|
46
48
|
import { uploadContextToBucketeer } from "./context-upload.js";
|
|
@@ -68,6 +70,7 @@ import { adoptLegacyPerUserContextDirs } from "./llm/context-v2/storage/legacy-c
|
|
|
68
70
|
import { LocalContextStorageV2 } from "./llm/context-v2/storage/local.js";
|
|
69
71
|
import { buildRestoredContextUsageSnapshot } from "./llm/context-v2/token-tracker.js";
|
|
70
72
|
import { toJsonValue, } from "./llm/context-v2/types.js";
|
|
73
|
+
import { sanitizeFilename } from "./llm/context-v2/uniquify-filenames.js";
|
|
71
74
|
import { createLLMProvider, setSpanError } from "./llm/provider.js";
|
|
72
75
|
import { createAbortReason } from "./llm/stream/abort-reason.js";
|
|
73
76
|
import { getJwtTraceTags, traceLLM } from "./llmobs/helpers.js";
|
|
@@ -108,7 +111,8 @@ import { finalizePolicyGateUsageMetrics, policyGateFailureFromStream, recordPoli
|
|
|
108
111
|
import { finalizePromptBillingMetrics } from "./state-machine/helpers/prompt-billing-metrics.js";
|
|
109
112
|
import { setPromptDegradationMetricIdentity } from "./state-machine/helpers/prompt-degradation-metrics.js";
|
|
110
113
|
import { paywallStopAdvice } from "./state-machine/helpers/prompt-failure.js";
|
|
111
|
-
import {
|
|
114
|
+
import { orgClaimsFromJwt } from "./state-machine/helpers/prompt-org-claims.js";
|
|
115
|
+
import { CLARK_USAGE_ORIGIN, promptFailureFromStreamAbort, promptFailurePaywall, promptFailurePlatform, promptFailureUserCanceled, PROMPT_ATTEMPT_ENTRYPOINT, recordBaseCommitResolutionFailed, recordPromptAttempt, recordPromptEntryRejection, recordPromptOutcome, recordAwaitingUserHandoffDismissed, resolvePromptMetricLabels, resolvePromptOutcomeDedupeKey, resolvePromptRequestDedupeKey, setPromptOrgClaims, setPromptRequestMetricIdentity, } from "./state-machine/helpers/prompt-request-metrics.js";
|
|
112
116
|
import { catchBackgroundPeerDisconnect, StablePeer, } from "./state-machine/helpers/stable-peer.js";
|
|
113
117
|
import { transitionFrom } from "./state-machine/helpers/transition.js";
|
|
114
118
|
import { resolveUserPreferences } from "./state-machine/helpers/user-preferences.js";
|
|
@@ -116,7 +120,7 @@ import { createUserResponseMessage } from "./state-machine/helpers/user-response
|
|
|
116
120
|
import { isTaskAccessibleTo, registerBackgroundTaskTypes, resyncActiveTaskStatusesToPeer, TaskStore, wireTaskStatusPushToPeer, } from "./tasks/index.js";
|
|
117
121
|
import { TemplateRenderer } from "./template-renderer.js";
|
|
118
122
|
import { describeMigrationInferenceJwt, isUsableMigrationInferenceJwt, } from "./util/inference-jwt.js";
|
|
119
|
-
import { buildModelConfigAttributes, processLLMConfig, } from "./util/llm-config-utils.js";
|
|
123
|
+
import { buildModelConfigAttributes, processLLMConfig, processOneShotLLMConfig, } from "./util/llm-config-utils.js";
|
|
120
124
|
import { parseJwt } from "./util/parse-jwt.js";
|
|
121
125
|
import { PERMISSION_PROMPT_DELIVERY_TIMEOUT_MS } from "./util/rpc-timeout.js";
|
|
122
126
|
import { getToolCallSignature } from "./util/tool-signature.js";
|
|
@@ -512,6 +516,21 @@ export class AiService extends TracedEventEmitter {
|
|
|
512
516
|
activeGenerationTrace;
|
|
513
517
|
currentGenerationId;
|
|
514
518
|
generationStarting = false;
|
|
519
|
+
/**
|
|
520
|
+
* The context, and why, that a busy editor disconnect or connection reset
|
|
521
|
+
* left to be cleared once the turn settles (see `releaseEditorContext`).
|
|
522
|
+
* `deferredAt` is the epoch ms when the clear was deferred, logged as
|
|
523
|
+
* `pendingMs` and reported by the pending-age gauge, so a deferral that
|
|
524
|
+
* never resolves stands out from a long turn. `departedPeerId` is the
|
|
525
|
+
* editor whose departure deferred it. It is logged on every lifecycle
|
|
526
|
+
* event for correlation, not compared against the rebinding peer: the
|
|
527
|
+
* browser mints a new peerId on every page load, so inequality cannot
|
|
528
|
+
* tell a reload from a different user.
|
|
529
|
+
* Plain state rather than a per-disconnect listener:
|
|
530
|
+
* `TracedEventEmitter.on` wraps listeners, so `off`/`once` cannot remove
|
|
531
|
+
* them.
|
|
532
|
+
*/
|
|
533
|
+
pendingContextClear;
|
|
515
534
|
/** JWT-derived userId of the currently-authenticated peer, set by
|
|
516
535
|
* `notifyAuthenticatedRpc` and cleared on disconnect / peer swap.
|
|
517
536
|
* Only trusted while `authenticatedPeerId` still matches the bound
|
|
@@ -773,6 +792,8 @@ export class AiService extends TracedEventEmitter {
|
|
|
773
792
|
organizationId: config.organizationId,
|
|
774
793
|
});
|
|
775
794
|
this.startLiveEditEventForwarding();
|
|
795
|
+
this.on("generationSettled", (generationId) => this.runPendingContextClear(generationId));
|
|
796
|
+
registerPendingContextClearSource(() => this.pendingContextClear?.deferredAt);
|
|
776
797
|
// Store the wrapped logger so getLogger() can return it
|
|
777
798
|
// The wrapped logger forwards logs to the browser console when Clark logs are enabled
|
|
778
799
|
this._logger = getLogger();
|
|
@@ -2680,6 +2701,9 @@ export class AiService extends TracedEventEmitter {
|
|
|
2680
2701
|
}
|
|
2681
2702
|
async handleAiGenerate(request, inputSource, remediationContinuationSignal) {
|
|
2682
2703
|
this.getLogger().info(`[ai-service] handleAiGenerate: peerId=${this.stablePeer.peerId ?? "unknown"}`);
|
|
2704
|
+
// Before the first rejection below: a rejected prompt is an attempt and an
|
|
2705
|
+
// outcome too, and carries this request's plan, not an earlier prompt's.
|
|
2706
|
+
setPromptOrgClaims(orgClaimsFromJwt(request.jwt));
|
|
2683
2707
|
this.storeMigrationTurnCredentials(request.jwt, request.llmConfig);
|
|
2684
2708
|
if (this.clark.state === ClarkStateNames.Dead) {
|
|
2685
2709
|
recordPromptEntryRejection({
|
|
@@ -2742,8 +2766,14 @@ export class AiService extends TracedEventEmitter {
|
|
|
2742
2766
|
return;
|
|
2743
2767
|
}
|
|
2744
2768
|
}
|
|
2745
|
-
|
|
2746
|
-
|
|
2769
|
+
// Checklist batching needs review findings. Dependency-scan attribution
|
|
2770
|
+
// (inbox CVE Fix with Clark) can carry batched from the feature flag but
|
|
2771
|
+
// has no reviewFindingIds, so keep billing metadata without seeding.
|
|
2772
|
+
const reviewFindingIds = request.policyGateRemediation?.reviewFindingIds;
|
|
2773
|
+
const remediation = request.policyGateRemediation?.batched === true &&
|
|
2774
|
+
reviewFindingIds != null &&
|
|
2775
|
+
reviewFindingIds.length > 0
|
|
2776
|
+
? { ...request.policyGateRemediation, reviewFindingIds }
|
|
2747
2777
|
: undefined;
|
|
2748
2778
|
if (!remediation &&
|
|
2749
2779
|
!request.responseMetadata &&
|
|
@@ -3049,7 +3079,7 @@ export class AiService extends TracedEventEmitter {
|
|
|
3049
3079
|
thinkingEnabled: false,
|
|
3050
3080
|
}
|
|
3051
3081
|
: undefined;
|
|
3052
|
-
const { providerOptions, headers } =
|
|
3082
|
+
const { providerOptions, headers } = processOneShotLLMConfig(llmConfig, 5000, `AI Summarize API Usage (${request.apiName})`);
|
|
3053
3083
|
const llmProviderSettings = this.getLLMProviderSettings(llmConfig);
|
|
3054
3084
|
const llmProvider = createLLMProvider(llmProviderSettings, () => this.requireProvidedInferenceJwt(request.jwt, "live-edit request"), llmConfig, () => helperSystemAiAttributes({
|
|
3055
3085
|
applicationId: this.config.applicationId,
|
|
@@ -3156,7 +3186,7 @@ export class AiService extends TracedEventEmitter {
|
|
|
3156
3186
|
thinkingEnabled: false,
|
|
3157
3187
|
}
|
|
3158
3188
|
: undefined;
|
|
3159
|
-
const { providerOptions, headers } =
|
|
3189
|
+
const { providerOptions, headers } = processOneShotLLMConfig(llmConfig, 2000, `AI Summarize Error`);
|
|
3160
3190
|
const llmProviderSettings = this.getLLMProviderSettings(llmConfig);
|
|
3161
3191
|
const llmProvider = createLLMProvider(llmProviderSettings, () => this.requireProvidedInferenceJwt(request.jwt, "live-edit request"), llmConfig, () => helperSystemAiAttributes({
|
|
3162
3192
|
applicationId: this.config.applicationId,
|
|
@@ -3246,7 +3276,7 @@ export class AiService extends TracedEventEmitter {
|
|
|
3246
3276
|
thinkingEnabled: false,
|
|
3247
3277
|
}
|
|
3248
3278
|
: undefined;
|
|
3249
|
-
const { providerOptions, headers } =
|
|
3279
|
+
const { providerOptions, headers } = processOneShotLLMConfig(llmConfig, 2000, `AI Summarize Destructive Migration`);
|
|
3250
3280
|
const llmProviderSettings = this.getLLMProviderSettings(llmConfig);
|
|
3251
3281
|
const llmProvider = createLLMProvider(llmProviderSettings, () => this.requireProvidedInferenceJwt(request.jwt, "live-edit request"), llmConfig, () => helperSystemAiAttributes({
|
|
3252
3282
|
applicationId: this.config.applicationId,
|
|
@@ -3414,15 +3444,24 @@ export class AiService extends TracedEventEmitter {
|
|
|
3414
3444
|
type: "file",
|
|
3415
3445
|
data,
|
|
3416
3446
|
mediaType,
|
|
3417
|
-
|
|
3447
|
+
// Labeling skips uniquifyFilePartFilenames (stateless generateObject).
|
|
3448
|
+
// Bedrock still rejects the original filename on document.name.
|
|
3449
|
+
filename: sanitizeFilename(resolveAttachmentFileName({
|
|
3418
3450
|
fileName: attachment.fileName,
|
|
3419
3451
|
mediaType,
|
|
3420
3452
|
type: attachment.type,
|
|
3421
|
-
}),
|
|
3453
|
+
})),
|
|
3422
3454
|
};
|
|
3423
3455
|
}
|
|
3424
3456
|
if (isUploadedAttachment(attachment)) {
|
|
3425
|
-
|
|
3457
|
+
const uploaded = toUploadedAttachmentContentPart(attachment);
|
|
3458
|
+
if (uploaded.type === "file" && typeof uploaded.filename === "string") {
|
|
3459
|
+
const filename = sanitizeFilename(uploaded.filename);
|
|
3460
|
+
if (filename !== uploaded.filename) {
|
|
3461
|
+
return { ...uploaded, filename };
|
|
3462
|
+
}
|
|
3463
|
+
}
|
|
3464
|
+
return uploaded;
|
|
3426
3465
|
}
|
|
3427
3466
|
const normalizedTextAttachment = normalizeTextAttachmentForModel(attachment);
|
|
3428
3467
|
if (normalizedTextAttachment) {
|
|
@@ -3666,6 +3705,9 @@ export class AiService extends TracedEventEmitter {
|
|
|
3666
3705
|
*/
|
|
3667
3706
|
async handleAiGenerateWithQueue(request, mode, inputSource) {
|
|
3668
3707
|
this.getLogger().info(`[ai-service] handleAiGenerateWithQueue: peerId=${this.stablePeer.peerId ?? "unknown"}, mode=${mode}`);
|
|
3708
|
+
// Covers the dead rejection here and the paywall rejection on the
|
|
3709
|
+
// interrupt path; the not-busy path sets it again in handleAiGenerate.
|
|
3710
|
+
setPromptOrgClaims(orgClaimsFromJwt(request.jwt));
|
|
3669
3711
|
if (this.clark.state === ClarkStateNames.Dead) {
|
|
3670
3712
|
recordPromptEntryRejection({
|
|
3671
3713
|
dedupeKey: resolvePromptRequestDedupeKey(request),
|
|
@@ -4025,6 +4067,7 @@ export class AiService extends TracedEventEmitter {
|
|
|
4025
4067
|
return;
|
|
4026
4068
|
}
|
|
4027
4069
|
this.clark.updateContext({ promptOutcomeDedupeKey });
|
|
4070
|
+
setPromptOrgClaims(orgClaimsFromJwt(this.clark.context.jwt));
|
|
4028
4071
|
recordPromptAttempt({
|
|
4029
4072
|
coreModel: this.clark.context.llmConfig?.coreModel,
|
|
4030
4073
|
entrypoint: PROMPT_ATTEMPT_ENTRYPOINT.tool_permission_continuation,
|
|
@@ -4490,6 +4533,14 @@ export class AiService extends TracedEventEmitter {
|
|
|
4490
4533
|
// inner (and peerId) here. Any queued calls accumulated while
|
|
4491
4534
|
// disconnected flush in order as part of setInner.
|
|
4492
4535
|
this.stablePeer.setInner({ liveness, peer, peerId });
|
|
4536
|
+
// A rebind means a disconnect that deferred clearing the live context
|
|
4537
|
+
// (because the turn was still busy) no longer applies: this session
|
|
4538
|
+
// keeps reading/writing the same cached instance, so a later turn-settle
|
|
4539
|
+
// must not dispose it out from under it.
|
|
4540
|
+
this.cancelPendingContextClear({
|
|
4541
|
+
reason: "editor_rebound",
|
|
4542
|
+
reboundPeerId: peerId,
|
|
4543
|
+
});
|
|
4493
4544
|
this.getLogger().info(`[ai-service] Peer set: ${peerId}`);
|
|
4494
4545
|
// A replacement (or freshly reconnecting) peer must re-prove its
|
|
4495
4546
|
// identity via `notifyAuthenticatedRpc` before live task pushes
|
|
@@ -4773,14 +4824,19 @@ export class AiService extends TracedEventEmitter {
|
|
|
4773
4824
|
isBusy: this.isBusy(),
|
|
4774
4825
|
peerId,
|
|
4775
4826
|
});
|
|
4776
|
-
|
|
4777
|
-
|
|
4827
|
+
// A surviving editor takes over the running turn and keeps writing to
|
|
4828
|
+
// the live context, so a busy handoff schedules no clear at all.
|
|
4829
|
+
const survivor = replacement && (replacement.peerId !== peerId || liveness)
|
|
4830
|
+
? replacement
|
|
4831
|
+
: undefined;
|
|
4832
|
+
if (contextId && !(survivor && this.isBusy())) {
|
|
4833
|
+
this.releaseEditorContext(contextId, "editor_disconnect", peerId);
|
|
4778
4834
|
}
|
|
4779
|
-
if (
|
|
4780
|
-
this.getLogger().info(`[ai-service] Rebinding peer ${peerId} to surviving editor ${
|
|
4835
|
+
if (survivor) {
|
|
4836
|
+
this.getLogger().info(`[ai-service] Rebinding peer ${peerId} to surviving editor ${survivor.peerId}`);
|
|
4781
4837
|
// Same door a fresh tab comes through, so the survivor gets the state
|
|
4782
4838
|
// resync and re-auth a newly bound peer is owed.
|
|
4783
|
-
this.handleUserConnected(
|
|
4839
|
+
this.handleUserConnected(survivor.peer, survivor.peerId, survivor.liveness);
|
|
4784
4840
|
return;
|
|
4785
4841
|
}
|
|
4786
4842
|
this.clearPeerConnection();
|
|
@@ -4794,8 +4850,9 @@ export class AiService extends TracedEventEmitter {
|
|
|
4794
4850
|
resetEditorConnection() {
|
|
4795
4851
|
try {
|
|
4796
4852
|
const contextId = this.getContextId();
|
|
4797
|
-
if (contextId)
|
|
4798
|
-
this.
|
|
4853
|
+
if (contextId) {
|
|
4854
|
+
this.releaseEditorContext(contextId, "editor_connection_reset", this.stablePeer.peerId);
|
|
4855
|
+
}
|
|
4799
4856
|
}
|
|
4800
4857
|
finally {
|
|
4801
4858
|
this.pendingTaskResyncPeerIds.clear();
|
|
@@ -4805,6 +4862,115 @@ export class AiService extends TracedEventEmitter {
|
|
|
4805
4862
|
this.stablePeer.closeAndRejectPendingRequests();
|
|
4806
4863
|
}
|
|
4807
4864
|
}
|
|
4865
|
+
/**
|
|
4866
|
+
* The single place that decides what happens to the context when its
|
|
4867
|
+
* editor goes away. Idle: clear now, replacing any clear still pending
|
|
4868
|
+
* from an earlier disconnect. Busy: defer until the turn settles, so the
|
|
4869
|
+
* still-running turn keeps writing to the live `ContextV2` instance
|
|
4870
|
+
* instead of having it disposed out from under it.
|
|
4871
|
+
*/
|
|
4872
|
+
releaseEditorContext(contextId, cause, departedPeerId) {
|
|
4873
|
+
if (this.isBusy()) {
|
|
4874
|
+
this.scheduleDeferredContextClear(contextId, cause, departedPeerId);
|
|
4875
|
+
return;
|
|
4876
|
+
}
|
|
4877
|
+
this.contextManagerV2.clearContext(contextId, cause);
|
|
4878
|
+
this.cancelPendingContextClear({ reason: "cleared_immediately" });
|
|
4879
|
+
}
|
|
4880
|
+
/**
|
|
4881
|
+
* `contextId` is the one captured when the editor went away, not
|
|
4882
|
+
* re-derived at settle time: `getContextId()` depends on session/app state
|
|
4883
|
+
* that New Chat and checkpoint restore clear through their own paths, so
|
|
4884
|
+
* re-reading it could resolve a different context than the one the turn
|
|
4885
|
+
* was writing to. A second busy release before the first settles keeps the
|
|
4886
|
+
* first pending clear: the context cannot change without a rebind, and a
|
|
4887
|
+
* rebind cancels it.
|
|
4888
|
+
*/
|
|
4889
|
+
scheduleDeferredContextClear(contextId, cause, departedPeerId) {
|
|
4890
|
+
if (this.pendingContextClear) {
|
|
4891
|
+
return;
|
|
4892
|
+
}
|
|
4893
|
+
this.getLogger().info("[ai-service] Deferring Clark context clear until the turn settles", {
|
|
4894
|
+
cause,
|
|
4895
|
+
contextId,
|
|
4896
|
+
departedPeerId,
|
|
4897
|
+
event: "clark_stream.context_clear_deferred",
|
|
4898
|
+
});
|
|
4899
|
+
this.pendingContextClear = {
|
|
4900
|
+
cause,
|
|
4901
|
+
contextId,
|
|
4902
|
+
deferredAt: Date.now(),
|
|
4903
|
+
departedPeerId,
|
|
4904
|
+
};
|
|
4905
|
+
recordDeferredContextClear("deferred", cause);
|
|
4906
|
+
}
|
|
4907
|
+
/**
|
|
4908
|
+
* Runs on every `generationSettled`. That event also fires for superseded
|
|
4909
|
+
* generation IDs, so a settle that arrives while `isBusy()` is still true
|
|
4910
|
+
* leaves the clear pending. Whether an editor rebound in the meantime is
|
|
4911
|
+
* decided once, in `handleUserConnected`, which cancels the pending clear.
|
|
4912
|
+
*
|
|
4913
|
+
* There is deliberately no timeout. Every way `isBusy()` turns false emits
|
|
4914
|
+
* a later settle: the FSM sets its state before running the Idle,
|
|
4915
|
+
* AwaitingUser, or Dead handler that emits it, and a generation that never
|
|
4916
|
+
* starts emits it after resetting `generationStarting`. A clear that stays
|
|
4917
|
+
* pending therefore means a turn is still running, and clearing then is
|
|
4918
|
+
* exactly the post-disconnect write loss this deferral prevents. A turn
|
|
4919
|
+
* that never settles shows up as a growing
|
|
4920
|
+
* `superblocks.clark.context_clear.pending_age`.
|
|
4921
|
+
*/
|
|
4922
|
+
runPendingContextClear(generationId) {
|
|
4923
|
+
const pending = this.pendingContextClear;
|
|
4924
|
+
if (!pending) {
|
|
4925
|
+
return;
|
|
4926
|
+
}
|
|
4927
|
+
if (this.isBusy()) {
|
|
4928
|
+
this.getLogger().info("[ai-service] Clark context clear still deferred: a turn is running", {
|
|
4929
|
+
cause: pending.cause,
|
|
4930
|
+
contextId: pending.contextId,
|
|
4931
|
+
departedPeerId: pending.departedPeerId,
|
|
4932
|
+
event: "clark_stream.context_clear_still_deferred",
|
|
4933
|
+
generationId,
|
|
4934
|
+
pendingMs: Date.now() - pending.deferredAt,
|
|
4935
|
+
});
|
|
4936
|
+
return;
|
|
4937
|
+
}
|
|
4938
|
+
this.pendingContextClear = undefined;
|
|
4939
|
+
this.getLogger().info("[ai-service] Running deferred Clark context clear after the turn settled", {
|
|
4940
|
+
cause: pending.cause,
|
|
4941
|
+
contextId: pending.contextId,
|
|
4942
|
+
departedPeerId: pending.departedPeerId,
|
|
4943
|
+
event: "clark_stream.context_clear_ran",
|
|
4944
|
+
generationId,
|
|
4945
|
+
pendingMs: Date.now() - pending.deferredAt,
|
|
4946
|
+
});
|
|
4947
|
+
recordDeferredContextClear("ran", pending.cause);
|
|
4948
|
+
this.contextManagerV2.clearContext(pending.contextId, pending.cause);
|
|
4949
|
+
}
|
|
4950
|
+
/**
|
|
4951
|
+
* Drops a deferred clear scheduled by {@link scheduleDeferredContextClear}
|
|
4952
|
+
* without running it: on a rebind, so the live `ContextV2` instance the
|
|
4953
|
+
* reconnecting editor reads/writes stays in use, or when an idle release
|
|
4954
|
+
* clears the context immediately instead. Any rebind cancels, whoever the
|
|
4955
|
+
* user is: contexts are app-scoped, so a different user rebinding reads
|
|
4956
|
+
* and writes the same context.
|
|
4957
|
+
*/
|
|
4958
|
+
cancelPendingContextClear(cancellation) {
|
|
4959
|
+
const pending = this.pendingContextClear;
|
|
4960
|
+
if (!pending) {
|
|
4961
|
+
return;
|
|
4962
|
+
}
|
|
4963
|
+
this.pendingContextClear = undefined;
|
|
4964
|
+
recordDeferredContextClear(cancellation.reason, pending.cause);
|
|
4965
|
+
this.getLogger().info("[ai-service] Cancelled deferred Clark context clear", {
|
|
4966
|
+
...cancellation,
|
|
4967
|
+
cause: pending.cause,
|
|
4968
|
+
contextId: pending.contextId,
|
|
4969
|
+
departedPeerId: pending.departedPeerId,
|
|
4970
|
+
event: "clark_stream.context_clear_cancelled",
|
|
4971
|
+
pendingMs: Date.now() - pending.deferredAt,
|
|
4972
|
+
});
|
|
4973
|
+
}
|
|
4808
4974
|
/**
|
|
4809
4975
|
* The bound editor's transport is gone, but a reconnect for the same peer
|
|
4810
4976
|
* is already open and on its way to proving its authorization. The
|
|
@@ -5567,7 +5733,7 @@ export class AiService extends TracedEventEmitter {
|
|
|
5567
5733
|
(await this.chatSessionStore.getLatestCommitId());
|
|
5568
5734
|
await this.chatSessionStore.newChat();
|
|
5569
5735
|
try {
|
|
5570
|
-
await this.contextManagerV2.clearAllContexts();
|
|
5736
|
+
await this.contextManagerV2.clearAllContexts("new_chat");
|
|
5571
5737
|
// Persist an empty context locally and upload it to Bucketeer so
|
|
5572
5738
|
// the remote restore fallback downloads an empty conversation
|
|
5573
5739
|
// instead of the one the user just cleared (APPS-4407).
|
|
@@ -5635,7 +5801,7 @@ export class AiService extends TracedEventEmitter {
|
|
|
5635
5801
|
this.clark.updateContext({ resumeAfterAuthFailure: undefined });
|
|
5636
5802
|
this.clark.clearLastContextUsage?.();
|
|
5637
5803
|
const contextId = getContextId(this.clark, this.config);
|
|
5638
|
-
await this.contextManagerV2.clearAllContexts();
|
|
5804
|
+
await this.contextManagerV2.clearAllContexts("clear_all");
|
|
5639
5805
|
if (contextId) {
|
|
5640
5806
|
await this.contextManagerV2.persistEmptyContext(contextId);
|
|
5641
5807
|
}
|
|
@@ -5877,7 +6043,6 @@ export class AiService extends TracedEventEmitter {
|
|
|
5877
6043
|
}
|
|
5878
6044
|
}
|
|
5879
6045
|
async handleApiUpdate(update) {
|
|
5880
|
-
void this.appContext.handleApiUpdate(update.payload);
|
|
5881
6046
|
if (update.author === "clark") {
|
|
5882
6047
|
return;
|
|
5883
6048
|
}
|
|
@@ -5968,7 +6133,7 @@ export class AiService extends TracedEventEmitter {
|
|
|
5968
6133
|
if (!this.generationCompleteWaiters.delete(complete)) {
|
|
5969
6134
|
return;
|
|
5970
6135
|
}
|
|
5971
|
-
const error = new
|
|
6136
|
+
const error = new GenerationWaitTimeoutError(GENERATION_COMPLETION_WAIT_TIMEOUT_MS);
|
|
5972
6137
|
this.getLogger().warn(`[ai-service] ${error.message}`);
|
|
5973
6138
|
reject(error);
|
|
5974
6139
|
}, GENERATION_COMPLETION_WAIT_TIMEOUT_MS);
|