From 08910624fbe4877da0789038957308dbe9be9451 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 20 Aug 2026 21:31:13 -0500 Subject: [PATCH] deps: bump ai from 6.0.138 to 7.0.59 in /sdk/typescript (#2281) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [ai](https://github.com/vercel/ai/tree/HEAD/packages/ai) from 6.0.138 to 7.0.59.
Release notes

Sourced from ai's releases.

ai@6.0.253

Patch Changes

ai@6.0.252

Patch Changes

Changelog

Sourced from ai's changelog.

7.0.59

Patch Changes

7.0.58

Patch Changes

7.0.57

Patch Changes

7.0.56

Patch Changes

... (truncated)

Commits
Maintainer changes

This version was pushed to npm by GitHub Actions, a new releaser for ai since your current version.


--------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: JerrettDavis --- sdk/typescript/package-lock.json | 130 ++++++++++++------ sdk/typescript/package.json | 2 +- sdk/typescript/src/adapters/vercel-ai.ts | 5 +- .../test/adapters/vercel-ai.test.ts | 4 +- 4 files changed, 93 insertions(+), 48 deletions(-) diff --git a/sdk/typescript/package-lock.json b/sdk/typescript/package-lock.json index 7e6915d0f..b6d02a079 100644 --- a/sdk/typescript/package-lock.json +++ b/sdk/typescript/package-lock.json @@ -1,19 +1,19 @@ { "name": "headroom-ai", - "version": "0.33.0", + "version": "0.35.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "headroom-ai", - "version": "0.33.0", + "version": "0.35.0", "license": "Apache-2.0", "devDependencies": { "@ai-sdk/anthropic": "^3.0.64", "@ai-sdk/openai": "^3.0.48", "@ai-sdk/provider": "^1.0.0", "@anthropic-ai/sdk": "^0.111.0", - "ai": "^6.0.0", + "ai": "^7.0.59", "dotenv": "^17.3.1", "openai": "^4.80.0", "tsup": "^8.0.0", @@ -75,34 +75,54 @@ } }, "node_modules/@ai-sdk/gateway": { - "version": "3.0.80", - "resolved": "https://registry.npmjs.org/@ai-sdk/gateway/-/gateway-3.0.80.tgz", - "integrity": "sha512-uM7kpZB5l977lW7+2X1+klBUxIZQ78+1a9jHlaHFEzcOcmmslTl3sdP0QqfuuBcO0YBM2gwOiqVdp8i4TRQYcw==", + "version": "4.0.47", + "resolved": "https://registry.npmjs.org/@ai-sdk/gateway/-/gateway-4.0.47.tgz", + "integrity": "sha512-BuWWlA8atWEnEJzN4eamCpGZWkoK9V3TCyNaMwgRIazhqkgWkA1Wp36si3j2JeVYzlvlEAOWrJ92dr92j/Vkqg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@ai-sdk/provider": "3.0.8", - "@ai-sdk/provider-utils": "4.0.21", - "@vercel/oidc": "3.1.0" + "@ai-sdk/provider": "4.0.7", + "@ai-sdk/provider-utils": "5.0.26", + "@vercel/oidc": "3.2.0" }, "engines": { - "node": ">=18" + "node": ">=22" }, "peerDependencies": { "zod": "^3.25.76 || ^4.1.8" } }, "node_modules/@ai-sdk/gateway/node_modules/@ai-sdk/provider": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/@ai-sdk/provider/-/provider-3.0.8.tgz", - "integrity": "sha512-oGMAgGoQdBXbZqNG0Ze56CHjDZ1IDYOwGYxYjO5KLSlz5HiNQ9udIXsPZ61VWaHGZ5XW/jyjmr6t2xz2jGVwbQ==", + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/@ai-sdk/provider/-/provider-4.0.7.tgz", + "integrity": "sha512-6or44XprPzKbr8zkmzosowSE0pxkvJcoojBL+mCZvPUt3kvXp3XSNqeVun9golb1acEfSo6yaEBRT18h2VU+1Q==", "dev": true, "license": "Apache-2.0", "dependencies": { "json-schema": "^0.4.0" }, "engines": { - "node": ">=18" + "node": ">=22" + } + }, + "node_modules/@ai-sdk/gateway/node_modules/@ai-sdk/provider-utils": { + "version": "5.0.26", + "resolved": "https://registry.npmjs.org/@ai-sdk/provider-utils/-/provider-utils-5.0.26.tgz", + "integrity": "sha512-0mqhqx+Dcv+msI84+zkbLXmnCHb/mpkYJ9DU3HBvB1px+UjFQss4lLZqRCSzJ0w3NxwQk4Ishk7cP0r8wEQD5w==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@ai-sdk/provider": "4.0.7", + "@standard-schema/spec": "^1.1.0", + "@workflow/serde": "4.1.0", + "eventsource-parser": "^3.0.8", + "undici": "^7.28.0" + }, + "engines": { + "node": ">=22" + }, + "peerDependencies": { + "zod": "^3.25.76 || ^4.1.8" } }, "node_modules/@ai-sdk/openai": { @@ -745,16 +765,6 @@ "@emnapi/runtime": "^1.7.1" } }, - "node_modules/@opentelemetry/api": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.0.tgz", - "integrity": "sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=8.0.0" - } - }, "node_modules/@oxc-project/types": { "version": "0.139.0", "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.139.0.tgz", @@ -1469,9 +1479,9 @@ } }, "node_modules/@vercel/oidc": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@vercel/oidc/-/oidc-3.1.0.tgz", - "integrity": "sha512-Fw28YZpRnA3cAHHDlkt7xQHiJ0fcL+NRcIqsocZQUSmbzeIKRpwttJjik5ZGanXP+vlA4SbTg+AbA3bP363l+w==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@vercel/oidc/-/oidc-3.2.0.tgz", + "integrity": "sha512-UycprH3T6n3jH0k44NHMa7pnFHGu/N05MjojYr+Mc6I7obkoLIJujSWwin1pCvdy/eOxrI/l3uDLQsmcrOb4ug==", "dev": true, "license": "Apache-2.0", "engines": { @@ -1591,6 +1601,13 @@ "url": "https://opencollective.com/vitest" } }, + "node_modules/@workflow/serde": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@workflow/serde/-/serde-4.1.0.tgz", + "integrity": "sha512-pav4F2BoirECWR7Nf1TKt+2eETcBj7jj4cBefQ8VXQCA6NPkaKeLfj/zMgi+3zYV5ZIBT4GuUiphsj0/b9hPQQ==", + "dev": true, + "license": "Apache-2.0" + }, "node_modules/abort-controller": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", @@ -1631,35 +1648,54 @@ } }, "node_modules/ai": { - "version": "6.0.138", - "resolved": "https://registry.npmjs.org/ai/-/ai-6.0.138.tgz", - "integrity": "sha512-49OfPe0f5uxJ6jUdA5BBXjIinP6+ZdYfAtpF2aEH64GA5wPcxH2rf/TBUQQ0bbamBz/D+TLMV18xilZqOC+zaA==", + "version": "7.0.59", + "resolved": "https://registry.npmjs.org/ai/-/ai-7.0.59.tgz", + "integrity": "sha512-p10cqg8KvLIZi7Gk+XsQjoYoLENoDdEYvehP0rSo6Wg15nbCmP+nwIy1rOIX+WGIDWGdI+jmhjVx5fXShBVC3w==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@ai-sdk/gateway": "3.0.80", - "@ai-sdk/provider": "3.0.8", - "@ai-sdk/provider-utils": "4.0.21", - "@opentelemetry/api": "1.9.0" + "@ai-sdk/gateway": "4.0.47", + "@ai-sdk/provider": "4.0.7", + "@ai-sdk/provider-utils": "5.0.26" }, "engines": { - "node": ">=18" + "node": ">=22" }, "peerDependencies": { "zod": "^3.25.76 || ^4.1.8" } }, "node_modules/ai/node_modules/@ai-sdk/provider": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/@ai-sdk/provider/-/provider-3.0.8.tgz", - "integrity": "sha512-oGMAgGoQdBXbZqNG0Ze56CHjDZ1IDYOwGYxYjO5KLSlz5HiNQ9udIXsPZ61VWaHGZ5XW/jyjmr6t2xz2jGVwbQ==", + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/@ai-sdk/provider/-/provider-4.0.7.tgz", + "integrity": "sha512-6or44XprPzKbr8zkmzosowSE0pxkvJcoojBL+mCZvPUt3kvXp3XSNqeVun9golb1acEfSo6yaEBRT18h2VU+1Q==", "dev": true, "license": "Apache-2.0", "dependencies": { "json-schema": "^0.4.0" }, "engines": { - "node": ">=18" + "node": ">=22" + } + }, + "node_modules/ai/node_modules/@ai-sdk/provider-utils": { + "version": "5.0.26", + "resolved": "https://registry.npmjs.org/@ai-sdk/provider-utils/-/provider-utils-5.0.26.tgz", + "integrity": "sha512-0mqhqx+Dcv+msI84+zkbLXmnCHb/mpkYJ9DU3HBvB1px+UjFQss4lLZqRCSzJ0w3NxwQk4Ishk7cP0r8wEQD5w==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@ai-sdk/provider": "4.0.7", + "@standard-schema/spec": "^1.1.0", + "@workflow/serde": "4.1.0", + "eventsource-parser": "^3.0.8", + "undici": "^7.28.0" + }, + "engines": { + "node": ">=22" + }, + "peerDependencies": { + "zod": "^3.25.76 || ^4.1.8" } }, "node_modules/any-promise": { @@ -1984,9 +2020,9 @@ } }, "node_modules/eventsource-parser": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-3.0.6.tgz", - "integrity": "sha512-Vo1ab+QXPzZ4tCa8SwIHJFaSzy4R6SHf7BY79rFBDf0idraZWAkYrDjDj8uWaSm3S2TK+hJ7/t1CEmZ7jXw+pg==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-3.1.1.tgz", + "integrity": "sha512-EKN1vKAMcZ8MlYMpaNuxN6R9yakzH6uajHcHVTqWJzvu5pWw9DyhbP35HH8MVBQ+dZjAfDxk+A8NiR9KWaXiyQ==", "dev": true, "license": "MIT", "engines": { @@ -3222,6 +3258,16 @@ "dev": true, "license": "MIT" }, + "node_modules/undici": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-7.29.0.tgz", + "integrity": "sha512-IDxfleLmmbSskfWSUATiN1nfn2rDuvnMOqb5CWR92iIfojA0Ud+ulOAAEQ57LPr9rWmsreUyf5lwyao+7GNNVw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=20.18.1" + } + }, "node_modules/undici-types": { "version": "7.19.2", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.19.2.tgz", diff --git a/sdk/typescript/package.json b/sdk/typescript/package.json index b97263752..fff47c52c 100644 --- a/sdk/typescript/package.json +++ b/sdk/typescript/package.json @@ -97,7 +97,7 @@ "@ai-sdk/openai": "^3.0.48", "@ai-sdk/provider": "^1.0.0", "@anthropic-ai/sdk": "^0.111.0", - "ai": "^6.0.0", + "ai": "^7.0.59", "dotenv": "^17.3.1", "openai": "^4.80.0", "tsup": "^8.0.0", diff --git a/sdk/typescript/src/adapters/vercel-ai.ts b/sdk/typescript/src/adapters/vercel-ai.ts index 21ab04b9f..045650852 100644 --- a/sdk/typescript/src/adapters/vercel-ai.ts +++ b/sdk/typescript/src/adapters/vercel-ai.ts @@ -5,8 +5,7 @@ import { vercelToOpenAI, openAIToVercel } from "../utils/format.js"; /** * Minimal structural type for Vercel AI SDK language models. - * Compatible with both LanguageModelV1 (@ai-sdk/provider <=1.x) - * and LanguageModelV3 (@ai-sdk/provider >=2.x). + * Compatible with LanguageModelV1, LanguageModelV3, and LanguageModelV4. */ interface LanguageModel { readonly specificationVersion: string; @@ -21,7 +20,7 @@ interface LanguageModel { type VercelMessage = any; /** - * Vercel AI SDK LanguageModelV3Middleware that compresses messages + * Vercel AI SDK language model middleware that compresses messages * before they reach the LLM. * * @example diff --git a/sdk/typescript/test/adapters/vercel-ai.test.ts b/sdk/typescript/test/adapters/vercel-ai.test.ts index 8dd08ee79..ac8634af9 100644 --- a/sdk/typescript/test/adapters/vercel-ai.test.ts +++ b/sdk/typescript/test/adapters/vercel-ai.test.ts @@ -178,7 +178,7 @@ describe("withHeadroom", () => { mockFetch.mockReset(); }); - it("returns a LanguageModelV3 with correct provider and modelId", () => { + it("returns a LanguageModelV4 with correct provider and modelId", () => { const fakeModel = { specificationVersion: "v3" as const, provider: "openai", @@ -192,7 +192,7 @@ describe("withHeadroom", () => { baseUrl: "http://localhost:8787", }); - expect(wrapped.specificationVersion).toBe("v3"); + expect(wrapped.specificationVersion).toBe("v4"); expect(wrapped.modelId).toBe("gpt-4o"); expect(wrapped.provider).toBe("openai"); });