veryfront 0.1.49 → 0.1.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/esm/_dnt.polyfills.d.ts +8 -7
- package/esm/_dnt.polyfills.d.ts.map +1 -1
- package/esm/_dnt.polyfills.js +121 -109
- package/esm/cli/commands/dev/command.d.ts.map +1 -1
- package/esm/cli/commands/dev/command.js +0 -1
- package/esm/cli/commands/generate/integration-generator.d.ts +8 -0
- package/esm/cli/commands/generate/integration-generator.d.ts.map +1 -1
- package/esm/cli/commands/generate/integration-generator.js +322 -34
- package/esm/cli/commands/install/types.d.ts +2 -2
- package/esm/cli/commands/serve/handler.d.ts +1 -1
- package/esm/cli/commands/start/command.d.ts.map +1 -1
- package/esm/cli/commands/start/command.js +0 -1
- package/esm/cli/commands/studio/handler.d.ts +1 -1
- package/esm/cli/mcp/remote-file-tools.d.ts +6 -6
- package/esm/cli/mcp/server.d.ts.map +1 -1
- package/esm/cli/mcp/server.js +0 -2
- package/esm/cli/mcp/tools.d.ts +2 -2
- package/esm/cli/shared/server-startup.d.ts +0 -1
- package/esm/cli/shared/server-startup.d.ts.map +1 -1
- package/esm/cli/shared/server-startup.js +0 -1
- package/esm/cli/templates/index.d.ts.map +1 -1
- package/esm/cli/templates/index.js +1 -16
- package/esm/cli/templates/manifest.js +12 -12
- package/esm/cli/ui/ansi.js +1 -1
- package/esm/deno.js +1 -1
- package/esm/src/agent/ai-defaults.d.ts +0 -95
- package/esm/src/agent/ai-defaults.d.ts.map +1 -1
- package/esm/src/agent/ai-defaults.js +4 -56
- package/esm/src/agent/chat-handler.d.ts +1 -1
- package/esm/src/agent/chat-handler.d.ts.map +1 -1
- package/esm/src/agent/chat-handler.js +30 -14
- package/esm/src/agent/factory.d.ts.map +1 -1
- package/esm/src/agent/factory.js +13 -5
- package/esm/src/agent/index.d.ts +3 -10
- package/esm/src/agent/index.d.ts.map +1 -1
- package/esm/src/agent/index.js +2 -7
- package/esm/src/agent/memory/redis.d.ts.map +1 -1
- package/esm/src/agent/memory/redis.js +3 -2
- package/esm/src/agent/react/use-agent.d.ts +2 -2
- package/esm/src/agent/react/use-agent.d.ts.map +1 -1
- package/esm/src/agent/react/use-chat/browser-inference/browser-engine.d.ts +2 -1
- package/esm/src/agent/react/use-chat/browser-inference/browser-engine.d.ts.map +1 -1
- package/esm/src/agent/react/use-chat/browser-inference/browser-engine.js +9 -1
- package/esm/src/agent/react/use-chat/browser-inference/types.d.ts +7 -6
- package/esm/src/agent/react/use-chat/browser-inference/types.d.ts.map +1 -1
- package/esm/src/agent/react/use-chat/browser-inference/worker-client.d.ts +2 -1
- package/esm/src/agent/react/use-chat/browser-inference/worker-client.d.ts.map +1 -1
- package/esm/src/agent/react/use-chat/streaming/handler.d.ts.map +1 -1
- package/esm/src/agent/react/use-chat/streaming/handler.js +11 -5
- package/esm/src/agent/react/use-chat/types.d.ts +3 -2
- package/esm/src/agent/react/use-chat/types.d.ts.map +1 -1
- package/esm/src/agent/react/use-chat/use-chat.js +4 -4
- package/esm/src/agent/react/use-voice-input.js +2 -2
- package/esm/src/agent/runtime/index.d.ts.map +1 -1
- package/esm/src/agent/runtime/index.js +16 -10
- package/esm/src/agent/runtime/input-utils.d.ts.map +1 -1
- package/esm/src/agent/runtime/input-utils.js +2 -1
- package/esm/src/agent/runtime/model-resolution.d.ts +4 -0
- package/esm/src/agent/runtime/model-resolution.d.ts.map +1 -0
- package/esm/src/agent/runtime/model-resolution.js +10 -0
- package/esm/src/agent/runtime/tool-helpers.d.ts.map +1 -1
- package/esm/src/agent/runtime/tool-helpers.js +3 -1
- package/esm/src/agent/types.d.ts +12 -2
- package/esm/src/agent/types.d.ts.map +1 -1
- package/esm/src/agent/types.js +4 -1
- package/esm/src/build/bundler/code-splitter/entry-points.d.ts +2 -1
- package/esm/src/build/bundler/code-splitter/entry-points.d.ts.map +1 -1
- package/esm/src/build/bundler/code-splitter/index.d.ts.map +1 -1
- package/esm/src/build/bundler/code-splitter/index.js +4 -2
- package/esm/src/build/compiler/mdx-compiler/directory-compiler.d.ts +0 -1
- package/esm/src/build/compiler/mdx-compiler/directory-compiler.d.ts.map +1 -1
- package/esm/src/build/compiler/mdx-compiler/directory-compiler.js +1 -1
- package/esm/src/build/compiler/mdx-compiler/frontmatter-parser.d.ts +2 -1
- package/esm/src/build/compiler/mdx-compiler/frontmatter-parser.d.ts.map +1 -1
- package/esm/src/build/compiler/mdx-compiler/frontmatter-parser.js +4 -2
- package/esm/src/build/compiler/mdx-compiler/mdx-processor.d.ts +2 -1
- package/esm/src/build/compiler/mdx-compiler/mdx-processor.d.ts.map +1 -1
- package/esm/src/build/compiler/mdx-compiler/types.d.ts +2 -1
- package/esm/src/build/compiler/mdx-compiler/types.d.ts.map +1 -1
- package/esm/src/build/compiler/mdx-compiler/validator.d.ts.map +1 -1
- package/esm/src/build/compiler/mdx-compiler/validator.js +4 -3
- package/esm/src/build/compiler/mdx-compiler/watcher.js +2 -1
- package/esm/src/build/compiler/mdx-to-js.d.ts +2 -1
- package/esm/src/build/compiler/mdx-to-js.d.ts.map +1 -1
- package/esm/src/build/config/environment.d.ts.map +1 -1
- package/esm/src/build/config/environment.js +8 -2
- package/esm/src/build/embedded/preset.d.ts +2 -1
- package/esm/src/build/embedded/preset.d.ts.map +1 -1
- package/esm/src/build/embedded/preset.js +6 -6
- package/esm/src/build/production-build/asset-generation.js +2 -2
- package/esm/src/build/production-build/build/build-cleanup.d.ts.map +1 -1
- package/esm/src/build/production-build/build/build-cleanup.js +2 -9
- package/esm/src/build/production-build/client-runtime.d.ts.map +1 -1
- package/esm/src/build/production-build/client-runtime.js +6 -4
- package/esm/src/build/production-build/templates.d.ts.map +1 -1
- package/esm/src/build/production-build/templates.js +2 -2
- package/esm/src/cache/backends/api.d.ts.map +1 -1
- package/esm/src/cache/backends/api.js +13 -5
- package/esm/src/cache/backends/disk.d.ts.map +1 -1
- package/esm/src/cache/backends/disk.js +2 -1
- package/esm/src/cache/backends/factory.d.ts.map +1 -1
- package/esm/src/cache/backends/factory.js +2 -1
- package/esm/src/cache/backends/memory.d.ts.map +1 -1
- package/esm/src/cache/backends/memory.js +5 -3
- package/esm/src/cache/cache-key-builder.d.ts.map +1 -1
- package/esm/src/cache/cache-key-builder.js +7 -3
- package/esm/src/cache/config-hash.d.ts +2 -1
- package/esm/src/cache/config-hash.d.ts.map +1 -1
- package/esm/src/cache/dependency-graph.js +2 -1
- package/esm/src/cache/distributed-cache-init.d.ts +2 -1
- package/esm/src/cache/distributed-cache-init.d.ts.map +1 -1
- package/esm/src/cache/keys/builders/file.d.ts.map +1 -1
- package/esm/src/cache/keys/builders/file.js +4 -1
- package/esm/src/cache/keys/builders/render.d.ts.map +1 -1
- package/esm/src/cache/keys/builders/render.js +7 -2
- package/esm/src/cache/registry.d.ts.map +1 -1
- package/esm/src/cache/registry.js +7 -2
- package/esm/src/config/environment-config.d.ts.map +1 -1
- package/esm/src/config/environment-config.js +10 -2
- package/esm/src/config/loader.d.ts.map +1 -1
- package/esm/src/config/loader.js +20 -4
- package/esm/src/config/runtime-config.d.ts.map +1 -1
- package/esm/src/config/runtime-config.js +3 -1
- package/esm/src/data/data-fetcher.d.ts +1 -1
- package/esm/src/data/data-fetcher.d.ts.map +1 -1
- package/esm/src/data/data-fetcher.js +1 -2
- package/esm/src/data/static-data-fetcher.js +2 -2
- package/esm/src/discovery/file-discovery.d.ts +0 -9
- package/esm/src/discovery/file-discovery.d.ts.map +1 -1
- package/esm/src/discovery/file-discovery.js +3 -2
- package/esm/src/discovery/handlers/skill-handler.d.ts +3 -2
- package/esm/src/discovery/handlers/skill-handler.d.ts.map +1 -1
- package/esm/src/discovery/import-rewriter.d.ts.map +1 -1
- package/esm/src/discovery/import-rewriter.js +8 -5
- package/esm/src/discovery/transpiler.d.ts.map +1 -1
- package/esm/src/discovery/transpiler.js +8 -2
- package/esm/src/embedding/chunk.d.ts.map +1 -1
- package/esm/src/embedding/chunk.js +6 -2
- package/esm/src/embedding/embedding.d.ts +0 -1
- package/esm/src/embedding/embedding.d.ts.map +1 -1
- package/esm/src/embedding/embedding.js +4 -3
- package/esm/src/embedding/index.d.ts +4 -4
- package/esm/src/embedding/index.d.ts.map +1 -1
- package/esm/src/embedding/index.js +3 -3
- package/esm/src/embedding/model-resolution.d.ts +4 -0
- package/esm/src/embedding/model-resolution.d.ts.map +1 -0
- package/esm/src/embedding/model-resolution.js +16 -0
- package/esm/src/embedding/rag-store.d.ts +27 -0
- package/esm/src/embedding/rag-store.d.ts.map +1 -0
- package/esm/src/embedding/{upload-store.js → rag-store.js} +153 -48
- package/esm/src/embedding/react/use-uploads.d.ts +2 -2
- package/esm/src/embedding/react/use-uploads.d.ts.map +1 -1
- package/esm/src/embedding/react/use-uploads.js +6 -3
- package/esm/src/embedding/resolve.d.ts +2 -1
- package/esm/src/embedding/resolve.d.ts.map +1 -1
- package/esm/src/embedding/resolve.js +4 -0
- package/esm/src/embedding/types.d.ts +27 -16
- package/esm/src/embedding/types.d.ts.map +1 -1
- package/esm/src/embedding/upload-handler.d.ts +6 -4
- package/esm/src/embedding/upload-handler.d.ts.map +1 -1
- package/esm/src/embedding/upload-handler.js +81 -7
- package/esm/src/embedding/upload-loader.js +1 -1
- package/esm/src/embedding/veryfront-cloud/provider.d.ts +3 -0
- package/esm/src/embedding/veryfront-cloud/provider.d.ts.map +1 -0
- package/esm/src/embedding/veryfront-cloud/provider.js +30 -0
- package/esm/src/embedding/veryfront-cloud/rag-store.d.ts +7 -0
- package/esm/src/embedding/veryfront-cloud/rag-store.d.ts.map +1 -0
- package/esm/src/embedding/veryfront-cloud/rag-store.js +360 -0
- package/esm/src/errors/catalog/general-errors.d.ts.map +1 -1
- package/esm/src/errors/catalog/general-errors.js +5 -0
- package/esm/src/errors/error-context.d.ts.map +1 -1
- package/esm/src/errors/error-context.js +3 -0
- package/esm/src/errors/error-handlers.d.ts.map +1 -1
- package/esm/src/errors/error-handlers.js +3 -2
- package/esm/src/errors/error-registry.d.ts +2 -0
- package/esm/src/errors/error-registry.d.ts.map +1 -1
- package/esm/src/errors/error-registry.js +8 -0
- package/esm/src/errors/index.d.ts +1 -1
- package/esm/src/errors/index.d.ts.map +1 -1
- package/esm/src/errors/index.js +1 -1
- package/esm/src/errors/logging.d.ts.map +1 -1
- package/esm/src/errors/logging.js +8 -6
- package/esm/src/errors/types.d.ts +2 -0
- package/esm/src/errors/types.d.ts.map +1 -1
- package/esm/src/errors/types.js +1 -1
- package/esm/src/errors/veryfront-error.d.ts +2 -6
- package/esm/src/errors/veryfront-error.d.ts.map +1 -1
- package/esm/src/errors/veryfront-error.js +0 -1
- package/esm/src/html/dev-scripts.d.ts +2 -1
- package/esm/src/html/dev-scripts.d.ts.map +1 -1
- package/esm/src/html/hydration-script-builder/dev-error-logger.js +1 -1
- package/esm/src/html/hydration-script-builder/dev-scripts.d.ts +2 -1
- package/esm/src/html/hydration-script-builder/dev-scripts.d.ts.map +1 -1
- package/esm/src/html/hydration-script-builder/templates/renderer.d.ts.map +1 -1
- package/esm/src/html/hydration-script-builder/templates/renderer.js +4 -3
- package/esm/src/html/hydration-script-builder/templates/router.d.ts.map +1 -1
- package/esm/src/html/hydration-script-builder/templates/router.js +5 -4
- package/esm/src/html/schemas/html.schema.d.ts +2 -2
- package/esm/src/html/styles-builder/css-hash-cache.d.ts +2 -1
- package/esm/src/html/styles-builder/css-hash-cache.d.ts.map +1 -1
- package/esm/src/html/styles-builder/css-hash-cache.js +16 -14
- package/esm/src/html/styles-builder/css-pregeneration.d.ts +2 -1
- package/esm/src/html/styles-builder/css-pregeneration.d.ts.map +1 -1
- package/esm/src/html/styles-builder/index.d.ts +1 -1
- package/esm/src/html/styles-builder/index.d.ts.map +1 -1
- package/esm/src/html/styles-builder/index.js +1 -1
- package/esm/src/html/styles-builder/plugin-loader.d.ts +1 -1
- package/esm/src/html/styles-builder/plugin-loader.d.ts.map +1 -1
- package/esm/src/html/styles-builder/plugin-loader.js +35 -27
- package/esm/src/html/styles-builder/project-css-cache.d.ts +4 -3
- package/esm/src/html/styles-builder/project-css-cache.d.ts.map +1 -1
- package/esm/src/html/styles-builder/tailwind-compiler-cache.d.ts.map +1 -1
- package/esm/src/html/styles-builder/tailwind-compiler-cache.js +10 -4
- package/esm/src/html/styles-builder/tailwind-compiler-utils.d.ts +5 -4
- package/esm/src/html/styles-builder/tailwind-compiler-utils.d.ts.map +1 -1
- package/esm/src/html/styles-builder/tailwind-compiler-utils.js +4 -2
- package/esm/src/html/styles-builder/tailwind-compiler.d.ts +0 -2
- package/esm/src/html/styles-builder/tailwind-compiler.d.ts.map +1 -1
- package/esm/src/html/styles-builder/tailwind-compiler.js +5 -8
- package/esm/src/html/utils.d.ts +2 -1
- package/esm/src/html/utils.d.ts.map +1 -1
- package/esm/src/html/utils.js +2 -2
- package/esm/src/integrations/endpoint-executor.d.ts.map +1 -1
- package/esm/src/integrations/endpoint-executor.js +5 -2
- package/esm/src/integrations/schema.d.ts +2 -2
- package/esm/src/integrations/types.d.ts +2 -1
- package/esm/src/integrations/types.d.ts.map +1 -1
- package/esm/src/issues/core.d.ts.map +1 -1
- package/esm/src/issues/core.js +8 -5
- package/esm/src/issues/schemas/issue.schema.d.ts +14 -14
- package/esm/src/mcp/server.d.ts.map +1 -1
- package/esm/src/mcp/server.js +4 -3
- package/esm/src/mcp/types.d.ts.map +1 -1
- package/esm/src/middleware/builtin/security/redis-rate-limit.d.ts.map +1 -1
- package/esm/src/middleware/builtin/security/redis-rate-limit.js +2 -1
- package/esm/src/middleware/builtin/timeout.js +1 -1
- package/esm/src/modules/component-registry/registry.d.ts.map +1 -1
- package/esm/src/modules/component-registry/registry.js +5 -3
- package/esm/src/modules/import-map/default-import-map.js +1 -1
- package/esm/src/modules/import-map/loader.js +6 -6
- package/esm/src/modules/import-map/preloader.d.ts +3 -3
- package/esm/src/modules/import-map/preloader.d.ts.map +1 -1
- package/esm/src/modules/import-map/preloader.js +12 -10
- package/esm/src/modules/import-map/resolver.d.ts.map +1 -1
- package/esm/src/modules/import-map/resolver.js +2 -1
- package/esm/src/modules/react-loader/ssr-module-loader/cache/memory.js +1 -1
- package/esm/src/modules/react-loader/ssr-module-loader/concurrency/semaphore.d.ts.map +1 -1
- package/esm/src/modules/react-loader/ssr-module-loader/concurrency/semaphore.js +3 -1
- package/esm/src/modules/react-loader/ssr-module-loader/cross-project-import-loader.d.ts +3 -2
- package/esm/src/modules/react-loader/ssr-module-loader/cross-project-import-loader.d.ts.map +1 -1
- package/esm/src/modules/react-loader/ssr-module-loader/cross-project-import-loader.js +7 -2
- package/esm/src/modules/react-loader/ssr-module-loader/http-bundle-helpers.d.ts +0 -5
- package/esm/src/modules/react-loader/ssr-module-loader/http-bundle-helpers.d.ts.map +1 -1
- package/esm/src/modules/react-loader/ssr-module-loader/http-bundle-helpers.js +8 -4
- package/esm/src/modules/react-loader/ssr-module-loader/loader.js +1 -1
- package/esm/src/modules/react-loader/ssr-module-loader/preflight-imports.d.ts +2 -1
- package/esm/src/modules/react-loader/ssr-module-loader/preflight-imports.d.ts.map +1 -1
- package/esm/src/modules/react-loader/ssr-module-loader/preflight-imports.js +2 -1
- package/esm/src/modules/react-loader/ssr-module-loader/ssr-cache-manager.d.ts.map +1 -1
- package/esm/src/modules/react-loader/ssr-module-loader/ssr-cache-manager.js +19 -7
- package/esm/src/modules/react-loader/ssr-module-loader/vf-module-resolver.d.ts.map +1 -1
- package/esm/src/modules/react-loader/ssr-module-loader/vf-module-resolver.js +12 -2
- package/esm/src/modules/react-loader/unified-loader.js +2 -2
- package/esm/src/modules/server/module-batch-handler.d.ts.map +1 -1
- package/esm/src/modules/server/module-batch-handler.js +10 -6
- package/esm/src/modules/server/module-server.d.ts +0 -7
- package/esm/src/modules/server/module-server.d.ts.map +1 -1
- package/esm/src/modules/server/module-server.js +12 -36
- package/esm/src/modules/server/ssr-import-rewriter.d.ts +2 -1
- package/esm/src/modules/server/ssr-import-rewriter.d.ts.map +1 -1
- package/esm/src/modules/server/websocket-handler.js +1 -1
- package/esm/src/oauth/providers/base.d.ts.map +1 -1
- package/esm/src/oauth/providers/base.js +44 -16
- package/esm/src/oauth/token-store/memory.d.ts +0 -2
- package/esm/src/oauth/token-store/memory.d.ts.map +1 -1
- package/esm/src/oauth/token-store/memory.js +4 -4
- package/esm/src/observability/auto-instrument/http-instrumentation.js +2 -2
- package/esm/src/observability/auto-instrument/types.d.ts +3 -8
- package/esm/src/observability/auto-instrument/types.d.ts.map +1 -1
- package/esm/src/observability/error-collector.d.ts.map +1 -1
- package/esm/src/observability/error-collector.js +6 -3
- package/esm/src/observability/log-buffer.d.ts.map +1 -1
- package/esm/src/observability/log-buffer.js +4 -3
- package/esm/src/observability/metrics/config.d.ts.map +1 -1
- package/esm/src/observability/metrics/config.js +4 -3
- package/esm/src/observability/simple-metrics/metrics-recorder.d.ts.map +1 -1
- package/esm/src/observability/simple-metrics/metrics-recorder.js +9 -5
- package/esm/src/observability/simple-metrics/otel-instruments.js +2 -2
- package/esm/src/observability/tracing/config.js +2 -2
- package/esm/src/platform/adapters/detect.d.ts +0 -1
- package/esm/src/platform/adapters/detect.d.ts.map +1 -1
- package/esm/src/platform/adapters/detect.js +0 -2
- package/esm/src/platform/adapters/fs/factory.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/factory.js +2 -4
- package/esm/src/platform/adapters/fs/github/adapter.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/github/adapter.js +2 -1
- package/esm/src/platform/adapters/fs/github/github-api-client.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/github/github-api-client.js +5 -2
- package/esm/src/platform/adapters/fs/github/stat-operations.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/github/stat-operations.js +2 -1
- package/esm/src/platform/adapters/fs/github/types.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/github/types.js +12 -6
- package/esm/src/platform/adapters/fs/veryfront/adapter-content-context.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/adapter-content-context.js +7 -2
- package/esm/src/platform/adapters/fs/veryfront/adapter.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/adapter.js +12 -6
- package/esm/src/platform/adapters/fs/veryfront/api-search-circuit-breaker.d.ts +2 -1
- package/esm/src/platform/adapters/fs/veryfront/api-search-circuit-breaker.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/content-metrics.d.ts +1 -1
- package/esm/src/platform/adapters/fs/veryfront/content-metrics.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/file-list-index.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/file-list-index.js +2 -1
- package/esm/src/platform/adapters/fs/veryfront/in-flight-dedupe.d.ts +4 -3
- package/esm/src/platform/adapters/fs/veryfront/in-flight-dedupe.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/multi-project-adapter.d.ts +1 -1
- package/esm/src/platform/adapters/fs/veryfront/multi-project-adapter.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/multi-project-adapter.js +15 -7
- package/esm/src/platform/adapters/fs/veryfront/proxy-manager.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/proxy-manager.js +23 -16
- package/esm/src/platform/adapters/fs/veryfront/read-operations-helpers.d.ts +2 -2
- package/esm/src/platform/adapters/fs/veryfront/read-operations-helpers.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/read-operations-helpers.js +5 -2
- package/esm/src/platform/adapters/fs/veryfront/read-operations.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/read-operations.js +8 -4
- package/esm/src/platform/adapters/fs/veryfront/retry.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/retry.js +1 -0
- package/esm/src/platform/adapters/fs/veryfront/stat-operations-helpers.d.ts +2 -1
- package/esm/src/platform/adapters/fs/veryfront/stat-operations-helpers.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/stat-operations.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/stat-operations.js +6 -3
- package/esm/src/platform/adapters/fs/veryfront/types.d.ts +1 -4
- package/esm/src/platform/adapters/fs/veryfront/types.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/websocket-manager.d.ts +2 -1
- package/esm/src/platform/adapters/fs/veryfront/websocket-manager.d.ts.map +1 -1
- package/esm/src/platform/adapters/fs/veryfront/websocket-manager.js +33 -20
- package/esm/src/platform/adapters/redis/modules.d.ts.map +1 -1
- package/esm/src/platform/adapters/redis/modules.js +9 -2
- package/esm/src/platform/adapters/registry.d.ts.map +1 -1
- package/esm/src/platform/adapters/registry.js +23 -10
- package/esm/src/platform/adapters/runtime/bun/filesystem-adapter.d.ts.map +1 -1
- package/esm/src/platform/adapters/runtime/bun/filesystem-adapter.js +5 -3
- package/esm/src/platform/adapters/runtime/deno/adapter.d.ts.map +1 -1
- package/esm/src/platform/adapters/runtime/deno/adapter.js +23 -12
- package/esm/src/platform/adapters/runtime/node/filesystem-adapter.js +2 -2
- package/esm/src/platform/adapters/runtime/node/http-server.d.ts.map +1 -1
- package/esm/src/platform/adapters/runtime/node/http-server.js +14 -4
- package/esm/src/platform/adapters/runtime/node/websocket-adapter.d.ts.map +1 -1
- package/esm/src/platform/adapters/runtime/node/websocket-adapter.js +10 -6
- package/esm/src/platform/adapters/runtime/shared/server-lifecycle.d.ts +0 -1
- package/esm/src/platform/adapters/runtime/shared/server-lifecycle.d.ts.map +1 -1
- package/esm/src/platform/adapters/runtime/shared/server-lifecycle.js +1 -1
- package/esm/src/platform/adapters/runtime/shared/shared-watcher.d.ts.map +1 -1
- package/esm/src/platform/adapters/runtime/shared/shared-watcher.js +8 -4
- package/esm/src/platform/adapters/veryfront-api-client/client.d.ts +6 -6
- package/esm/src/platform/adapters/veryfront-api-client/client.d.ts.map +1 -1
- package/esm/src/platform/adapters/veryfront-api-client/client.js +11 -6
- package/esm/src/platform/adapters/veryfront-api-client/operations.d.ts.map +1 -1
- package/esm/src/platform/adapters/veryfront-api-client/operations.js +13 -4
- package/esm/src/platform/adapters/veryfront-api-client/retry-handler.d.ts.map +1 -1
- package/esm/src/platform/adapters/veryfront-api-client/retry-handler.js +1 -0
- package/esm/src/platform/adapters/veryfront-api-client/schemas/api.schema.d.ts +34 -34
- package/esm/src/platform/cloud/resolver.d.ts +17 -0
- package/esm/src/platform/cloud/resolver.d.ts.map +1 -0
- package/esm/src/platform/cloud/resolver.js +67 -0
- package/esm/src/platform/compat/console/index.d.ts.map +1 -1
- package/esm/src/platform/compat/console/index.js +2 -1
- package/esm/src/platform/compat/dynamic-import.d.ts +1 -1
- package/esm/src/platform/compat/dynamic-import.d.ts.map +1 -1
- package/esm/src/platform/compat/dynamic-import.js +0 -1
- package/esm/src/platform/compat/esbuild-init.js +7 -6
- package/esm/src/platform/compat/esbuild.d.ts +0 -1
- package/esm/src/platform/compat/esbuild.d.ts.map +1 -1
- package/esm/src/platform/compat/esbuild.js +15 -13
- package/esm/src/platform/compat/fs.d.ts.map +1 -1
- package/esm/src/platform/compat/fs.js +29 -14
- package/esm/src/platform/compat/http/node-server.d.ts.map +1 -1
- package/esm/src/platform/compat/http/node-server.js +5 -3
- package/esm/src/platform/compat/http/responses.d.ts.map +1 -1
- package/esm/src/platform/compat/http/responses.js +4 -2
- package/esm/src/platform/compat/http/websocket.d.ts.map +1 -1
- package/esm/src/platform/compat/http/websocket.js +5 -2
- package/esm/src/platform/compat/opaque-deps.d.ts +0 -16
- package/esm/src/platform/compat/opaque-deps.d.ts.map +1 -1
- package/esm/src/platform/compat/opaque-deps.js +5 -0
- package/esm/src/platform/compat/path/basic-operations.d.ts.map +1 -1
- package/esm/src/platform/compat/path/basic-operations.js +4 -7
- package/esm/src/platform/compat/path/parse-format.js +3 -3
- package/esm/src/platform/compat/path/resolution.d.ts.map +1 -1
- package/esm/src/platform/compat/path/resolution.js +5 -8
- package/esm/src/platform/compat/path/runtime.js +2 -2
- package/esm/src/platform/compat/path/url-conversion.d.ts.map +1 -1
- package/esm/src/platform/compat/path/url-conversion.js +2 -1
- package/esm/src/platform/compat/process.d.ts +12 -0
- package/esm/src/platform/compat/process.d.ts.map +1 -1
- package/esm/src/platform/compat/process.js +86 -63
- package/esm/src/platform/compat/react-paths.js +2 -2
- package/esm/src/platform/compat/runtime.d.ts.map +1 -1
- package/esm/src/platform/compat/runtime.js +2 -1
- package/esm/src/platform/compat/stdin.d.ts.map +1 -1
- package/esm/src/platform/compat/stdin.js +12 -7
- package/esm/src/platform/core-platform.d.ts +3 -2
- package/esm/src/platform/core-platform.d.ts.map +1 -1
- package/esm/src/platform/core-platform.js +25 -8
- package/esm/src/prompt/schemas/prompt.schema.d.ts +2 -2
- package/esm/src/provider/local/ai-sdk-adapter.d.ts.map +1 -1
- package/esm/src/provider/local/ai-sdk-adapter.js +3 -1
- package/esm/src/provider/local/env.d.ts +1 -1
- package/esm/src/provider/local/env.d.ts.map +1 -1
- package/esm/src/provider/local/env.js +4 -4
- package/esm/src/provider/local/local-embedding-engine.d.ts.map +1 -1
- package/esm/src/provider/local/local-embedding-engine.js +2 -2
- package/esm/src/provider/local/local-engine.d.ts +16 -1
- package/esm/src/provider/local/local-engine.d.ts.map +1 -1
- package/esm/src/provider/local/local-engine.js +38 -36
- package/esm/src/provider/model-registry.d.ts.map +1 -1
- package/esm/src/provider/model-registry.js +28 -4
- package/esm/src/provider/veryfront-cloud/provider.d.ts +3 -0
- package/esm/src/provider/veryfront-cloud/provider.d.ts.map +1 -0
- package/esm/src/provider/veryfront-cloud/provider.js +48 -0
- package/esm/src/provider/veryfront-cloud/shared.d.ts +25 -0
- package/esm/src/provider/veryfront-cloud/shared.d.ts.map +1 -0
- package/esm/src/provider/veryfront-cloud/shared.js +89 -0
- package/esm/src/proxy/cache/memory-cache.d.ts.map +1 -1
- package/esm/src/proxy/cache/memory-cache.js +3 -2
- package/esm/src/proxy/cache/redis-cache.d.ts +1 -0
- package/esm/src/proxy/cache/redis-cache.d.ts.map +1 -1
- package/esm/src/proxy/cache/redis-cache.js +26 -19
- package/esm/src/proxy/cache/resilient-cache.d.ts.map +1 -1
- package/esm/src/proxy/cache/resilient-cache.js +11 -1
- package/esm/src/proxy/handler.d.ts.map +1 -1
- package/esm/src/proxy/handler.js +6 -4
- package/esm/src/proxy/logger.d.ts +1 -5
- package/esm/src/proxy/logger.d.ts.map +1 -1
- package/esm/src/proxy/logger.js +5 -4
- package/esm/src/proxy/main.js +9 -6
- package/esm/src/proxy/oauth-client.d.ts +2 -1
- package/esm/src/proxy/oauth-client.d.ts.map +1 -1
- package/esm/src/proxy/oauth-client.js +8 -3
- package/esm/src/proxy/renderer-router.js +1 -1
- package/esm/src/proxy/token-manager.d.ts +2 -1
- package/esm/src/proxy/token-manager.d.ts.map +1 -1
- package/esm/src/proxy/token-manager.js +12 -9
- package/esm/src/proxy/tracing.d.ts.map +1 -1
- package/esm/src/proxy/tracing.js +6 -5
- package/esm/src/react/compat/config-generator.d.ts +2 -1
- package/esm/src/react/compat/config-generator.d.ts.map +1 -1
- package/esm/src/react/compat/hooks-adapter.d.ts +4 -5
- package/esm/src/react/compat/hooks-adapter.d.ts.map +1 -1
- package/esm/src/react/compat/hooks-adapter.js +30 -21
- package/esm/src/react/compat/ssr-adapter/server-loader.d.ts.map +1 -1
- package/esm/src/react/compat/ssr-adapter/server-loader.js +7 -2
- package/esm/src/react/compat/version-detector/feature-detector.js +1 -1
- package/esm/src/react/compat/version-detector/version-cache.d.ts +2 -2
- package/esm/src/react/compat/version-detector/version-cache.d.ts.map +1 -1
- package/esm/src/react/compat/version-detector/version-cache.js +6 -5
- package/esm/src/react/components/LayoutComponent.d.ts +1 -1
- package/esm/src/react/components/LayoutComponent.d.ts.map +1 -1
- package/esm/src/react/components/ProviderComponent.d.ts +2 -1
- package/esm/src/react/components/ProviderComponent.d.ts.map +1 -1
- package/esm/src/react/components/ai/agent-card.d.ts +2 -2
- package/esm/src/react/components/ai/agent-card.d.ts.map +1 -1
- package/esm/src/react/components/ai/agent-card.js +1 -1
- package/esm/src/react/components/ai/chat/components/code-block.d.ts.map +1 -1
- package/esm/src/react/components/ai/chat/components/code-block.js +2 -1
- package/esm/src/react/components/ai/chat/components/message-actions.js +2 -2
- package/esm/src/react/components/ai/chat/components/reasoning.d.ts +0 -5
- package/esm/src/react/components/ai/chat/components/reasoning.d.ts.map +1 -1
- package/esm/src/react/components/ai/chat/components/upgrade-cta.d.ts.map +1 -1
- package/esm/src/react/components/ai/chat/components/upgrade-cta.js +4 -3
- package/esm/src/react/components/ai/chat/components/uploads-panel.d.ts +1 -0
- package/esm/src/react/components/ai/chat/components/uploads-panel.d.ts.map +1 -1
- package/esm/src/react/components/ai/chat/components/uploads-panel.js +3 -1
- package/esm/src/react/components/ai/chat/composition/message.d.ts +0 -9
- package/esm/src/react/components/ai/chat/composition/message.d.ts.map +1 -1
- package/esm/src/react/components/ai/chat/composition/message.js +2 -1
- package/esm/src/react/components/ai/chat/contexts/chat-context.d.ts.map +1 -1
- package/esm/src/react/components/ai/chat/contexts/chat-context.js +4 -1
- package/esm/src/react/components/ai/chat/contexts/composer-context.d.ts.map +1 -1
- package/esm/src/react/components/ai/chat/contexts/composer-context.js +4 -1
- package/esm/src/react/components/ai/chat/contexts/message-context.d.ts.map +1 -1
- package/esm/src/react/components/ai/chat/contexts/message-context.js +4 -1
- package/esm/src/react/components/ai/chat/contexts/thread-list-context.d.ts.map +1 -1
- package/esm/src/react/components/ai/chat/contexts/thread-list-context.js +4 -1
- package/esm/src/react/components/ai/chat/hooks/use-threads.js +2 -2
- package/esm/src/react/components/ai/theme.d.ts +0 -69
- package/esm/src/react/components/ai/theme.d.ts.map +1 -1
- package/esm/src/react/components/ai/theme.js +2 -2
- package/esm/src/react/head-collector.d.ts +2 -1
- package/esm/src/react/head-collector.d.ts.map +1 -1
- package/esm/src/react/primitives/input-box.d.ts.map +1 -1
- package/esm/src/react/primitives/input-box.js +2 -6
- package/esm/src/rendering/app-reserved.js +2 -2
- package/esm/src/rendering/app-route-resolver.js +10 -9
- package/esm/src/rendering/cache/cache-coordinator.d.ts.map +1 -1
- package/esm/src/rendering/cache/cache-coordinator.js +3 -1
- package/esm/src/rendering/cache/stores/api-store.d.ts.map +1 -1
- package/esm/src/rendering/cache/stores/api-store.js +33 -23
- package/esm/src/rendering/cache/stores/filesystem-store.d.ts.map +1 -1
- package/esm/src/rendering/cache/stores/filesystem-store.js +10 -8
- package/esm/src/rendering/cache/stores/memory-store.d.ts +2 -1
- package/esm/src/rendering/cache/stores/memory-store.d.ts.map +1 -1
- package/esm/src/rendering/cache/stores/redis-store.d.ts.map +1 -1
- package/esm/src/rendering/cache/stores/redis-store.js +15 -7
- package/esm/src/rendering/component-handling.d.ts +2 -1
- package/esm/src/rendering/component-handling.d.ts.map +1 -1
- package/esm/src/rendering/component-handling.js +1 -1
- package/esm/src/rendering/context/render-context.d.ts.map +1 -1
- package/esm/src/rendering/context/render-context.js +15 -9
- package/esm/src/rendering/element-validator/primitive-checks.d.ts.map +1 -1
- package/esm/src/rendering/element-validator/primitive-checks.js +2 -1
- package/esm/src/rendering/factories/service-factories.d.ts.map +1 -1
- package/esm/src/rendering/factories/service-factories.js +3 -1
- package/esm/src/rendering/layouts/layout-applicator.d.ts.map +1 -1
- package/esm/src/rendering/layouts/layout-applicator.js +3 -3
- package/esm/src/rendering/layouts/layout-collector.d.ts +2 -8
- package/esm/src/rendering/layouts/layout-collector.d.ts.map +1 -1
- package/esm/src/rendering/layouts/layout-collector.js +11 -4
- package/esm/src/rendering/layouts/utils/app-resolver.d.ts.map +1 -1
- package/esm/src/rendering/layouts/utils/app-resolver.js +7 -2
- package/esm/src/rendering/layouts/utils/component-loader.js +1 -1
- package/esm/src/rendering/layouts/utils/hash-calculator.d.ts.map +1 -1
- package/esm/src/rendering/layouts/utils/hash-calculator.js +10 -7
- package/esm/src/rendering/orchestrator/css-cache.d.ts +0 -2
- package/esm/src/rendering/orchestrator/css-cache.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/css-cache.js +2 -2
- package/esm/src/rendering/orchestrator/css-candidate-manifest.js +1 -1
- package/esm/src/rendering/orchestrator/file-resolver/candidates.js +2 -2
- package/esm/src/rendering/orchestrator/html.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/html.js +9 -5
- package/esm/src/rendering/orchestrator/layout.d.ts +2 -7
- package/esm/src/rendering/orchestrator/layout.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/layout.js +52 -42
- package/esm/src/rendering/orchestrator/lifecycle.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/lifecycle.js +9 -2
- package/esm/src/rendering/orchestrator/module-collection.d.ts +1 -1
- package/esm/src/rendering/orchestrator/module-collection.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/module-collection.js +1 -1
- package/esm/src/rendering/orchestrator/module-loader/esm-rewriter.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/module-loader/esm-rewriter.js +4 -2
- package/esm/src/rendering/orchestrator/module-loader/index.d.ts +1 -1
- package/esm/src/rendering/orchestrator/module-loader/index.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/module-loader/index.js +7 -7
- package/esm/src/rendering/orchestrator/pipeline.d.ts.map +1 -1
- package/esm/src/rendering/orchestrator/pipeline.js +135 -119
- package/esm/src/rendering/page-renderer.d.ts +3 -2
- package/esm/src/rendering/page-renderer.d.ts.map +1 -1
- package/esm/src/rendering/page-rendering.d.ts +2 -1
- package/esm/src/rendering/page-rendering.d.ts.map +1 -1
- package/esm/src/rendering/page-rendering.js +3 -1
- package/esm/src/rendering/page-resolution/page-resolver.d.ts +2 -0
- package/esm/src/rendering/page-resolution/page-resolver.d.ts.map +1 -1
- package/esm/src/rendering/page-resolution/page-resolver.js +4 -2
- package/esm/src/rendering/renderer-concurrency.d.ts +0 -11
- package/esm/src/rendering/renderer-concurrency.d.ts.map +1 -1
- package/esm/src/rendering/renderer-concurrency.js +6 -5
- package/esm/src/rendering/renderer.d.ts +0 -12
- package/esm/src/rendering/renderer.d.ts.map +1 -1
- package/esm/src/rendering/renderer.js +16 -28
- package/esm/src/rendering/router-detection.d.ts +12 -3
- package/esm/src/rendering/router-detection.d.ts.map +1 -1
- package/esm/src/rendering/router-detection.js +28 -10
- package/esm/src/rendering/rsc/client-boot.ts +1 -1
- package/esm/src/rendering/rsc/client-dom.ts +9 -11
- package/esm/src/rendering/rsc/client-hydrator.ts +11 -8
- package/esm/src/rendering/rsc/hydrate-client.ts +3 -2
- package/esm/src/rendering/rsc/server-renderer/component-detector.d.ts.map +1 -1
- package/esm/src/rendering/rsc/server-renderer/prop-serializer.js +2 -1
- package/esm/src/rendering/rsc/server-renderer/rsc-renderer.d.ts.map +1 -1
- package/esm/src/rendering/rsc/server-renderer/rsc-renderer.js +3 -1
- package/esm/src/rendering/rsc/server-renderer/tree-processor.d.ts.map +1 -1
- package/esm/src/rendering/rsc/server-renderer/tree-processor.js +3 -1
- package/esm/src/rendering/script-page-handling.js +3 -2
- package/esm/src/rendering/shared/context-aware-cache.d.ts.map +1 -1
- package/esm/src/rendering/shared/context-aware-cache.js +6 -2
- package/esm/src/rendering/shared/shared-services.d.ts.map +1 -1
- package/esm/src/rendering/shared/shared-services.js +4 -1
- package/esm/src/rendering/snippet-renderer.d.ts.map +1 -1
- package/esm/src/rendering/snippet-renderer.js +53 -39
- package/esm/src/rendering/ssr-globals/dom-stubs.d.ts.map +1 -1
- package/esm/src/rendering/ssr-globals/dom-stubs.js +9 -4
- package/esm/src/rendering/ssr-globals/fetch-interceptor.d.ts.map +1 -1
- package/esm/src/rendering/ssr-globals/fetch-interceptor.js +6 -4
- package/esm/src/rendering/ssr-globals/index.d.ts.map +1 -1
- package/esm/src/rendering/ssr-globals/index.js +2 -1
- package/esm/src/rendering/ssr-renderer.d.ts +2 -1
- package/esm/src/rendering/ssr-renderer.d.ts.map +1 -1
- package/esm/src/rendering/ssr-renderer.js +4 -2
- package/esm/src/rendering/utils/stream-utils.js +2 -2
- package/esm/src/routing/api/api-route-matcher.d.ts +0 -2
- package/esm/src/routing/api/api-route-matcher.d.ts.map +1 -1
- package/esm/src/routing/api/api-route-matcher.js +8 -5
- package/esm/src/routing/api/handler.d.ts +1 -1
- package/esm/src/routing/api/handler.d.ts.map +1 -1
- package/esm/src/routing/api/handler.js +5 -3
- package/esm/src/routing/api/index.d.ts +1 -1
- package/esm/src/routing/api/index.d.ts.map +1 -1
- package/esm/src/routing/api/index.js +1 -1
- package/esm/src/routing/api/module-loader/esbuild-plugin.d.ts +2 -1
- package/esm/src/routing/api/module-loader/esbuild-plugin.d.ts.map +1 -1
- package/esm/src/routing/api/module-loader/esbuild-plugin.js +3 -2
- package/esm/src/routing/api/module-loader/http-validator.d.ts.map +1 -1
- package/esm/src/routing/api/module-loader/http-validator.js +2 -1
- package/esm/src/routing/api/module-loader/loader.d.ts.map +1 -1
- package/esm/src/routing/api/module-loader/loader.js +16 -15
- package/esm/src/routing/api/openapi/path-utils.d.ts +2 -1
- package/esm/src/routing/api/openapi/path-utils.d.ts.map +1 -1
- package/esm/src/routing/api/openapi/spec-generator.d.ts +5 -4
- package/esm/src/routing/api/openapi/spec-generator.d.ts.map +1 -1
- package/esm/src/routing/api/openapi/spec-generator.js +5 -5
- package/esm/src/routing/api/openapi/types.d.ts +6 -5
- package/esm/src/routing/api/openapi/types.d.ts.map +1 -1
- package/esm/src/routing/api/route-discovery.d.ts +3 -3
- package/esm/src/routing/api/route-discovery.d.ts.map +1 -1
- package/esm/src/routing/index.d.ts +1 -1
- package/esm/src/routing/index.d.ts.map +1 -1
- package/esm/src/routing/index.js +1 -1
- package/esm/src/routing/matchers/index.d.ts +1 -1
- package/esm/src/routing/matchers/index.d.ts.map +1 -1
- package/esm/src/routing/matchers/index.js +1 -1
- package/esm/src/routing/matchers/pattern-route-matcher.d.ts +0 -2
- package/esm/src/routing/matchers/pattern-route-matcher.d.ts.map +1 -1
- package/esm/src/routing/matchers/pattern-route-matcher.js +0 -2
- package/esm/src/sandbox/index.d.ts +1 -1
- package/esm/src/sandbox/index.js +1 -1
- package/esm/src/sandbox/sandbox.d.ts +6 -12
- package/esm/src/sandbox/sandbox.d.ts.map +1 -1
- package/esm/src/sandbox/sandbox.js +42 -19
- package/esm/src/security/client/html-sanitizer.d.ts +1 -9
- package/esm/src/security/client/html-sanitizer.d.ts.map +1 -1
- package/esm/src/security/client/html-sanitizer.js +4 -14
- package/esm/src/security/csrf/helpers.js +4 -4
- package/esm/src/security/http/auth.js +3 -3
- package/esm/src/security/http/base-handler.js +2 -2
- package/esm/src/security/http/middleware/config-loader.d.ts.map +1 -1
- package/esm/src/security/http/middleware/config-loader.js +2 -1
- package/esm/src/security/http/response/fluent-methods.d.ts.map +1 -1
- package/esm/src/security/http/response/fluent-methods.js +4 -3
- package/esm/src/security/http/response/security-handler.d.ts.map +1 -1
- package/esm/src/security/http/response/security-handler.js +6 -2
- package/esm/src/security/path-validation/canonical.d.ts.map +1 -1
- package/esm/src/security/path-validation/canonical.js +2 -1
- package/esm/src/security/path-validation/index.d.ts.map +1 -1
- package/esm/src/security/path-validation/index.js +2 -1
- package/esm/src/security/path-validation/rules.d.ts.map +1 -1
- package/esm/src/security/path-validation/rules.js +1 -2
- package/esm/src/security/secure-fs.d.ts +1 -1
- package/esm/src/security/secure-fs.d.ts.map +1 -1
- package/esm/src/security/secure-fs.js +7 -1
- package/esm/src/server/bootstrap.d.ts.map +1 -1
- package/esm/src/server/bootstrap.js +5 -3
- package/esm/src/server/build-app-route-renderer.d.ts.map +1 -1
- package/esm/src/server/build-app-route-renderer.js +3 -2
- package/esm/src/server/build-routes.js +2 -2
- package/esm/src/server/build-service-worker.d.ts.map +1 -1
- package/esm/src/server/build-service-worker.js +2 -1
- package/esm/src/server/context/cache-invalidation.d.ts +2 -1
- package/esm/src/server/context/cache-invalidation.d.ts.map +1 -1
- package/esm/src/server/context/cache-invalidation.js +8 -3
- package/esm/src/server/context/enriched-context.d.ts +4 -3
- package/esm/src/server/context/enriched-context.d.ts.map +1 -1
- package/esm/src/server/context/enriched-context.js +2 -1
- package/esm/src/server/dev-server/error-overlay/html-template.d.ts.map +1 -1
- package/esm/src/server/dev-server/error-overlay/html-template.js +8 -2
- package/esm/src/server/dev-server/file-watch-setup.d.ts +5 -0
- package/esm/src/server/dev-server/file-watch-setup.d.ts.map +1 -1
- package/esm/src/server/dev-server/file-watch-setup.js +19 -4
- package/esm/src/server/dev-server/middleware.d.ts +0 -6
- package/esm/src/server/dev-server/middleware.d.ts.map +1 -1
- package/esm/src/server/dev-server/middleware.js +11 -9
- package/esm/src/server/dev-server/request-handler.d.ts.map +1 -1
- package/esm/src/server/dev-server/request-handler.js +12 -7
- package/esm/src/server/dev-server/route-discovery.d.ts +2 -2
- package/esm/src/server/dev-server/route-discovery.d.ts.map +1 -1
- package/esm/src/server/dev-server/server.d.ts.map +1 -1
- package/esm/src/server/dev-server/server.js +11 -11
- package/esm/src/server/dev-server/types.d.ts +0 -2
- package/esm/src/server/dev-server/types.d.ts.map +1 -1
- package/esm/src/server/dev-ui/manifest.js +10 -10
- package/esm/src/server/handlers/dev/dashboard/api.d.ts.map +1 -1
- package/esm/src/server/handlers/dev/dashboard/api.js +26 -7
- package/esm/src/server/handlers/dev/dashboard/ui-handler.js +6 -6
- package/esm/src/server/handlers/dev/debug-context.handler.d.ts.map +1 -1
- package/esm/src/server/handlers/dev/debug-context.handler.js +4 -2
- package/esm/src/server/handlers/dev/endpoints.handler.d.ts.map +1 -1
- package/esm/src/server/handlers/dev/endpoints.handler.js +2 -1
- package/esm/src/server/handlers/dev/files/esbuild-plugins.d.ts +2 -1
- package/esm/src/server/handlers/dev/files/esbuild-plugins.d.ts.map +1 -1
- package/esm/src/server/handlers/dev/files/esbuild-plugins.js +9 -5
- package/esm/src/server/handlers/dev/files/path-validator.d.ts.map +1 -1
- package/esm/src/server/handlers/dev/files/path-validator.js +2 -1
- package/esm/src/server/handlers/dev/framework-candidates.generated.d.ts.map +1 -1
- package/esm/src/server/handlers/dev/framework-candidates.generated.js +13 -6
- package/esm/src/server/handlers/dev/projects/ui-handler.js +6 -6
- package/esm/src/server/handlers/dev/scripts/hmr-scripts.d.ts +0 -6
- package/esm/src/server/handlers/dev/scripts/hmr-scripts.d.ts.map +1 -1
- package/esm/src/server/handlers/dev/scripts/hmr-scripts.js +12 -12
- package/esm/src/server/handlers/dev/shared/ui-module-transform.d.ts +2 -1
- package/esm/src/server/handlers/dev/shared/ui-module-transform.d.ts.map +1 -1
- package/esm/src/server/handlers/dev/styles-candidate-scanner.js +4 -3
- package/esm/src/server/handlers/dev/styles-css.handler.d.ts.map +1 -1
- package/esm/src/server/handlers/dev/styles-css.handler.js +2 -1
- package/esm/src/server/handlers/monitoring/client-log.handler.d.ts.map +1 -1
- package/esm/src/server/handlers/monitoring/client-log.handler.js +6 -2
- package/esm/src/server/handlers/monitoring/health.handler.d.ts.map +1 -1
- package/esm/src/server/handlers/monitoring/health.handler.js +4 -2
- package/esm/src/server/handlers/monitoring/memory.handler.d.ts.map +1 -1
- package/esm/src/server/handlers/monitoring/memory.handler.js +7 -1
- package/esm/src/server/handlers/monitoring/metrics.handler.d.ts.map +1 -1
- package/esm/src/server/handlers/monitoring/metrics.handler.js +3 -0
- package/esm/src/server/handlers/preview/hmr-client-manager.d.ts +2 -3
- package/esm/src/server/handlers/preview/hmr-client-manager.d.ts.map +1 -1
- package/esm/src/server/handlers/preview/hmr-client-manager.js +2 -11
- package/esm/src/server/handlers/preview/hmr-message-router.d.ts +2 -3
- package/esm/src/server/handlers/preview/hmr-message-router.d.ts.map +1 -1
- package/esm/src/server/handlers/preview/hmr-message-router.js +2 -2
- package/esm/src/server/handlers/preview/hmr-ping-keepalive.js +3 -3
- package/esm/src/server/handlers/preview/hmr.handler.js +8 -8
- package/esm/src/server/handlers/preview/markdown-html-generator.d.ts +2 -1
- package/esm/src/server/handlers/preview/markdown-html-generator.d.ts.map +1 -1
- package/esm/src/server/handlers/preview/markdown-html-generator.js +2 -2
- package/esm/src/server/handlers/preview/markdown-preview.handler.d.ts.map +1 -1
- package/esm/src/server/handlers/preview/markdown-preview.handler.js +6 -5
- package/esm/src/server/handlers/request/api/app-router-resolver.d.ts.map +1 -1
- package/esm/src/server/handlers/request/api/app-router-resolver.js +94 -50
- package/esm/src/server/handlers/request/api/pages-api-handler.js +2 -2
- package/esm/src/server/handlers/request/module/page-data-endpoint-handler.js +1 -1
- package/esm/src/server/handlers/request/openapi-docs.handler.d.ts.map +1 -1
- package/esm/src/server/handlers/request/openapi-docs.handler.js +3 -1
- package/esm/src/server/handlers/request/openapi.handler.d.ts.map +1 -1
- package/esm/src/server/handlers/request/openapi.handler.js +7 -5
- package/esm/src/server/handlers/request/rsc/index.d.ts.map +1 -1
- package/esm/src/server/handlers/request/rsc/index.js +1 -0
- package/esm/src/server/handlers/request/ssr/error-page-fallback.d.ts.map +1 -1
- package/esm/src/server/handlers/request/ssr/error-page-fallback.js +8 -6
- package/esm/src/server/handlers/request/ssr/not-found-fallback.d.ts.map +1 -1
- package/esm/src/server/handlers/request/ssr/not-found-fallback.js +8 -5
- package/esm/src/server/handlers/request/ssr/ssr.handler.js +2 -2
- package/esm/src/server/handlers/response/cors.d.ts +0 -2
- package/esm/src/server/handlers/response/cors.d.ts.map +1 -1
- package/esm/src/server/handlers/response/cors.js +2 -74
- package/esm/src/server/handlers/studio/bridge-modules.handler.d.ts +0 -5
- package/esm/src/server/handlers/studio/bridge-modules.handler.d.ts.map +1 -1
- package/esm/src/server/handlers/studio/bridge-modules.handler.js +3 -8
- package/esm/src/server/index.d.ts +0 -2
- package/esm/src/server/index.d.ts.map +1 -1
- package/esm/src/server/index.js +19 -19
- package/esm/src/server/production-server.d.ts.map +1 -1
- package/esm/src/server/production-server.js +14 -5
- package/esm/src/server/project-env/cache.js +2 -2
- package/esm/src/server/project-env/fetcher.d.ts.map +1 -1
- package/esm/src/server/project-env/fetcher.js +2 -1
- package/esm/src/server/reload-notifier.d.ts +1 -1
- package/esm/src/server/reload-notifier.d.ts.map +1 -1
- package/esm/src/server/runtime-handler/adapter-factory.d.ts +3 -2
- package/esm/src/server/runtime-handler/adapter-factory.d.ts.map +1 -1
- package/esm/src/server/runtime-handler/environment-resolution.d.ts +3 -2
- package/esm/src/server/runtime-handler/environment-resolution.d.ts.map +1 -1
- package/esm/src/server/runtime-handler/handler-context-builder.d.ts +3 -2
- package/esm/src/server/runtime-handler/handler-context-builder.d.ts.map +1 -1
- package/esm/src/server/runtime-handler/index.js +15 -13
- package/esm/src/server/runtime-handler/isolation.d.ts +1 -1
- package/esm/src/server/runtime-handler/isolation.d.ts.map +1 -1
- package/esm/src/server/runtime-handler/local-project-discovery.d.ts.map +1 -1
- package/esm/src/server/runtime-handler/local-project-discovery.js +14 -4
- package/esm/src/server/runtime-handler/project-isolation.d.ts +2 -1
- package/esm/src/server/runtime-handler/project-isolation.d.ts.map +1 -1
- package/esm/src/server/runtime-handler/project-resolution.d.ts +4 -4
- package/esm/src/server/runtime-handler/project-resolution.d.ts.map +1 -1
- package/esm/src/server/runtime-handler/request-lifecycle.d.ts +1 -1
- package/esm/src/server/runtime-handler/request-lifecycle.d.ts.map +1 -1
- package/esm/src/server/runtime-handler/request-tracker.d.ts +1 -1
- package/esm/src/server/runtime-handler/request-tracker.d.ts.map +1 -1
- package/esm/src/server/runtime-handler/request-tracker.js +6 -2
- package/esm/src/server/runtime-handler/request-utils.d.ts.map +1 -1
- package/esm/src/server/runtime-handler/request-utils.js +1 -1
- package/esm/src/server/runtime-handler/tracing.d.ts +1 -1
- package/esm/src/server/runtime-handler/tracing.d.ts.map +1 -1
- package/esm/src/server/services/rsc/endpoints/action-handler.d.ts.map +1 -1
- package/esm/src/server/services/rsc/endpoints/action-handler.js +2 -1
- package/esm/src/server/services/rsc/endpoints/endpoint-router.d.ts +1 -1
- package/esm/src/server/services/rsc/endpoints/endpoint-router.d.ts.map +1 -1
- package/esm/src/server/services/rsc/endpoints/endpoint-router.js +11 -4
- package/esm/src/server/services/rsc/endpoints/handler-registry.d.ts +1 -1
- package/esm/src/server/services/rsc/endpoints/handler-registry.d.ts.map +1 -1
- package/esm/src/server/services/rsc/endpoints/handler-registry.js +6 -4
- package/esm/src/server/services/rsc/endpoints/script-handlers.d.ts +0 -2
- package/esm/src/server/services/rsc/endpoints/script-handlers.d.ts.map +1 -1
- package/esm/src/server/services/rsc/endpoints/script-handlers.js +2 -2
- package/esm/src/server/services/rsc/endpoints/types.d.ts +1 -0
- package/esm/src/server/services/rsc/endpoints/types.d.ts.map +1 -1
- package/esm/src/server/services/rsc/orchestrators/component-resolver.d.ts.map +1 -1
- package/esm/src/server/services/rsc/orchestrators/component-resolver.js +2 -1
- package/esm/src/server/services/rsc/orchestrators/manifest-handler.js +1 -1
- package/esm/src/server/services/rsc/orchestrators/page-handler.d.ts.map +1 -1
- package/esm/src/server/services/rsc/orchestrators/page-handler.js +2 -1
- package/esm/src/server/services/rsc/orchestrators/stream-handler.js +1 -1
- package/esm/src/server/services/static/static-file.service.d.ts +1 -1
- package/esm/src/server/services/static/static-file.service.d.ts.map +1 -1
- package/esm/src/server/services/static/static-file.service.js +6 -3
- package/esm/src/server/shared/renderer/adapter.d.ts.map +1 -1
- package/esm/src/server/shared/renderer/adapter.js +7 -4
- package/esm/src/server/utils/domain-lookup.d.ts +2 -1
- package/esm/src/server/utils/domain-lookup.d.ts.map +1 -1
- package/esm/src/server/utils/error-html.d.ts +2 -1
- package/esm/src/server/utils/error-html.d.ts.map +1 -1
- package/esm/src/skill/allowed-tools.d.ts +2 -1
- package/esm/src/skill/allowed-tools.d.ts.map +1 -1
- package/esm/src/skill/executor.d.ts +2 -9
- package/esm/src/skill/executor.d.ts.map +1 -1
- package/esm/src/skill/executor.js +19 -21
- package/esm/src/skill/parser.d.ts +2 -1
- package/esm/src/skill/parser.d.ts.map +1 -1
- package/esm/src/skill/parser.js +4 -4
- package/esm/src/skill/path-safety.d.ts.map +1 -1
- package/esm/src/skill/path-safety.js +8 -1
- package/esm/src/skill/tools.d.ts.map +1 -1
- package/esm/src/skill/tools.js +4 -2
- package/esm/src/studio/bridge/bridge-bundle.generated.d.ts.map +1 -1
- package/esm/src/studio/bridge/bridge-bundle.generated.js +1 -1
- package/esm/src/task/discovery.d.ts +1 -5
- package/esm/src/task/discovery.d.ts.map +1 -1
- package/esm/src/task/discovery.js +72 -7
- package/esm/src/tool/factory.d.ts.map +1 -1
- package/esm/src/tool/factory.js +1 -3
- package/esm/src/tool/schema/zod-json-schema.d.ts.map +1 -1
- package/esm/src/tool/schema/zod-json-schema.js +2 -1
- package/esm/src/tool/types.d.ts +2 -14
- package/esm/src/tool/types.d.ts.map +1 -1
- package/esm/src/transforms/esm/bundle-deps-validator.d.ts.map +1 -1
- package/esm/src/transforms/esm/bundle-deps-validator.js +15 -7
- package/esm/src/transforms/esm/bundle-manifest.d.ts +3 -6
- package/esm/src/transforms/esm/bundle-manifest.d.ts.map +1 -1
- package/esm/src/transforms/esm/bundle-manifest.js +9 -4
- package/esm/src/transforms/esm/bundle-recovery.d.ts.map +1 -1
- package/esm/src/transforms/esm/bundle-recovery.js +20 -15
- package/esm/src/transforms/esm/http-bundler.d.ts +0 -4
- package/esm/src/transforms/esm/http-bundler.d.ts.map +1 -1
- package/esm/src/transforms/esm/http-bundler.js +6 -15
- package/esm/src/transforms/esm/http-cache-helpers.d.ts.map +1 -1
- package/esm/src/transforms/esm/http-cache-helpers.js +2 -1
- package/esm/src/transforms/esm/http-cache-invariants.d.ts +0 -24
- package/esm/src/transforms/esm/http-cache-invariants.d.ts.map +1 -1
- package/esm/src/transforms/esm/http-cache-invariants.js +1 -27
- package/esm/src/transforms/esm/http-cache-types.d.ts +0 -15
- package/esm/src/transforms/esm/http-cache-types.d.ts.map +1 -1
- package/esm/src/transforms/esm/http-cache-wrapper.d.ts +2 -2
- package/esm/src/transforms/esm/http-cache-wrapper.d.ts.map +1 -1
- package/esm/src/transforms/esm/http-cache-wrapper.js +5 -3
- package/esm/src/transforms/esm/http-cache.d.ts +1 -3
- package/esm/src/transforms/esm/http-cache.d.ts.map +1 -1
- package/esm/src/transforms/esm/http-cache.js +19 -8
- package/esm/src/transforms/esm/import-parser.d.ts +2 -1
- package/esm/src/transforms/esm/import-parser.d.ts.map +1 -1
- package/esm/src/transforms/esm/import-parser.js +10 -5
- package/esm/src/transforms/esm/in-flight-manager.d.ts +0 -5
- package/esm/src/transforms/esm/in-flight-manager.d.ts.map +1 -1
- package/esm/src/transforms/esm/in-flight-manager.js +16 -12
- package/esm/src/transforms/esm/package-registry.d.ts +0 -8
- package/esm/src/transforms/esm/package-registry.d.ts.map +1 -1
- package/esm/src/transforms/esm/package-registry.js +2 -17
- package/esm/src/transforms/esm/source-url-embed.d.ts +0 -3
- package/esm/src/transforms/esm/source-url-embed.d.ts.map +1 -1
- package/esm/src/transforms/esm/source-url-embed.js +2 -2
- package/esm/src/transforms/esm/specifier-resolver.d.ts +0 -7
- package/esm/src/transforms/esm/specifier-resolver.d.ts.map +1 -1
- package/esm/src/transforms/esm/specifier-resolver.js +1 -1
- package/esm/src/transforms/esm/transform-cache.d.ts +5 -29
- package/esm/src/transforms/esm/transform-cache.d.ts.map +1 -1
- package/esm/src/transforms/esm/transform-cache.js +1 -104
- package/esm/src/transforms/import-rewriter/strategies/import-map-strategy.d.ts.map +1 -1
- package/esm/src/transforms/import-rewriter/strategies/import-map-strategy.js +4 -2
- package/esm/src/transforms/md/utils.d.ts +0 -5
- package/esm/src/transforms/md/utils.d.ts.map +1 -1
- package/esm/src/transforms/md/utils.js +1 -1
- package/esm/src/transforms/mdx/compiler/import-rewriter.d.ts.map +1 -1
- package/esm/src/transforms/mdx/compiler/import-rewriter.js +2 -1
- package/esm/src/transforms/mdx/esm-module-loader/cache/index.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/cache/index.js +21 -12
- package/esm/src/transforms/mdx/esm-module-loader/constants.d.ts +0 -1
- package/esm/src/transforms/mdx/esm-module-loader/constants.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/constants.js +0 -1
- package/esm/src/transforms/mdx/esm-module-loader/import-transformer.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/import-transformer.js +13 -5
- package/esm/src/transforms/mdx/esm-module-loader/jsx/runtime-loader.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/jsx/runtime-loader.js +3 -4
- package/esm/src/transforms/mdx/esm-module-loader/loader-helpers.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/loader-helpers.js +17 -6
- package/esm/src/transforms/mdx/esm-module-loader/metadata/string-parser.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/metadata/string-parser.js +2 -1
- package/esm/src/transforms/mdx/esm-module-loader/missing-module.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/missing-module.js +4 -3
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/distributed-cache.d.ts +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/distributed-cache.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/distributed-cache.js +14 -10
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/framework-validator.d.ts +0 -5
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/framework-validator.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/framework-validator.js +9 -7
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/index.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/index.js +2 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/module-cache.js +2 -2
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/render-sessions.d.ts +0 -14
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/render-sessions.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-fetcher/render-sessions.js +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-writer.d.ts +0 -14
- package/esm/src/transforms/mdx/esm-module-loader/module-writer.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/module-writer.js +22 -9
- package/esm/src/transforms/mdx/esm-module-loader/resolution/file-finder.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/resolution/file-finder.js +4 -3
- package/esm/src/transforms/mdx/esm-module-loader/types.d.ts +0 -13
- package/esm/src/transforms/mdx/esm-module-loader/types.d.ts.map +1 -1
- package/esm/src/transforms/mdx/esm-module-loader/utils/stub-module.js +2 -2
- package/esm/src/transforms/pipeline/index.d.ts.map +1 -1
- package/esm/src/transforms/pipeline/index.js +3 -2
- package/esm/src/transforms/pipeline/stages/compile.d.ts.map +1 -1
- package/esm/src/transforms/pipeline/stages/compile.js +5 -1
- package/esm/src/transforms/pipeline/stages/ssr-vf-modules/path-resolver.js +18 -18
- package/esm/src/transforms/pipeline/stages/ssr-vf-modules/transform.d.ts.map +1 -1
- package/esm/src/transforms/pipeline/stages/ssr-vf-modules/transform.js +9 -4
- package/esm/src/transforms/plugins/babel-node-positions.d.ts.map +1 -1
- package/esm/src/transforms/plugins/babel-node-positions.js +2 -1
- package/esm/src/transforms/plugins/plugin-loader.d.ts +0 -3
- package/esm/src/transforms/plugins/plugin-loader.d.ts.map +1 -1
- package/esm/src/transforms/plugins/rehype-node-positions.d.ts +2 -1
- package/esm/src/transforms/plugins/rehype-node-positions.d.ts.map +1 -1
- package/esm/src/transforms/shared/cross-project-import.d.ts +2 -1
- package/esm/src/transforms/shared/cross-project-import.d.ts.map +1 -1
- package/esm/src/transforms/veryfront-module-urls.d.ts +0 -1
- package/esm/src/transforms/veryfront-module-urls.d.ts.map +1 -1
- package/esm/src/transforms/veryfront-module-urls.js +0 -3
- package/esm/src/types/entities/getEntityInfo.d.ts.map +1 -1
- package/esm/src/types/entities/getEntityInfo.js +16 -12
- package/esm/src/types/entities.d.ts +0 -5
- package/esm/src/types/entities.d.ts.map +1 -1
- package/esm/src/types/entities.js +0 -32
- package/esm/src/utils/box.js +1 -1
- package/esm/src/utils/bundle-manifest-init.d.ts +0 -2
- package/esm/src/utils/bundle-manifest-init.d.ts.map +1 -1
- package/esm/src/utils/bundle-manifest-init.js +0 -19
- package/esm/src/utils/bundle-manifest-kv.d.ts +2 -1
- package/esm/src/utils/bundle-manifest-kv.d.ts.map +1 -1
- package/esm/src/utils/bundle-manifest-redis.d.ts +2 -1
- package/esm/src/utils/bundle-manifest-redis.d.ts.map +1 -1
- package/esm/src/utils/cache-dir.d.ts.map +1 -1
- package/esm/src/utils/cache-dir.js +4 -5
- package/esm/src/utils/cache-file-ops.d.ts.map +1 -1
- package/esm/src/utils/cache-file-ops.js +2 -1
- package/esm/src/utils/circuit-breaker.d.ts +3 -9
- package/esm/src/utils/circuit-breaker.d.ts.map +1 -1
- package/esm/src/utils/circuit-breaker.js +13 -21
- package/esm/src/utils/constants/cache.js +2 -2
- package/esm/src/utils/env-loader.d.ts.map +1 -1
- package/esm/src/utils/env-loader.js +2 -1
- package/esm/src/utils/file-discovery.d.ts +3 -2
- package/esm/src/utils/file-discovery.d.ts.map +1 -1
- package/esm/src/utils/file-discovery.js +4 -4
- package/esm/src/utils/hash-utils.d.ts.map +1 -1
- package/esm/src/utils/hash-utils.js +5 -2
- package/esm/src/utils/import-lockfile.d.ts.map +1 -1
- package/esm/src/utils/import-lockfile.js +10 -4
- package/esm/src/utils/logger/core.d.ts.map +1 -1
- package/esm/src/utils/logger/core.js +2 -1
- package/esm/src/utils/logger/logger.d.ts +5 -5
- package/esm/src/utils/logger/logger.d.ts.map +1 -1
- package/esm/src/utils/logger/logger.js +12 -2
- package/esm/src/utils/lru-wrapper.d.ts +2 -1
- package/esm/src/utils/lru-wrapper.d.ts.map +1 -1
- package/esm/src/utils/lru-wrapper.js +3 -1
- package/esm/src/utils/memoize.d.ts.map +1 -1
- package/esm/src/utils/memoize.js +2 -2
- package/esm/src/utils/memory/profiler.d.ts.map +1 -1
- package/esm/src/utils/memory/profiler.js +15 -7
- package/esm/src/utils/parallel.d.ts.map +1 -1
- package/esm/src/utils/parallel.js +4 -1
- package/esm/src/utils/path-utils.d.ts.map +1 -1
- package/esm/src/utils/path-utils.js +13 -7
- package/esm/src/utils/platform.d.ts.map +1 -1
- package/esm/src/utils/platform.js +2 -1
- package/esm/src/utils/redis-client.d.ts +2 -4
- package/esm/src/utils/redis-client.d.ts.map +1 -1
- package/esm/src/utils/redis-client.js +9 -27
- package/esm/src/utils/route-path-utils.d.ts +3 -4
- package/esm/src/utils/route-path-utils.d.ts.map +1 -1
- package/esm/src/utils/route-path-utils.js +1 -1
- package/esm/src/workflow/api.d.ts +22 -2
- package/esm/src/workflow/api.d.ts.map +1 -1
- package/esm/src/workflow/api.js +14 -9
- package/esm/src/workflow/backends/memory.d.ts +2 -1
- package/esm/src/workflow/backends/memory.d.ts.map +1 -1
- package/esm/src/workflow/backends/memory.js +12 -7
- package/esm/src/workflow/backends/redis/index.d.ts.map +1 -1
- package/esm/src/workflow/backends/redis/index.js +35 -19
- package/esm/src/workflow/blob/veryfront-cloud-storage.d.ts +41 -0
- package/esm/src/workflow/blob/veryfront-cloud-storage.d.ts.map +1 -0
- package/esm/src/workflow/blob/veryfront-cloud-storage.js +348 -0
- package/esm/src/workflow/claude-code/agent.d.ts +15 -0
- package/esm/src/workflow/claude-code/agent.d.ts.map +1 -1
- package/esm/src/workflow/claude-code/agent.js +20 -7
- package/esm/src/workflow/claude-code/event-publisher.d.ts +2 -0
- package/esm/src/workflow/claude-code/event-publisher.d.ts.map +1 -1
- package/esm/src/workflow/claude-code/event-publisher.js +31 -10
- package/esm/src/workflow/claude-code/react/use-claude-code-stream.d.ts.map +1 -1
- package/esm/src/workflow/claude-code/react/use-claude-code-stream.js +11 -3
- package/esm/src/workflow/claude-code/react/use-claude-code-websocket.d.ts.map +1 -1
- package/esm/src/workflow/claude-code/react/use-claude-code-websocket.js +12 -4
- package/esm/src/workflow/claude-code/tool.d.ts +7 -7
- package/esm/src/workflow/claude-code/tool.js +3 -3
- package/esm/src/workflow/claude-code/types.d.ts +7 -6
- package/esm/src/workflow/claude-code/types.d.ts.map +1 -1
- package/esm/src/workflow/claude-code/websocket-publisher.d.ts +0 -15
- package/esm/src/workflow/claude-code/websocket-publisher.d.ts.map +1 -1
- package/esm/src/workflow/claude-code/websocket-publisher.js +28 -16
- package/esm/src/workflow/claude-code/workspace-sync.d.ts.map +1 -1
- package/esm/src/workflow/claude-code/workspace-sync.js +27 -16
- package/esm/src/workflow/dsl/branch.d.ts.map +1 -1
- package/esm/src/workflow/dsl/branch.js +7 -4
- package/esm/src/workflow/dsl/loop.d.ts.map +1 -1
- package/esm/src/workflow/dsl/loop.js +16 -7
- package/esm/src/workflow/dsl/map.d.ts.map +1 -1
- package/esm/src/workflow/dsl/map.js +9 -4
- package/esm/src/workflow/dsl/parallel.d.ts.map +1 -1
- package/esm/src/workflow/dsl/parallel.js +7 -2
- package/esm/src/workflow/dsl/step.d.ts.map +1 -1
- package/esm/src/workflow/dsl/step.js +5 -2
- package/esm/src/workflow/dsl/sub-workflow.d.ts.map +1 -1
- package/esm/src/workflow/dsl/sub-workflow.js +4 -1
- package/esm/src/workflow/dsl/validation.d.ts.map +1 -1
- package/esm/src/workflow/dsl/validation.js +2 -1
- package/esm/src/workflow/dsl/wait.d.ts.map +1 -1
- package/esm/src/workflow/dsl/wait.js +2 -1
- package/esm/src/workflow/dsl/workflow.d.ts.map +1 -1
- package/esm/src/workflow/dsl/workflow.js +6 -4
- package/esm/src/workflow/executor/dag/graph.d.ts +2 -2
- package/esm/src/workflow/executor/dag/graph.d.ts.map +1 -1
- package/esm/src/workflow/executor/dag/graph.js +5 -2
- package/esm/src/workflow/executor/dag/index.d.ts.map +1 -1
- package/esm/src/workflow/executor/dag/index.js +9 -4
- package/esm/src/workflow/executor/dag/utils.d.ts.map +1 -1
- package/esm/src/workflow/executor/dag/utils.js +1 -0
- package/esm/src/workflow/executor/step-executor.d.ts.map +1 -1
- package/esm/src/workflow/executor/step-executor.js +24 -11
- package/esm/src/workflow/executor/workflow-executor.d.ts.map +1 -1
- package/esm/src/workflow/executor/workflow-executor.js +67 -34
- package/esm/src/workflow/react/use-approval.d.ts.map +1 -1
- package/esm/src/workflow/react/use-approval.js +9 -2
- package/esm/src/workflow/react/use-workflow-list.d.ts.map +1 -1
- package/esm/src/workflow/react/use-workflow-list.js +10 -3
- package/esm/src/workflow/react/use-workflow-start.d.ts.map +1 -1
- package/esm/src/workflow/react/use-workflow-start.js +5 -1
- package/esm/src/workflow/react/use-workflow.d.ts.map +1 -1
- package/esm/src/workflow/react/use-workflow.js +17 -5
- package/esm/src/workflow/registry.js +2 -2
- package/esm/src/workflow/runtime/approval-manager.d.ts.map +1 -1
- package/esm/src/workflow/runtime/approval-manager.js +9 -6
- package/esm/src/workflow/types.d.ts +0 -1
- package/esm/src/workflow/types.d.ts.map +1 -1
- package/esm/src/workflow/types.js +20 -11
- package/esm/src/workflow/worker/dynamic-job-entrypoint.d.ts +26 -0
- package/esm/src/workflow/worker/dynamic-job-entrypoint.d.ts.map +1 -1
- package/esm/src/workflow/worker/dynamic-job-entrypoint.js +8 -8
- package/esm/src/workflow/worker/executors/k8s.d.ts.map +1 -1
- package/esm/src/workflow/worker/executors/k8s.js +5 -2
- package/esm/src/workflow/worker/executors/process.d.ts.map +1 -1
- package/esm/src/workflow/worker/executors/process.js +41 -30
- package/esm/src/workflow/worker/job-entrypoint.d.ts +21 -0
- package/esm/src/workflow/worker/job-entrypoint.d.ts.map +1 -1
- package/esm/src/workflow/worker/job-entrypoint.js +7 -7
- package/esm/src/workflow/worker/job-manager.d.ts.map +1 -1
- package/esm/src/workflow/worker/job-manager.js +11 -4
- package/esm/src/workflow/worker/workflow-worker.d.ts.map +1 -1
- package/esm/src/workflow/worker/workflow-worker.js +15 -7
- package/package.json +1 -1
- package/src/_dnt.polyfills.ts +147 -147
- package/src/cli/commands/dev/command.ts +0 -1
- package/src/cli/commands/generate/integration-generator.ts +369 -34
- package/src/cli/commands/start/command.ts +0 -1
- package/src/cli/mcp/server.ts +18 -5
- package/src/cli/shared/server-startup.ts +0 -2
- package/src/cli/templates/index.ts +1 -17
- package/src/cli/templates/manifest.js +12 -12
- package/src/cli/ui/ansi.ts +1 -1
- package/src/deno.js +1 -1
- package/src/src/agent/ai-defaults.ts +4 -64
- package/src/src/agent/chat-handler.ts +39 -21
- package/src/src/agent/factory.ts +22 -6
- package/src/src/agent/index.ts +3 -9
- package/src/src/agent/memory/redis.ts +3 -2
- package/src/src/agent/react/use-agent.ts +4 -4
- package/src/src/agent/react/use-chat/browser-inference/browser-engine.ts +11 -2
- package/src/src/agent/react/use-chat/browser-inference/types.ts +6 -6
- package/src/src/agent/react/use-chat/browser-inference/worker-client.ts +1 -1
- package/src/src/agent/react/use-chat/streaming/handler.ts +10 -5
- package/src/src/agent/react/use-chat/types.ts +2 -2
- package/src/src/agent/react/use-chat/use-chat.ts +4 -4
- package/src/src/agent/react/use-voice-input.ts +2 -2
- package/src/src/agent/runtime/index.ts +16 -9
- package/src/src/agent/runtime/input-utils.ts +2 -1
- package/src/src/agent/runtime/model-resolution.ts +13 -0
- package/src/src/agent/runtime/tool-helpers.ts +2 -1
- package/src/src/agent/types.ts +16 -5
- package/src/src/build/bundler/code-splitter/entry-points.ts +1 -1
- package/src/src/build/bundler/code-splitter/index.ts +4 -2
- package/src/src/build/compiler/mdx-compiler/directory-compiler.ts +1 -1
- package/src/src/build/compiler/mdx-compiler/frontmatter-parser.ts +5 -3
- package/src/src/build/compiler/mdx-compiler/mdx-processor.ts +1 -1
- package/src/src/build/compiler/mdx-compiler/types.ts +1 -1
- package/src/src/build/compiler/mdx-compiler/validator.ts +4 -3
- package/src/src/build/compiler/mdx-compiler/watcher.ts +2 -1
- package/src/src/build/compiler/mdx-to-js.ts +1 -1
- package/src/src/build/config/environment.ts +9 -2
- package/src/src/build/embedded/preset.ts +7 -7
- package/src/src/build/production-build/asset-generation.ts +2 -2
- package/src/src/build/production-build/build/build-cleanup.ts +2 -9
- package/src/src/build/production-build/client-runtime.ts +6 -4
- package/src/src/build/production-build/templates.ts +2 -2
- package/src/src/cache/backends/api.ts +14 -5
- package/src/src/cache/backends/disk.ts +2 -1
- package/src/src/cache/backends/factory.ts +3 -1
- package/src/src/cache/backends/memory.ts +6 -3
- package/src/src/cache/cache-key-builder.ts +6 -4
- package/src/src/cache/config-hash.ts +1 -1
- package/src/src/cache/dependency-graph.ts +2 -1
- package/src/src/cache/distributed-cache-init.ts +1 -1
- package/src/src/cache/keys/builders/file.ts +4 -3
- package/src/src/cache/keys/builders/render.ts +7 -2
- package/src/src/cache/registry.ts +8 -2
- package/src/src/config/environment-config.ts +11 -2
- package/src/src/config/loader.ts +21 -4
- package/src/src/config/runtime-config.ts +4 -1
- package/src/src/data/data-fetcher.ts +1 -2
- package/src/src/data/static-data-fetcher.ts +2 -2
- package/src/src/discovery/file-discovery.ts +3 -2
- package/src/src/discovery/handlers/skill-handler.ts +2 -2
- package/src/src/discovery/import-rewriter.ts +8 -5
- package/src/src/discovery/transpiler.ts +8 -4
- package/src/src/embedding/chunk.ts +8 -2
- package/src/src/embedding/embedding.ts +4 -3
- package/src/src/embedding/index.ts +11 -10
- package/src/src/embedding/model-resolution.ts +23 -0
- package/src/src/embedding/rag-store.ts +431 -0
- package/src/src/embedding/react/use-uploads.ts +9 -6
- package/src/src/embedding/resolve.ts +6 -1
- package/src/src/embedding/types.ts +29 -17
- package/src/src/embedding/upload-handler.ts +94 -9
- package/src/src/embedding/upload-loader.ts +1 -1
- package/src/src/embedding/veryfront-cloud/provider.ts +42 -0
- package/src/src/embedding/veryfront-cloud/rag-store.ts +599 -0
- package/src/src/errors/catalog/general-errors.ts +11 -0
- package/src/src/errors/error-context.ts +3 -0
- package/src/src/errors/error-handlers.ts +3 -2
- package/src/src/errors/error-registry.ts +9 -0
- package/src/src/errors/index.ts +1 -0
- package/src/src/errors/logging.ts +8 -6
- package/src/src/errors/types.ts +3 -1
- package/src/src/errors/veryfront-error.ts +1 -2
- package/src/src/html/dev-scripts.ts +1 -1
- package/src/src/html/hydration-script-builder/dev-error-logger.ts +1 -1
- package/src/src/html/hydration-script-builder/dev-scripts.ts +1 -1
- package/src/src/html/hydration-script-builder/templates/renderer.ts +4 -3
- package/src/src/html/hydration-script-builder/templates/router.ts +5 -4
- package/src/src/html/styles-builder/css-hash-cache.ts +9 -8
- package/src/src/html/styles-builder/css-pregeneration.ts +1 -1
- package/src/src/html/styles-builder/index.ts +0 -1
- package/src/src/html/styles-builder/plugin-loader.ts +48 -28
- package/src/src/html/styles-builder/project-css-cache.ts +3 -3
- package/src/src/html/styles-builder/tailwind-compiler-cache.ts +12 -5
- package/src/src/html/styles-builder/tailwind-compiler-utils.ts +8 -6
- package/src/src/html/styles-builder/tailwind-compiler.ts +6 -11
- package/src/src/html/utils.ts +3 -3
- package/src/src/integrations/endpoint-executor.ts +5 -2
- package/src/src/integrations/types.ts +1 -1
- package/src/src/issues/core.ts +8 -5
- package/src/src/mcp/server.ts +4 -3
- package/src/src/mcp/types.ts +2 -3
- package/src/src/middleware/builtin/security/redis-rate-limit.ts +2 -1
- package/src/src/middleware/builtin/timeout.ts +1 -1
- package/src/src/modules/component-registry/registry.ts +5 -3
- package/src/src/modules/import-map/default-import-map.ts +1 -1
- package/src/src/modules/import-map/loader.ts +6 -6
- package/src/src/modules/import-map/preloader.ts +12 -9
- package/src/src/modules/import-map/resolver.ts +2 -1
- package/src/src/modules/react-loader/ssr-module-loader/cache/memory.ts +1 -1
- package/src/src/modules/react-loader/ssr-module-loader/concurrency/semaphore.ts +5 -1
- package/src/src/modules/react-loader/ssr-module-loader/cross-project-import-loader.ts +9 -6
- package/src/src/modules/react-loader/ssr-module-loader/http-bundle-helpers.ts +9 -4
- package/src/src/modules/react-loader/ssr-module-loader/loader.ts +1 -1
- package/src/src/modules/react-loader/ssr-module-loader/preflight-imports.ts +3 -2
- package/src/src/modules/react-loader/ssr-module-loader/ssr-cache-manager.ts +21 -11
- package/src/src/modules/react-loader/ssr-module-loader/vf-module-resolver.ts +11 -2
- package/src/src/modules/react-loader/unified-loader.ts +2 -2
- package/src/src/modules/server/module-batch-handler.ts +12 -6
- package/src/src/modules/server/module-server.ts +12 -44
- package/src/src/modules/server/ssr-import-rewriter.ts +1 -1
- package/src/src/modules/server/websocket-handler.ts +1 -1
- package/src/src/oauth/providers/base.ts +49 -15
- package/src/src/oauth/token-store/memory.ts +5 -5
- package/src/src/observability/auto-instrument/http-instrumentation.ts +2 -2
- package/src/src/observability/auto-instrument/types.ts +3 -3
- package/src/src/observability/error-collector.ts +7 -5
- package/src/src/observability/log-buffer.ts +4 -3
- package/src/src/observability/metrics/config.ts +4 -3
- package/src/src/observability/simple-metrics/metrics-recorder.ts +7 -4
- package/src/src/observability/simple-metrics/otel-instruments.ts +2 -2
- package/src/src/observability/tracing/config.ts +2 -2
- package/src/src/platform/adapters/detect.ts +0 -3
- package/src/src/platform/adapters/fs/factory.ts +2 -10
- package/src/src/platform/adapters/fs/github/adapter.ts +2 -1
- package/src/src/platform/adapters/fs/github/github-api-client.ts +6 -2
- package/src/src/platform/adapters/fs/github/stat-operations.ts +2 -1
- package/src/src/platform/adapters/fs/github/types.ts +13 -6
- package/src/src/platform/adapters/fs/veryfront/adapter-content-context.ts +7 -4
- package/src/src/platform/adapters/fs/veryfront/adapter.ts +13 -6
- package/src/src/platform/adapters/fs/veryfront/api-search-circuit-breaker.ts +1 -1
- package/src/src/platform/adapters/fs/veryfront/content-metrics.ts +1 -1
- package/src/src/platform/adapters/fs/veryfront/file-list-index.ts +2 -1
- package/src/src/platform/adapters/fs/veryfront/in-flight-dedupe.ts +3 -3
- package/src/src/platform/adapters/fs/veryfront/multi-project-adapter.ts +16 -9
- package/src/src/platform/adapters/fs/veryfront/proxy-manager.ts +18 -21
- package/src/src/platform/adapters/fs/veryfront/read-operations-helpers.ts +6 -5
- package/src/src/platform/adapters/fs/veryfront/read-operations.ts +9 -7
- package/src/src/platform/adapters/fs/veryfront/retry.ts +1 -0
- package/src/src/platform/adapters/fs/veryfront/stat-operations-helpers.ts +1 -1
- package/src/src/platform/adapters/fs/veryfront/stat-operations.ts +7 -3
- package/src/src/platform/adapters/fs/veryfront/types.ts +1 -4
- package/src/src/platform/adapters/fs/veryfront/websocket-manager.ts +37 -19
- package/src/src/platform/adapters/redis/modules.ts +10 -4
- package/src/src/platform/adapters/registry.ts +21 -18
- package/src/src/platform/adapters/runtime/bun/filesystem-adapter.ts +5 -3
- package/src/src/platform/adapters/runtime/deno/adapter.ts +23 -12
- package/src/src/platform/adapters/runtime/node/filesystem-adapter.ts +2 -2
- package/src/src/platform/adapters/runtime/node/http-server.ts +15 -5
- package/src/src/platform/adapters/runtime/node/websocket-adapter.ts +8 -5
- package/src/src/platform/adapters/runtime/shared/server-lifecycle.ts +1 -1
- package/src/src/platform/adapters/runtime/shared/shared-watcher.ts +7 -4
- package/src/src/platform/adapters/veryfront-api-client/client.ts +12 -6
- package/src/src/platform/adapters/veryfront-api-client/operations.ts +15 -4
- package/src/src/platform/adapters/veryfront-api-client/retry-handler.ts +1 -0
- package/src/src/platform/cloud/resolver.ts +104 -0
- package/src/src/platform/compat/console/index.ts +2 -1
- package/src/src/platform/compat/dynamic-import.ts +3 -2
- package/src/src/platform/compat/esbuild-init.ts +7 -6
- package/src/src/platform/compat/esbuild.ts +12 -13
- package/src/src/platform/compat/fs.ts +30 -15
- package/src/src/platform/compat/http/node-server.ts +5 -3
- package/src/src/platform/compat/http/responses.ts +4 -2
- package/src/src/platform/compat/http/websocket.ts +4 -3
- package/src/src/platform/compat/opaque-deps.ts +6 -1
- package/src/src/platform/compat/path/basic-operations.ts +5 -9
- package/src/src/platform/compat/path/parse-format.ts +5 -5
- package/src/src/platform/compat/path/resolution.ts +6 -10
- package/src/src/platform/compat/path/runtime.ts +2 -2
- package/src/src/platform/compat/path/url-conversion.ts +2 -1
- package/src/src/platform/compat/process.ts +78 -49
- package/src/src/platform/compat/react-paths.ts +2 -2
- package/src/src/platform/compat/runtime.ts +2 -1
- package/src/src/platform/compat/stdin.ts +10 -8
- package/src/src/platform/core-platform.ts +33 -10
- package/src/src/provider/local/ai-sdk-adapter.ts +7 -5
- package/src/src/provider/local/env.ts +6 -4
- package/src/src/provider/local/local-embedding-engine.ts +10 -5
- package/src/src/provider/local/local-engine.ts +76 -41
- package/src/src/provider/model-registry.ts +36 -5
- package/src/src/provider/veryfront-cloud/provider.ts +62 -0
- package/src/src/provider/veryfront-cloud/shared.ts +136 -0
- package/src/src/proxy/cache/memory-cache.ts +3 -2
- package/src/src/proxy/cache/redis-cache.ts +28 -19
- package/src/src/proxy/cache/resilient-cache.ts +11 -1
- package/src/src/proxy/handler.ts +6 -4
- package/src/src/proxy/logger.ts +6 -5
- package/src/src/proxy/main.ts +11 -6
- package/src/src/proxy/oauth-client.ts +9 -6
- package/src/src/proxy/renderer-router.ts +1 -1
- package/src/src/proxy/token-manager.ts +13 -10
- package/src/src/proxy/tracing.ts +6 -5
- package/src/src/react/compat/config-generator.ts +1 -1
- package/src/src/react/compat/hooks-adapter.ts +44 -23
- package/src/src/react/compat/ssr-adapter/server-loader.ts +7 -2
- package/src/src/react/compat/version-detector/feature-detector.ts +1 -1
- package/src/src/react/compat/version-detector/version-cache.ts +9 -5
- package/src/src/react/components/LayoutComponent.tsx +1 -1
- package/src/src/react/components/ProviderComponent.tsx +1 -1
- package/src/src/react/components/ai/agent-card.tsx +3 -3
- package/src/src/react/components/ai/chat/components/code-block.tsx +2 -1
- package/src/src/react/components/ai/chat/components/message-actions.tsx +2 -2
- package/src/src/react/components/ai/chat/components/reasoning.tsx +1 -1
- package/src/src/react/components/ai/chat/components/upgrade-cta.tsx +4 -3
- package/src/src/react/components/ai/chat/components/uploads-panel.tsx +17 -3
- package/src/src/react/components/ai/chat/composition/message.tsx +5 -4
- package/src/src/react/components/ai/chat/contexts/chat-context.tsx +4 -1
- package/src/src/react/components/ai/chat/contexts/composer-context.tsx +4 -1
- package/src/src/react/components/ai/chat/contexts/message-context.tsx +4 -1
- package/src/src/react/components/ai/chat/contexts/thread-list-context.tsx +4 -1
- package/src/src/react/components/ai/chat/hooks/use-threads.ts +2 -2
- package/src/src/react/components/ai/theme.ts +2 -2
- package/src/src/react/head-collector.ts +1 -1
- package/src/src/react/primitives/input-box.tsx +2 -4
- package/src/src/rendering/app-reserved.ts +2 -2
- package/src/src/rendering/app-route-resolver.ts +10 -9
- package/src/src/rendering/cache/cache-coordinator.ts +4 -1
- package/src/src/rendering/cache/stores/api-store.ts +23 -14
- package/src/src/rendering/cache/stores/filesystem-store.ts +10 -8
- package/src/src/rendering/cache/stores/memory-store.ts +1 -1
- package/src/src/rendering/cache/stores/redis-store.ts +15 -7
- package/src/src/rendering/component-handling.ts +2 -2
- package/src/src/rendering/context/render-context.ts +15 -6
- package/src/src/rendering/element-validator/primitive-checks.ts +3 -2
- package/src/src/rendering/factories/service-factories.ts +3 -1
- package/src/src/rendering/layouts/layout-applicator.ts +8 -5
- package/src/src/rendering/layouts/layout-collector.ts +14 -7
- package/src/src/rendering/layouts/utils/app-resolver.ts +9 -6
- package/src/src/rendering/layouts/utils/component-loader.ts +1 -1
- package/src/src/rendering/layouts/utils/hash-calculator.ts +7 -5
- package/src/src/rendering/orchestrator/css-cache.ts +2 -2
- package/src/src/rendering/orchestrator/css-candidate-manifest.ts +1 -1
- package/src/src/rendering/orchestrator/file-resolver/candidates.ts +2 -2
- package/src/src/rendering/orchestrator/html.ts +9 -5
- package/src/src/rendering/orchestrator/layout.ts +42 -31
- package/src/src/rendering/orchestrator/lifecycle.ts +10 -2
- package/src/src/rendering/orchestrator/module-collection.ts +2 -3
- package/src/src/rendering/orchestrator/module-loader/esm-rewriter.ts +4 -1
- package/src/src/rendering/orchestrator/module-loader/index.ts +11 -8
- package/src/src/rendering/orchestrator/pipeline.ts +36 -25
- package/src/src/rendering/page-renderer.ts +2 -2
- package/src/src/rendering/page-rendering.ts +4 -2
- package/src/src/rendering/page-resolution/page-resolver.ts +5 -0
- package/src/src/rendering/renderer-concurrency.ts +6 -5
- package/src/src/rendering/renderer.ts +16 -31
- package/src/src/rendering/router-detection.ts +40 -9
- package/src/src/rendering/rsc/server-renderer/component-detector.ts +1 -0
- package/src/src/rendering/rsc/server-renderer/prop-serializer.ts +2 -1
- package/src/src/rendering/rsc/server-renderer/rsc-renderer.ts +1 -0
- package/src/src/rendering/rsc/server-renderer/tree-processor.ts +1 -0
- package/src/src/rendering/script-page-handling.ts +3 -2
- package/src/src/rendering/shared/context-aware-cache.ts +7 -2
- package/src/src/rendering/shared/shared-services.ts +4 -1
- package/src/src/rendering/snippet-renderer.ts +46 -37
- package/src/src/rendering/ssr-globals/dom-stubs.ts +10 -4
- package/src/src/rendering/ssr-globals/fetch-interceptor.ts +6 -4
- package/src/src/rendering/ssr-globals/index.ts +2 -1
- package/src/src/rendering/ssr-renderer.ts +9 -2
- package/src/src/rendering/utils/stream-utils.ts +2 -2
- package/src/src/routing/api/api-route-matcher.ts +10 -6
- package/src/src/routing/api/handler.ts +7 -4
- package/src/src/routing/api/index.ts +1 -1
- package/src/src/routing/api/module-loader/esbuild-plugin.ts +4 -3
- package/src/src/routing/api/module-loader/http-validator.ts +2 -1
- package/src/src/routing/api/module-loader/loader.ts +15 -14
- package/src/src/routing/api/openapi/path-utils.ts +1 -1
- package/src/src/routing/api/openapi/spec-generator.ts +9 -8
- package/src/src/routing/api/openapi/types.ts +5 -5
- package/src/src/routing/api/route-discovery.ts +3 -3
- package/src/src/routing/index.ts +1 -1
- package/src/src/routing/matchers/index.ts +1 -1
- package/src/src/routing/matchers/pattern-route-matcher.ts +0 -3
- package/src/src/sandbox/index.ts +1 -1
- package/src/src/sandbox/sandbox.ts +58 -23
- package/src/src/security/client/html-sanitizer.ts +5 -16
- package/src/src/security/csrf/helpers.ts +4 -4
- package/src/src/security/http/auth.ts +3 -3
- package/src/src/security/http/base-handler.ts +2 -2
- package/src/src/security/http/middleware/config-loader.ts +2 -1
- package/src/src/security/http/response/fluent-methods.ts +7 -3
- package/src/src/security/http/response/security-handler.ts +8 -2
- package/src/src/security/path-validation/canonical.ts +2 -1
- package/src/src/security/path-validation/index.ts +2 -1
- package/src/src/security/path-validation/rules.ts +1 -2
- package/src/src/security/secure-fs.ts +8 -2
- package/src/src/server/bootstrap.ts +5 -5
- package/src/src/server/build-app-route-renderer.ts +3 -2
- package/src/src/server/build-routes.ts +2 -2
- package/src/src/server/build-service-worker.ts +2 -1
- package/src/src/server/context/cache-invalidation.ts +11 -4
- package/src/src/server/context/enriched-context.ts +5 -4
- package/src/src/server/dev-server/error-overlay/html-template.ts +11 -2
- package/src/src/server/dev-server/file-watch-setup.ts +23 -4
- package/src/src/server/dev-server/middleware.ts +11 -8
- package/src/src/server/dev-server/request-handler.ts +11 -7
- package/src/src/server/dev-server/route-discovery.ts +2 -2
- package/src/src/server/dev-server/server.ts +12 -15
- package/src/src/server/dev-server/types.ts +0 -2
- package/src/src/server/dev-ui/manifest.js +10 -10
- package/src/src/server/handlers/dev/dashboard/api.ts +28 -9
- package/src/src/server/handlers/dev/dashboard/ui-handler.ts +6 -6
- package/src/src/server/handlers/dev/debug-context.handler.ts +4 -2
- package/src/src/server/handlers/dev/endpoints.handler.ts +3 -1
- package/src/src/server/handlers/dev/files/esbuild-plugins.ts +10 -5
- package/src/src/server/handlers/dev/files/path-validator.ts +2 -1
- package/src/src/server/handlers/dev/framework-candidates.generated.ts +13 -6
- package/src/src/server/handlers/dev/projects/ui-handler.ts +6 -6
- package/src/src/server/handlers/dev/scripts/hmr-scripts.ts +13 -13
- package/src/src/server/handlers/dev/shared/ui-module-transform.ts +1 -1
- package/src/src/server/handlers/dev/styles-candidate-scanner.ts +4 -3
- package/src/src/server/handlers/dev/styles-css.handler.ts +2 -1
- package/src/src/server/handlers/monitoring/client-log.handler.ts +9 -3
- package/src/src/server/handlers/monitoring/health.handler.ts +4 -2
- package/src/src/server/handlers/monitoring/memory.handler.ts +9 -1
- package/src/src/server/handlers/monitoring/metrics.handler.ts +3 -0
- package/src/src/server/handlers/preview/hmr-client-manager.ts +3 -12
- package/src/src/server/handlers/preview/hmr-message-router.ts +3 -3
- package/src/src/server/handlers/preview/hmr-ping-keepalive.ts +3 -3
- package/src/src/server/handlers/preview/hmr.handler.ts +8 -8
- package/src/src/server/handlers/preview/markdown-html-generator.ts +3 -3
- package/src/src/server/handlers/preview/markdown-preview.handler.ts +6 -5
- package/src/src/server/handlers/request/api/app-router-resolver.ts +130 -51
- package/src/src/server/handlers/request/api/pages-api-handler.ts +2 -2
- package/src/src/server/handlers/request/module/page-data-endpoint-handler.ts +1 -1
- package/src/src/server/handlers/request/openapi-docs.handler.ts +4 -1
- package/src/src/server/handlers/request/openapi.handler.ts +8 -5
- package/src/src/server/handlers/request/rsc/index.ts +1 -0
- package/src/src/server/handlers/request/ssr/error-page-fallback.ts +8 -6
- package/src/src/server/handlers/request/ssr/not-found-fallback.ts +8 -5
- package/src/src/server/handlers/request/ssr/ssr.handler.ts +2 -2
- package/src/src/server/handlers/response/cors.ts +2 -82
- package/src/src/server/handlers/studio/bridge-modules.handler.ts +4 -9
- package/src/src/server/index.ts +20 -26
- package/src/src/server/production-server.ts +22 -5
- package/src/src/server/project-env/cache.ts +2 -2
- package/src/src/server/project-env/fetcher.ts +2 -1
- package/src/src/server/reload-notifier.ts +1 -1
- package/src/src/server/runtime-handler/adapter-factory.ts +2 -2
- package/src/src/server/runtime-handler/environment-resolution.ts +2 -2
- package/src/src/server/runtime-handler/handler-context-builder.ts +2 -2
- package/src/src/server/runtime-handler/index.ts +16 -16
- package/src/src/server/runtime-handler/isolation.ts +1 -1
- package/src/src/server/runtime-handler/local-project-discovery.ts +14 -4
- package/src/src/server/runtime-handler/project-isolation.ts +1 -1
- package/src/src/server/runtime-handler/project-resolution.ts +4 -4
- package/src/src/server/runtime-handler/request-lifecycle.ts +1 -1
- package/src/src/server/runtime-handler/request-tracker.ts +9 -3
- package/src/src/server/runtime-handler/request-utils.ts +1 -1
- package/src/src/server/runtime-handler/tracing.ts +1 -1
- package/src/src/server/services/rsc/endpoints/action-handler.ts +2 -1
- package/src/src/server/services/rsc/endpoints/endpoint-router.ts +12 -4
- package/src/src/server/services/rsc/endpoints/handler-registry.ts +9 -4
- package/src/src/server/services/rsc/endpoints/script-handlers.ts +2 -2
- package/src/src/server/services/rsc/endpoints/types.ts +1 -0
- package/src/src/server/services/rsc/orchestrators/component-resolver.ts +2 -1
- package/src/src/server/services/rsc/orchestrators/manifest-handler.ts +1 -1
- package/src/src/server/services/rsc/orchestrators/page-handler.ts +2 -1
- package/src/src/server/services/rsc/orchestrators/render-handler.ts +3 -3
- package/src/src/server/services/rsc/orchestrators/stream-handler.ts +1 -1
- package/src/src/server/services/static/static-file.service.ts +7 -4
- package/src/src/server/shared/renderer/adapter.ts +9 -4
- package/src/src/server/utils/domain-lookup.ts +1 -1
- package/src/src/server/utils/error-html.ts +1 -1
- package/src/src/skill/allowed-tools.ts +1 -1
- package/src/src/skill/executor.ts +21 -23
- package/src/src/skill/parser.ts +5 -5
- package/src/src/skill/path-safety.ts +11 -2
- package/src/src/skill/tools.ts +5 -2
- package/src/src/studio/bridge/bridge-bundle.generated.ts +1 -1
- package/src/src/task/discovery.ts +81 -7
- package/src/src/tool/factory.ts +1 -2
- package/src/src/tool/schema/zod-json-schema.ts +14 -8
- package/src/src/tool/types.ts +4 -4
- package/src/src/transforms/esm/bundle-deps-validator.ts +14 -7
- package/src/src/transforms/esm/bundle-manifest.ts +9 -5
- package/src/src/transforms/esm/bundle-recovery.ts +19 -15
- package/src/src/transforms/esm/http-bundler.ts +6 -20
- package/src/src/transforms/esm/http-cache-helpers.ts +2 -1
- package/src/src/transforms/esm/http-cache-invariants.ts +1 -30
- package/src/src/transforms/esm/http-cache-types.ts +2 -2
- package/src/src/transforms/esm/http-cache-wrapper.ts +6 -4
- package/src/src/transforms/esm/http-cache.ts +25 -17
- package/src/src/transforms/esm/import-parser.ts +11 -6
- package/src/src/transforms/esm/in-flight-manager.ts +15 -12
- package/src/src/transforms/esm/package-registry.ts +2 -22
- package/src/src/transforms/esm/source-url-embed.ts +2 -2
- package/src/src/transforms/esm/specifier-resolver.ts +1 -1
- package/src/src/transforms/esm/transform-cache.ts +5 -154
- package/src/src/transforms/import-rewriter/strategies/import-map-strategy.ts +4 -2
- package/src/src/transforms/md/utils.ts +1 -1
- package/src/src/transforms/mdx/compiler/import-rewriter.ts +2 -1
- package/src/src/transforms/mdx/esm-module-loader/cache/index.ts +22 -12
- package/src/src/transforms/mdx/esm-module-loader/constants.ts +0 -1
- package/src/src/transforms/mdx/esm-module-loader/import-transformer.ts +13 -5
- package/src/src/transforms/mdx/esm-module-loader/jsx/runtime-loader.ts +5 -6
- package/src/src/transforms/mdx/esm-module-loader/loader-helpers.ts +18 -14
- package/src/src/transforms/mdx/esm-module-loader/metadata/string-parser.ts +2 -1
- package/src/src/transforms/mdx/esm-module-loader/missing-module.ts +4 -3
- package/src/src/transforms/mdx/esm-module-loader/module-fetcher/distributed-cache.ts +18 -15
- package/src/src/transforms/mdx/esm-module-loader/module-fetcher/framework-validator.ts +9 -7
- package/src/src/transforms/mdx/esm-module-loader/module-fetcher/index.ts +2 -1
- package/src/src/transforms/mdx/esm-module-loader/module-fetcher/module-cache.ts +2 -2
- package/src/src/transforms/mdx/esm-module-loader/module-fetcher/render-sessions.ts +1 -1
- package/src/src/transforms/mdx/esm-module-loader/module-writer.ts +30 -21
- package/src/src/transforms/mdx/esm-module-loader/resolution/file-finder.ts +4 -3
- package/src/src/transforms/mdx/esm-module-loader/types.ts +3 -3
- package/src/src/transforms/mdx/esm-module-loader/utils/stub-module.ts +2 -2
- package/src/src/transforms/pipeline/index.ts +3 -2
- package/src/src/transforms/pipeline/stages/compile.ts +5 -1
- package/src/src/transforms/pipeline/stages/ssr-vf-modules/path-resolver.ts +18 -18
- package/src/src/transforms/pipeline/stages/ssr-vf-modules/transform.ts +9 -6
- package/src/src/transforms/plugins/babel-node-positions.ts +2 -2
- package/src/src/transforms/plugins/plugin-loader.ts +1 -1
- package/src/src/transforms/plugins/rehype-node-positions.ts +1 -1
- package/src/src/transforms/shared/cross-project-import.ts +1 -1
- package/src/src/transforms/veryfront-module-urls.ts +0 -4
- package/src/src/types/entities/getEntityInfo.ts +22 -16
- package/src/src/types/entities.ts +0 -45
- package/src/src/utils/box.ts +1 -1
- package/src/src/utils/bundle-manifest-init.ts +0 -25
- package/src/src/utils/bundle-manifest-kv.ts +1 -1
- package/src/src/utils/bundle-manifest-redis.ts +1 -1
- package/src/src/utils/cache-dir.ts +4 -5
- package/src/src/utils/cache-file-ops.ts +2 -1
- package/src/src/utils/circuit-breaker.ts +19 -28
- package/src/src/utils/constants/cache.ts +2 -2
- package/src/src/utils/env-loader.ts +2 -1
- package/src/src/utils/file-discovery.ts +6 -6
- package/src/src/utils/hash-utils.ts +6 -2
- package/src/src/utils/import-lockfile.ts +12 -8
- package/src/src/utils/logger/core.ts +2 -1
- package/src/src/utils/logger/logger.ts +17 -7
- package/src/src/utils/lru-wrapper.ts +5 -2
- package/src/src/utils/memoize.ts +2 -3
- package/src/src/utils/memory/profiler.ts +18 -7
- package/src/src/utils/parallel.ts +5 -3
- package/src/src/utils/path-utils.ts +11 -9
- package/src/src/utils/platform.ts +2 -1
- package/src/src/utils/redis-client.ts +11 -33
- package/src/src/utils/route-path-utils.ts +3 -3
- package/src/src/workflow/api.ts +9 -9
- package/src/src/workflow/backends/memory.ts +13 -6
- package/src/src/workflow/backends/redis/index.ts +32 -16
- package/src/src/workflow/blob/veryfront-cloud-storage.ts +520 -0
- package/src/src/workflow/claude-code/agent.ts +35 -8
- package/src/src/workflow/claude-code/event-publisher.ts +33 -10
- package/src/src/workflow/claude-code/react/use-claude-code-stream.ts +13 -4
- package/src/src/workflow/claude-code/react/use-claude-code-websocket.ts +14 -5
- package/src/src/workflow/claude-code/tool.ts +3 -3
- package/src/src/workflow/claude-code/types.ts +5 -6
- package/src/src/workflow/claude-code/websocket-publisher.ts +32 -17
- package/src/src/workflow/claude-code/workspace-sync.ts +29 -18
- package/src/src/workflow/dsl/branch.ts +7 -2
- package/src/src/workflow/dsl/loop.ts +18 -8
- package/src/src/workflow/dsl/map.ts +9 -2
- package/src/src/workflow/dsl/parallel.ts +7 -4
- package/src/src/workflow/dsl/step.ts +5 -2
- package/src/src/workflow/dsl/sub-workflow.ts +4 -1
- package/src/src/workflow/dsl/validation.ts +3 -1
- package/src/src/workflow/dsl/wait.ts +2 -1
- package/src/src/workflow/dsl/workflow.ts +6 -3
- package/src/src/workflow/executor/dag/graph.ts +6 -3
- package/src/src/workflow/executor/dag/index.ts +10 -7
- package/src/src/workflow/executor/dag/utils.ts +1 -0
- package/src/src/workflow/executor/step-executor.ts +33 -12
- package/src/src/workflow/executor/workflow-executor.ts +73 -33
- package/src/src/workflow/react/use-approval.ts +9 -2
- package/src/src/workflow/react/use-workflow-list.ts +11 -2
- package/src/src/workflow/react/use-workflow-start.ts +5 -3
- package/src/src/workflow/react/use-workflow.ts +18 -5
- package/src/src/workflow/registry.ts +2 -2
- package/src/src/workflow/runtime/approval-manager.ts +10 -6
- package/src/src/workflow/types.ts +24 -12
- package/src/src/workflow/worker/dynamic-job-entrypoint.ts +10 -10
- package/src/src/workflow/worker/executors/k8s.ts +6 -2
- package/src/src/workflow/worker/executors/process.ts +41 -32
- package/src/src/workflow/worker/job-entrypoint.ts +7 -8
- package/src/src/workflow/worker/job-manager.ts +14 -4
- package/src/src/workflow/worker/workflow-worker.ts +14 -6
- package/esm/src/build/vendor-bundle.d.ts +0 -32
- package/esm/src/build/vendor-bundle.d.ts.map +0 -1
- package/esm/src/build/vendor-bundle.js +0 -110
- package/esm/src/build/vendor-cache.d.ts +0 -18
- package/esm/src/build/vendor-cache.d.ts.map +0 -1
- package/esm/src/build/vendor-cache.js +0 -76
- package/esm/src/embedding/upload-store.d.ts +0 -27
- package/esm/src/embedding/upload-store.d.ts.map +0 -1
- package/src/src/build/vendor-bundle.ts +0 -154
- package/src/src/build/vendor-cache.ts +0 -111
- package/src/src/embedding/upload-store.ts +0 -299
|
@@ -4,12 +4,16 @@
|
|
|
4
4
|
* Provides different ways to publish Claude Code events for streaming.
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
+
import { logger as baseLogger } from "../../utils/index.js";
|
|
7
8
|
import type {
|
|
8
9
|
ClaudeCodeEvent,
|
|
9
10
|
ClaudeCodeEventHandler,
|
|
10
11
|
ClaudeCodeEventPublisher,
|
|
11
12
|
ClaudeCodeEventSubscriber,
|
|
12
13
|
} from "./types.js";
|
|
14
|
+
import { INVALID_ARGUMENT } from "../../errors/index.js";
|
|
15
|
+
|
|
16
|
+
const logger = baseLogger.component("redis-event-publisher");
|
|
13
17
|
|
|
14
18
|
// =============================================================================
|
|
15
19
|
// In-Memory Publisher (for testing/single-process)
|
|
@@ -127,6 +131,20 @@ export class RedisEventPublisher implements ClaudeCodeEventPublisher, ClaudeCode
|
|
|
127
131
|
return `${this.config.channelPrefix}:events:${runId}`;
|
|
128
132
|
}
|
|
129
133
|
|
|
134
|
+
private getPublishClient(): RedisClient {
|
|
135
|
+
if (!this.publishClient) {
|
|
136
|
+
throw new Error("Redis publish client not initialized");
|
|
137
|
+
}
|
|
138
|
+
return this.publishClient;
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
private getSubscribeClient(): RedisClient {
|
|
142
|
+
if (!this.subscribeClient) {
|
|
143
|
+
throw new Error("Redis subscribe client not initialized");
|
|
144
|
+
}
|
|
145
|
+
return this.subscribeClient;
|
|
146
|
+
}
|
|
147
|
+
|
|
130
148
|
async publish(event: ClaudeCodeEvent): Promise<void> {
|
|
131
149
|
await this.ensureInitialized();
|
|
132
150
|
|
|
@@ -136,10 +154,10 @@ export class RedisEventPublisher implements ClaudeCodeEventPublisher, ClaudeCode
|
|
|
136
154
|
|
|
137
155
|
const message = JSON.stringify(event);
|
|
138
156
|
|
|
139
|
-
await this.
|
|
157
|
+
await this.getPublishClient().publish(channel, message);
|
|
140
158
|
|
|
141
159
|
if (this.config.debug) {
|
|
142
|
-
|
|
160
|
+
logger.info("Published event", { channel, eventType: event.type });
|
|
143
161
|
}
|
|
144
162
|
}
|
|
145
163
|
|
|
@@ -147,24 +165,27 @@ export class RedisEventPublisher implements ClaudeCodeEventPublisher, ClaudeCode
|
|
|
147
165
|
await this.ensureInitialized();
|
|
148
166
|
|
|
149
167
|
const channel = this.getChannel(runId);
|
|
168
|
+
const subscribeClient = this.getSubscribeClient();
|
|
150
169
|
|
|
151
170
|
const listener = (message: string) => {
|
|
152
171
|
try {
|
|
153
|
-
const
|
|
172
|
+
const parsed: unknown = JSON.parse(message);
|
|
173
|
+
if (!parsed || typeof parsed !== "object") return;
|
|
174
|
+
const event = parsed as ClaudeCodeEvent;
|
|
154
175
|
handler(event);
|
|
155
176
|
} catch (error) {
|
|
156
|
-
|
|
177
|
+
logger.error("Failed to parse event", error);
|
|
157
178
|
}
|
|
158
179
|
};
|
|
159
180
|
|
|
160
|
-
await
|
|
181
|
+
await subscribeClient.subscribe(channel, listener);
|
|
161
182
|
|
|
162
183
|
if (this.config.debug) {
|
|
163
|
-
|
|
184
|
+
logger.info("Subscribed to channel", { channel });
|
|
164
185
|
}
|
|
165
186
|
|
|
166
187
|
return async () => {
|
|
167
|
-
await
|
|
188
|
+
await subscribeClient.unsubscribe(channel);
|
|
168
189
|
};
|
|
169
190
|
}
|
|
170
191
|
|
|
@@ -176,6 +197,8 @@ export class RedisEventPublisher implements ClaudeCodeEventPublisher, ClaudeCode
|
|
|
176
197
|
this.subscribeClient?.quit(),
|
|
177
198
|
]);
|
|
178
199
|
|
|
200
|
+
this.publishClient = null;
|
|
201
|
+
this.subscribeClient = null;
|
|
179
202
|
this.initialized = false;
|
|
180
203
|
}
|
|
181
204
|
}
|
|
@@ -298,13 +321,13 @@ export function createEventPublisher(
|
|
|
298
321
|
|
|
299
322
|
case "redis":
|
|
300
323
|
if (!options.redisUrl) {
|
|
301
|
-
throw
|
|
324
|
+
throw INVALID_ARGUMENT.create({ detail: "Redis URL required for redis publisher" });
|
|
302
325
|
}
|
|
303
326
|
return new RedisEventPublisher({ url: options.redisUrl });
|
|
304
327
|
|
|
305
328
|
case "callback":
|
|
306
329
|
if (!options.callback) {
|
|
307
|
-
throw
|
|
330
|
+
throw INVALID_ARGUMENT.create({ detail: "Callback required for callback publisher" });
|
|
308
331
|
}
|
|
309
332
|
return new CallbackEventPublisher(options.callback);
|
|
310
333
|
|
|
@@ -312,6 +335,6 @@ export function createEventPublisher(
|
|
|
312
335
|
return new SSEEventPublisher();
|
|
313
336
|
|
|
314
337
|
default:
|
|
315
|
-
throw
|
|
338
|
+
throw INVALID_ARGUMENT.create({ detail: `Unknown publisher type: ${options.type}` });
|
|
316
339
|
}
|
|
317
340
|
}
|
|
@@ -8,6 +8,13 @@ import * as dntShim from "../../../../_dnt.shims.js";
|
|
|
8
8
|
|
|
9
9
|
import { useCallback, useEffect, useRef, useState } from "react";
|
|
10
10
|
import type { ClaudeCodeEvent, ClaudeCodeResult } from "../types.js";
|
|
11
|
+
import { REQUEST_ERROR } from "../../../errors/index.js";
|
|
12
|
+
|
|
13
|
+
/** Default delay before reconnecting after disconnect */
|
|
14
|
+
const DEFAULT_RECONNECT_DELAY_MS = 1_000;
|
|
15
|
+
|
|
16
|
+
/** Default maximum number of events to retain in history */
|
|
17
|
+
const DEFAULT_MAX_EVENT_HISTORY = 100;
|
|
11
18
|
|
|
12
19
|
/**
|
|
13
20
|
* State for Claude Code streaming
|
|
@@ -147,9 +154,9 @@ export function useClaudeCodeStream(
|
|
|
147
154
|
autoConnect = true,
|
|
148
155
|
autoReconnect = true,
|
|
149
156
|
maxReconnectAttempts = 5,
|
|
150
|
-
reconnectDelay =
|
|
157
|
+
reconnectDelay = DEFAULT_RECONNECT_DELAY_MS,
|
|
151
158
|
keepEventHistory = false,
|
|
152
|
-
maxEventHistory =
|
|
159
|
+
maxEventHistory = DEFAULT_MAX_EVENT_HISTORY,
|
|
153
160
|
onEvent,
|
|
154
161
|
onConnect,
|
|
155
162
|
onDisconnect,
|
|
@@ -288,7 +295,9 @@ export function useClaudeCodeStream(
|
|
|
288
295
|
|
|
289
296
|
eventSource.onmessage = (e) => {
|
|
290
297
|
try {
|
|
291
|
-
const
|
|
298
|
+
const parsed: unknown = JSON.parse(e.data);
|
|
299
|
+
if (!parsed || typeof parsed !== "object") return;
|
|
300
|
+
const event = parsed as ClaudeCodeEvent;
|
|
292
301
|
processEvent(event);
|
|
293
302
|
} catch (error) {
|
|
294
303
|
console.error("[useClaudeCodeStream] Failed to parse event:", error);
|
|
@@ -306,7 +315,7 @@ export function useClaudeCodeStream(
|
|
|
306
315
|
connect();
|
|
307
316
|
}, reconnectDelay * reconnectAttemptsRef.current);
|
|
308
317
|
} else {
|
|
309
|
-
onError?.(
|
|
318
|
+
onError?.(REQUEST_ERROR.create({ detail: "Connection failed" }));
|
|
310
319
|
}
|
|
311
320
|
};
|
|
312
321
|
|
|
@@ -14,6 +14,13 @@ import type {
|
|
|
14
14
|
ClaudeCodeResult,
|
|
15
15
|
InputRequestEvent,
|
|
16
16
|
} from "../types.js";
|
|
17
|
+
import { NETWORK_ERROR, REQUEST_ERROR } from "../../../errors/index.js";
|
|
18
|
+
|
|
19
|
+
/** Default delay before reconnecting after disconnect */
|
|
20
|
+
const DEFAULT_RECONNECT_DELAY_MS = 1_000;
|
|
21
|
+
|
|
22
|
+
/** Default interval for WebSocket ping messages */
|
|
23
|
+
const DEFAULT_PING_INTERVAL_MS = 30_000;
|
|
17
24
|
|
|
18
25
|
/**
|
|
19
26
|
* Pending approval state
|
|
@@ -194,8 +201,8 @@ export function useClaudeCodeWebSocket(
|
|
|
194
201
|
autoConnect = true,
|
|
195
202
|
autoReconnect = true,
|
|
196
203
|
maxReconnectAttempts = 5,
|
|
197
|
-
reconnectDelay =
|
|
198
|
-
pingInterval =
|
|
204
|
+
reconnectDelay = DEFAULT_RECONNECT_DELAY_MS,
|
|
205
|
+
pingInterval = DEFAULT_PING_INTERVAL_MS,
|
|
199
206
|
onEvent,
|
|
200
207
|
onConnect,
|
|
201
208
|
onDisconnect,
|
|
@@ -386,7 +393,9 @@ export function useClaudeCodeWebSocket(
|
|
|
386
393
|
|
|
387
394
|
socket.onmessage = (e) => {
|
|
388
395
|
try {
|
|
389
|
-
const
|
|
396
|
+
const parsed: unknown = JSON.parse(e.data);
|
|
397
|
+
if (!parsed || typeof parsed !== "object") return;
|
|
398
|
+
const event = parsed as ClaudeCodeEventExtended;
|
|
390
399
|
processEvent(event);
|
|
391
400
|
} catch (error) {
|
|
392
401
|
console.error("[useClaudeCodeWebSocket] Failed to parse event:", error);
|
|
@@ -413,12 +422,12 @@ export function useClaudeCodeWebSocket(
|
|
|
413
422
|
connect();
|
|
414
423
|
}, reconnectDelay * reconnectAttemptsRef.current);
|
|
415
424
|
} else if (reconnectAttemptsRef.current >= maxReconnectAttempts) {
|
|
416
|
-
onError?.(
|
|
425
|
+
onError?.(REQUEST_ERROR.create({ detail: "Connection failed after max retries" }));
|
|
417
426
|
}
|
|
418
427
|
};
|
|
419
428
|
|
|
420
429
|
socket.onerror = () => {
|
|
421
|
-
onError?.(
|
|
430
|
+
onError?.(NETWORK_ERROR.create({ detail: "WebSocket error" }));
|
|
422
431
|
};
|
|
423
432
|
|
|
424
433
|
socketRef.current = socket;
|
|
@@ -18,10 +18,10 @@ const claudeCodeInputSchema = z.object({
|
|
|
18
18
|
|
|
19
19
|
/** Tool mode */
|
|
20
20
|
mode: z
|
|
21
|
-
.enum(["code", "analysis", "
|
|
21
|
+
.enum(["code", "analysis", "custom"])
|
|
22
22
|
.optional()
|
|
23
23
|
.default("code")
|
|
24
|
-
.describe("Tool mode: code (read-write), analysis (read-only),
|
|
24
|
+
.describe("Tool mode: code (read-write), analysis (read-only), custom (user-specified)"),
|
|
25
25
|
|
|
26
26
|
/** Maximum turns */
|
|
27
27
|
maxTurns: z
|
|
@@ -102,7 +102,7 @@ export const claudeCodeTool: Tool<ClaudeCodeInput, ClaudeCodeResult> = {
|
|
|
102
102
|
task: { type: "string", description: "The task for the agent" },
|
|
103
103
|
mode: {
|
|
104
104
|
type: "string",
|
|
105
|
-
enum: ["code", "analysis", "
|
|
105
|
+
enum: ["code", "analysis", "custom"],
|
|
106
106
|
default: "code",
|
|
107
107
|
},
|
|
108
108
|
maxTurns: { type: "number", default: 20 },
|
|
@@ -10,7 +10,6 @@
|
|
|
10
10
|
export type ClaudeCodeMode =
|
|
11
11
|
| "code" // read-write (maps to SDK acceptEdits)
|
|
12
12
|
| "analysis" // read-only (maps to SDK plan)
|
|
13
|
-
| "full" // all tools (maps to SDK bypassPermissions)
|
|
14
13
|
| "custom"; // user-specified (maps to SDK default)
|
|
15
14
|
|
|
16
15
|
/**
|
|
@@ -273,7 +272,7 @@ export type ClientCommandType =
|
|
|
273
272
|
/**
|
|
274
273
|
* Base client command interface
|
|
275
274
|
*/
|
|
276
|
-
|
|
275
|
+
interface ClientCommandBase {
|
|
277
276
|
type: ClientCommandType;
|
|
278
277
|
timestamp: number;
|
|
279
278
|
runId: string;
|
|
@@ -290,7 +289,7 @@ export interface CancelCommand extends ClientCommandBase {
|
|
|
290
289
|
/**
|
|
291
290
|
* Approve a pending tool call
|
|
292
291
|
*/
|
|
293
|
-
|
|
292
|
+
interface ApproveCommand extends ClientCommandBase {
|
|
294
293
|
type: "approve";
|
|
295
294
|
toolCallId: string;
|
|
296
295
|
}
|
|
@@ -298,7 +297,7 @@ export interface ApproveCommand extends ClientCommandBase {
|
|
|
298
297
|
/**
|
|
299
298
|
* Reject a pending tool call
|
|
300
299
|
*/
|
|
301
|
-
|
|
300
|
+
interface RejectCommand extends ClientCommandBase {
|
|
302
301
|
type: "reject";
|
|
303
302
|
toolCallId: string;
|
|
304
303
|
reason?: string;
|
|
@@ -337,7 +336,7 @@ export type ClientCommandHandler = (command: ClientCommand) => void | Promise<vo
|
|
|
337
336
|
/**
|
|
338
337
|
* Extended event type including bidirectional events
|
|
339
338
|
*/
|
|
340
|
-
|
|
339
|
+
type ClaudeCodeEventTypeExtended =
|
|
341
340
|
| ClaudeCodeEventType
|
|
342
341
|
| "approval_request"
|
|
343
342
|
| "input_request"
|
|
@@ -347,7 +346,7 @@ export type ClaudeCodeEventTypeExtended =
|
|
|
347
346
|
/**
|
|
348
347
|
* Base interface for extended events (bidirectional communication)
|
|
349
348
|
*/
|
|
350
|
-
|
|
349
|
+
interface ClaudeCodeEventBaseExtended {
|
|
351
350
|
type: ClaudeCodeEventTypeExtended;
|
|
352
351
|
timestamp: number;
|
|
353
352
|
runId?: string;
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
import * as dntShim from "../../../_dnt.shims.js";
|
|
7
7
|
|
|
8
8
|
|
|
9
|
+
import { logger as baseLogger } from "../../utils/index.js";
|
|
9
10
|
import type {
|
|
10
11
|
BidirectionalPublisher,
|
|
11
12
|
CancelledEvent,
|
|
@@ -15,6 +16,18 @@ import type {
|
|
|
15
16
|
ClientCommandHandler,
|
|
16
17
|
PongEvent,
|
|
17
18
|
} from "./types.js";
|
|
19
|
+
import { ORCHESTRATION_ERROR, TIMEOUT_ERROR } from "../../errors/index.js";
|
|
20
|
+
|
|
21
|
+
const logger = baseLogger.component("websocket-publisher");
|
|
22
|
+
|
|
23
|
+
/** Default interval for WebSocket ping/keepalive messages */
|
|
24
|
+
const DEFAULT_PING_INTERVAL_MS = 30_000;
|
|
25
|
+
|
|
26
|
+
/** Default timeout for tool call approval requests */
|
|
27
|
+
const DEFAULT_APPROVAL_TIMEOUT_MS = 60_000;
|
|
28
|
+
|
|
29
|
+
/** Default timeout for user input requests (5 minutes) */
|
|
30
|
+
const DEFAULT_INPUT_TIMEOUT_MS = 300_000;
|
|
18
31
|
|
|
19
32
|
/**
|
|
20
33
|
* WebSocket publisher configuration
|
|
@@ -51,7 +64,7 @@ export class WebSocketPublisher implements BidirectionalPublisher {
|
|
|
51
64
|
constructor(config: WebSocketPublisherConfig) {
|
|
52
65
|
this.config = {
|
|
53
66
|
debug: false,
|
|
54
|
-
pingInterval:
|
|
67
|
+
pingInterval: DEFAULT_PING_INTERVAL_MS,
|
|
55
68
|
...config,
|
|
56
69
|
};
|
|
57
70
|
|
|
@@ -64,11 +77,13 @@ export class WebSocketPublisher implements BidirectionalPublisher {
|
|
|
64
77
|
|
|
65
78
|
socket.onmessage = (event) => {
|
|
66
79
|
try {
|
|
67
|
-
const
|
|
80
|
+
const parsed: unknown = JSON.parse(event.data);
|
|
81
|
+
if (!parsed || typeof parsed !== "object") return;
|
|
82
|
+
const command = parsed as ClientCommand;
|
|
68
83
|
this.handleCommand(command);
|
|
69
84
|
} catch (error) {
|
|
70
85
|
if (this.config.debug) {
|
|
71
|
-
|
|
86
|
+
logger.error("Failed to parse command", error);
|
|
72
87
|
}
|
|
73
88
|
}
|
|
74
89
|
};
|
|
@@ -78,9 +93,9 @@ export class WebSocketPublisher implements BidirectionalPublisher {
|
|
|
78
93
|
this.stopPingInterval();
|
|
79
94
|
};
|
|
80
95
|
|
|
81
|
-
socket.onerror = (
|
|
96
|
+
socket.onerror = (event) => {
|
|
82
97
|
if (this.config.debug) {
|
|
83
|
-
|
|
98
|
+
logger.error("Socket error", { event: String(event) });
|
|
84
99
|
}
|
|
85
100
|
// Stop ping interval on error to prevent resource leak
|
|
86
101
|
// The socket may or may not close after an error, but we should
|
|
@@ -91,7 +106,7 @@ export class WebSocketPublisher implements BidirectionalPublisher {
|
|
|
91
106
|
|
|
92
107
|
private handleCommand(command: ClientCommand): void {
|
|
93
108
|
if (this.config.debug) {
|
|
94
|
-
|
|
109
|
+
logger.info("Received command", { commandType: command.type });
|
|
95
110
|
}
|
|
96
111
|
|
|
97
112
|
// Handle ping internally
|
|
@@ -106,7 +121,7 @@ export class WebSocketPublisher implements BidirectionalPublisher {
|
|
|
106
121
|
handler(command);
|
|
107
122
|
} catch (error) {
|
|
108
123
|
if (this.config.debug) {
|
|
109
|
-
|
|
124
|
+
logger.error("Handler error", error);
|
|
110
125
|
}
|
|
111
126
|
}
|
|
112
127
|
}
|
|
@@ -167,7 +182,7 @@ export class WebSocketPublisher implements BidirectionalPublisher {
|
|
|
167
182
|
const { socket } = this.config;
|
|
168
183
|
if (socket.readyState !== WebSocket.OPEN) {
|
|
169
184
|
if (this.config.debug) {
|
|
170
|
-
|
|
185
|
+
logger.warn("Socket not open, dropping event");
|
|
171
186
|
}
|
|
172
187
|
return;
|
|
173
188
|
}
|
|
@@ -175,7 +190,7 @@ export class WebSocketPublisher implements BidirectionalPublisher {
|
|
|
175
190
|
socket.send(JSON.stringify(event));
|
|
176
191
|
|
|
177
192
|
if (this.config.debug) {
|
|
178
|
-
|
|
193
|
+
logger.info("Sent event", { eventType: event.type });
|
|
179
194
|
}
|
|
180
195
|
}
|
|
181
196
|
|
|
@@ -231,7 +246,7 @@ export class WebSocketPublisher implements BidirectionalPublisher {
|
|
|
231
246
|
* - Events are published to Redis, then broadcast to connected WebSockets
|
|
232
247
|
* - Commands from WebSocket are published to Redis for the worker to receive
|
|
233
248
|
*/
|
|
234
|
-
|
|
249
|
+
interface RedisWebSocketBridgeConfig {
|
|
235
250
|
/** Redis URL */
|
|
236
251
|
redisUrl: string;
|
|
237
252
|
|
|
@@ -347,14 +362,14 @@ export class AgentController {
|
|
|
347
362
|
// Reject all pending approvals
|
|
348
363
|
for (const [, pending] of this.pendingApprovals) {
|
|
349
364
|
if (pending.timeout) clearTimeout(pending.timeout);
|
|
350
|
-
pending.reject(
|
|
365
|
+
pending.reject(ORCHESTRATION_ERROR.create({ detail: "Cancelled" }));
|
|
351
366
|
}
|
|
352
367
|
this.pendingApprovals.clear();
|
|
353
368
|
|
|
354
369
|
// Reject all pending inputs
|
|
355
370
|
for (const pending of this.inputResolvers) {
|
|
356
371
|
if (pending.timeout) clearTimeout(pending.timeout);
|
|
357
|
-
pending.reject(
|
|
372
|
+
pending.reject(ORCHESTRATION_ERROR.create({ detail: "Cancelled" }));
|
|
358
373
|
}
|
|
359
374
|
this.inputResolvers = [];
|
|
360
375
|
}
|
|
@@ -397,10 +412,10 @@ export class AgentController {
|
|
|
397
412
|
reason: string,
|
|
398
413
|
): Promise<boolean> {
|
|
399
414
|
if (this.cancelled) {
|
|
400
|
-
return Promise.reject(
|
|
415
|
+
return Promise.reject(ORCHESTRATION_ERROR.create({ detail: "Agent cancelled" }));
|
|
401
416
|
}
|
|
402
417
|
|
|
403
|
-
const timeout = this.config.approvalTimeout ||
|
|
418
|
+
const timeout = this.config.approvalTimeout || DEFAULT_APPROVAL_TIMEOUT_MS;
|
|
404
419
|
|
|
405
420
|
// Send approval request to client
|
|
406
421
|
this.publisher.send({
|
|
@@ -433,10 +448,10 @@ export class AgentController {
|
|
|
433
448
|
*/
|
|
434
449
|
requestInput(prompt: string, defaultValue?: string): Promise<string> {
|
|
435
450
|
if (this.cancelled) {
|
|
436
|
-
return Promise.reject(
|
|
451
|
+
return Promise.reject(ORCHESTRATION_ERROR.create({ detail: "Agent cancelled" }));
|
|
437
452
|
}
|
|
438
453
|
|
|
439
|
-
const timeout = this.config.inputTimeout ||
|
|
454
|
+
const timeout = this.config.inputTimeout || DEFAULT_INPUT_TIMEOUT_MS;
|
|
440
455
|
|
|
441
456
|
// Send input request to client
|
|
442
457
|
this.publisher.send({
|
|
@@ -456,7 +471,7 @@ export class AgentController {
|
|
|
456
471
|
if (defaultValue !== undefined) {
|
|
457
472
|
resolve(defaultValue);
|
|
458
473
|
} else {
|
|
459
|
-
reject(
|
|
474
|
+
reject(TIMEOUT_ERROR.create({ detail: "Input timeout" }));
|
|
460
475
|
}
|
|
461
476
|
}, timeout);
|
|
462
477
|
|
|
@@ -12,9 +12,16 @@
|
|
|
12
12
|
import * as dntShim from "../../../_dnt.shims.js";
|
|
13
13
|
|
|
14
14
|
|
|
15
|
+
import { logger as baseLogger } from "../../utils/index.js";
|
|
15
16
|
import { api } from "../api.js";
|
|
16
17
|
import type { CapturedTenantContext } from "../types.js";
|
|
17
18
|
import { join, relative, resolve } from "../../../deps/jsr.io/@std/path/1.1.4/mod.js";
|
|
19
|
+
import { INITIALIZATION_ERROR, INVALID_ARGUMENT, SECURITY_VIOLATION } from "../../errors/index.js";
|
|
20
|
+
|
|
21
|
+
const logger = baseLogger.component("workspace-sync");
|
|
22
|
+
|
|
23
|
+
/** Maximum file size for workspace sync (10 MB) */
|
|
24
|
+
const MAX_WORKSPACE_FILE_SIZE = 10 * 1024 * 1024;
|
|
18
25
|
|
|
19
26
|
/**
|
|
20
27
|
* Workspace configuration
|
|
@@ -144,14 +151,14 @@ export class WorkspaceSync {
|
|
|
144
151
|
constructor(config: WorkspaceConfig) {
|
|
145
152
|
// SECURITY: Validate runId to prevent path traversal
|
|
146
153
|
if (!/^[a-zA-Z0-9_-]+$/.test(config.runId)) {
|
|
147
|
-
throw
|
|
148
|
-
`Invalid runId: must contain only alphanumeric, underscore, or hyphen characters`,
|
|
149
|
-
);
|
|
154
|
+
throw INVALID_ARGUMENT.create({
|
|
155
|
+
detail: `Invalid runId: must contain only alphanumeric, underscore, or hyphen characters`,
|
|
156
|
+
});
|
|
150
157
|
}
|
|
151
158
|
|
|
152
159
|
this.config = {
|
|
153
160
|
baseDir: "/tmp/veryfront-workspaces",
|
|
154
|
-
maxFileSize:
|
|
161
|
+
maxFileSize: MAX_WORKSPACE_FILE_SIZE,
|
|
155
162
|
debug: false,
|
|
156
163
|
...config,
|
|
157
164
|
};
|
|
@@ -174,7 +181,7 @@ export class WorkspaceSync {
|
|
|
174
181
|
let bytesDownloaded = 0;
|
|
175
182
|
|
|
176
183
|
if (this.config.debug) {
|
|
177
|
-
|
|
184
|
+
logger.info("Initializing workspace", { workspaceDir: this.workspaceDir });
|
|
178
185
|
}
|
|
179
186
|
|
|
180
187
|
// Create workspace directory
|
|
@@ -184,7 +191,7 @@ export class WorkspaceSync {
|
|
|
184
191
|
const files = await api.files.listAll();
|
|
185
192
|
|
|
186
193
|
if (this.config.debug) {
|
|
187
|
-
|
|
194
|
+
logger.info("Found files in project", { count: files.length });
|
|
188
195
|
}
|
|
189
196
|
|
|
190
197
|
// Download each file
|
|
@@ -213,7 +220,7 @@ export class WorkspaceSync {
|
|
|
213
220
|
if (content.length > this.config.maxFileSize) {
|
|
214
221
|
skippedFiles.push(path);
|
|
215
222
|
if (this.config.debug) {
|
|
216
|
-
|
|
223
|
+
logger.info("Skipping large file", { path, size: content.length });
|
|
217
224
|
}
|
|
218
225
|
continue;
|
|
219
226
|
}
|
|
@@ -232,11 +239,11 @@ export class WorkspaceSync {
|
|
|
232
239
|
bytesDownloaded += content.length;
|
|
233
240
|
|
|
234
241
|
if (this.config.debug) {
|
|
235
|
-
|
|
242
|
+
logger.info("Downloaded file", { path });
|
|
236
243
|
}
|
|
237
244
|
} catch (error) {
|
|
238
245
|
if (this.config.debug) {
|
|
239
|
-
|
|
246
|
+
logger.error("Failed to download file", { path }, error);
|
|
240
247
|
}
|
|
241
248
|
skippedFiles.push(path);
|
|
242
249
|
}
|
|
@@ -253,7 +260,8 @@ export class WorkspaceSync {
|
|
|
253
260
|
};
|
|
254
261
|
|
|
255
262
|
if (this.config.debug) {
|
|
256
|
-
|
|
263
|
+
logger.info("Workspace initialized", {
|
|
264
|
+
duration: result.duration,
|
|
257
265
|
filesDownloaded,
|
|
258
266
|
bytesDownloaded,
|
|
259
267
|
skipped: skippedFiles.length,
|
|
@@ -270,7 +278,9 @@ export class WorkspaceSync {
|
|
|
270
278
|
const changes: FileChange[] = [];
|
|
271
279
|
|
|
272
280
|
if (!this.initialized) {
|
|
273
|
-
throw
|
|
281
|
+
throw INITIALIZATION_ERROR.create({
|
|
282
|
+
detail: "Workspace not initialized. Call initialize() first.",
|
|
283
|
+
});
|
|
274
284
|
}
|
|
275
285
|
|
|
276
286
|
// Walk the workspace directory
|
|
@@ -287,7 +297,7 @@ export class WorkspaceSync {
|
|
|
287
297
|
try {
|
|
288
298
|
const localPath = this.resolveSafePath(path);
|
|
289
299
|
await dntShim.Deno.stat(localPath);
|
|
290
|
-
} catch {
|
|
300
|
+
} catch (_) {
|
|
291
301
|
// File was deleted
|
|
292
302
|
changes.push({
|
|
293
303
|
path,
|
|
@@ -298,7 +308,7 @@ export class WorkspaceSync {
|
|
|
298
308
|
}
|
|
299
309
|
|
|
300
310
|
if (this.config.debug) {
|
|
301
|
-
|
|
311
|
+
logger.info("Detected changes", { count: changes.length });
|
|
302
312
|
}
|
|
303
313
|
|
|
304
314
|
return changes;
|
|
@@ -389,7 +399,7 @@ export class WorkspaceSync {
|
|
|
389
399
|
} else {
|
|
390
400
|
// No upload handler - just log the change
|
|
391
401
|
if (this.config.debug) {
|
|
392
|
-
|
|
402
|
+
logger.info("Would upload file", { path: change.path, type: change.type });
|
|
393
403
|
}
|
|
394
404
|
// Mark as uploaded for tracking, even though we didn't actually upload
|
|
395
405
|
uploaded.push(change);
|
|
@@ -422,7 +432,7 @@ export class WorkspaceSync {
|
|
|
422
432
|
// Verify the resolved path is within the workspace
|
|
423
433
|
const relativePath = relative(this.workspaceDir, fullPath);
|
|
424
434
|
if (relativePath.startsWith("..") || !relativePath || relativePath === "..") {
|
|
425
|
-
throw
|
|
435
|
+
throw SECURITY_VIOLATION.create({ detail: `Path traversal detected: ${path}` });
|
|
426
436
|
}
|
|
427
437
|
|
|
428
438
|
return fullPath;
|
|
@@ -465,7 +475,8 @@ export class WorkspaceSync {
|
|
|
465
475
|
const localPath = this.resolveSafePath(path);
|
|
466
476
|
await dntShim.Deno.stat(localPath);
|
|
467
477
|
return true;
|
|
468
|
-
} catch {
|
|
478
|
+
} catch (_) {
|
|
479
|
+
/* expected: file may not exist */
|
|
469
480
|
return false;
|
|
470
481
|
}
|
|
471
482
|
}
|
|
@@ -475,14 +486,14 @@ export class WorkspaceSync {
|
|
|
475
486
|
*/
|
|
476
487
|
async cleanup(): Promise<void> {
|
|
477
488
|
if (this.config.debug) {
|
|
478
|
-
|
|
489
|
+
logger.info("Cleaning up workspace", { workspaceDir: this.workspaceDir });
|
|
479
490
|
}
|
|
480
491
|
|
|
481
492
|
try {
|
|
482
493
|
await dntShim.Deno.remove(this.workspaceDir, { recursive: true });
|
|
483
494
|
} catch (error) {
|
|
484
495
|
if (this.config.debug) {
|
|
485
|
-
|
|
496
|
+
logger.error("Cleanup failed", error);
|
|
486
497
|
}
|
|
487
498
|
}
|
|
488
499
|
|
|
@@ -6,6 +6,7 @@ import type {
|
|
|
6
6
|
WorkflowNode,
|
|
7
7
|
} from "../types.js";
|
|
8
8
|
import { validateNodeId } from "./validation.js";
|
|
9
|
+
import { INVALID_ARGUMENT } from "../../errors/index.js";
|
|
9
10
|
|
|
10
11
|
export interface BranchOptions extends Omit<BaseNodeConfig, "checkpoint"> {
|
|
11
12
|
condition: (context: WorkflowContext) => boolean | Promise<boolean>;
|
|
@@ -30,8 +31,12 @@ function prefixNodes(id: string, branch: "then" | "else", nodes: WorkflowNode[])
|
|
|
30
31
|
export function branch(id: string, options: BranchOptions): WorkflowNode {
|
|
31
32
|
validateNodeId(id);
|
|
32
33
|
|
|
33
|
-
if (!options.condition)
|
|
34
|
-
|
|
34
|
+
if (!options.condition) {
|
|
35
|
+
throw INVALID_ARGUMENT.create({ detail: `Branch "${id}" must specify a condition` });
|
|
36
|
+
}
|
|
37
|
+
if (!options.then?.length) {
|
|
38
|
+
throw INVALID_ARGUMENT.create({ detail: `Branch "${id}" must have at least one 'then' node` });
|
|
39
|
+
}
|
|
35
40
|
|
|
36
41
|
const config: BranchNodeConfig = {
|
|
37
42
|
type: "branch",
|
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
import type { BaseNodeConfig, RetryConfig, WorkflowContext, WorkflowNode } from "../types.js";
|
|
2
2
|
import { validateNodeId } from "./validation.js";
|
|
3
|
+
import { INVALID_ARGUMENT } from "../../errors/index.js";
|
|
4
|
+
|
|
5
|
+
/** Default maximum number of loop iterations */
|
|
6
|
+
const DEFAULT_MAX_ITERATIONS = 10;
|
|
7
|
+
|
|
8
|
+
/** Absolute upper bound on loop iterations to prevent runaway loops */
|
|
9
|
+
const MAX_ITERATIONS_LIMIT = 100;
|
|
3
10
|
|
|
4
11
|
export interface LoopContext {
|
|
5
12
|
iteration: number;
|
|
@@ -48,24 +55,27 @@ export function loop(id: string, options: LoopOptions): WorkflowNode {
|
|
|
48
55
|
validateNodeId(id);
|
|
49
56
|
|
|
50
57
|
if (typeof options.while !== "function") {
|
|
51
|
-
throw
|
|
58
|
+
throw INVALID_ARGUMENT.create({
|
|
59
|
+
detail: `Loop "${id}" must have a 'while' condition function`,
|
|
60
|
+
});
|
|
52
61
|
}
|
|
53
62
|
|
|
54
63
|
if (!options.steps) {
|
|
55
|
-
throw
|
|
64
|
+
throw INVALID_ARGUMENT.create({ detail: `Loop "${id}" must have 'steps' configured` });
|
|
56
65
|
}
|
|
57
66
|
|
|
58
|
-
const maxIterations = options.maxIterations ??
|
|
67
|
+
const maxIterations = options.maxIterations ?? DEFAULT_MAX_ITERATIONS;
|
|
59
68
|
|
|
60
69
|
if (maxIterations < 1) {
|
|
61
|
-
throw
|
|
70
|
+
throw INVALID_ARGUMENT.create({ detail: `Loop "${id}" maxIterations must be at least 1` });
|
|
62
71
|
}
|
|
63
72
|
|
|
64
|
-
if (maxIterations >
|
|
65
|
-
throw
|
|
66
|
-
|
|
73
|
+
if (maxIterations > MAX_ITERATIONS_LIMIT) {
|
|
74
|
+
throw INVALID_ARGUMENT.create({
|
|
75
|
+
detail:
|
|
76
|
+
`Loop "${id}" maxIterations cannot exceed ${MAX_ITERATIONS_LIMIT} (got ${maxIterations}). ` +
|
|
67
77
|
`For higher limits, consider restructuring your workflow.`,
|
|
68
|
-
);
|
|
78
|
+
});
|
|
69
79
|
}
|
|
70
80
|
|
|
71
81
|
return {
|