@copilotkit/runtime 1.51.5-next.0 → 1.51.5-next.1
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/CHANGELOG.md +8 -0
- package/dist/_virtual/_@oxc-project_runtime@0.112.0/helpers/decorate.cjs +12 -0
- package/dist/_virtual/_@oxc-project_runtime@0.112.0/helpers/decorate.mjs +11 -0
- package/dist/_virtual/_@oxc-project_runtime@0.112.0/helpers/decorateMetadata.cjs +9 -0
- package/dist/_virtual/_@oxc-project_runtime@0.112.0/helpers/decorateMetadata.mjs +8 -0
- package/dist/_virtual/_@oxc-project_runtime@0.112.0/helpers/decorateParam.cjs +11 -0
- package/dist/_virtual/_@oxc-project_runtime@0.112.0/helpers/decorateParam.mjs +10 -0
- package/dist/_virtual/_rolldown/runtime.cjs +32 -0
- package/dist/_virtual/_rolldown/runtime.mjs +9 -0
- package/dist/agents/langgraph/events.cjs +25 -0
- package/dist/agents/langgraph/events.cjs.map +1 -0
- package/dist/agents/langgraph/events.mjs +24 -0
- package/dist/agents/langgraph/events.mjs.map +1 -0
- package/dist/graphql/inputs/action.input.cjs +24 -0
- package/dist/graphql/inputs/action.input.cjs.map +1 -0
- package/dist/graphql/inputs/action.input.d.cts +13 -0
- package/dist/graphql/inputs/action.input.d.cts.map +1 -0
- package/dist/graphql/inputs/action.input.d.mts +13 -0
- package/dist/graphql/inputs/action.input.d.mts.map +1 -0
- package/dist/graphql/inputs/action.input.mjs +18 -0
- package/dist/graphql/inputs/action.input.mjs.map +1 -0
- package/dist/graphql/inputs/agent-session.input.cjs +21 -0
- package/dist/graphql/inputs/agent-session.input.cjs.map +1 -0
- package/dist/graphql/inputs/agent-session.input.d.cts +10 -0
- package/dist/graphql/inputs/agent-session.input.d.cts.map +1 -0
- package/dist/graphql/inputs/agent-session.input.d.mts +10 -0
- package/dist/graphql/inputs/agent-session.input.d.mts.map +1 -0
- package/dist/graphql/inputs/agent-session.input.mjs +15 -0
- package/dist/graphql/inputs/agent-session.input.mjs.map +1 -0
- package/dist/graphql/inputs/agent-state.input.cjs +21 -0
- package/dist/graphql/inputs/agent-state.input.cjs.map +1 -0
- package/dist/graphql/inputs/agent-state.input.d.cts +10 -0
- package/dist/graphql/inputs/agent-state.input.d.cts.map +1 -0
- package/dist/graphql/inputs/agent-state.input.d.mts +10 -0
- package/dist/graphql/inputs/agent-state.input.d.mts.map +1 -0
- package/dist/graphql/inputs/agent-state.input.mjs +15 -0
- package/dist/graphql/inputs/agent-state.input.mjs.map +1 -0
- package/dist/graphql/inputs/cloud-guardrails.input.cjs +29 -0
- package/dist/graphql/inputs/cloud-guardrails.input.cjs.map +1 -0
- package/dist/graphql/inputs/cloud-guardrails.input.mjs +23 -0
- package/dist/graphql/inputs/cloud-guardrails.input.mjs.map +1 -0
- package/dist/graphql/inputs/cloud.input.cjs +21 -0
- package/dist/graphql/inputs/cloud.input.cjs.map +1 -0
- package/dist/graphql/inputs/cloud.input.mjs +15 -0
- package/dist/graphql/inputs/cloud.input.mjs.map +1 -0
- package/dist/graphql/inputs/copilot-context.input.cjs +20 -0
- package/dist/graphql/inputs/copilot-context.input.cjs.map +1 -0
- package/dist/graphql/inputs/copilot-context.input.mjs +14 -0
- package/dist/graphql/inputs/copilot-context.input.mjs.map +1 -0
- package/dist/graphql/inputs/extensions.input.cjs +24 -0
- package/dist/graphql/inputs/extensions.input.cjs.map +1 -0
- package/dist/graphql/inputs/extensions.input.d.cts +16 -0
- package/dist/graphql/inputs/extensions.input.d.cts.map +1 -0
- package/dist/graphql/inputs/extensions.input.d.mts +16 -0
- package/dist/graphql/inputs/extensions.input.d.mts.map +1 -0
- package/dist/graphql/inputs/extensions.input.mjs +18 -0
- package/dist/graphql/inputs/extensions.input.mjs.map +1 -0
- package/dist/graphql/inputs/forwarded-parameters.input.cjs +25 -0
- package/dist/graphql/inputs/forwarded-parameters.input.cjs.map +1 -0
- package/dist/graphql/inputs/forwarded-parameters.input.d.cts +13 -0
- package/dist/graphql/inputs/forwarded-parameters.input.d.cts.map +1 -0
- package/dist/graphql/inputs/forwarded-parameters.input.d.mts +13 -0
- package/dist/graphql/inputs/forwarded-parameters.input.d.mts.map +1 -0
- package/dist/graphql/inputs/forwarded-parameters.input.mjs +19 -0
- package/dist/graphql/inputs/forwarded-parameters.input.mjs.map +1 -0
- package/dist/graphql/inputs/frontend.input.cjs +22 -0
- package/dist/graphql/inputs/frontend.input.cjs.map +1 -0
- package/dist/graphql/inputs/frontend.input.mjs +16 -0
- package/dist/graphql/inputs/frontend.input.mjs.map +1 -0
- package/dist/graphql/inputs/generate-copilot-response.input.cjs +45 -0
- package/dist/graphql/inputs/generate-copilot-response.input.cjs.map +1 -0
- package/dist/graphql/inputs/generate-copilot-response.input.mjs +39 -0
- package/dist/graphql/inputs/generate-copilot-response.input.mjs.map +1 -0
- package/dist/graphql/inputs/load-agent-state.input.cjs +20 -0
- package/dist/graphql/inputs/load-agent-state.input.cjs.map +1 -0
- package/dist/graphql/inputs/load-agent-state.input.mjs +14 -0
- package/dist/graphql/inputs/load-agent-state.input.mjs.map +1 -0
- package/dist/graphql/inputs/message.input.cjs +62 -0
- package/dist/graphql/inputs/message.input.cjs.map +1 -0
- package/dist/graphql/inputs/message.input.d.cts +48 -0
- package/dist/graphql/inputs/message.input.d.cts.map +1 -0
- package/dist/graphql/inputs/message.input.d.mts +48 -0
- package/dist/graphql/inputs/message.input.d.mts.map +1 -0
- package/dist/graphql/inputs/message.input.mjs +56 -0
- package/dist/graphql/inputs/message.input.mjs.map +1 -0
- package/dist/graphql/inputs/meta-event.input.cjs +25 -0
- package/dist/graphql/inputs/meta-event.input.cjs.map +1 -0
- package/dist/graphql/inputs/meta-event.input.mjs +19 -0
- package/dist/graphql/inputs/meta-event.input.mjs.map +1 -0
- package/dist/graphql/message-conversion/agui-to-gql.cjs +155 -0
- package/dist/graphql/message-conversion/agui-to-gql.cjs.map +1 -0
- package/dist/graphql/message-conversion/agui-to-gql.mjs +155 -0
- package/dist/graphql/message-conversion/agui-to-gql.mjs.map +1 -0
- package/dist/graphql/resolvers/copilot.resolver.cjs +451 -0
- package/dist/graphql/resolvers/copilot.resolver.cjs.map +1 -0
- package/dist/graphql/resolvers/copilot.resolver.mjs +445 -0
- package/dist/graphql/resolvers/copilot.resolver.mjs.map +1 -0
- package/dist/graphql/resolvers/state.resolver.cjs +43 -0
- package/dist/graphql/resolvers/state.resolver.cjs.map +1 -0
- package/dist/graphql/resolvers/state.resolver.mjs +37 -0
- package/dist/graphql/resolvers/state.resolver.mjs.map +1 -0
- package/dist/graphql/types/agents-response.type.cjs +24 -0
- package/dist/graphql/types/agents-response.type.cjs.map +1 -0
- package/dist/graphql/types/agents-response.type.mjs +18 -0
- package/dist/graphql/types/agents-response.type.mjs.map +1 -0
- package/dist/graphql/types/base/index.cjs +21 -0
- package/dist/graphql/types/base/index.cjs.map +1 -0
- package/dist/graphql/types/base/index.d.cts +9 -0
- package/dist/graphql/types/base/index.d.cts.map +1 -0
- package/dist/graphql/types/base/index.d.mts +9 -0
- package/dist/graphql/types/base/index.d.mts.map +1 -0
- package/dist/graphql/types/base/index.mjs +15 -0
- package/dist/graphql/types/base/index.mjs.map +1 -0
- package/dist/graphql/types/converted/index.cjs +118 -0
- package/dist/graphql/types/converted/index.cjs.map +1 -0
- package/dist/graphql/types/converted/index.d.cts +78 -0
- package/dist/graphql/types/converted/index.d.cts.map +1 -0
- package/dist/graphql/types/converted/index.d.mts +78 -0
- package/dist/graphql/types/converted/index.d.mts.map +1 -0
- package/dist/graphql/types/converted/index.mjs +112 -0
- package/dist/graphql/types/converted/index.mjs.map +1 -0
- package/dist/graphql/types/copilot-response.type.cjs +82 -0
- package/dist/graphql/types/copilot-response.type.cjs.map +1 -0
- package/dist/graphql/types/copilot-response.type.d.cts +12 -0
- package/dist/graphql/types/copilot-response.type.d.cts.map +1 -0
- package/dist/graphql/types/copilot-response.type.d.mts +12 -0
- package/dist/graphql/types/copilot-response.type.d.mts.map +1 -0
- package/dist/graphql/types/copilot-response.type.mjs +70 -0
- package/dist/graphql/types/copilot-response.type.mjs.map +1 -0
- package/dist/graphql/types/enums.cjs +45 -0
- package/dist/graphql/types/enums.cjs.map +1 -0
- package/dist/graphql/types/enums.d.cts +17 -0
- package/dist/graphql/types/enums.d.cts.map +1 -0
- package/dist/graphql/types/enums.d.mts +17 -0
- package/dist/graphql/types/enums.d.mts.map +1 -0
- package/dist/graphql/types/enums.mjs +42 -0
- package/dist/graphql/types/enums.mjs.map +1 -0
- package/dist/graphql/types/extensions-response.type.cjs +24 -0
- package/dist/graphql/types/extensions-response.type.cjs.map +1 -0
- package/dist/graphql/types/extensions-response.type.d.cts +18 -0
- package/dist/graphql/types/extensions-response.type.d.cts.map +1 -0
- package/dist/graphql/types/extensions-response.type.d.mts +18 -0
- package/dist/graphql/types/extensions-response.type.d.mts.map +1 -0
- package/dist/graphql/types/extensions-response.type.mjs +18 -0
- package/dist/graphql/types/extensions-response.type.mjs.map +1 -0
- package/dist/graphql/types/load-agent-state-response.type.cjs +22 -0
- package/dist/graphql/types/load-agent-state-response.type.cjs.map +1 -0
- package/dist/graphql/types/load-agent-state-response.type.mjs +16 -0
- package/dist/graphql/types/load-agent-state-response.type.mjs.map +1 -0
- package/dist/graphql/types/message-status.type.cjs +65 -0
- package/dist/graphql/types/message-status.type.cjs.map +1 -0
- package/dist/graphql/types/message-status.type.d.cts +25 -0
- package/dist/graphql/types/message-status.type.d.cts.map +1 -0
- package/dist/graphql/types/message-status.type.d.mts +25 -0
- package/dist/graphql/types/message-status.type.d.mts.map +1 -0
- package/dist/graphql/types/message-status.type.mjs +51 -0
- package/dist/graphql/types/message-status.type.mjs.map +1 -0
- package/dist/graphql/types/meta-events.type.cjs +73 -0
- package/dist/graphql/types/meta-events.type.cjs.map +1 -0
- package/dist/graphql/types/meta-events.type.mjs +54 -0
- package/dist/graphql/types/meta-events.type.mjs.map +1 -0
- package/dist/graphql/types/response-status.type.cjs +79 -0
- package/dist/graphql/types/response-status.type.cjs.map +1 -0
- package/dist/graphql/types/response-status.type.d.cts +23 -0
- package/dist/graphql/types/response-status.type.d.cts.map +1 -0
- package/dist/graphql/types/response-status.type.d.mts +23 -0
- package/dist/graphql/types/response-status.type.d.mts.map +1 -0
- package/dist/graphql/types/response-status.type.mjs +65 -0
- package/dist/graphql/types/response-status.type.mjs.map +1 -0
- package/dist/index.cjs +62 -0
- package/dist/index.d.cts +28 -0
- package/dist/index.d.mts +28 -0
- package/dist/index.mjs +27 -5612
- package/dist/langgraph.cjs +10 -0
- package/dist/langgraph.d.cts +5 -0
- package/dist/langgraph.d.mts +5 -0
- package/dist/langgraph.mjs +4 -201
- package/dist/lib/cloud/index.d.cts +9 -0
- package/dist/lib/cloud/index.d.cts.map +1 -0
- package/dist/lib/cloud/index.d.mts +9 -0
- package/dist/lib/cloud/index.d.mts.map +1 -0
- package/dist/lib/index.cjs +40 -0
- package/dist/lib/index.cjs.map +1 -0
- package/dist/lib/index.d.cts +51 -0
- package/dist/lib/index.d.cts.map +1 -0
- package/dist/lib/index.d.mts +51 -0
- package/dist/lib/index.d.mts.map +1 -0
- package/dist/lib/index.mjs +39 -0
- package/dist/lib/index.mjs.map +1 -0
- package/dist/lib/integrations/index.d.cts +7 -0
- package/dist/lib/integrations/index.d.mts +7 -0
- package/dist/lib/integrations/nest/index.cjs +14 -0
- package/dist/lib/integrations/nest/index.cjs.map +1 -0
- package/dist/lib/integrations/nest/index.d.cts +9 -0
- package/dist/lib/integrations/nest/index.d.cts.map +1 -0
- package/dist/lib/integrations/nest/index.d.mts +9 -0
- package/dist/lib/integrations/nest/index.d.mts.map +1 -0
- package/dist/lib/integrations/nest/index.mjs +14 -0
- package/dist/lib/integrations/nest/index.mjs.map +1 -0
- package/dist/lib/integrations/nextjs/app-router.cjs +26 -0
- package/dist/lib/integrations/nextjs/app-router.cjs.map +1 -0
- package/dist/lib/integrations/nextjs/app-router.d.cts +10 -0
- package/dist/lib/integrations/nextjs/app-router.d.cts.map +1 -0
- package/dist/lib/integrations/nextjs/app-router.d.mts +10 -0
- package/dist/lib/integrations/nextjs/app-router.d.mts.map +1 -0
- package/dist/lib/integrations/nextjs/app-router.mjs +25 -0
- package/dist/lib/integrations/nextjs/app-router.mjs.map +1 -0
- package/dist/lib/integrations/nextjs/pages-router.cjs +20 -0
- package/dist/lib/integrations/nextjs/pages-router.cjs.map +1 -0
- package/dist/lib/integrations/nextjs/pages-router.d.cts +15 -0
- package/dist/lib/integrations/nextjs/pages-router.d.cts.map +1 -0
- package/dist/lib/integrations/nextjs/pages-router.d.mts +15 -0
- package/dist/lib/integrations/nextjs/pages-router.d.mts.map +1 -0
- package/dist/lib/integrations/nextjs/pages-router.mjs +19 -0
- package/dist/lib/integrations/nextjs/pages-router.mjs.map +1 -0
- package/dist/lib/integrations/node-express/index.cjs +14 -0
- package/dist/lib/integrations/node-express/index.cjs.map +1 -0
- package/dist/lib/integrations/node-express/index.d.cts +9 -0
- package/dist/lib/integrations/node-express/index.d.cts.map +1 -0
- package/dist/lib/integrations/node-express/index.d.mts +9 -0
- package/dist/lib/integrations/node-express/index.d.mts.map +1 -0
- package/dist/lib/integrations/node-express/index.mjs +14 -0
- package/dist/lib/integrations/node-express/index.mjs.map +1 -0
- package/dist/lib/integrations/node-http/index.cjs +85 -0
- package/dist/lib/integrations/node-http/index.cjs.map +1 -0
- package/dist/lib/integrations/node-http/index.d.cts +9 -0
- package/dist/lib/integrations/node-http/index.d.cts.map +1 -0
- package/dist/lib/integrations/node-http/index.d.mts +9 -0
- package/dist/lib/integrations/node-http/index.d.mts.map +1 -0
- package/dist/lib/integrations/node-http/index.mjs +84 -0
- package/dist/lib/integrations/node-http/index.mjs.map +1 -0
- package/dist/lib/integrations/node-http/request-handler.cjs +81 -0
- package/dist/lib/integrations/node-http/request-handler.cjs.map +1 -0
- package/dist/lib/integrations/node-http/request-handler.mjs +74 -0
- package/dist/lib/integrations/node-http/request-handler.mjs.map +1 -0
- package/dist/lib/integrations/shared.cjs +41 -0
- package/dist/lib/integrations/shared.cjs.map +1 -0
- package/dist/lib/integrations/shared.d.cts +57 -0
- package/dist/lib/integrations/shared.d.cts.map +1 -0
- package/dist/lib/integrations/shared.d.mts +57 -0
- package/dist/lib/integrations/shared.d.mts.map +1 -0
- package/dist/lib/integrations/shared.mjs +39 -0
- package/dist/lib/integrations/shared.mjs.map +1 -0
- package/dist/lib/logger.cjs +25 -0
- package/dist/lib/logger.cjs.map +1 -0
- package/dist/lib/logger.d.cts +13 -0
- package/dist/lib/logger.d.cts.map +1 -0
- package/dist/lib/logger.d.mts +13 -0
- package/dist/lib/logger.d.mts.map +1 -0
- package/dist/lib/logger.mjs +22 -0
- package/dist/lib/logger.mjs.map +1 -0
- package/dist/lib/observability.d.cts +72 -0
- package/dist/lib/observability.d.cts.map +1 -0
- package/dist/lib/observability.d.mts +72 -0
- package/dist/lib/observability.d.mts.map +1 -0
- package/dist/lib/runtime/agent-integrations/langgraph/agent.cjs +135 -0
- package/dist/lib/runtime/agent-integrations/langgraph/agent.cjs.map +1 -0
- package/dist/lib/runtime/agent-integrations/langgraph/agent.d.cts +851 -0
- package/dist/lib/runtime/agent-integrations/langgraph/agent.d.cts.map +1 -0
- package/dist/lib/runtime/agent-integrations/langgraph/agent.d.mts +851 -0
- package/dist/lib/runtime/agent-integrations/langgraph/agent.d.mts.map +1 -0
- package/dist/lib/runtime/agent-integrations/langgraph/agent.mjs +134 -0
- package/dist/lib/runtime/agent-integrations/langgraph/agent.mjs.map +1 -0
- package/dist/lib/runtime/agent-integrations/langgraph/consts.cjs +14 -0
- package/dist/lib/runtime/agent-integrations/langgraph/consts.cjs.map +1 -0
- package/dist/lib/runtime/agent-integrations/langgraph/consts.d.cts +20 -0
- package/dist/lib/runtime/agent-integrations/langgraph/consts.d.cts.map +1 -0
- package/dist/lib/runtime/agent-integrations/langgraph/consts.d.mts +20 -0
- package/dist/lib/runtime/agent-integrations/langgraph/consts.d.mts.map +1 -0
- package/dist/lib/runtime/agent-integrations/langgraph/consts.mjs +13 -0
- package/dist/lib/runtime/agent-integrations/langgraph/consts.mjs.map +1 -0
- package/dist/lib/runtime/agent-integrations/langgraph/index.d.cts +3 -0
- package/dist/lib/runtime/agent-integrations/langgraph/index.d.mts +3 -0
- package/dist/lib/runtime/copilot-runtime.cjs +251 -0
- package/dist/lib/runtime/copilot-runtime.cjs.map +1 -0
- package/dist/lib/runtime/copilot-runtime.d.cts +215 -0
- package/dist/lib/runtime/copilot-runtime.d.cts.map +1 -0
- package/dist/lib/runtime/copilot-runtime.d.mts +215 -0
- package/dist/lib/runtime/copilot-runtime.d.mts.map +1 -0
- package/dist/lib/runtime/copilot-runtime.mjs +247 -0
- package/dist/lib/runtime/copilot-runtime.mjs.map +1 -0
- package/dist/lib/runtime/mcp-tools-utils.cjs +138 -0
- package/dist/lib/runtime/mcp-tools-utils.cjs.map +1 -0
- package/dist/lib/runtime/mcp-tools-utils.d.cts +57 -0
- package/dist/lib/runtime/mcp-tools-utils.d.cts.map +1 -0
- package/dist/lib/runtime/mcp-tools-utils.d.mts +57 -0
- package/dist/lib/runtime/mcp-tools-utils.d.mts.map +1 -0
- package/dist/lib/runtime/mcp-tools-utils.mjs +135 -0
- package/dist/lib/runtime/mcp-tools-utils.mjs.map +1 -0
- package/dist/lib/runtime/telemetry-agent-runner.cjs +90 -0
- package/dist/lib/runtime/telemetry-agent-runner.cjs.map +1 -0
- package/dist/lib/runtime/telemetry-agent-runner.d.cts +55 -0
- package/dist/lib/runtime/telemetry-agent-runner.d.cts.map +1 -0
- package/dist/lib/runtime/telemetry-agent-runner.d.mts +55 -0
- package/dist/lib/runtime/telemetry-agent-runner.d.mts.map +1 -0
- package/dist/lib/runtime/telemetry-agent-runner.mjs +89 -0
- package/dist/lib/runtime/telemetry-agent-runner.mjs.map +1 -0
- package/dist/lib/runtime/types.cjs +12 -0
- package/dist/lib/runtime/types.cjs.map +1 -0
- package/dist/lib/runtime/types.d.cts +36 -0
- package/dist/lib/runtime/types.d.cts.map +1 -0
- package/dist/lib/runtime/types.d.mts +36 -0
- package/dist/lib/runtime/types.d.mts.map +1 -0
- package/dist/lib/runtime/types.mjs +11 -0
- package/dist/lib/runtime/types.mjs.map +1 -0
- package/dist/lib/telemetry-client.cjs +56 -0
- package/dist/lib/telemetry-client.cjs.map +1 -0
- package/dist/lib/telemetry-client.mjs +54 -0
- package/dist/lib/telemetry-client.mjs.map +1 -0
- package/dist/package.cjs +139 -0
- package/dist/package.cjs.map +1 -0
- package/dist/package.mjs +136 -0
- package/dist/package.mjs.map +1 -0
- package/dist/service-adapters/anthropic/anthropic-adapter.cjs +221 -0
- package/dist/service-adapters/anthropic/anthropic-adapter.cjs.map +1 -0
- package/dist/service-adapters/anthropic/anthropic-adapter.d.cts +54 -0
- package/dist/service-adapters/anthropic/anthropic-adapter.d.cts.map +1 -0
- package/dist/service-adapters/anthropic/anthropic-adapter.d.mts +54 -0
- package/dist/service-adapters/anthropic/anthropic-adapter.d.mts.map +1 -0
- package/dist/service-adapters/anthropic/anthropic-adapter.mjs +221 -0
- package/dist/service-adapters/anthropic/anthropic-adapter.mjs.map +1 -0
- package/dist/service-adapters/anthropic/utils.cjs +116 -0
- package/dist/service-adapters/anthropic/utils.cjs.map +1 -0
- package/dist/service-adapters/anthropic/utils.mjs +113 -0
- package/dist/service-adapters/anthropic/utils.mjs.map +1 -0
- package/dist/service-adapters/bedrock/bedrock-adapter.cjs +47 -0
- package/dist/service-adapters/bedrock/bedrock-adapter.cjs.map +1 -0
- package/dist/service-adapters/bedrock/bedrock-adapter.d.cts +31 -0
- package/dist/service-adapters/bedrock/bedrock-adapter.d.cts.map +1 -0
- package/dist/service-adapters/bedrock/bedrock-adapter.d.mts +31 -0
- package/dist/service-adapters/bedrock/bedrock-adapter.d.mts.map +1 -0
- package/dist/service-adapters/bedrock/bedrock-adapter.mjs +48 -0
- package/dist/service-adapters/bedrock/bedrock-adapter.mjs.map +1 -0
- package/dist/service-adapters/empty/empty-adapter.cjs +19 -0
- package/dist/service-adapters/empty/empty-adapter.cjs.map +1 -0
- package/dist/service-adapters/empty/empty-adapter.d.cts +12 -0
- package/dist/service-adapters/empty/empty-adapter.d.cts.map +1 -0
- package/dist/service-adapters/empty/empty-adapter.d.mts +12 -0
- package/dist/service-adapters/empty/empty-adapter.d.mts.map +1 -0
- package/dist/service-adapters/empty/empty-adapter.mjs +17 -0
- package/dist/service-adapters/empty/empty-adapter.mjs.map +1 -0
- package/dist/service-adapters/events.cjs +29 -0
- package/dist/service-adapters/events.cjs.map +1 -0
- package/dist/service-adapters/events.d.cts +185 -0
- package/dist/service-adapters/events.d.cts.map +1 -0
- package/dist/service-adapters/events.d.mts +185 -0
- package/dist/service-adapters/events.d.mts.map +1 -0
- package/dist/service-adapters/events.mjs +28 -0
- package/dist/service-adapters/events.mjs.map +1 -0
- package/dist/service-adapters/experimental/ollama/ollama-adapter.cjs +38 -0
- package/dist/service-adapters/experimental/ollama/ollama-adapter.cjs.map +1 -0
- package/dist/service-adapters/experimental/ollama/ollama-adapter.d.cts +17 -0
- package/dist/service-adapters/experimental/ollama/ollama-adapter.d.cts.map +1 -0
- package/dist/service-adapters/experimental/ollama/ollama-adapter.d.mts +17 -0
- package/dist/service-adapters/experimental/ollama/ollama-adapter.d.mts.map +1 -0
- package/dist/service-adapters/experimental/ollama/ollama-adapter.mjs +38 -0
- package/dist/service-adapters/experimental/ollama/ollama-adapter.mjs.map +1 -0
- package/dist/service-adapters/google/google-genai-adapter.cjs +52 -0
- package/dist/service-adapters/google/google-genai-adapter.cjs.map +1 -0
- package/dist/service-adapters/google/google-genai-adapter.d.cts +26 -0
- package/dist/service-adapters/google/google-genai-adapter.d.cts.map +1 -0
- package/dist/service-adapters/google/google-genai-adapter.d.mts +26 -0
- package/dist/service-adapters/google/google-genai-adapter.d.mts.map +1 -0
- package/dist/service-adapters/google/google-genai-adapter.mjs +53 -0
- package/dist/service-adapters/google/google-genai-adapter.mjs.map +1 -0
- package/dist/service-adapters/groq/groq-adapter.cjs +109 -0
- package/dist/service-adapters/groq/groq-adapter.cjs.map +1 -0
- package/dist/service-adapters/groq/groq-adapter.d.cts +38 -0
- package/dist/service-adapters/groq/groq-adapter.d.cts.map +1 -0
- package/dist/service-adapters/groq/groq-adapter.d.mts +38 -0
- package/dist/service-adapters/groq/groq-adapter.d.mts.map +1 -0
- package/dist/service-adapters/groq/groq-adapter.mjs +109 -0
- package/dist/service-adapters/groq/groq-adapter.mjs.map +1 -0
- package/dist/service-adapters/index.d.cts +14 -0
- package/dist/service-adapters/index.d.mts +15 -0
- package/dist/service-adapters/langchain/langchain-adapter.cjs +44 -0
- package/dist/service-adapters/langchain/langchain-adapter.cjs.map +1 -0
- package/dist/service-adapters/langchain/langchain-adapter.d.cts +32 -0
- package/dist/service-adapters/langchain/langchain-adapter.d.cts.map +1 -0
- package/dist/service-adapters/langchain/langchain-adapter.d.mts +32 -0
- package/dist/service-adapters/langchain/langchain-adapter.d.mts.map +1 -0
- package/dist/service-adapters/langchain/langchain-adapter.mjs +44 -0
- package/dist/service-adapters/langchain/langchain-adapter.mjs.map +1 -0
- package/dist/service-adapters/langchain/langserve.cjs +63 -0
- package/dist/service-adapters/langchain/langserve.cjs.map +1 -0
- package/dist/service-adapters/langchain/langserve.d.cts +24 -0
- package/dist/service-adapters/langchain/langserve.d.cts.map +1 -0
- package/dist/service-adapters/langchain/langserve.d.mts +24 -0
- package/dist/service-adapters/langchain/langserve.d.mts.map +1 -0
- package/dist/service-adapters/langchain/langserve.mjs +64 -0
- package/dist/service-adapters/langchain/langserve.mjs.map +1 -0
- package/dist/service-adapters/langchain/types.d.cts +11 -0
- package/dist/service-adapters/langchain/types.d.cts.map +1 -0
- package/dist/service-adapters/langchain/types.d.mts +11 -0
- package/dist/service-adapters/langchain/types.d.mts.map +1 -0
- package/dist/service-adapters/langchain/utils.cjs +183 -0
- package/dist/service-adapters/langchain/utils.cjs.map +1 -0
- package/dist/service-adapters/langchain/utils.mjs +180 -0
- package/dist/service-adapters/langchain/utils.mjs.map +1 -0
- package/dist/service-adapters/openai/openai-adapter.cjs +123 -0
- package/dist/service-adapters/openai/openai-adapter.cjs.map +1 -0
- package/dist/service-adapters/openai/openai-adapter.d.cts +47 -0
- package/dist/service-adapters/openai/openai-adapter.d.cts.map +1 -0
- package/dist/service-adapters/openai/openai-adapter.d.mts +47 -0
- package/dist/service-adapters/openai/openai-adapter.d.mts.map +1 -0
- package/dist/service-adapters/openai/openai-adapter.mjs +123 -0
- package/dist/service-adapters/openai/openai-adapter.mjs.map +1 -0
- package/dist/service-adapters/openai/openai-assistant-adapter.cjs +157 -0
- package/dist/service-adapters/openai/openai-assistant-adapter.cjs.map +1 -0
- package/dist/service-adapters/openai/openai-assistant-adapter.d.cts +59 -0
- package/dist/service-adapters/openai/openai-assistant-adapter.d.cts.map +1 -0
- package/dist/service-adapters/openai/openai-assistant-adapter.d.mts +59 -0
- package/dist/service-adapters/openai/openai-assistant-adapter.d.mts.map +1 -0
- package/dist/service-adapters/openai/openai-assistant-adapter.mjs +158 -0
- package/dist/service-adapters/openai/openai-assistant-adapter.mjs.map +1 -0
- package/dist/service-adapters/openai/utils.cjs +143 -0
- package/dist/service-adapters/openai/utils.cjs.map +1 -0
- package/dist/service-adapters/openai/utils.mjs +139 -0
- package/dist/service-adapters/openai/utils.mjs.map +1 -0
- package/dist/service-adapters/service-adapter.d.cts +37 -0
- package/dist/service-adapters/service-adapter.d.cts.map +1 -0
- package/dist/service-adapters/service-adapter.d.mts +37 -0
- package/dist/service-adapters/service-adapter.d.mts.map +1 -0
- package/dist/service-adapters/shared/error-utils.cjs +36 -0
- package/dist/service-adapters/shared/error-utils.cjs.map +1 -0
- package/dist/service-adapters/shared/error-utils.d.cts +12 -0
- package/dist/service-adapters/shared/error-utils.d.cts.map +1 -0
- package/dist/service-adapters/shared/error-utils.d.mts +12 -0
- package/dist/service-adapters/shared/error-utils.d.mts.map +1 -0
- package/dist/service-adapters/shared/error-utils.mjs +35 -0
- package/dist/service-adapters/shared/error-utils.mjs.map +1 -0
- package/dist/service-adapters/shared/index.d.mts +2 -0
- package/dist/service-adapters/unify/unify-adapter.cjs +93 -0
- package/dist/service-adapters/unify/unify-adapter.cjs.map +1 -0
- package/dist/service-adapters/unify/unify-adapter.d.cts +20 -0
- package/dist/service-adapters/unify/unify-adapter.d.cts.map +1 -0
- package/dist/service-adapters/unify/unify-adapter.d.mts +20 -0
- package/dist/service-adapters/unify/unify-adapter.d.mts.map +1 -0
- package/dist/service-adapters/unify/unify-adapter.mjs +93 -0
- package/dist/service-adapters/unify/unify-adapter.mjs.map +1 -0
- package/dist/utils/failed-response-status-reasons.cjs +37 -0
- package/dist/utils/failed-response-status-reasons.cjs.map +1 -0
- package/dist/utils/failed-response-status-reasons.d.cts +58 -0
- package/dist/utils/failed-response-status-reasons.d.cts.map +1 -0
- package/dist/utils/failed-response-status-reasons.d.mts +58 -0
- package/dist/utils/failed-response-status-reasons.d.mts.map +1 -0
- package/dist/utils/failed-response-status-reasons.mjs +35 -0
- package/dist/utils/failed-response-status-reasons.mjs.map +1 -0
- package/dist/v2/index.cjs +18 -0
- package/dist/v2/index.d.cts +3 -0
- package/dist/v2/index.d.mts +3 -0
- package/dist/v2/index.mjs +6 -5
- package/package.json +30 -28
- package/src/graphql/inputs/extensions.input.ts +6 -6
- package/src/graphql/inputs/message.input.ts +20 -20
- package/src/graphql/message-conversion/agui-to-gql.test.ts +2 -2
- package/src/graphql/message-conversion/gql-to-agui.test.ts +28 -28
- package/src/graphql/message-conversion/roundtrip-conversion.test.ts +8 -8
- package/src/graphql/types/extensions-response.type.ts +6 -6
- package/src/index.ts +0 -1
- package/src/lib/integrations/shared.ts +1 -81
- package/src/lib/runtime/__tests__/copilot-runtime-error.test.ts +4 -4
- package/src/lib/runtime/__tests__/mcp-tools-utils.test.ts +1 -1
- package/src/service-adapters/google/google-genai-adapter.test.ts +54 -11
- package/src/v2/index.ts +0 -1
- package/tests/global.d.ts +1 -13
- package/tests/service-adapters/anthropic/allowlist-approach.test.ts +0 -6
- package/tests/service-adapters/anthropic/anthropic-adapter.test.ts +28 -51
- package/tests/service-adapters/openai/allowlist-approach.test.ts +0 -6
- package/tests/service-adapters/openai/openai-adapter.test.ts +23 -38
- package/tests/setup.vitest.ts +8 -0
- package/tests/tsconfig.json +1 -1
- package/tsconfig.json +1 -1
- package/tsdown.config.ts +37 -0
- package/vitest.config.mjs +16 -0
- package/dist/index.d.ts +0 -1514
- package/dist/index.js +0 -5655
- package/dist/index.js.map +0 -1
- package/dist/index.mjs.map +0 -1
- package/dist/langgraph.d.ts +0 -869
- package/dist/langgraph.js +0 -207
- package/dist/langgraph.js.map +0 -1
- package/dist/langgraph.mjs.map +0 -1
- package/dist/v2/index.d.ts +0 -2
- package/dist/v2/index.js +0 -22
- package/dist/v2/index.js.map +0 -1
- package/dist/v2/index.mjs.map +0 -1
- package/jest.config.js +0 -10
- package/tests/setup.jest.ts +0 -21
- package/tsup.config.ts +0 -20
|
@@ -122,7 +122,7 @@ describe("CopilotRuntime onError types", () => {
|
|
|
122
122
|
};
|
|
123
123
|
|
|
124
124
|
it("should return true when both onError and publicApiKey are provided", () => {
|
|
125
|
-
const onError =
|
|
125
|
+
const onError = vi.fn();
|
|
126
126
|
const result = shouldHandleError(onError, "valid-api-key");
|
|
127
127
|
expect(result).toBe(true);
|
|
128
128
|
});
|
|
@@ -133,13 +133,13 @@ describe("CopilotRuntime onError types", () => {
|
|
|
133
133
|
});
|
|
134
134
|
|
|
135
135
|
it("should return false when publicApiKey is missing", () => {
|
|
136
|
-
const onError =
|
|
136
|
+
const onError = vi.fn();
|
|
137
137
|
const result = shouldHandleError(onError, undefined);
|
|
138
138
|
expect(result).toBe(false);
|
|
139
139
|
});
|
|
140
140
|
|
|
141
141
|
it("should return false when publicApiKey is empty string", () => {
|
|
142
|
-
const onError =
|
|
142
|
+
const onError = vi.fn();
|
|
143
143
|
const result = shouldHandleError(onError, "");
|
|
144
144
|
expect(result).toBe(false);
|
|
145
145
|
});
|
|
@@ -175,7 +175,7 @@ describe("CopilotRuntime onError types", () => {
|
|
|
175
175
|
expect(nonCloudKey).toBe("test-key-123");
|
|
176
176
|
|
|
177
177
|
// Both should enable error handling when onError is present
|
|
178
|
-
const onError =
|
|
178
|
+
const onError = vi.fn();
|
|
179
179
|
expect(shouldHandleError(onError, cloudKey)).toBe(true);
|
|
180
180
|
expect(shouldHandleError(onError, nonCloudKey)).toBe(true);
|
|
181
181
|
});
|
|
@@ -394,7 +394,7 @@ describe("MCP Tools Utils", () => {
|
|
|
394
394
|
});
|
|
395
395
|
|
|
396
396
|
it("should handle tool execution correctly", async () => {
|
|
397
|
-
const mockExecute =
|
|
397
|
+
const mockExecute = vi.fn().mockResolvedValue("mock result");
|
|
398
398
|
const mcpTools: Record<string, MCPTool> = {
|
|
399
399
|
testTool: {
|
|
400
400
|
description: "A test tool",
|
|
@@ -1,22 +1,65 @@
|
|
|
1
|
-
import { GoogleGenerativeAIAdapter } from "./google-genai-adapter";
|
|
2
1
|
import {
|
|
3
2
|
AIMessage,
|
|
4
3
|
HumanMessage,
|
|
5
4
|
SystemMessage,
|
|
6
5
|
} from "@langchain/core/messages";
|
|
6
|
+
import * as langchainMessages from "@langchain/core/messages";
|
|
7
|
+
|
|
8
|
+
// Create mock ChatGoogle that captures the filtered messages passed to stream()
|
|
9
|
+
const mockStream = vi.fn();
|
|
10
|
+
const mockBindTools = vi.fn();
|
|
11
|
+
const MockChatGoogle = vi.fn();
|
|
12
|
+
|
|
13
|
+
// The adapter's chainFn uses lazy require() calls for @langchain/google-gauth
|
|
14
|
+
// and @langchain/core/messages. Vitest's vi.mock cannot intercept CJS require()
|
|
15
|
+
// calls in all environments. Instead, inject mocks directly into Node's require
|
|
16
|
+
// cache so that:
|
|
17
|
+
// 1. require("@langchain/google-gauth") returns our mock ChatGoogle
|
|
18
|
+
// 2. require("@langchain/core/messages") returns the same module instance as
|
|
19
|
+
// the ESM import above, ensuring instanceof checks work correctly
|
|
20
|
+
beforeAll(() => {
|
|
21
|
+
mockStream.mockImplementation((messages: any) =>
|
|
22
|
+
Promise.resolve({ filteredMessages: messages }),
|
|
23
|
+
);
|
|
24
|
+
mockBindTools.mockReturnValue({ stream: mockStream });
|
|
25
|
+
MockChatGoogle.mockImplementation(() => ({ bindTools: mockBindTools }));
|
|
26
|
+
|
|
27
|
+
const googleAuthPath = require.resolve("@langchain/google-gauth");
|
|
28
|
+
require.cache[googleAuthPath] = {
|
|
29
|
+
id: googleAuthPath,
|
|
30
|
+
filename: googleAuthPath,
|
|
31
|
+
loaded: true,
|
|
32
|
+
exports: { ChatGoogle: MockChatGoogle },
|
|
33
|
+
} as any;
|
|
34
|
+
|
|
35
|
+
const messagesPath = require.resolve("@langchain/core/messages");
|
|
36
|
+
require.cache[messagesPath] = {
|
|
37
|
+
id: messagesPath,
|
|
38
|
+
filename: messagesPath,
|
|
39
|
+
loaded: true,
|
|
40
|
+
exports: langchainMessages,
|
|
41
|
+
} as any;
|
|
42
|
+
});
|
|
7
43
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
})),
|
|
17
|
-
}));
|
|
44
|
+
afterAll(() => {
|
|
45
|
+
const googleAuthPath = require.resolve("@langchain/google-gauth");
|
|
46
|
+
delete require.cache[googleAuthPath];
|
|
47
|
+
const messagesPath = require.resolve("@langchain/core/messages");
|
|
48
|
+
delete require.cache[messagesPath];
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
import { GoogleGenerativeAIAdapter } from "./google-genai-adapter";
|
|
18
52
|
|
|
19
53
|
describe("GoogleGenerativeAIAdapter", () => {
|
|
54
|
+
beforeEach(() => {
|
|
55
|
+
vi.clearAllMocks();
|
|
56
|
+
mockStream.mockImplementation((messages: any) =>
|
|
57
|
+
Promise.resolve({ filteredMessages: messages }),
|
|
58
|
+
);
|
|
59
|
+
mockBindTools.mockReturnValue({ stream: mockStream });
|
|
60
|
+
MockChatGoogle.mockImplementation(() => ({ bindTools: mockBindTools }));
|
|
61
|
+
});
|
|
62
|
+
|
|
20
63
|
it("should filter out empty AIMessages to prevent Gemini validation errors", async () => {
|
|
21
64
|
const adapter = new GoogleGenerativeAIAdapter();
|
|
22
65
|
|
package/src/v2/index.ts
CHANGED
package/tests/global.d.ts
CHANGED
|
@@ -1,13 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
declare global {
|
|
4
|
-
const jest: (typeof import("@jest/globals"))["jest"];
|
|
5
|
-
const expect: (typeof import("@jest/globals"))["expect"];
|
|
6
|
-
const test: (typeof import("@jest/globals"))["test"];
|
|
7
|
-
const describe: (typeof import("@jest/globals"))["describe"];
|
|
8
|
-
const beforeEach: (typeof import("@jest/globals"))["beforeEach"];
|
|
9
|
-
const afterEach: (typeof import("@jest/globals"))["afterEach"];
|
|
10
|
-
const beforeAll: (typeof import("@jest/globals"))["beforeAll"];
|
|
11
|
-
const afterAll: (typeof import("@jest/globals"))["afterAll"];
|
|
12
|
-
const it: (typeof import("@jest/globals"))["it"];
|
|
13
|
-
}
|
|
1
|
+
/// <reference types="vitest/globals" />
|
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @jest-environment node
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
import { describe, it, expect } from "@jest/globals";
|
|
6
|
-
|
|
7
1
|
describe("Anthropic Adapter - Allowlist Approach", () => {
|
|
8
2
|
it("should filter out tool_result messages with no corresponding tool_use ID", () => {
|
|
9
3
|
// Setup test data
|
|
@@ -1,22 +1,23 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @jest-environment node
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
1
|
import { AnthropicAdapter } from "../../../src/service-adapters/anthropic/anthropic-adapter";
|
|
2
|
+
import {
|
|
3
|
+
TextMessage,
|
|
4
|
+
ActionExecutionMessage,
|
|
5
|
+
ResultMessage,
|
|
6
|
+
} from "../../../src/graphql/types/converted";
|
|
6
7
|
|
|
7
8
|
// Mock only the Anthropic SDK, not our adapter
|
|
8
|
-
|
|
9
|
+
vi.mock("@anthropic-ai/sdk", () => {
|
|
9
10
|
return {
|
|
10
|
-
default:
|
|
11
|
+
default: vi.fn().mockImplementation(() => ({
|
|
11
12
|
messages: {
|
|
12
|
-
create:
|
|
13
|
+
create: vi.fn(),
|
|
13
14
|
},
|
|
14
15
|
})),
|
|
15
16
|
};
|
|
16
17
|
});
|
|
17
18
|
|
|
18
19
|
// Mock the message classes
|
|
19
|
-
|
|
20
|
+
vi.mock("../../../src/graphql/types/converted", () => {
|
|
20
21
|
class MockTextMessage {
|
|
21
22
|
content: string;
|
|
22
23
|
role: string;
|
|
@@ -102,15 +103,15 @@ jest.mock("../../../src/graphql/types/converted", () => {
|
|
|
102
103
|
describe("AnthropicAdapter", () => {
|
|
103
104
|
let adapter: AnthropicAdapter;
|
|
104
105
|
let mockEventSource: any;
|
|
105
|
-
let mockAnthropicCreate:
|
|
106
|
+
let mockAnthropicCreate: any;
|
|
106
107
|
|
|
107
108
|
beforeEach(() => {
|
|
108
|
-
|
|
109
|
+
vi.clearAllMocks();
|
|
109
110
|
|
|
110
111
|
// Create a mock Anthropic instance
|
|
111
112
|
const mockAnthropic = {
|
|
112
113
|
messages: {
|
|
113
|
-
create:
|
|
114
|
+
create: vi.fn(),
|
|
114
115
|
},
|
|
115
116
|
};
|
|
116
117
|
|
|
@@ -121,15 +122,15 @@ describe("AnthropicAdapter", () => {
|
|
|
121
122
|
mockAnthropicCreate = mockAnthropic.messages.create;
|
|
122
123
|
|
|
123
124
|
mockEventSource = {
|
|
124
|
-
stream:
|
|
125
|
+
stream: vi.fn((callback) => {
|
|
125
126
|
const mockStream = {
|
|
126
|
-
sendTextMessageStart:
|
|
127
|
-
sendTextMessageContent:
|
|
128
|
-
sendTextMessageEnd:
|
|
129
|
-
sendActionExecutionStart:
|
|
130
|
-
sendActionExecutionArgs:
|
|
131
|
-
sendActionExecutionEnd:
|
|
132
|
-
complete:
|
|
127
|
+
sendTextMessageStart: vi.fn(),
|
|
128
|
+
sendTextMessageContent: vi.fn(),
|
|
129
|
+
sendTextMessageEnd: vi.fn(),
|
|
130
|
+
sendActionExecutionStart: vi.fn(),
|
|
131
|
+
sendActionExecutionArgs: vi.fn(),
|
|
132
|
+
sendActionExecutionEnd: vi.fn(),
|
|
133
|
+
complete: vi.fn(),
|
|
133
134
|
};
|
|
134
135
|
callback(mockStream);
|
|
135
136
|
return Promise.resolve();
|
|
@@ -139,12 +140,6 @@ describe("AnthropicAdapter", () => {
|
|
|
139
140
|
|
|
140
141
|
describe("Deduplication Logic", () => {
|
|
141
142
|
it("should filter out duplicate result messages", async () => {
|
|
142
|
-
const {
|
|
143
|
-
TextMessage,
|
|
144
|
-
ActionExecutionMessage,
|
|
145
|
-
ResultMessage,
|
|
146
|
-
} = require("../../../src/graphql/types/converted");
|
|
147
|
-
|
|
148
143
|
const systemMessage = new TextMessage("system", "System message");
|
|
149
144
|
const userMessage = new TextMessage("user", "Set theme to orange");
|
|
150
145
|
|
|
@@ -238,12 +233,6 @@ describe("AnthropicAdapter", () => {
|
|
|
238
233
|
});
|
|
239
234
|
|
|
240
235
|
it("should filter out invalid result messages without corresponding tool_use", async () => {
|
|
241
|
-
const {
|
|
242
|
-
TextMessage,
|
|
243
|
-
ActionExecutionMessage,
|
|
244
|
-
ResultMessage,
|
|
245
|
-
} = require("../../../src/graphql/types/converted");
|
|
246
|
-
|
|
247
236
|
const systemMessage = new TextMessage("system", "System message");
|
|
248
237
|
|
|
249
238
|
// Valid tool execution
|
|
@@ -290,12 +279,6 @@ describe("AnthropicAdapter", () => {
|
|
|
290
279
|
|
|
291
280
|
describe("Fallback Response Logic", () => {
|
|
292
281
|
it("should generate contextual fallback when Anthropic returns no content", async () => {
|
|
293
|
-
const {
|
|
294
|
-
TextMessage,
|
|
295
|
-
ActionExecutionMessage,
|
|
296
|
-
ResultMessage,
|
|
297
|
-
} = require("../../../src/graphql/types/converted");
|
|
298
|
-
|
|
299
282
|
const systemMessage = new TextMessage("system", "System message");
|
|
300
283
|
const userMessage = new TextMessage("user", "Set theme to orange");
|
|
301
284
|
|
|
@@ -318,10 +301,10 @@ describe("AnthropicAdapter", () => {
|
|
|
318
301
|
});
|
|
319
302
|
|
|
320
303
|
const mockStream = {
|
|
321
|
-
sendTextMessageStart:
|
|
322
|
-
sendTextMessageContent:
|
|
323
|
-
sendTextMessageEnd:
|
|
324
|
-
complete:
|
|
304
|
+
sendTextMessageStart: vi.fn(),
|
|
305
|
+
sendTextMessageContent: vi.fn(),
|
|
306
|
+
sendTextMessageEnd: vi.fn(),
|
|
307
|
+
complete: vi.fn(),
|
|
325
308
|
};
|
|
326
309
|
|
|
327
310
|
mockEventSource.stream.mockImplementation((callback) => {
|
|
@@ -347,12 +330,6 @@ describe("AnthropicAdapter", () => {
|
|
|
347
330
|
});
|
|
348
331
|
|
|
349
332
|
it("should use generic fallback when no tool result content available", async () => {
|
|
350
|
-
const {
|
|
351
|
-
TextMessage,
|
|
352
|
-
ActionExecutionMessage,
|
|
353
|
-
ResultMessage,
|
|
354
|
-
} = require("../../../src/graphql/types/converted");
|
|
355
|
-
|
|
356
333
|
const systemMessage = new TextMessage("system", "System message");
|
|
357
334
|
|
|
358
335
|
const toolExecution = new ActionExecutionMessage({
|
|
@@ -371,10 +348,10 @@ describe("AnthropicAdapter", () => {
|
|
|
371
348
|
});
|
|
372
349
|
|
|
373
350
|
const mockStream = {
|
|
374
|
-
sendTextMessageStart:
|
|
375
|
-
sendTextMessageContent:
|
|
376
|
-
sendTextMessageEnd:
|
|
377
|
-
complete:
|
|
351
|
+
sendTextMessageStart: vi.fn(),
|
|
352
|
+
sendTextMessageContent: vi.fn(),
|
|
353
|
+
sendTextMessageEnd: vi.fn(),
|
|
354
|
+
complete: vi.fn(),
|
|
378
355
|
};
|
|
379
356
|
|
|
380
357
|
mockEventSource.stream.mockImplementation((callback) => {
|
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @jest-environment node
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
import { describe, it, expect } from "@jest/globals";
|
|
6
|
-
|
|
7
1
|
describe("OpenAI Adapter - Allowlist Approach", () => {
|
|
8
2
|
it("should filter out tool_result messages with no corresponding tool_call ID", () => {
|
|
9
3
|
// Setup test data
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
// Mock the modules first
|
|
2
|
-
|
|
2
|
+
vi.mock("openai", () => {
|
|
3
3
|
function MockOpenAI() {}
|
|
4
4
|
return { default: MockOpenAI };
|
|
5
5
|
});
|
|
6
6
|
|
|
7
7
|
// Mock the OpenAIAdapter class to avoid the "new OpenAI()" issue
|
|
8
|
-
|
|
8
|
+
vi.mock("../../../src/service-adapters/openai/openai-adapter", () => {
|
|
9
9
|
class MockOpenAIAdapter {
|
|
10
10
|
_openai: any;
|
|
11
11
|
model: string = "gpt-4o";
|
|
@@ -17,7 +17,7 @@ jest.mock("../../../src/service-adapters/openai/openai-adapter", () => {
|
|
|
17
17
|
beta: {
|
|
18
18
|
chat: {
|
|
19
19
|
completions: {
|
|
20
|
-
stream:
|
|
20
|
+
stream: vi.fn(),
|
|
21
21
|
},
|
|
22
22
|
},
|
|
23
23
|
},
|
|
@@ -42,11 +42,8 @@ jest.mock("../../../src/service-adapters/openai/openai-adapter", () => {
|
|
|
42
42
|
return { OpenAIAdapter: MockOpenAIAdapter };
|
|
43
43
|
});
|
|
44
44
|
|
|
45
|
-
// Now import the modules
|
|
46
|
-
import { OpenAIAdapter } from "../../../src/service-adapters/openai/openai-adapter";
|
|
47
|
-
|
|
48
45
|
// Mock the Message classes since they use TypeGraphQL decorators
|
|
49
|
-
|
|
46
|
+
vi.mock("../../../src/graphql/types/converted", () => {
|
|
50
47
|
// Create minimal implementations of the message classes
|
|
51
48
|
class MockTextMessage {
|
|
52
49
|
content: string;
|
|
@@ -130,23 +127,31 @@ jest.mock("../../../src/graphql/types/converted", () => {
|
|
|
130
127
|
};
|
|
131
128
|
});
|
|
132
129
|
|
|
130
|
+
// Now import the modules (vi.mock is hoisted above imports, so these get the mocked versions)
|
|
131
|
+
import { OpenAIAdapter } from "../../../src/service-adapters/openai/openai-adapter";
|
|
132
|
+
import {
|
|
133
|
+
TextMessage,
|
|
134
|
+
ActionExecutionMessage,
|
|
135
|
+
ResultMessage,
|
|
136
|
+
} from "../../../src/graphql/types/converted";
|
|
137
|
+
|
|
133
138
|
describe("OpenAIAdapter", () => {
|
|
134
139
|
let adapter: OpenAIAdapter;
|
|
135
140
|
let mockEventSource: any;
|
|
136
141
|
|
|
137
142
|
beforeEach(() => {
|
|
138
|
-
|
|
143
|
+
vi.clearAllMocks();
|
|
139
144
|
adapter = new OpenAIAdapter();
|
|
140
145
|
mockEventSource = {
|
|
141
|
-
stream:
|
|
146
|
+
stream: vi.fn((callback) => {
|
|
142
147
|
const mockStream = {
|
|
143
|
-
sendTextMessageStart:
|
|
144
|
-
sendTextMessageContent:
|
|
145
|
-
sendTextMessageEnd:
|
|
146
|
-
sendActionExecutionStart:
|
|
147
|
-
sendActionExecutionArgs:
|
|
148
|
-
sendActionExecutionEnd:
|
|
149
|
-
complete:
|
|
148
|
+
sendTextMessageStart: vi.fn(),
|
|
149
|
+
sendTextMessageContent: vi.fn(),
|
|
150
|
+
sendTextMessageEnd: vi.fn(),
|
|
151
|
+
sendActionExecutionStart: vi.fn(),
|
|
152
|
+
sendActionExecutionArgs: vi.fn(),
|
|
153
|
+
sendActionExecutionEnd: vi.fn(),
|
|
154
|
+
complete: vi.fn(),
|
|
150
155
|
};
|
|
151
156
|
callback(mockStream);
|
|
152
157
|
}),
|
|
@@ -155,13 +160,6 @@ describe("OpenAIAdapter", () => {
|
|
|
155
160
|
|
|
156
161
|
describe("Tool ID handling", () => {
|
|
157
162
|
it("should filter out tool_result messages that don't have corresponding tool_call IDs", async () => {
|
|
158
|
-
// Import dynamically after mocking
|
|
159
|
-
const {
|
|
160
|
-
TextMessage,
|
|
161
|
-
ActionExecutionMessage,
|
|
162
|
-
ResultMessage,
|
|
163
|
-
} = require("../../../src/graphql/types/converted");
|
|
164
|
-
|
|
165
163
|
// Create messages including one valid pair and one invalid tool_result
|
|
166
164
|
const systemMessage = new TextMessage("system", "System message");
|
|
167
165
|
const userMessage = new TextMessage("user", "User message");
|
|
@@ -186,7 +184,7 @@ describe("OpenAIAdapter", () => {
|
|
|
186
184
|
});
|
|
187
185
|
|
|
188
186
|
// Spy on the process method to test it's called properly
|
|
189
|
-
const processSpy =
|
|
187
|
+
const processSpy = vi.spyOn(adapter, "process");
|
|
190
188
|
|
|
191
189
|
await adapter.process({
|
|
192
190
|
threadId: "test-thread",
|
|
@@ -211,13 +209,6 @@ describe("OpenAIAdapter", () => {
|
|
|
211
209
|
});
|
|
212
210
|
|
|
213
211
|
it("should handle duplicate tool IDs by only using each once", async () => {
|
|
214
|
-
// Import dynamically after mocking
|
|
215
|
-
const {
|
|
216
|
-
TextMessage,
|
|
217
|
-
ActionExecutionMessage,
|
|
218
|
-
ResultMessage,
|
|
219
|
-
} = require("../../../src/graphql/types/converted");
|
|
220
|
-
|
|
221
212
|
// Create messages including duplicate tool results for the same ID
|
|
222
213
|
const systemMessage = new TextMessage("system", "System message");
|
|
223
214
|
|
|
@@ -240,7 +231,7 @@ describe("OpenAIAdapter", () => {
|
|
|
240
231
|
});
|
|
241
232
|
|
|
242
233
|
// Spy on the process method to test it's called properly
|
|
243
|
-
const processSpy =
|
|
234
|
+
const processSpy = vi.spyOn(adapter, "process");
|
|
244
235
|
|
|
245
236
|
await adapter.process({
|
|
246
237
|
threadId: "test-thread",
|
|
@@ -264,9 +255,6 @@ describe("OpenAIAdapter", () => {
|
|
|
264
255
|
});
|
|
265
256
|
|
|
266
257
|
it("should call the stream method on eventSource", async () => {
|
|
267
|
-
// Import dynamically after mocking
|
|
268
|
-
const { TextMessage } = require("../../../src/graphql/types/converted");
|
|
269
|
-
|
|
270
258
|
// Create messages
|
|
271
259
|
const systemMessage = new TextMessage("system", "System message");
|
|
272
260
|
const userMessage = new TextMessage("user", "User message");
|
|
@@ -285,9 +273,6 @@ describe("OpenAIAdapter", () => {
|
|
|
285
273
|
});
|
|
286
274
|
|
|
287
275
|
it("should return the provided threadId", async () => {
|
|
288
|
-
// Import dynamically after mocking
|
|
289
|
-
const { TextMessage } = require("../../../src/graphql/types/converted");
|
|
290
|
-
|
|
291
276
|
// Create a message
|
|
292
277
|
const systemMessage = new TextMessage("system", "System message");
|
|
293
278
|
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// Import reflect-metadata to support TypeGraphQL
|
|
2
|
+
import "reflect-metadata";
|
|
3
|
+
|
|
4
|
+
import { vi } from "vitest";
|
|
5
|
+
|
|
6
|
+
// Suppress console output during tests
|
|
7
|
+
vi.spyOn(console, "log").mockImplementation(() => {});
|
|
8
|
+
vi.spyOn(console, "error").mockImplementation(() => {});
|
package/tests/tsconfig.json
CHANGED
package/tsconfig.json
CHANGED
package/tsdown.config.ts
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { defineConfig } from "tsdown";
|
|
2
|
+
|
|
3
|
+
export default defineConfig({
|
|
4
|
+
entry: ["src/index.ts", "src/v2/index.ts", "src/langgraph.ts"],
|
|
5
|
+
format: ["esm", "cjs"],
|
|
6
|
+
dts: true,
|
|
7
|
+
sourcemap: true,
|
|
8
|
+
target: "es2022",
|
|
9
|
+
outDir: "dist",
|
|
10
|
+
unbundle: true,
|
|
11
|
+
banner: ({ format, fileName }) => {
|
|
12
|
+
// tsdown/rolldown reorders bare side-effect imports to the end of the entry chunk,
|
|
13
|
+
// breaking type-graphql which needs reflect-metadata at load time.
|
|
14
|
+
// The _virtual/_rolldown/runtime banner propagates to all output files per format,
|
|
15
|
+
// ensuring reflect-metadata is always the first thing that runs.
|
|
16
|
+
if (fileName.includes("_virtual/_rolldown/runtime")) {
|
|
17
|
+
return format === "cjs"
|
|
18
|
+
? 'require("reflect-metadata");'
|
|
19
|
+
: 'import "reflect-metadata";';
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
external: [
|
|
23
|
+
"@ag-ui/langgraph",
|
|
24
|
+
"@langchain/core",
|
|
25
|
+
"@langchain/openai",
|
|
26
|
+
"@langchain/aws",
|
|
27
|
+
"@langchain/community",
|
|
28
|
+
"@langchain/google-gauth",
|
|
29
|
+
"@langchain/langgraph-sdk",
|
|
30
|
+
"langchain",
|
|
31
|
+
"@anthropic-ai/sdk",
|
|
32
|
+
"groq-sdk",
|
|
33
|
+
"@whatwg-node/fetch",
|
|
34
|
+
"@whatwg-node/server",
|
|
35
|
+
],
|
|
36
|
+
exports: true,
|
|
37
|
+
});
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { defineConfig } from "vitest/config";
|
|
2
|
+
|
|
3
|
+
export default defineConfig({
|
|
4
|
+
test: {
|
|
5
|
+
environment: "node",
|
|
6
|
+
globals: true,
|
|
7
|
+
include: [
|
|
8
|
+
"src/**/*.{test,spec}.ts",
|
|
9
|
+
"tests/**/*.{test,spec}.ts",
|
|
10
|
+
],
|
|
11
|
+
exclude: ["**/dist/**"],
|
|
12
|
+
setupFiles: ["./tests/setup.vitest.ts"],
|
|
13
|
+
reporters: [["default", { summary: false }]],
|
|
14
|
+
silent: true,
|
|
15
|
+
},
|
|
16
|
+
});
|