diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e6f446a..5e1a00c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -25,11 +25,11 @@ jobs: fail-fast: false matrix: # sandbox engines.node >=22 is the binding floor; agent (>=20) runs fine - # on these. 26.7.0 matches the version pinned in mise.toml. - node: ["22", "24", "26.7.0"] + # on these. 26.8.1 matches the version pinned in mise.toml. + node: ["22", "24", "26.8.1"] env: # Override the node version per matrix cell. MISE_LOCKFILE=false disables - # mise's locked mode for this job: mise.lock only pins node 26.7.0, so the + # mise's locked mode for this job: mise.lock only pins node 26.8.1, so the # 22/24 cells aren't in the lock and locked mode would refuse them. Tool # versions still come from mise.toml; the lock stays authoritative for local # dev and the (un-overridden) lint-workflows job below. diff --git a/mise.lock b/mise.lock index b3c4dca..7655638 100644 --- a/mise.lock +++ b/mise.lock @@ -47,36 +47,36 @@ url_api = "https://api.github.com/repos/rhysd/actionlint/releases/assets/3849249 provenance = "github-attestations" [[tools.node]] -version = "26.7.0" +version = "26.8.1" backend = "core:node" [tools.node."platforms.linux-arm64"] -checksum = "sha256:925aa6157dd37542d0d7f2e28b7bf61e7b39284411210b0498bc3788db4aef68" -url = "https://nodejs.org/dist/v26.7.0/node-v26.7.0-linux-arm64.tar.gz" +checksum = "sha256:d5f973ce975e4bd03e6c2038260f7e9201615aa8e1ee293c72f8dcc2a6d9fddb" +url = "https://nodejs.org/dist/v26.8.1/node-v26.8.1-linux-arm64.tar.gz" [tools.node."platforms.linux-arm64-musl"] -checksum = "sha256:1f16cc0f6febcb1bed1d4550306806dbcfbaf5c1bc2f44f3c5c8b5d22a4cc27a" -url = "https://unofficial-builds.nodejs.org/download/release/v26.7.0/node-v26.7.0-linux-arm64-musl.tar.gz" +checksum = "sha256:0fe78afdeb4a4d273b14abbd4b946c772885c58994c9d23b1c8ae0a59a2f8a53" +url = "https://unofficial-builds.nodejs.org/download/release/v26.8.1/node-v26.8.1-linux-arm64-musl.tar.gz" [tools.node."platforms.linux-x64"] -checksum = "sha256:bd6b6c31e377bad9ad579bed72e5bc11f4c879ac9452ad51d30e646ea3d828df" -url = "https://nodejs.org/dist/v26.7.0/node-v26.7.0-linux-x64.tar.gz" +checksum = "sha256:b2b76660fa4ded4e0b2a41ee3c0c651cd52ea8170ead91ebac1e147ac3d55643" +url = "https://nodejs.org/dist/v26.8.1/node-v26.8.1-linux-x64.tar.gz" [tools.node."platforms.linux-x64-musl"] -checksum = "sha256:5dc0180e7684ede6fc9d9e6333da45686f4b5a7820729d33c68335b283337295" -url = "https://unofficial-builds.nodejs.org/download/release/v26.7.0/node-v26.7.0-linux-x64-musl.tar.gz" +checksum = "sha256:13135a6a2106f9d111fa9b48c8801ed119ad43e7e1d00de17d77a9c44899aada" +url = "https://unofficial-builds.nodejs.org/download/release/v26.8.1/node-v26.8.1-linux-x64-musl.tar.gz" [tools.node."platforms.macos-arm64"] -checksum = "sha256:7ee659a7768e641bbfd5360940660b8e8fd0052f77488f365562bac522fc15d4" -url = "https://nodejs.org/dist/v26.7.0/node-v26.7.0-darwin-arm64.tar.gz" +checksum = "sha256:6e577fd0d9db776db82306629e441a9dace416702622aebdd171c9dfaa41f4d2" +url = "https://nodejs.org/dist/v26.8.1/node-v26.8.1-darwin-arm64.tar.gz" [tools.node."platforms.macos-x64"] -checksum = "sha256:f279d1ed28ce57f7788bf23435d2ad7fdd7438904ad5c4d8a1081a7cde3d4b96" -url = "https://nodejs.org/dist/v26.7.0/node-v26.7.0-darwin-x64.tar.gz" +checksum = "sha256:fe9c6dbf9c8e1b4443803d75e2a20366e420dae650c747dbb116b22975751baf" +url = "https://nodejs.org/dist/v26.8.1/node-v26.8.1-darwin-x64.tar.gz" [tools.node."platforms.windows-x64"] -checksum = "sha256:d3bd72755141ed32bbcd841228ee81897c8a98d50dfa7dae2179399a0a7c90f8" -url = "https://nodejs.org/dist/v26.7.0/node-v26.7.0-win-x64.zip" +checksum = "sha256:57693d8e93d1b04e7b7de46aca53ecd63e97564e73de36a68428d7ff08d83587" +url = "https://nodejs.org/dist/v26.8.1/node-v26.8.1-win-x64.zip" [[tools.pnpm]] version = "11.24.0" diff --git a/mise.toml b/mise.toml index 045bd53..d121d39 100644 --- a/mise.toml +++ b/mise.toml @@ -1,5 +1,5 @@ [tools] -node = "26.7.0" +node = "26.8.1" pnpm = "11.24.0" actionlint = "1.7.12" zizmor = "1.29.0" diff --git a/packages/agent/package.json b/packages/agent/package.json index 3cc9c3d..13502fb 100644 --- a/packages/agent/package.json +++ b/packages/agent/package.json @@ -60,10 +60,10 @@ "ws": "^8.21.3" }, "devDependencies": { - "@ai-sdk/react": "4.0.82", + "@ai-sdk/react": "4.0.86", "@types/node": "^26.3.0", "@types/ws": "^8.18.1", - "ai": "^7.0.79", + "ai": "^7.0.83", "tsup": "^8.5.1", "tsx": "^4.23.12", "typescript": "^6.0.3", diff --git a/packages/agent/test/unit/agent.test.ts b/packages/agent/test/unit/agent.test.ts index 12ec9b3..919fb8e 100644 --- a/packages/agent/test/unit/agent.test.ts +++ b/packages/agent/test/unit/agent.test.ts @@ -2316,16 +2316,26 @@ describe("CoderLanguageModel stream reuse across segments (#44)", () => { // Pull until the tool-call part is out — the turn generator is then // suspended mid-settle, with retainStream about to be computed. (The // pulls also drive the turn to dial the socket in the first place.) + // The abort must fire in the SAME microtask that observes the part: + // the read fulfillment is queued before the stream's refill pull, so + // aborting here deterministically lands while the generator is still + // suspended at the tool-call yield. Aborting after `await untilToolCall` + // instead races that refill pull — as of Node 26.8 (whatwg-stream pull + // path lost a microtask hop, nodejs/node#65138) the refill resumes the + // generator past its abort checkpoints first, and the segment settles + // as a healthy retained pause before the abort lands. const untilToolCall = (async () => { for (;;) { const { value, done } = await reader.read(); - if (done || (value as { type: string }).type === "tool-call") return; + if (done || (value as { type: string }).type === "tool-call") { + abort.abort(); + return; + } } })(); await vi.advanceTimersByTimeAsync(0); sockets[0]?.emit("message", streamFrame(...segmentOne)); await untilToolCall; - abort.abort(); const err = await drain(reader).then( () => undefined, (e: unknown) => e, diff --git a/packages/provider/package.json b/packages/provider/package.json index 97a99df..bc4269e 100644 --- a/packages/provider/package.json +++ b/packages/provider/package.json @@ -58,15 +58,15 @@ "example:anthropic": "tsx examples/03-anthropic.ts" }, "dependencies": { - "@ai-sdk/anthropic": "^4.0.42", - "@ai-sdk/openai-compatible": "^3.0.37", + "@ai-sdk/anthropic": "^4.0.44", + "@ai-sdk/openai-compatible": "^3.0.39", "@ai-sdk/provider": "4.0.8" }, "devDependencies": { "@arethetypeswrong/cli": "^0.18.5", "@types/node": "^26.3.0", "@vitest/coverage-v8": "^4.1.11", - "ai": "^7.0.79", + "ai": "^7.0.83", "publint": "^0.3.24", "tsup": "^8.5.1", "tsx": "^4.23.12", diff --git a/packages/release-please-ai/package.json b/packages/release-please-ai/package.json index 6e093ac..8b9f745 100644 --- a/packages/release-please-ai/package.json +++ b/packages/release-please-ai/package.json @@ -14,8 +14,8 @@ "release": "tsx src/cli.ts" }, "dependencies": { - "@ai-sdk/anthropic": "^4.0.42", - "ai": "^7.0.79", + "@ai-sdk/anthropic": "^4.0.44", + "ai": "^7.0.83", "release-please": "~17.11.2", "zod": "4.4.3" }, diff --git a/packages/sandbox/package.json b/packages/sandbox/package.json index 9771475..84860df 100644 --- a/packages/sandbox/package.json +++ b/packages/sandbox/package.json @@ -57,10 +57,10 @@ "yaml": "^2.9.0" }, "devDependencies": { - "@ai-sdk/harness": "^1.0.87", - "@ai-sdk/harness-claude-code": "^1.0.90", - "@ai-sdk/provider-utils": "^5.0.30", - "@ai-sdk/tui": "^1.0.80", + "@ai-sdk/harness": "^1.0.91", + "@ai-sdk/harness-claude-code": "^1.0.94", + "@ai-sdk/provider-utils": "^5.0.32", + "@ai-sdk/tui": "^1.0.84", "@arethetypeswrong/cli": "^0.18.5", "@types/node": "^26.3.0", "@types/ws": "^8.18.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0026fe9..7829d6f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -32,8 +32,8 @@ importers: version: 8.21.3 devDependencies: '@ai-sdk/react': - specifier: 4.0.82 - version: 4.0.82(react@19.2.8)(zod@4.4.3) + specifier: 4.0.86 + version: 4.0.86(react@19.2.8)(zod@4.4.3) '@types/node': specifier: ^26.3.0 version: 26.3.0 @@ -41,8 +41,8 @@ importers: specifier: ^8.18.1 version: 8.18.1 ai: - specifier: ^7.0.79 - version: 7.0.79(zod@4.4.3) + specifier: ^7.0.83 + version: 7.0.83(zod@4.4.3) tsup: specifier: ^8.5.1 version: 8.5.1(postcss@8.5.26)(supports-color@7.2.0)(tsx@4.23.12)(typescript@6.0.3)(yaml@2.9.0) @@ -62,11 +62,11 @@ importers: packages/provider: dependencies: '@ai-sdk/anthropic': - specifier: ^4.0.42 - version: 4.0.42(zod@4.4.3) + specifier: ^4.0.44 + version: 4.0.44(zod@4.4.3) '@ai-sdk/openai-compatible': - specifier: ^3.0.37 - version: 3.0.37(zod@4.4.3) + specifier: ^3.0.39 + version: 3.0.39(zod@4.4.3) '@ai-sdk/provider': specifier: 4.0.8 version: 4.0.8 @@ -81,8 +81,8 @@ importers: specifier: ^4.1.11 version: 4.1.11(vitest@4.1.11) ai: - specifier: ^7.0.79 - version: 7.0.79(zod@4.4.3) + specifier: ^7.0.83 + version: 7.0.83(zod@4.4.3) publint: specifier: ^0.3.24 version: 0.3.24 @@ -105,11 +105,11 @@ importers: packages/release-please-ai: dependencies: '@ai-sdk/anthropic': - specifier: ^4.0.42 - version: 4.0.42(zod@4.4.3) + specifier: ^4.0.44 + version: 4.0.44(zod@4.4.3) ai: - specifier: ^7.0.79 - version: 7.0.79(zod@4.4.3) + specifier: ^7.0.83 + version: 7.0.83(zod@4.4.3) release-please: specifier: ~17.11.2 version: 17.11.2(supports-color@7.2.0) @@ -140,17 +140,17 @@ importers: version: 2.9.0 devDependencies: '@ai-sdk/harness': - specifier: ^1.0.87 - version: 1.0.87(ws@8.21.3)(zod@4.4.3) + specifier: ^1.0.91 + version: 1.0.91(ws@8.21.3)(zod@4.4.3) '@ai-sdk/harness-claude-code': - specifier: ^1.0.90 - version: 1.0.90(zod@4.4.3) + specifier: ^1.0.94 + version: 1.0.94(zod@4.4.3) '@ai-sdk/provider-utils': - specifier: ^5.0.30 - version: 5.0.30(zod@4.4.3) + specifier: ^5.0.32 + version: 5.0.32(zod@4.4.3) '@ai-sdk/tui': - specifier: ^1.0.80 - version: 1.0.80(zod@4.4.3) + specifier: ^1.0.84 + version: 1.0.84(zod@4.4.3) '@arethetypeswrong/cli': specifier: ^0.18.5 version: 0.18.5 @@ -184,26 +184,26 @@ importers: packages: - '@ai-sdk/anthropic@4.0.42': - resolution: {integrity: sha512-U3RJDo2/rWdH6SjSbA2Owd30ZawKwt4zFTqteTTn6Po0vEW1ec1KXf6s1nwNE3mxCqKrQWEavU21C46AfGYaeg==} + '@ai-sdk/anthropic@4.0.44': + resolution: {integrity: sha512-PZT62FpNvilIeyyk09+BxYnWmmqRWFLe7ers25OPI8SnQxwDSeXtUTxiZNSbZt4ywj53op/INhLR1z5uyL6tHA==} engines: {node: '>=22'} peerDependencies: zod: 4.4.3 - '@ai-sdk/gateway@4.0.64': - resolution: {integrity: sha512-iayK1z11I0b3sgbP3j6eKQypfpwO5Fbtaq1Mkwv7YxwGQG1YTNr5QAjyYsSfqyf/58WUOLWz2cTBpk+ExZVgpw==} + '@ai-sdk/gateway@4.0.67': + resolution: {integrity: sha512-LtyxLkg7dZ2iz8Ouh1806BJbA+q+FKc/mXUCl4v/wdNNIGtbfk80dNtlhqjhqOZa4dnfc3caVafRL7ocxzoegA==} engines: {node: '>=22'} peerDependencies: zod: 4.4.3 - '@ai-sdk/harness-claude-code@1.0.90': - resolution: {integrity: sha512-SL77y5l3596n6cxuLN4OB19iTkvwg6zJq2KxIV9MAPwAMYEEXHz7YGRXxrAd7GOixIVqcsXEw1HOLN1zcG1L3A==} + '@ai-sdk/harness-claude-code@1.0.94': + resolution: {integrity: sha512-eqo2eUZl3bVNDEfbuD8NjEjXt86m2qNXjPUIwguBuy8Sxtgb9scwImIuYv/dHlnJEkivF7D2aOg2lCmaV6+zQQ==} engines: {node: '>=22'} peerDependencies: zod: 4.4.3 - '@ai-sdk/harness@1.0.87': - resolution: {integrity: sha512-OY+M1B58lLv+fRHB0dh/FJ6lCzmg9HQmTe1z+XS1WTPF8PnTMEr2E/6vNTUoORN7iZMkTyVkszA4DOhod1eFQw==} + '@ai-sdk/harness@1.0.91': + resolution: {integrity: sha512-+FDZ5LvAGanVRUOd5hzWQttP/5CIwTLEgfMpA/EmzXOv1+XhBUh5t8POuMUIjfNM5z4yGv6955s0QCrnBKKR2w==} engines: {node: '>=22'} peerDependencies: ws: ^8.21.0 @@ -212,20 +212,20 @@ packages: ws: optional: true - '@ai-sdk/mcp@2.0.37': - resolution: {integrity: sha512-VYmO75lhrCr9LBrUuXBpS/cMJ/KL1YhLo7nGgLTqOKtXA3+9kIY73gJmzg/GIANyGVatffrGER43iIFFlqUxtA==} + '@ai-sdk/mcp@2.0.39': + resolution: {integrity: sha512-bkywYQsEklAkJq+da1/5gJGcyZ4ngPV7HAqq1aA4FpfHozHvl8sbih3lScGuWYbUetEywy6PslNZn+Z6beRNSg==} engines: {node: '>=22'} peerDependencies: zod: 4.4.3 - '@ai-sdk/openai-compatible@3.0.37': - resolution: {integrity: sha512-X9LfyiV73cyT89GSKCDUsCZ8nV6wZAn6elJJ4CzZF1WRdofBvAjWz5CL1VHj7jeR5ahiqsWml6X/B8vUDgiXtg==} + '@ai-sdk/openai-compatible@3.0.39': + resolution: {integrity: sha512-LlPrLDUceaPP2v1qbFrdu4hfyEEuNZIGRsu0IwpWIg6xiulrSEItB16uJDRZwxQoLvSZhKQP5oFIzSJoCSrMow==} engines: {node: '>=22'} peerDependencies: zod: 4.4.3 - '@ai-sdk/provider-utils@5.0.30': - resolution: {integrity: sha512-9TyxUXolql77ntHIeygLqt7PO1O0HZPB73cJhLG2OsPecSBRIZhNXLxT1T7rlL6Zpm1eDoLMFrMV99kAJ28/Sg==} + '@ai-sdk/provider-utils@5.0.32': + resolution: {integrity: sha512-MZUhlINn6FzKIWuX3T36h+yM9d7bG+yatH+kC99ZCe0DHxXfP73KwaoLiLcZDPQDamFyO3umPPBLJieZJyG4DQ==} engines: {node: '>=22'} peerDependencies: zod: 4.4.3 @@ -234,14 +234,14 @@ packages: resolution: {integrity: sha512-aWO7iwhFUGf347tCwNGggggfmZigaSu7TF739IZSrWWABUp7zkb4Cr3fMqvBe5EIS7ABJJu3Cadn0g/zs1G0QQ==} engines: {node: '>=22'} - '@ai-sdk/react@4.0.82': - resolution: {integrity: sha512-1zmDxOFSb2JxKovhYCHEHl/C9Nhx7PreI/FrQq1LqbA9BxGBs0xBF2MZaB7YN+h6K5XrAVgY7CzmaLB4IjA3wQ==} + '@ai-sdk/react@4.0.86': + resolution: {integrity: sha512-dXFbiT9TOfhbtdBS7BK051ZweMnkpY4fGBmf4PCGRI3LdPDmQ2TBU5hIAT4ESpzjMpE7PmJBu/Zx+gL1mVSWyA==} engines: {node: '>=22'} peerDependencies: react: ^18 || ~19.0.1 || ~19.1.2 || ^19.2.1 - '@ai-sdk/tui@1.0.80': - resolution: {integrity: sha512-bD4SI9u8AcOEIsqd74z0g2soSfTtKJ3gjdqgUOs1vRdmjUaRO6xg7v5j2Dthh/as2xDoUWsXCSFnRf9vsTV1hw==} + '@ai-sdk/tui@1.0.84': + resolution: {integrity: sha512-xs+D9q4T4t0sWAAmkKr5UWQ9FHddC9kT1ClgjvqLSbxRtG9EwH1ABgWeaDMwVgoIDj0nbmc7ku0vYiYlY9yAkw==} engines: {node: '>=22'} '@andrewbranch/untar.js@1.0.4': @@ -1120,8 +1120,8 @@ packages: resolution: {integrity: sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==} engines: {node: '>= 14'} - ai@7.0.79: - resolution: {integrity: sha512-zZkSUq6MgmXjwIfML2wkPFeQ5Azk8kGEWkciAtE0NgnFy3slj4ljsw5LvigsCbYXxTSVr+6iCHBTPZafpx1P0w==} + ai@7.0.83: + resolution: {integrity: sha512-bg7+SopUwqA7DeQ2O8I9qELyQTHCeeI/0RuNUlT/gGz+LqWrIl5vbYRQv3eMBEnUsVFaM33n6SA8Vqe9gi8L1w==} engines: {node: '>=22'} peerDependencies: zod: 4.4.3 @@ -2309,53 +2309,53 @@ packages: snapshots: - '@ai-sdk/anthropic@4.0.42(zod@4.4.3)': + '@ai-sdk/anthropic@4.0.44(zod@4.4.3)': dependencies: '@ai-sdk/provider': 4.0.8 - '@ai-sdk/provider-utils': 5.0.30(zod@4.4.3) + '@ai-sdk/provider-utils': 5.0.32(zod@4.4.3) zod: 4.4.3 - '@ai-sdk/gateway@4.0.64(zod@4.4.3)': + '@ai-sdk/gateway@4.0.67(zod@4.4.3)': dependencies: '@ai-sdk/provider': 4.0.8 - '@ai-sdk/provider-utils': 5.0.30(zod@4.4.3) + '@ai-sdk/provider-utils': 5.0.32(zod@4.4.3) '@vercel/oidc': 3.2.0 zod: 4.4.3 - '@ai-sdk/harness-claude-code@1.0.90(zod@4.4.3)': + '@ai-sdk/harness-claude-code@1.0.94(zod@4.4.3)': dependencies: - '@ai-sdk/harness': 1.0.87(ws@8.21.3)(zod@4.4.3) - '@ai-sdk/provider-utils': 5.0.30(zod@4.4.3) + '@ai-sdk/harness': 1.0.91(ws@8.21.3)(zod@4.4.3) + '@ai-sdk/provider-utils': 5.0.32(zod@4.4.3) ws: 8.21.3 zod: 4.4.3 transitivePeerDependencies: - bufferutil - utf-8-validate - '@ai-sdk/harness@1.0.87(ws@8.21.3)(zod@4.4.3)': + '@ai-sdk/harness@1.0.91(ws@8.21.3)(zod@4.4.3)': dependencies: '@ai-sdk/provider': 4.0.8 - '@ai-sdk/provider-utils': 5.0.30(zod@4.4.3) - ai: 7.0.79(zod@4.4.3) + '@ai-sdk/provider-utils': 5.0.32(zod@4.4.3) + ai: 7.0.83(zod@4.4.3) zod: 4.4.3 optionalDependencies: ws: 8.21.3 - '@ai-sdk/mcp@2.0.37(zod@4.4.3)': + '@ai-sdk/mcp@2.0.39(zod@4.4.3)': dependencies: '@ai-sdk/provider': 4.0.8 - '@ai-sdk/provider-utils': 5.0.30(zod@4.4.3) + '@ai-sdk/provider-utils': 5.0.32(zod@4.4.3) cross-spawn: 7.0.6 pkce-challenge: 5.0.1 zod: 4.4.3 - '@ai-sdk/openai-compatible@3.0.37(zod@4.4.3)': + '@ai-sdk/openai-compatible@3.0.39(zod@4.4.3)': dependencies: '@ai-sdk/provider': 4.0.8 - '@ai-sdk/provider-utils': 5.0.30(zod@4.4.3) + '@ai-sdk/provider-utils': 5.0.32(zod@4.4.3) zod: 4.4.3 - '@ai-sdk/provider-utils@5.0.30(zod@4.4.3)': + '@ai-sdk/provider-utils@5.0.32(zod@4.4.3)': dependencies: '@ai-sdk/provider': 4.0.8 '@standard-schema/spec': 1.1.0 @@ -2368,21 +2368,21 @@ snapshots: dependencies: json-schema: 0.4.0 - '@ai-sdk/react@4.0.82(react@19.2.8)(zod@4.4.3)': + '@ai-sdk/react@4.0.86(react@19.2.8)(zod@4.4.3)': dependencies: - '@ai-sdk/mcp': 2.0.37(zod@4.4.3) + '@ai-sdk/mcp': 2.0.39(zod@4.4.3) '@ai-sdk/provider': 4.0.8 - '@ai-sdk/provider-utils': 5.0.30(zod@4.4.3) - ai: 7.0.79(zod@4.4.3) + '@ai-sdk/provider-utils': 5.0.32(zod@4.4.3) + ai: 7.0.83(zod@4.4.3) react: 19.2.8 swr: 2.5.1(react@19.2.8) throttleit: 2.1.0 transitivePeerDependencies: - zod - '@ai-sdk/tui@1.0.80(zod@4.4.3)': + '@ai-sdk/tui@1.0.84(zod@4.4.3)': dependencies: - ai: 7.0.79(zod@4.4.3) + ai: 7.0.83(zod@4.4.3) transitivePeerDependencies: - zod @@ -2952,11 +2952,11 @@ snapshots: agent-base@7.1.4: {} - ai@7.0.79(zod@4.4.3): + ai@7.0.83(zod@4.4.3): dependencies: - '@ai-sdk/gateway': 4.0.64(zod@4.4.3) + '@ai-sdk/gateway': 4.0.67(zod@4.4.3) '@ai-sdk/provider': 4.0.8 - '@ai-sdk/provider-utils': 5.0.30(zod@4.4.3) + '@ai-sdk/provider-utils': 5.0.32(zod@4.4.3) zod: 4.4.3 ansi-escapes@7.3.0: diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 03f8d85..48338d6 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -29,4 +29,4 @@ minimumReleaseAgeExclude: - "@ai-sdk/provider-utils" - "@ai-sdk/tui" - "ai" - - "@ai-sdk/mcp@2.0.32 || 2.0.37" + - "@ai-sdk/mcp@2.0.32 || 2.0.37 || 2.0.39"