@superblocksteam/vite-plugin-file-sync 2.0.42-next.5 → 2.0.42-next.51
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/build-base-system-prompt.d.ts +2 -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 +31 -2
- package/dist/ai-service/agent/prompts/build-base-system-prompt.js.map +1 -1
- package/dist/ai-service/agent/subagents/apis/example-selector.d.ts +24 -0
- package/dist/ai-service/agent/subagents/apis/example-selector.d.ts.map +1 -0
- package/dist/ai-service/agent/subagents/apis/example-selector.js +104 -0
- package/dist/ai-service/agent/subagents/apis/example-selector.js.map +1 -0
- package/dist/ai-service/agent/subagents/apis/examples.d.ts +55 -0
- package/dist/ai-service/agent/subagents/apis/examples.d.ts.map +1 -0
- package/dist/ai-service/agent/subagents/apis/examples.js +1229 -0
- package/dist/ai-service/agent/subagents/apis/examples.js.map +1 -0
- package/dist/ai-service/agent/subagents/apis/generate-api-source.d.ts +83 -0
- package/dist/ai-service/agent/subagents/apis/generate-api-source.d.ts.map +1 -0
- package/dist/ai-service/agent/{apis.js → subagents/apis/generate-api-source.js} +131 -99
- package/dist/ai-service/agent/subagents/apis/generate-api-source.js.map +1 -0
- package/dist/ai-service/agent/subagents/apis/prompt-builder.d.ts +39 -0
- package/dist/ai-service/agent/subagents/apis/prompt-builder.d.ts.map +1 -0
- package/dist/ai-service/agent/subagents/apis/prompt-builder.js +115 -0
- package/dist/ai-service/agent/subagents/apis/prompt-builder.js.map +1 -0
- package/dist/ai-service/agent/{apis-static-analysis.d.ts → subagents/apis/static-analysis.d.ts} +1 -1
- package/dist/ai-service/agent/subagents/apis/static-analysis.d.ts.map +1 -0
- package/dist/ai-service/agent/{apis-static-analysis.js → subagents/apis/static-analysis.js} +3 -2
- package/dist/ai-service/agent/subagents/apis/static-analysis.js.map +1 -0
- package/dist/ai-service/agent/subagents/apis/system-prompt.d.ts +3 -0
- package/dist/ai-service/agent/subagents/apis/system-prompt.d.ts.map +1 -0
- package/dist/ai-service/agent/{apis-system-prompt.js → subagents/apis/system-prompt.js} +67 -31
- package/dist/ai-service/agent/{apis-system-prompt.js.map → subagents/apis/system-prompt.js.map} +1 -1
- package/dist/ai-service/agent/tool-message-utils.d.ts +6 -15
- package/dist/ai-service/agent/tool-message-utils.d.ts.map +1 -1
- package/dist/ai-service/agent/tool-message-utils.js +75 -248
- package/dist/ai-service/agent/tool-message-utils.js.map +1 -1
- package/dist/ai-service/agent/tools/build-add-event.d.ts +2 -4
- package/dist/ai-service/agent/tools/build-add-event.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-add-event.js +9 -8
- package/dist/ai-service/agent/tools/build-add-event.js.map +1 -1
- package/dist/ai-service/agent/tools/build-add-state-var.d.ts +2 -4
- package/dist/ai-service/agent/tools/build-add-state-var.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-add-state-var.js +6 -5
- package/dist/ai-service/agent/tools/build-add-state-var.js.map +1 -1
- package/dist/ai-service/agent/tools/build-add-timer.d.ts +2 -4
- package/dist/ai-service/agent/tools/build-add-timer.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-add-timer.js +7 -6
- package/dist/ai-service/agent/tools/build-add-timer.js.map +1 -1
- package/dist/ai-service/agent/tools/build-create-page.d.ts +2 -3
- package/dist/ai-service/agent/tools/build-create-page.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-create-page.js +11 -10
- package/dist/ai-service/agent/tools/build-create-page.js.map +1 -1
- package/dist/ai-service/agent/tools/build-debug.d.ts +1 -3
- package/dist/ai-service/agent/tools/build-debug.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-debug.js +7 -5
- package/dist/ai-service/agent/tools/build-debug.js.map +1 -1
- package/dist/ai-service/agent/tools/build-edit-file.d.ts +2 -4
- package/dist/ai-service/agent/tools/build-edit-file.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-edit-file.js +10 -7
- package/dist/ai-service/agent/tools/build-edit-file.js.map +1 -1
- package/dist/ai-service/agent/tools/build-finalize.d.ts +2 -4
- package/dist/ai-service/agent/tools/build-finalize.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-finalize.js +7 -6
- package/dist/ai-service/agent/tools/build-finalize.js.map +1 -1
- package/dist/ai-service/agent/tools/build-install-packages.d.ts +2 -4
- package/dist/ai-service/agent/tools/build-install-packages.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-install-packages.js +7 -6
- package/dist/ai-service/agent/tools/build-install-packages.js.map +1 -1
- package/dist/ai-service/agent/tools/build-list-available-components.d.ts +3 -8
- package/dist/ai-service/agent/tools/build-list-available-components.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-list-available-components.js +30 -9
- package/dist/ai-service/agent/tools/build-list-available-components.js.map +1 -1
- package/dist/ai-service/agent/tools/build-list-files.d.ts +2 -3
- package/dist/ai-service/agent/tools/build-list-files.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-list-files.js +10 -8
- package/dist/ai-service/agent/tools/build-list-files.js.map +1 -1
- package/dist/ai-service/agent/tools/build-manage-checklist.d.ts +3 -3
- 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 -8
- 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 -4
- 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 +9 -6
- package/dist/ai-service/agent/tools/build-multi-edit-file.js.map +1 -1
- package/dist/ai-service/agent/tools/build-read-files.d.ts +2 -4
- package/dist/ai-service/agent/tools/build-read-files.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-read-files.js +10 -8
- package/dist/ai-service/agent/tools/build-read-files.js.map +1 -1
- package/dist/ai-service/agent/tools/build-register-component-name.d.ts +2 -4
- package/dist/ai-service/agent/tools/build-register-component-name.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-register-component-name.js +9 -8
- package/dist/ai-service/agent/tools/build-register-component-name.js.map +1 -1
- package/dist/ai-service/agent/tools/build-rename-page.d.ts +2 -3
- package/dist/ai-service/agent/tools/build-rename-page.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-rename-page.js +6 -5
- package/dist/ai-service/agent/tools/build-rename-page.js.map +1 -1
- package/dist/ai-service/agent/tools/build-set-api-triggers.d.ts +2 -4
- package/dist/ai-service/agent/tools/build-set-api-triggers.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-set-api-triggers.js +6 -5
- package/dist/ai-service/agent/tools/build-set-api-triggers.js.map +1 -1
- package/dist/ai-service/agent/tools/build-update-state-var.d.ts +2 -3
- package/dist/ai-service/agent/tools/build-update-state-var.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-update-state-var.js +6 -5
- package/dist/ai-service/agent/tools/build-update-state-var.js.map +1 -1
- package/dist/ai-service/agent/tools/build-validate-icons.d.ts +2 -3
- package/dist/ai-service/agent/tools/build-validate-icons.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-validate-icons.js +8 -6
- package/dist/ai-service/agent/tools/build-validate-icons.js.map +1 -1
- package/dist/ai-service/agent/tools/build-write-file.d.ts +2 -4
- package/dist/ai-service/agent/tools/build-write-file.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/build-write-file.js +6 -5
- package/dist/ai-service/agent/tools/build-write-file.js.map +1 -1
- package/dist/ai-service/agent/tools/debug-cache.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/debug-cache.js +3 -0
- package/dist/ai-service/agent/tools/debug-cache.js.map +1 -1
- package/dist/ai-service/agent/tools/index.d.ts +23 -20
- package/dist/ai-service/agent/tools/index.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/index.js +23 -20
- package/dist/ai-service/agent/tools/index.js.map +1 -1
- package/dist/ai-service/agent/tools/integrations/execute-request.d.ts +25 -0
- package/dist/ai-service/agent/tools/integrations/execute-request.d.ts.map +1 -0
- package/dist/ai-service/agent/tools/integrations/execute-request.js +213 -0
- package/dist/ai-service/agent/tools/integrations/execute-request.js.map +1 -0
- package/dist/ai-service/agent/tools/integrations/index.d.ts +4 -0
- package/dist/ai-service/agent/tools/integrations/index.d.ts.map +1 -0
- package/dist/ai-service/agent/tools/integrations/index.js +4 -0
- package/dist/ai-service/agent/tools/integrations/index.js.map +1 -0
- package/dist/ai-service/agent/tools/integrations/internal.d.ts +3 -0
- package/dist/ai-service/agent/tools/integrations/internal.d.ts.map +1 -0
- package/dist/ai-service/agent/tools/integrations/internal.js +11 -0
- package/dist/ai-service/agent/tools/integrations/internal.js.map +1 -0
- package/dist/ai-service/agent/tools/integrations/metadata.d.ts +9 -0
- package/dist/ai-service/agent/tools/integrations/metadata.d.ts.map +1 -0
- package/dist/ai-service/agent/tools/integrations/metadata.js +57 -0
- package/dist/ai-service/agent/tools/integrations/metadata.js.map +1 -0
- package/dist/ai-service/agent/tools/integrations/run-code.d.ts +5 -0
- package/dist/ai-service/agent/tools/integrations/run-code.d.ts.map +1 -0
- package/dist/ai-service/agent/tools/integrations/run-code.js +32 -0
- package/dist/ai-service/agent/tools/integrations/run-code.js.map +1 -0
- package/dist/ai-service/agent/tools/study-current-app-state.d.ts +2 -4
- package/dist/ai-service/agent/tools/study-current-app-state.d.ts.map +1 -1
- package/dist/ai-service/agent/tools/study-current-app-state.js +10 -8
- package/dist/ai-service/agent/tools/study-current-app-state.js.map +1 -1
- package/dist/ai-service/agent/tools.d.ts +3 -280
- package/dist/ai-service/agent/tools.d.ts.map +1 -1
- package/dist/ai-service/agent/tools.js +68 -55
- package/dist/ai-service/agent/tools.js.map +1 -1
- package/dist/ai-service/agent/tools2/access-control.d.ts +119 -0
- package/dist/ai-service/agent/tools2/access-control.d.ts.map +1 -0
- package/dist/ai-service/agent/tools2/access-control.js +216 -0
- package/dist/ai-service/agent/tools2/access-control.js.map +1 -0
- package/dist/ai-service/agent/tools2/example.d.ts +13 -0
- package/dist/ai-service/agent/tools2/example.d.ts.map +1 -0
- package/dist/ai-service/agent/tools2/example.js +143 -0
- package/dist/ai-service/agent/tools2/example.js.map +1 -0
- package/dist/ai-service/agent/tools2/index.d.ts +16 -0
- package/dist/ai-service/agent/tools2/index.d.ts.map +1 -0
- package/dist/ai-service/agent/tools2/index.js +18 -0
- package/dist/ai-service/agent/tools2/index.js.map +1 -0
- package/dist/ai-service/agent/tools2/registry.d.ts +167 -0
- package/dist/ai-service/agent/tools2/registry.d.ts.map +1 -0
- package/dist/ai-service/agent/tools2/registry.js +305 -0
- package/dist/ai-service/agent/tools2/registry.js.map +1 -0
- package/dist/ai-service/agent/tools2/tools/ask-multi-choice.d.ts +12 -0
- package/dist/ai-service/agent/tools2/tools/ask-multi-choice.d.ts.map +1 -0
- package/dist/ai-service/agent/tools2/tools/ask-multi-choice.js +73 -0
- package/dist/ai-service/agent/tools2/tools/ask-multi-choice.js.map +1 -0
- package/dist/ai-service/agent/tools2/tools/bash.d.ts +34 -0
- package/dist/ai-service/agent/tools2/tools/bash.d.ts.map +1 -0
- package/dist/ai-service/agent/tools2/tools/bash.js +76 -0
- package/dist/ai-service/agent/tools2/tools/bash.js.map +1 -0
- package/dist/ai-service/agent/tools2/tools/edit.d.ts +14 -0
- package/dist/ai-service/agent/tools2/tools/edit.d.ts.map +1 -0
- package/dist/ai-service/agent/tools2/tools/edit.js +60 -0
- package/dist/ai-service/agent/tools2/tools/edit.js.map +1 -0
- package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts +10 -0
- package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts.map +1 -0
- package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js +66 -0
- package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js.map +1 -0
- package/dist/ai-service/agent/tools2/tools/glob.d.ts +11 -0
- package/dist/ai-service/agent/tools2/tools/glob.d.ts.map +1 -0
- package/dist/ai-service/agent/tools2/tools/glob.js +44 -0
- package/dist/ai-service/agent/tools2/tools/glob.js.map +1 -0
- package/dist/ai-service/agent/tools2/tools/grep.d.ts +21 -0
- package/dist/ai-service/agent/tools2/tools/grep.d.ts.map +1 -0
- package/dist/ai-service/agent/tools2/tools/grep.js +100 -0
- package/dist/ai-service/agent/tools2/tools/grep.js.map +1 -0
- package/dist/ai-service/agent/tools2/tools/index.d.ts +13 -0
- package/dist/ai-service/agent/tools2/tools/index.d.ts.map +1 -0
- package/dist/ai-service/agent/tools2/tools/index.js +13 -0
- package/dist/ai-service/agent/tools2/tools/index.js.map +1 -0
- package/dist/ai-service/agent/tools2/tools/read.d.ts +9 -0
- package/dist/ai-service/agent/tools2/tools/read.d.ts.map +1 -0
- package/dist/ai-service/agent/tools2/tools/read.js +43 -0
- package/dist/ai-service/agent/tools2/tools/read.js.map +1 -0
- package/dist/ai-service/agent/tools2/tools/write.d.ts +11 -0
- package/dist/ai-service/agent/tools2/tools/write.d.ts.map +1 -0
- package/dist/ai-service/agent/tools2/tools/write.js +28 -0
- package/dist/ai-service/agent/tools2/tools/write.js.map +1 -0
- package/dist/ai-service/agent/tools2/types.d.ts +148 -0
- package/dist/ai-service/agent/tools2/types.d.ts.map +1 -0
- package/dist/ai-service/agent/tools2/types.js +55 -0
- package/dist/ai-service/agent/tools2/types.js.map +1 -0
- package/dist/ai-service/agent/utils.d.ts +2 -3
- package/dist/ai-service/agent/utils.d.ts.map +1 -1
- package/dist/ai-service/agent/utils.js +14 -13
- package/dist/ai-service/agent/utils.js.map +1 -1
- package/dist/ai-service/chat/chat-session-store.d.ts +5 -0
- package/dist/ai-service/chat/chat-session-store.d.ts.map +1 -1
- package/dist/ai-service/chat/chat-session-store.js +484 -345
- package/dist/ai-service/chat/chat-session-store.js.map +1 -1
- package/dist/ai-service/chat/extract-history.d.ts +1 -0
- package/dist/ai-service/chat/extract-history.d.ts.map +1 -1
- package/dist/ai-service/chat/extract-history.js +12 -1
- package/dist/ai-service/chat/extract-history.js.map +1 -1
- package/dist/ai-service/const.d.ts +2 -1
- package/dist/ai-service/const.d.ts.map +1 -1
- package/dist/ai-service/const.js +7 -1
- package/dist/ai-service/const.js.map +1 -1
- package/dist/ai-service/index.d.ts +9 -8
- package/dist/ai-service/index.d.ts.map +1 -1
- package/dist/ai-service/index.js +7 -0
- package/dist/ai-service/index.js.map +1 -1
- package/dist/ai-service/integrations/store.d.ts +24 -1
- package/dist/ai-service/integrations/store.d.ts.map +1 -1
- package/dist/ai-service/integrations/store.js +86 -2
- package/dist/ai-service/integrations/store.js.map +1 -1
- package/dist/ai-service/llm/context/caching/constants.d.ts +27 -0
- package/dist/ai-service/llm/context/caching/constants.d.ts.map +1 -0
- package/dist/ai-service/llm/context/caching/constants.js +20 -0
- package/dist/ai-service/llm/context/caching/constants.js.map +1 -0
- package/dist/ai-service/llm/context/caching/factory.d.ts +12 -0
- package/dist/ai-service/llm/context/caching/factory.d.ts.map +1 -0
- package/dist/ai-service/llm/context/caching/factory.js +28 -0
- package/dist/ai-service/llm/context/caching/factory.js.map +1 -0
- package/dist/ai-service/llm/context/caching/index.d.ts +10 -0
- package/dist/ai-service/llm/context/caching/index.d.ts.map +1 -0
- package/dist/ai-service/llm/context/caching/index.js +9 -0
- package/dist/ai-service/llm/context/caching/index.js.map +1 -0
- package/dist/ai-service/llm/context/caching/quantized-strategy.d.ts +22 -0
- package/dist/ai-service/llm/context/caching/quantized-strategy.d.ts.map +1 -0
- package/dist/ai-service/llm/context/caching/quantized-strategy.js +48 -0
- package/dist/ai-service/llm/context/caching/quantized-strategy.js.map +1 -0
- package/dist/ai-service/llm/context/caching/strategy.d.ts +20 -0
- package/dist/ai-service/llm/context/caching/strategy.d.ts.map +1 -0
- package/dist/ai-service/llm/context/caching/strategy.js +5 -0
- package/dist/ai-service/llm/context/caching/strategy.js.map +1 -0
- package/dist/ai-service/llm/context/caching/types.d.ts +34 -0
- package/dist/ai-service/llm/context/caching/types.d.ts.map +1 -0
- package/dist/ai-service/llm/context/caching/types.js +8 -0
- package/dist/ai-service/llm/context/caching/types.js.map +1 -0
- package/dist/ai-service/llm/context/config.d.ts +51 -0
- package/dist/ai-service/llm/context/config.d.ts.map +1 -0
- package/dist/ai-service/llm/context/config.js +58 -0
- package/dist/ai-service/llm/context/config.js.map +1 -0
- package/dist/ai-service/llm/context/constants.d.ts +106 -0
- package/dist/ai-service/llm/context/constants.d.ts.map +1 -0
- package/dist/ai-service/llm/context/constants.js +106 -0
- package/dist/ai-service/llm/context/constants.js.map +1 -0
- package/dist/ai-service/llm/context/context.d.ts +207 -0
- package/dist/ai-service/llm/context/context.d.ts.map +1 -0
- package/dist/ai-service/llm/context/context.js +742 -0
- package/dist/ai-service/llm/context/context.js.map +1 -0
- package/dist/ai-service/llm/context/errors.d.ts +45 -0
- package/dist/ai-service/llm/context/errors.d.ts.map +1 -0
- package/dist/ai-service/llm/context/errors.js +56 -0
- package/dist/ai-service/llm/context/errors.js.map +1 -0
- package/dist/ai-service/llm/context/index.d.ts +13 -0
- package/dist/ai-service/llm/context/index.d.ts.map +1 -0
- package/dist/ai-service/llm/context/index.js +17 -0
- package/dist/ai-service/llm/context/index.js.map +1 -0
- package/dist/ai-service/llm/context/internal-types.d.ts +52 -0
- package/dist/ai-service/llm/context/internal-types.d.ts.map +1 -0
- package/dist/ai-service/llm/context/internal-types.js +28 -0
- package/dist/ai-service/llm/context/internal-types.js.map +1 -0
- package/dist/ai-service/llm/context/levels/index.d.ts +12 -0
- package/dist/ai-service/llm/context/levels/index.d.ts.map +1 -0
- package/dist/ai-service/llm/context/levels/index.js +12 -0
- package/dist/ai-service/llm/context/levels/index.js.map +1 -0
- package/dist/ai-service/llm/context/levels/l1.d.ts +83 -0
- package/dist/ai-service/llm/context/levels/l1.d.ts.map +1 -0
- package/dist/ai-service/llm/context/levels/l1.js +143 -0
- package/dist/ai-service/llm/context/levels/l1.js.map +1 -0
- package/dist/ai-service/llm/context/levels/l2.d.ts +60 -0
- package/dist/ai-service/llm/context/levels/l2.d.ts.map +1 -0
- package/dist/ai-service/llm/context/levels/l2.js +96 -0
- package/dist/ai-service/llm/context/levels/l2.js.map +1 -0
- package/dist/ai-service/llm/context/levels/l3.d.ts +46 -0
- package/dist/ai-service/llm/context/levels/l3.d.ts.map +1 -0
- package/dist/ai-service/llm/context/levels/l3.js +70 -0
- package/dist/ai-service/llm/context/levels/l3.js.map +1 -0
- package/dist/ai-service/llm/context/logger.d.ts +17 -0
- package/dist/ai-service/llm/context/logger.d.ts.map +1 -0
- package/dist/ai-service/llm/context/logger.js +26 -0
- package/dist/ai-service/llm/context/logger.js.map +1 -0
- package/dist/ai-service/llm/context/manager.d.ts +79 -0
- package/dist/ai-service/llm/context/manager.d.ts.map +1 -0
- package/dist/ai-service/llm/context/manager.js +136 -0
- package/dist/ai-service/llm/context/manager.js.map +1 -0
- package/dist/ai-service/llm/context/options.d.ts +43 -0
- package/dist/ai-service/llm/context/options.d.ts.map +1 -0
- package/dist/ai-service/llm/context/options.js +81 -0
- package/dist/ai-service/llm/context/options.js.map +1 -0
- package/dist/ai-service/llm/context/serialization.d.ts +56 -0
- package/dist/ai-service/llm/context/serialization.d.ts.map +1 -0
- package/dist/ai-service/llm/context/serialization.js +9 -0
- package/dist/ai-service/llm/context/serialization.js.map +1 -0
- package/dist/ai-service/llm/context/storage/index.d.ts +10 -0
- package/dist/ai-service/llm/context/storage/index.d.ts.map +1 -0
- package/dist/ai-service/llm/context/storage/index.js +2 -0
- package/dist/ai-service/llm/context/storage/index.js.map +1 -0
- package/dist/ai-service/llm/context/storage/local.d.ts +22 -0
- package/dist/ai-service/llm/context/storage/local.d.ts.map +1 -0
- package/dist/ai-service/llm/context/storage/local.js +42 -0
- package/dist/ai-service/llm/context/storage/local.js.map +1 -0
- package/dist/ai-service/llm/context/types.d.ts +125 -0
- package/dist/ai-service/llm/context/types.d.ts.map +1 -0
- package/dist/ai-service/llm/context/types.js +5 -0
- package/dist/ai-service/llm/context/types.js.map +1 -0
- package/dist/ai-service/llm/context/utils/content-compaction.d.ts +26 -0
- package/dist/ai-service/llm/context/utils/content-compaction.d.ts.map +1 -0
- package/dist/ai-service/llm/context/utils/content-compaction.js +52 -0
- package/dist/ai-service/llm/context/utils/content-compaction.js.map +1 -0
- package/dist/ai-service/llm/context/utils/index.d.ts +10 -0
- package/dist/ai-service/llm/context/utils/index.d.ts.map +1 -0
- package/dist/ai-service/llm/context/utils/index.js +10 -0
- package/dist/ai-service/llm/context/utils/index.js.map +1 -0
- package/dist/ai-service/llm/context/utils/message-utils.d.ts +34 -0
- package/dist/ai-service/llm/context/utils/message-utils.d.ts.map +1 -0
- package/dist/ai-service/llm/context/utils/message-utils.js +68 -0
- package/dist/ai-service/llm/context/utils/message-utils.js.map +1 -0
- package/dist/ai-service/llm/context/utils/token-estimation.d.ts +31 -0
- package/dist/ai-service/llm/context/utils/token-estimation.d.ts.map +1 -0
- package/dist/ai-service/llm/context/utils/token-estimation.js +52 -0
- package/dist/ai-service/llm/context/utils/token-estimation.js.map +1 -0
- package/dist/ai-service/llm/context/utils/visualization.d.ts +40 -0
- package/dist/ai-service/llm/context/utils/visualization.d.ts.map +1 -0
- package/dist/ai-service/llm/context/utils/visualization.js +516 -0
- package/dist/ai-service/llm/context/utils/visualization.js.map +1 -0
- package/dist/ai-service/llm/impl/anthropic.js +2 -2
- package/dist/ai-service/llm/impl/anthropic.js.map +1 -1
- package/dist/ai-service/llmobs/helpers.d.ts.map +1 -1
- package/dist/ai-service/llmobs/helpers.js +10 -19
- package/dist/ai-service/llmobs/helpers.js.map +1 -1
- package/dist/ai-service/llmobs/middleware/stream-text.js +4 -1
- package/dist/ai-service/llmobs/middleware/stream-text.js.map +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/library-components/ButtonPropsDocs.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/library-components/CheckboxPropsDocs.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/library-components/ColumnPropsDocs.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/library-components/ContainerPropsDocs.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/library-components/DatePickerPropsDocs.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/library-components/DropdownPropsDocs.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/library-components/IconPropsDocs.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/library-components/ImagePropsDocs.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/library-components/InputPropsDocs.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/library-components/ModalPropsDocs.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/library-components/PagePropsDocs.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/library-components/SectionPropsDocs.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/library-components/SlideoutPropsDocs.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/library-components/SwitchPropsDocs.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/library-components/TablePropsDocs.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/library-components/TextPropsDocs.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/library-typedefs/Dim.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/library-typedefs/EventFlow.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/library-typedefs/TextStyleWithVariant.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/full-examples.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-api.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-components-rules.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-custom-components.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-data-filtering.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-event-flow.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-forms.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-layouts.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-page.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-rbac.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-routes.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-state.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-theming-chakra-new.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/system-base.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/system-incremental.js +1 -1
- package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/system-specific-edit.js +1 -1
- package/dist/ai-service/state-machine/clark-fsm.d.ts +9 -5
- package/dist/ai-service/state-machine/clark-fsm.d.ts.map +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 +36 -9
- 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 +154 -104
- package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
- package/dist/ai-service/state-machine/helpers/context-id.d.ts +4 -0
- package/dist/ai-service/state-machine/helpers/context-id.d.ts.map +1 -0
- package/dist/ai-service/state-machine/helpers/context-id.js +16 -0
- package/dist/ai-service/state-machine/helpers/context-id.js.map +1 -0
- package/dist/ai-service/state-machine/helpers/peer.d.ts.map +1 -1
- package/dist/ai-service/state-machine/helpers/peer.js +7 -4
- package/dist/ai-service/state-machine/helpers/peer.js.map +1 -1
- package/dist/ai-service/state-machine/mocks.d.ts +2 -3
- package/dist/ai-service/state-machine/mocks.d.ts.map +1 -1
- package/dist/ai-service/state-machine/mocks.js.map +1 -1
- package/dist/ai-service/types.d.ts +3 -0
- package/dist/ai-service/types.d.ts.map +1 -1
- package/dist/ai-service/types.js.map +1 -1
- package/dist/ai-service/util/parse-jwt.d.ts +12 -0
- package/dist/ai-service/util/parse-jwt.d.ts.map +1 -0
- package/dist/ai-service/util/parse-jwt.js +30 -0
- package/dist/ai-service/util/parse-jwt.js.map +1 -0
- package/dist/ai-service/util/safe-stringify.d.ts +1 -1
- package/dist/ai-service/util/safe-stringify.d.ts.map +1 -1
- package/dist/ai-service/util/safe-stringify.js +3 -3
- package/dist/ai-service/util/safe-stringify.js.map +1 -1
- package/dist/binding-extraction/extract-js-identifiers.d.ts.map +1 -1
- package/dist/binding-extraction/extract-js-identifiers.js +1 -1
- package/dist/binding-extraction/extract-js-identifiers.js.map +1 -1
- package/dist/component-docs-service/index.d.ts.map +1 -1
- package/dist/component-docs-service/index.js +0 -2
- package/dist/component-docs-service/index.js.map +1 -1
- package/package.json +8 -8
- package/dist/ai-service/agent/apis-static-analysis.d.ts.map +0 -1
- package/dist/ai-service/agent/apis-static-analysis.js.map +0 -1
- package/dist/ai-service/agent/apis-system-prompt.d.ts +0 -3
- package/dist/ai-service/agent/apis-system-prompt.d.ts.map +0 -1
- package/dist/ai-service/agent/apis.d.ts +0 -55
- package/dist/ai-service/agent/apis.d.ts.map +0 -1
- package/dist/ai-service/agent/apis.js.map +0 -1
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Provider cache configuration constants.
|
|
3
|
+
*
|
|
4
|
+
* These are the parameters for Anthropic's recent models
|
|
5
|
+
* https://docs.claude.com/en/docs/build-with-claude/prompt-caching#cache-limitations
|
|
6
|
+
*/
|
|
7
|
+
export const PROVIDER_CACHE_MAX_BREAKPOINTS = 4;
|
|
8
|
+
export const PROVIDER_CACHE_MIN_CACHEABLE_TOKENS = 1024;
|
|
9
|
+
/**
|
|
10
|
+
* Provider-specific cache control options.
|
|
11
|
+
*
|
|
12
|
+
* Different LLM providers use different formats for cache control.
|
|
13
|
+
* This maps to the appropriate format for each provider.
|
|
14
|
+
*/
|
|
15
|
+
export const CACHE_BREAKPOINT_PROVIDER_OPTIONS = {
|
|
16
|
+
bedrock: { cachePoint: { type: "default" } },
|
|
17
|
+
// Vertex provider uses anthropic key
|
|
18
|
+
anthropic: { cacheControl: { type: "ephemeral" } },
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context/caching/constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAChD,MAAM,CAAC,MAAM,mCAAmC,GAAG,IAAI,CAAC;AAExD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG;IAC/C,OAAO,EAAE,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;IAC5C,qCAAqC;IACrC,SAAS,EAAE,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE;CACnD,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Factory for creating cache strategy instances.
|
|
3
|
+
*/
|
|
4
|
+
import type { CacheStrategy } from "./strategy.js";
|
|
5
|
+
import type { CacheStrategyType } from "./types.js";
|
|
6
|
+
/**
|
|
7
|
+
* Factory for creating cache strategy instances.
|
|
8
|
+
*/
|
|
9
|
+
export declare class CacheStrategyFactory {
|
|
10
|
+
static create(type?: CacheStrategyType): CacheStrategy;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context/caching/factory.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD;;GAEG;AACH,qBAAa,oBAAoB;IAC/B,MAAM,CAAC,MAAM,CACX,IAAI,GAAE,iBAA0C,GAC/C,aAAa;CASjB"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Factory for creating cache strategy instances.
|
|
3
|
+
*/
|
|
4
|
+
import { QuantizedIntervalCacheStrategy } from "./quantized-strategy.js";
|
|
5
|
+
import { DEFAULT_CACHE_STRATEGY } from "./types.js";
|
|
6
|
+
/**
|
|
7
|
+
* Factory for creating cache strategy instances.
|
|
8
|
+
*/
|
|
9
|
+
export class CacheStrategyFactory {
|
|
10
|
+
static create(type = DEFAULT_CACHE_STRATEGY) {
|
|
11
|
+
switch (type) {
|
|
12
|
+
case "none":
|
|
13
|
+
return new NoOpCacheStrategy();
|
|
14
|
+
case "quantized":
|
|
15
|
+
default:
|
|
16
|
+
return new QuantizedIntervalCacheStrategy();
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* No-op cache strategy (disables caching).
|
|
22
|
+
*/
|
|
23
|
+
class NoOpCacheStrategy {
|
|
24
|
+
findBreakpoints() {
|
|
25
|
+
return [];
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context/caching/factory.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAIpD;;GAEG;AACH,MAAM,OAAO,oBAAoB;IAC/B,MAAM,CAAC,MAAM,CACX,OAA0B,sBAAsB;QAEhD,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,MAAM;gBACT,OAAO,IAAI,iBAAiB,EAAE,CAAC;YACjC,KAAK,WAAW,CAAC;YACjB;gBACE,OAAO,IAAI,8BAA8B,EAAE,CAAC;QAChD,CAAC;IACH,CAAC;CACF;AAED;;GAEG;AACH,MAAM,iBAAiB;IACrB,eAAe;QACb,OAAO,EAAE,CAAC;IACZ,CAAC;CACF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Public API exports for caching module.
|
|
3
|
+
*/
|
|
4
|
+
export type { CacheInput, TokenCounts, CacheStrategyType } from "./types.js";
|
|
5
|
+
export { DEFAULT_CACHE_STRATEGY } from "./types.js";
|
|
6
|
+
export { type CacheStrategy } from "./strategy.js";
|
|
7
|
+
export { QuantizedIntervalCacheStrategy } from "./quantized-strategy.js";
|
|
8
|
+
export { CacheStrategyFactory } from "./factory.js";
|
|
9
|
+
export { CACHE_BREAKPOINT_PROVIDER_OPTIONS, PROVIDER_CACHE_MAX_BREAKPOINTS, PROVIDER_CACHE_MIN_CACHEABLE_TOKENS, } from "./constants.js";
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context/caching/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EACL,iCAAiC,EACjC,8BAA8B,EAC9B,mCAAmC,GACpC,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Public API exports for caching module.
|
|
3
|
+
*/
|
|
4
|
+
export { DEFAULT_CACHE_STRATEGY } from "./types.js";
|
|
5
|
+
export {} from "./strategy.js";
|
|
6
|
+
export { QuantizedIntervalCacheStrategy } from "./quantized-strategy.js";
|
|
7
|
+
export { CacheStrategyFactory } from "./factory.js";
|
|
8
|
+
export { CACHE_BREAKPOINT_PROVIDER_OPTIONS, PROVIDER_CACHE_MAX_BREAKPOINTS, PROVIDER_CACHE_MIN_CACHEABLE_TOKENS, } from "./constants.js";
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context/caching/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAsB,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EACL,iCAAiC,EACjC,8BAA8B,EAC9B,mCAAmC,GACpC,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Quantized interval cache strategy implementation.
|
|
3
|
+
*
|
|
4
|
+
* Places cache breakpoints at regular intervals to maximize cache hits
|
|
5
|
+
* while respecting provider limits.
|
|
6
|
+
*/
|
|
7
|
+
import type { CacheStrategy } from "./strategy.js";
|
|
8
|
+
import type { CacheInput } from "./types.js";
|
|
9
|
+
/**
|
|
10
|
+
* Quantized interval cache strategy.
|
|
11
|
+
*
|
|
12
|
+
* Finds optimal positions for cache breakpoints in message array.
|
|
13
|
+
*
|
|
14
|
+
* Strategy:
|
|
15
|
+
* - Always place breakpoint at system prompt (index 0) if present
|
|
16
|
+
* - Divide total tokens into intervals of minCacheableTokens
|
|
17
|
+
* - Space breakpoints evenly across intervals, respecting maxBreakpoints
|
|
18
|
+
*/
|
|
19
|
+
export declare class QuantizedIntervalCacheStrategy implements CacheStrategy {
|
|
20
|
+
findBreakpoints(input: CacheInput): number[];
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=quantized-strategy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quantized-strategy.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context/caching/quantized-strategy.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C;;;;;;;;;GASG;AACH,qBAAa,8BAA+B,YAAW,aAAa;IAClE,eAAe,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,EAAE;CA+C7C"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Quantized interval cache strategy implementation.
|
|
3
|
+
*
|
|
4
|
+
* Places cache breakpoints at regular intervals to maximize cache hits
|
|
5
|
+
* while respecting provider limits.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Quantized interval cache strategy.
|
|
9
|
+
*
|
|
10
|
+
* Finds optimal positions for cache breakpoints in message array.
|
|
11
|
+
*
|
|
12
|
+
* Strategy:
|
|
13
|
+
* - Always place breakpoint at system prompt (index 0) if present
|
|
14
|
+
* - Divide total tokens into intervals of minCacheableTokens
|
|
15
|
+
* - Space breakpoints evenly across intervals, respecting maxBreakpoints
|
|
16
|
+
*/
|
|
17
|
+
export class QuantizedIntervalCacheStrategy {
|
|
18
|
+
findBreakpoints(input) {
|
|
19
|
+
const breakpoints = [];
|
|
20
|
+
// We have maxBreakpoints total
|
|
21
|
+
let availableBreakpoints = input.options.maxBreakpoints;
|
|
22
|
+
// Always cache system prompt if present
|
|
23
|
+
if (input.tokens.system > 0) {
|
|
24
|
+
breakpoints.push(0);
|
|
25
|
+
availableBreakpoints -= 1;
|
|
26
|
+
}
|
|
27
|
+
// Calculate total tokens available for caching (exclude system from interval calc)
|
|
28
|
+
const availableTokens = input.tokens.total - input.tokens.system;
|
|
29
|
+
// How many minimum-sized intervals can we fit?
|
|
30
|
+
const intervals = Math.floor(availableTokens / input.options.minCacheableTokens);
|
|
31
|
+
// How many intervals should we skip between each breakpoint?
|
|
32
|
+
const breakpointIntervalMultiplier = Math.max(1, Math.floor(intervals / availableBreakpoints));
|
|
33
|
+
// Actual token distance between breakpoints
|
|
34
|
+
const tokensPerInterval = input.options.minCacheableTokens * breakpointIntervalMultiplier;
|
|
35
|
+
// Walk through messages and place breakpoints at regular intervals
|
|
36
|
+
let tokensUntilBreakpoint = tokensPerInterval;
|
|
37
|
+
for (let i = input.tokens.system > 0 ? 1 : 0; i < input.messages.length &&
|
|
38
|
+
breakpoints.length < input.options.maxBreakpoints; i++) {
|
|
39
|
+
tokensUntilBreakpoint -= input.messages[i].tokenCount;
|
|
40
|
+
if (tokensUntilBreakpoint <= 0) {
|
|
41
|
+
breakpoints.push(i);
|
|
42
|
+
tokensUntilBreakpoint = tokensPerInterval;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return breakpoints;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=quantized-strategy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quantized-strategy.js","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context/caching/quantized-strategy.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH;;;;;;;;;GASG;AACH,MAAM,OAAO,8BAA8B;IACzC,eAAe,CAAC,KAAiB;QAC/B,MAAM,WAAW,GAAa,EAAE,CAAC;QAEjC,+BAA+B;QAC/B,IAAI,oBAAoB,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC;QAExD,wCAAwC;QACxC,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,oBAAoB,IAAI,CAAC,CAAC;QAC5B,CAAC;QAED,mFAAmF;QACnF,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;QAEjE,+CAA+C;QAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAC1B,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,kBAAkB,CACnD,CAAC;QAEF,6DAA6D;QAC7D,MAAM,4BAA4B,GAAG,IAAI,CAAC,GAAG,CAC3C,CAAC,EACD,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,oBAAoB,CAAC,CAC7C,CAAC;QAEF,4CAA4C;QAC5C,MAAM,iBAAiB,GACrB,KAAK,CAAC,OAAO,CAAC,kBAAkB,GAAG,4BAA4B,CAAC;QAElE,mEAAmE;QACnE,IAAI,qBAAqB,GAAG,iBAAiB,CAAC;QAC9C,KACE,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACvC,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM;YACzB,WAAW,CAAC,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,cAAc,EACjD,CAAC,EAAE,EACH,CAAC;YACD,qBAAqB,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC,UAAU,CAAC;YACvD,IAAI,qBAAqB,IAAI,CAAC,EAAE,CAAC;gBAC/B,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACpB,qBAAqB,GAAG,iBAAiB,CAAC;YAC5C,CAAC;QACH,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;CACF"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cache strategy interface.
|
|
3
|
+
*/
|
|
4
|
+
import type { CacheInput } from "./types.js";
|
|
5
|
+
/**
|
|
6
|
+
* Strategy interface for cache breakpoint placement.
|
|
7
|
+
*
|
|
8
|
+
* Enables pluggable caching algorithms while maintaining
|
|
9
|
+
* consistent integration with Context lifecycle.
|
|
10
|
+
*/
|
|
11
|
+
export interface CacheStrategy {
|
|
12
|
+
/**
|
|
13
|
+
* Finds optimal cache breakpoint positions.
|
|
14
|
+
*
|
|
15
|
+
* @param input - Snapshot of context state
|
|
16
|
+
* @returns Array of message indices for cache breakpoints
|
|
17
|
+
*/
|
|
18
|
+
findBreakpoints(input: CacheInput): number[];
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=strategy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"strategy.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context/caching/strategy.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;;OAKG;IACH,eAAe,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,EAAE,CAAC;CAC9C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"strategy.js","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context/caching/strategy.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type definitions for cache strategy system.
|
|
3
|
+
*/
|
|
4
|
+
import type { TokenizedMessage } from "../internal-types.js";
|
|
5
|
+
import type { ResolvedCachingOptions } from "../options.js";
|
|
6
|
+
/**
|
|
7
|
+
* Token counts for cache calculation.
|
|
8
|
+
*/
|
|
9
|
+
export interface TokenCounts {
|
|
10
|
+
/** Total tokens across all context */
|
|
11
|
+
total: number;
|
|
12
|
+
/** System prompt tokens */
|
|
13
|
+
system: number;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Input snapshot for cache breakpoint calculation.
|
|
17
|
+
*/
|
|
18
|
+
export interface CacheInput {
|
|
19
|
+
/** All messages including system prompt */
|
|
20
|
+
messages: TokenizedMessage[];
|
|
21
|
+
/** Token counts */
|
|
22
|
+
tokens: TokenCounts;
|
|
23
|
+
/** Caching configuration */
|
|
24
|
+
options: ResolvedCachingOptions;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Available cache strategy implementations.
|
|
28
|
+
*/
|
|
29
|
+
export type CacheStrategyType = "quantized" | "none";
|
|
30
|
+
/**
|
|
31
|
+
* Default cache strategy for new contexts.
|
|
32
|
+
*/
|
|
33
|
+
export declare const DEFAULT_CACHE_STRATEGY: CacheStrategyType;
|
|
34
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context/caching/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,sCAAsC;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,2CAA2C;IAC3C,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,mBAAmB;IACnB,MAAM,EAAE,WAAW,CAAC;IACpB,4BAA4B;IAC5B,OAAO,EAAE,sBAAsB,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,WAAW,GAAG,MAAM,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,iBAA+B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/ai-service/llm/context/caching/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAgCH;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAsB,WAAW,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration loader for context management.
|
|
3
|
+
*
|
|
4
|
+
* Supports loading context configuration from environment variables.
|
|
5
|
+
* When set, environment variable config acts as the final override.
|
|
6
|
+
*/
|
|
7
|
+
import type { CacheStrategyType } from "./caching/index.js";
|
|
8
|
+
import type { ContextOptions, LoggingOptions } from "./types.js";
|
|
9
|
+
/**
|
|
10
|
+
* Configuration schema for context management.
|
|
11
|
+
*/
|
|
12
|
+
export interface ContextConfig {
|
|
13
|
+
/** Context options */
|
|
14
|
+
context?: ContextOptions;
|
|
15
|
+
/** Cache strategy to use (default: 'quantized') */
|
|
16
|
+
cacheStrategy?: CacheStrategyType;
|
|
17
|
+
/** Logging configuration */
|
|
18
|
+
logging?: LoggingOptions;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Loads context configuration from environment variable.
|
|
22
|
+
*
|
|
23
|
+
* Checks the `SUPERBLOCKS_CLARK_CONTEXT_CONFIG` environment variable for a path
|
|
24
|
+
* to a YAML configuration file. When set, this configuration acts as the final
|
|
25
|
+
* override, taking precedence over both default constants and programmatic options.
|
|
26
|
+
*
|
|
27
|
+
* Configuration hierarchy (lowest to highest priority):
|
|
28
|
+
* 1. Default constants (see constants.ts)
|
|
29
|
+
* 2. Programmatic options passed to ContextManager
|
|
30
|
+
* 3. Environment variable configuration (this function) - **final override**
|
|
31
|
+
*
|
|
32
|
+
* @returns Parsed configuration object, or null if env var not set
|
|
33
|
+
* @throws Error if file path is set but cannot be parsed
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* ```typescript
|
|
37
|
+
* // Set environment variable
|
|
38
|
+
* // SUPERBLOCKS_CLARK_CONTEXT_CONFIG=/path/to/config.yaml
|
|
39
|
+
*
|
|
40
|
+
* const config = loadContextConfigFromEnv();
|
|
41
|
+
* if (config) {
|
|
42
|
+
* const manager = new ContextManager({
|
|
43
|
+
* storage,
|
|
44
|
+
* cacheStrategy: config.cacheStrategy,
|
|
45
|
+
* logging: config.logging,
|
|
46
|
+
* });
|
|
47
|
+
* }
|
|
48
|
+
* ```
|
|
49
|
+
*/
|
|
50
|
+
export declare function loadContextConfigFromEnv(): ContextConfig | null;
|
|
51
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,sBAAsB;IACtB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,mDAAmD;IACnD,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,4BAA4B;IAC5B,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,wBAAwB,IAAI,aAAa,GAAG,IAAI,CAsB/D"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration loader for context management.
|
|
3
|
+
*
|
|
4
|
+
* Supports loading context configuration from environment variables.
|
|
5
|
+
* When set, environment variable config acts as the final override.
|
|
6
|
+
*/
|
|
7
|
+
import { readFileSync, existsSync } from "fs";
|
|
8
|
+
import { resolve } from "path";
|
|
9
|
+
import YAML from "yaml";
|
|
10
|
+
/**
|
|
11
|
+
* Loads context configuration from environment variable.
|
|
12
|
+
*
|
|
13
|
+
* Checks the `SUPERBLOCKS_CLARK_CONTEXT_CONFIG` environment variable for a path
|
|
14
|
+
* to a YAML configuration file. When set, this configuration acts as the final
|
|
15
|
+
* override, taking precedence over both default constants and programmatic options.
|
|
16
|
+
*
|
|
17
|
+
* Configuration hierarchy (lowest to highest priority):
|
|
18
|
+
* 1. Default constants (see constants.ts)
|
|
19
|
+
* 2. Programmatic options passed to ContextManager
|
|
20
|
+
* 3. Environment variable configuration (this function) - **final override**
|
|
21
|
+
*
|
|
22
|
+
* @returns Parsed configuration object, or null if env var not set
|
|
23
|
+
* @throws Error if file path is set but cannot be parsed
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```typescript
|
|
27
|
+
* // Set environment variable
|
|
28
|
+
* // SUPERBLOCKS_CLARK_CONTEXT_CONFIG=/path/to/config.yaml
|
|
29
|
+
*
|
|
30
|
+
* const config = loadContextConfigFromEnv();
|
|
31
|
+
* if (config) {
|
|
32
|
+
* const manager = new ContextManager({
|
|
33
|
+
* storage,
|
|
34
|
+
* cacheStrategy: config.cacheStrategy,
|
|
35
|
+
* logging: config.logging,
|
|
36
|
+
* });
|
|
37
|
+
* }
|
|
38
|
+
* ```
|
|
39
|
+
*/
|
|
40
|
+
export function loadContextConfigFromEnv() {
|
|
41
|
+
const envPath = process.env.SUPERBLOCKS_CLARK_CONTEXT_CONFIG;
|
|
42
|
+
if (!envPath) {
|
|
43
|
+
return null;
|
|
44
|
+
}
|
|
45
|
+
const configPath = resolve(envPath);
|
|
46
|
+
if (!existsSync(configPath)) {
|
|
47
|
+
throw new Error(`SUPERBLOCKS_CLARK_CONTEXT_CONFIG points to non-existent file: ${configPath}`);
|
|
48
|
+
}
|
|
49
|
+
try {
|
|
50
|
+
const fileContent = readFileSync(configPath, "utf-8");
|
|
51
|
+
const config = YAML.parse(fileContent);
|
|
52
|
+
return config;
|
|
53
|
+
}
|
|
54
|
+
catch (error) {
|
|
55
|
+
throw new Error(`Failed to parse context config at ${configPath}: ${error}`);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,IAAI,MAAM,MAAM,CAAC;AAgBxB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,wBAAwB;IACtC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC;IAC7D,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACpC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CACb,iEAAiE,UAAU,EAAE,CAC9E,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAkB,CAAC;QACxD,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,qCAAqC,UAAU,KAAK,KAAK,EAAE,CAC5D,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Context Management Constants
|
|
3
|
+
*
|
|
4
|
+
* These constants configure the token budget management and compaction behavior
|
|
5
|
+
* for LLM context windows. The system uses a three-level compaction strategy
|
|
6
|
+
* to maintain conversation history within token limits while preserving
|
|
7
|
+
* the most relevant information.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Maximum context size in tokens.
|
|
11
|
+
*
|
|
12
|
+
* Based on Vertex AI limits (200k tokens max context, 9k tokens max response),
|
|
13
|
+
* we set a conservative limit of 185k tokens to ensure safety margin for
|
|
14
|
+
* response generation and overhead.
|
|
15
|
+
*/
|
|
16
|
+
export declare const DEFAULT_MAX_CONTEXT_TOKENS = 185000;
|
|
17
|
+
/**
|
|
18
|
+
* Token count threshold that triggers automatic compaction as a fraction of max context size.
|
|
19
|
+
*
|
|
20
|
+
* When context size exceeds this threshold, the compaction algorithm
|
|
21
|
+
* demotes older turns to more compressed levels and drops the oldest
|
|
22
|
+
* content if necessary.
|
|
23
|
+
*
|
|
24
|
+
* Defined as a fraction of max context size.
|
|
25
|
+
*/
|
|
26
|
+
export declare const DEFAULT_COMPACTION_TRIGGER_FRACTION = 0.9;
|
|
27
|
+
/**
|
|
28
|
+
* Target token count after compaction completes as a fraction of max context size.
|
|
29
|
+
*
|
|
30
|
+
* The compaction algorithm aims to reduce context size to this target,
|
|
31
|
+
* leaving headroom for new content before the next compaction cycle.
|
|
32
|
+
*
|
|
33
|
+
* Defined as a fraction of max context size.
|
|
34
|
+
*/
|
|
35
|
+
export declare const DEFAULT_COMPACTION_TARGET_FRACTION = 0.8;
|
|
36
|
+
/**
|
|
37
|
+
* Budget allocation for Level 1 (L1) turns as fraction of compaction target.
|
|
38
|
+
*
|
|
39
|
+
* L1 turns represent the most recent conversation turns with full detail:
|
|
40
|
+
* - All steps preserved
|
|
41
|
+
* - Complete tool calls and results
|
|
42
|
+
* - Full message content
|
|
43
|
+
*
|
|
44
|
+
* 50% allocation ensures recent context has maximum fidelity.
|
|
45
|
+
*/
|
|
46
|
+
export declare const DEFAULT_L1_TARGET_FRACTION = 0.5;
|
|
47
|
+
/**
|
|
48
|
+
* Budget allocation for Level 2 (L2) turns as fraction of compaction target.
|
|
49
|
+
*
|
|
50
|
+
* L2 turns use moderate compression:
|
|
51
|
+
* - Steps flattened into single response array
|
|
52
|
+
* - Tool call inputs replaced with empty objects
|
|
53
|
+
* - Tool results marked as "[tool output trimmed]"
|
|
54
|
+
*
|
|
55
|
+
* 35% allocation balances history depth with compression.
|
|
56
|
+
*/
|
|
57
|
+
export declare const DEFAULT_L2_TARGET_FRACTION = 0.35;
|
|
58
|
+
/**
|
|
59
|
+
* Initial estimate for character-to-token conversion ratio.
|
|
60
|
+
*
|
|
61
|
+
* This is a rough heuristic that gets refined during usage based on actual
|
|
62
|
+
* token counts from the LLM provider. Typical values range from 2-5 depending
|
|
63
|
+
* on the model and text characteristics.
|
|
64
|
+
*
|
|
65
|
+
* Starting value of 3 is conservative and works reasonably for most English text.
|
|
66
|
+
*/
|
|
67
|
+
export declare const DEFAULT_INITIAL_CHARS_PER_TOKEN_ESTIMATE = 3;
|
|
68
|
+
/**
|
|
69
|
+
* Minimum token usage required before updating charactersPerToken estimate.
|
|
70
|
+
*
|
|
71
|
+
* Small token counts (e.g., from cached responses) can produce wildly
|
|
72
|
+
* inaccurate estimates. We only update the estimate when we have substantial
|
|
73
|
+
* token usage to work with.
|
|
74
|
+
*/
|
|
75
|
+
export declare const DEFAULT_MIN_TOKENS_FOR_ESTIMATE_UPDATE = 1000;
|
|
76
|
+
/**
|
|
77
|
+
* Valid range for charactersPerToken estimates [min, max].
|
|
78
|
+
*
|
|
79
|
+
* Estimates outside this range are rejected as unreasonable, preventing
|
|
80
|
+
* bugs or edge cases from corrupting the token counting logic.
|
|
81
|
+
*/
|
|
82
|
+
export declare const DEFAULT_CHARACTERS_PER_TOKEN_MIN = 2;
|
|
83
|
+
export declare const DEFAULT_CHARACTERS_PER_TOKEN_MAX = 5;
|
|
84
|
+
/**
|
|
85
|
+
* Number of steps to keep in active turn when compacting.
|
|
86
|
+
*
|
|
87
|
+
* At compaction time older steps are split into a separate turn to allows
|
|
88
|
+
* them to be compacted to L2. This helps avoid context overflow for long turns.
|
|
89
|
+
*
|
|
90
|
+
* Value of 3 ensures recent tool-use loops stay in high-fidelity L1 while
|
|
91
|
+
* older interactions move to compressed L2.
|
|
92
|
+
*
|
|
93
|
+
* When aggressive compaction is needed, only the last step is kept in L1.
|
|
94
|
+
*/
|
|
95
|
+
export declare const DEFAULT_PRIORITIZED_STEPS = 3;
|
|
96
|
+
/**
|
|
97
|
+
* If false, an error will be thrown if maxTokens is exceeded after compaction.
|
|
98
|
+
*/
|
|
99
|
+
export declare const DEFAULT_ALLOW_OVERFLOW = true;
|
|
100
|
+
/**
|
|
101
|
+
* Default settings for debug/visualization output.
|
|
102
|
+
*/
|
|
103
|
+
export declare const DEFAULT_VISUALIZATION_WIDTH = 120;
|
|
104
|
+
export declare const DEFAULT_VISUALIZATION_MODE = "summary";
|
|
105
|
+
export declare const DEFAULT_VERBOSE_LOGGING_ENABLED = true;
|
|
106
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/llm/context/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,SAAU,CAAC;AAElD;;;;;;;;GAQG;AACH,eAAO,MAAM,mCAAmC,MAAM,CAAC;AAEvD;;;;;;;GAOG;AACH,eAAO,MAAM,kCAAkC,MAAM,CAAC;AAEtD;;;;;;;;;GASG;AACH,eAAO,MAAM,0BAA0B,MAAM,CAAC;AAE9C;;;;;;;;;GASG;AACH,eAAO,MAAM,0BAA0B,OAAO,CAAC;AAE/C;;;;;;;;GAQG;AACH,eAAO,MAAM,wCAAwC,IAAI,CAAC;AAE1D;;;;;;GAMG;AACH,eAAO,MAAM,sCAAsC,OAAO,CAAC;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,gCAAgC,IAAI,CAAC;AAClD,eAAO,MAAM,gCAAgC,IAAI,CAAC;AAElD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAE3C;;GAEG;AACH,eAAO,MAAM,sBAAsB,OAAO,CAAC;AAE3C;;GAEG;AAEH,eAAO,MAAM,2BAA2B,MAAM,CAAC;AAC/C,eAAO,MAAM,0BAA0B,YAAY,CAAC;AACpD,eAAO,MAAM,+BAA+B,OAAO,CAAC"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Context Management Constants
|
|
3
|
+
*
|
|
4
|
+
* These constants configure the token budget management and compaction behavior
|
|
5
|
+
* for LLM context windows. The system uses a three-level compaction strategy
|
|
6
|
+
* to maintain conversation history within token limits while preserving
|
|
7
|
+
* the most relevant information.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Maximum context size in tokens.
|
|
11
|
+
*
|
|
12
|
+
* Based on Vertex AI limits (200k tokens max context, 9k tokens max response),
|
|
13
|
+
* we set a conservative limit of 185k tokens to ensure safety margin for
|
|
14
|
+
* response generation and overhead.
|
|
15
|
+
*/
|
|
16
|
+
export const DEFAULT_MAX_CONTEXT_TOKENS = 185_000;
|
|
17
|
+
/**
|
|
18
|
+
* Token count threshold that triggers automatic compaction as a fraction of max context size.
|
|
19
|
+
*
|
|
20
|
+
* When context size exceeds this threshold, the compaction algorithm
|
|
21
|
+
* demotes older turns to more compressed levels and drops the oldest
|
|
22
|
+
* content if necessary.
|
|
23
|
+
*
|
|
24
|
+
* Defined as a fraction of max context size.
|
|
25
|
+
*/
|
|
26
|
+
export const DEFAULT_COMPACTION_TRIGGER_FRACTION = 0.9;
|
|
27
|
+
/**
|
|
28
|
+
* Target token count after compaction completes as a fraction of max context size.
|
|
29
|
+
*
|
|
30
|
+
* The compaction algorithm aims to reduce context size to this target,
|
|
31
|
+
* leaving headroom for new content before the next compaction cycle.
|
|
32
|
+
*
|
|
33
|
+
* Defined as a fraction of max context size.
|
|
34
|
+
*/
|
|
35
|
+
export const DEFAULT_COMPACTION_TARGET_FRACTION = 0.8;
|
|
36
|
+
/**
|
|
37
|
+
* Budget allocation for Level 1 (L1) turns as fraction of compaction target.
|
|
38
|
+
*
|
|
39
|
+
* L1 turns represent the most recent conversation turns with full detail:
|
|
40
|
+
* - All steps preserved
|
|
41
|
+
* - Complete tool calls and results
|
|
42
|
+
* - Full message content
|
|
43
|
+
*
|
|
44
|
+
* 50% allocation ensures recent context has maximum fidelity.
|
|
45
|
+
*/
|
|
46
|
+
export const DEFAULT_L1_TARGET_FRACTION = 0.5;
|
|
47
|
+
/**
|
|
48
|
+
* Budget allocation for Level 2 (L2) turns as fraction of compaction target.
|
|
49
|
+
*
|
|
50
|
+
* L2 turns use moderate compression:
|
|
51
|
+
* - Steps flattened into single response array
|
|
52
|
+
* - Tool call inputs replaced with empty objects
|
|
53
|
+
* - Tool results marked as "[tool output trimmed]"
|
|
54
|
+
*
|
|
55
|
+
* 35% allocation balances history depth with compression.
|
|
56
|
+
*/
|
|
57
|
+
export const DEFAULT_L2_TARGET_FRACTION = 0.35;
|
|
58
|
+
/**
|
|
59
|
+
* Initial estimate for character-to-token conversion ratio.
|
|
60
|
+
*
|
|
61
|
+
* This is a rough heuristic that gets refined during usage based on actual
|
|
62
|
+
* token counts from the LLM provider. Typical values range from 2-5 depending
|
|
63
|
+
* on the model and text characteristics.
|
|
64
|
+
*
|
|
65
|
+
* Starting value of 3 is conservative and works reasonably for most English text.
|
|
66
|
+
*/
|
|
67
|
+
export const DEFAULT_INITIAL_CHARS_PER_TOKEN_ESTIMATE = 3;
|
|
68
|
+
/**
|
|
69
|
+
* Minimum token usage required before updating charactersPerToken estimate.
|
|
70
|
+
*
|
|
71
|
+
* Small token counts (e.g., from cached responses) can produce wildly
|
|
72
|
+
* inaccurate estimates. We only update the estimate when we have substantial
|
|
73
|
+
* token usage to work with.
|
|
74
|
+
*/
|
|
75
|
+
export const DEFAULT_MIN_TOKENS_FOR_ESTIMATE_UPDATE = 1000;
|
|
76
|
+
/**
|
|
77
|
+
* Valid range for charactersPerToken estimates [min, max].
|
|
78
|
+
*
|
|
79
|
+
* Estimates outside this range are rejected as unreasonable, preventing
|
|
80
|
+
* bugs or edge cases from corrupting the token counting logic.
|
|
81
|
+
*/
|
|
82
|
+
export const DEFAULT_CHARACTERS_PER_TOKEN_MIN = 2;
|
|
83
|
+
export const DEFAULT_CHARACTERS_PER_TOKEN_MAX = 5;
|
|
84
|
+
/**
|
|
85
|
+
* Number of steps to keep in active turn when compacting.
|
|
86
|
+
*
|
|
87
|
+
* At compaction time older steps are split into a separate turn to allows
|
|
88
|
+
* them to be compacted to L2. This helps avoid context overflow for long turns.
|
|
89
|
+
*
|
|
90
|
+
* Value of 3 ensures recent tool-use loops stay in high-fidelity L1 while
|
|
91
|
+
* older interactions move to compressed L2.
|
|
92
|
+
*
|
|
93
|
+
* When aggressive compaction is needed, only the last step is kept in L1.
|
|
94
|
+
*/
|
|
95
|
+
export const DEFAULT_PRIORITIZED_STEPS = 3;
|
|
96
|
+
/**
|
|
97
|
+
* If false, an error will be thrown if maxTokens is exceeded after compaction.
|
|
98
|
+
*/
|
|
99
|
+
export const DEFAULT_ALLOW_OVERFLOW = true;
|
|
100
|
+
/**
|
|
101
|
+
* Default settings for debug/visualization output.
|
|
102
|
+
*/
|
|
103
|
+
export const DEFAULT_VISUALIZATION_WIDTH = 120;
|
|
104
|
+
export const DEFAULT_VISUALIZATION_MODE = "summary";
|
|
105
|
+
export const DEFAULT_VERBOSE_LOGGING_ENABLED = true;
|
|
106
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/ai-service/llm/context/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,OAAO,CAAC;AAElD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,mCAAmC,GAAG,GAAG,CAAC;AAEvD;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,GAAG,CAAC;AAEtD;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAAG,CAAC;AAE9C;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,CAAC;AAE/C;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,wCAAwC,GAAG,CAAC,CAAC;AAE1D;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,sCAAsC,GAAG,IAAI,CAAC;AAE3D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC;AAClD,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC;AAElD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC;AAE3C;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AAE3C;;GAEG;AAEH,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,CAAC;AAC/C,MAAM,CAAC,MAAM,0BAA0B,GAAG,SAAS,CAAC;AACpD,MAAM,CAAC,MAAM,+BAA+B,GAAG,IAAI,CAAC"}
|