Skip to content

chore(deps): update dependency @ai-sdk/openai-compatible to v3 - #1899

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/ai-sdk-openai-compatible-3.x
Open

renovate[bot] wants to merge 1 commit into
mainfrom
renovate/ai-sdk-openai-compatible-3.x

Conversation

@renovate

@renovate renovate Bot commented Oct 3, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
@ai-sdk/openai-compatible (source) 2.0.56 → 3.0.61 age confidence

Release Notes

vercel/ai (@​ai-sdk/openai-compatible)

v3.0.61

Compare Source

Patch Changes

v3.0.60

Compare Source

Patch Changes

v3.0.59

Compare Source

Patch Changes

v3.0.58

Compare Source

Patch Changes
  • e3605f6: Fix streamed tool calls with missing, blank, or repeated IDs.

  • 525efc5: feat(provider): advertise image model file and mask input support

    Use confirmed model IDs for capability declarations so unrecognized model names
    remain unknown. Include Together AI FLUX.2 Pro and Flex single-image editing, and
    allow asynchronous capability lookups and middleware overrides to resolve to
    unknown.

    Advertise QuiverAI Arrow 2 and Arrow 2 Telos file-input support, and mark Together
    AI Gemini image inputs unsupported by the current single-image request mapping.

  • Updated dependencies [e3605f6]

  • Updated dependencies [525efc5]

v3.0.57

Compare Source

Patch Changes

v3.0.55

Compare Source

Patch Changes

v3.0.54

Compare Source

Patch Changes

v3.0.53

Compare Source

Patch Changes

v3.0.52

Compare Source

Patch Changes

v3.0.51

Compare Source

Patch Changes

v3.0.50

Compare Source

Patch Changes

v3.0.49

Compare Source

Patch Changes

v3.0.48

Compare Source

Patch Changes

v3.0.47

Compare Source

Patch Changes

v3.0.46

Compare Source

Patch Changes

v3.0.45

Compare Source

Patch Changes

v3.0.44

Compare Source

Patch Changes
  • e5a22f0: fix(openai-compatible): keep reasoning streams contiguous when deltas include empty tool call arrays

v3.0.43

Compare Source

Patch Changes

v3.0.42

Compare Source

Patch Changes

v3.0.41

Compare Source

Patch Changes

v3.0.40

Compare Source

Patch Changes

v3.0.39

Compare Source

Patch Changes

v3.0.37

Compare Source

Patch Changes

v3.0.36

Compare Source

Patch Changes
  • ece5bdb: fix: send reasoning_effort: "none" when top-level reasoning is disabled

v3.0.35

Compare Source

Patch Changes

v3.0.34

Compare Source

Patch Changes
  • 99989ba: feat(provider/openai-compatible): report image generation token usage

v3.0.33

Compare Source

Patch Changes
  • d68139c: fix(openai-compatible): report truncated chat streams as errors

v3.0.32

Compare Source

Patch Changes

v3.0.31

Patch Changes
  • 86892f3: fix(openai-compatible): preserve unmapped usage fields in usage.raw

    usage.raw is specified as usage "in the shape that the provider returns",
    and the chat model already parsed the usage object loosely so that extra
    top-level fields survived. The nested prompt_tokens_details and
    completion_tokens_details objects were still strict, so anything a provider
    reported inside them was dropped — which is where providers put their most
    distinguishing detail. The existing "should preserve extra usage fields"
    fixture was itself losing audio_tokens, image_tokens and text_tokens
    this way.

    Both nested objects are now parsed loosely, as is the completion model's usage
    schema, which was strict throughout despite feeding the same raw field.

    Only usage.raw changes. The mapped token counts are unaffected.

v3.0.30

Patch Changes

v3.0.29

Compare Source

Patch Changes

v3.0.28

Compare Source

Patch Changes
  • 83e6510: fix(provider/openai-compatible): clamp outputTokens.text at 0 when a provider reports completion_tokens_details.reasoning_tokens greater than completion_tokens (observed with Baseten serving reasoning models that hit the length stop mid-reasoning). The text share of completion tokens can never be negative; total and reasoning remain as reported by the provider.

v3.0.27

Compare Source

Patch Changes

v3.0.26

Compare Source

Patch Changes

v3.0.25

Compare Source

Patch Changes

v3.0.24

Compare Source

Patch Changes

v3.0.23

Compare Source

Patch Changes

v3.0.22

Compare Source

Patch Changes

v3.0.21

Compare Source

Patch Changes

v3.0.20

Compare Source

Patch Changes

v3.0.19

Compare Source

Patch Changes

v3.0.18

Compare Source

Patch Changes

v3.0.17

Compare Source

Patch Changes

v3.0.16

Compare Source

Patch Changes

v3.0.15

Compare Source

Patch Changes

v3.0.14

Compare Source

Patch Changes

v3.0.13

Compare Source

Patch Changes
  • 8b52503: feat(openai-compatible): add an extensible providerOptions type for image model requests and stop forcing response_format

v3.0.12

Compare Source

Patch Changes

v3.0.11

Compare Source

Patch Changes
  • 0b61267: Preserve structured error data from chat completion SSE streams.

v3.0.10

Compare Source

Patch Changes

v3.0.9

Compare Source

Patch Changes

v3.0.7

Compare Source

Patch Changes

v3.0.6

Compare Source

Patch Changes
  • ac306ed: Fix StreamingToolCallTracker finalizing streaming tool calls on parsable partial JSON. Tool calls now only finalize during stream flush, restoring the behavior of #​13137: a parsable argument buffer can still be the prefix of a longer argument string, so finalizing early could act on truncated tool inputs.
  • Updated dependencies [ac306ed]

v3.0.5

Compare Source

Patch Changes

v3.0.4

Compare Source

Patch Changes

v3.0.3

Compare Source

Patch Changes

v3.0.2

Compare Source

Patch Changes

v3.0.1

Compare Source

Patch Changes

v3.0.0

Compare Source

Major Changes
  • ef992f8: Remove CommonJS exports from all packages. All packages are now ESM-only ("type": "module"). Consumers using require() must switch to ESM import syntax.

  • c29a26f: feat(provider): add support for provider references and uploading files as supported per provider

  • 8359612: Start v7 pre-release

  • 04e9009: chore: make provider implementations code patterns more consistent, including renaming certain exported symbols

    For all externally exported symbols that were renamed, the old names continue to work via deprecated aliases.

Patch Changes
  • ab81968: fix(openai-compatible): buffer tool call deltas until function.name arrives

  • 38fc777: Add AI Gateway hint to provider READMEs

  • 74d520f: feat: migrate providers to support new top-level reasoning parameter

  • e59c955: feat(vertex): add grok models to vertex provider

  • 816ff67: fix(openai-compatible): honor camelCase providerOptions key in chat and completion models

  • 9f1e1ba: fix: accept empty string role in streaming delta chunks from OpenAI-compatible providers

  • 45b3d76: fix(security): prevent streaming tool calls from finalizing on parsable partial JSON

    Streaming tool call arguments were finalized using isParsableJson() as a heuristic for completion. If partial accumulated JSON happened to be valid JSON before all chunks arrived, the tool call would be executed with incomplete arguments. Tool call finalization now only occurs in flush() after the stream is fully consumed.

  • 9f0e36c: trigger release for all packages after provenance setup

  • 58a2ad7: fix: more precise default message for tool execution denial

  • 8f3e1da: chore(openai-compat): update v3 specs to v4

  • f7295cb: revert incorrect fix #​13172

  • 008271d: feat(openai-compatible): emit warning when using kebab-case instead of camelCase

  • 7fc6bd6: Raise minimum supported Node.js version to 22. Supported versions: 22, 24, and 26.

  • f807e45: Extract shared StreamingToolCallTracker class into @ai-sdk/provider-utils to deduplicate streaming tool call handling across OpenAI-compatible providers. Also adds missing generateId() fallback for toolCallId in Alibaba's doGenerate path and ensures all providers finalize unfinished tool calls during stream flush.

  • 0c4c275: trigger initial canary release

  • 6fd51c0: fix(provider): preserve error type prefix in getErrorMessage

  • cd9c311: fix(openai, openai-compatible): only send null content for assistant messages with tool calls

  • 9bd6512: feat(provider): change file part data property to be tagged with a type and remove the image part type

  • 258c093: chore: ensure consistent import handling and avoid import duplicates or cycles

  • b8396f0: trigger initial beta release

  • bfb756d: patch - send content: null instead of empty string for tool-only assistant messages

  • 90e2d8a: chore: fix unused vars not being flagged by our lint tooling

  • b3976a2: Add workflow serialization support to all provider models.

    @ai-sdk/provider-utils: New serializeModel() helper that extracts only serializable properties from a model instance, filtering out functions and objects containing functions. Third-party provider authors can use this to add workflow support to their own models.

    All providers: headers is now optional in provider config types. This is non-breaking — existing code that passes headers continues to work. Custom provider implementations that construct model configs manually can now omit headers, which is useful when models are deserialized from a workflow step boundary where auth is provided separately.

    All provider model classes now include WORKFLOW_SERIALIZE and WORKFLOW_DESERIALIZE static methods, enabling them to cross workflow step boundaries without serialization errors.

v2.0.81

Compare Source

Patch Changes

v2.0.80

Compare Source

Patch Changes

v2.0.79

Compare Source

Patch Changes

v2.0.78

Compare Source

Patch Changes

v2.0.77

Compare Source

Patch Changes

v2.0.76

Compare Source

Patch Changes

v2.0.75

Compare Source

Patch Changes

v2.0.74

Patch Changes

v2.0.73

Patch Changes

v2.0.72

Compare Source

Patch Changes

v2.0.71

Compare Source

Patch Changes

v2.0.70

Compare Source

Patch Changes
  • c79dd10: fix(openai-compatible): report truncated chat streams as errors

v2.0.69

Compare Source

Patch Changes
  • 7440d89: fix(openai-compatible): preserve unmapped usage fields in usage.raw

    usage.raw is specified as usage "in the shape that the provider returns",
    and the chat model already parsed the usage object loosely so that extra
    top-level fields survived. The nested prompt_tokens_details and
    completion_tokens_details objects were still strict, so anything a provider
    reported inside them was dropped — which is where providers put their most
    distinguishing detail. The existing "should preserve extra usage fields"
    fixture was itself losing audio_tokens, image_tokens and text_tokens
    this way.

    Both nested objects are now parsed loosely, as is the completion model's usage
    schema, which was strict throughout despite feeding the same raw field.

    Only usage.raw changes. The mapped token counts are unaffected.

v2.0.68

Compare Source

Patch Changes

v2.0.67

Compare Source

Patch Changes

v2.0.66

Compare Source

Patch Changes
  • de18066: fix(provider/openai-compatible): clamp outputTokens.text at 0 when a provider reports completion_tokens_details.reasoning_tokens greater than completion_tokens (observed with Baseten serving reasoning models that hit the length stop mid-reasoning). The text share of completion tokens can never be negative; total and reasoning remain as reported by the provider.
  • Updated dependencies [2171d15]

v2.0.65

Compare Source

Patch Changes

v2.0.64

Compare Source

Patch Changes

v2.0.63

Compare Source

Patch Changes

v2.0.62

Compare Source

Patch Changes

v2.0.61

Compare Source

Patch Changes
  • 94fda5c: Preserve structured error data from chat completion SSE streams.

v2.0.60

Compare Source

Patch Changes

v2.0.59

Compare Source

Patch Changes

v2.0.58

Compare Source

Patch Changes
  • 4d4e176: fix(openai-compatible): buffer tool call deltas until function.name arrives

  • bef93ae: fix(security): prevent streaming tool calls from finalizing on parsable partial JSON

    Streaming tool call arguments were finalized using isParsableJson() as a heuristic for completion. If partial accumulated JSON happened to be valid JSON before all chunks arrived, the tool call would be executed with incomplete arguments. Tool call finalization now only occurs in flush() after the stream is fully consumed.

  • 327642b: fix: more precise default message for tool execution denial

  • Updated dependencies [d559de9]

v2.0.57

Compare Source

Patch Changes

Configuration

📅 Schedule: (in timezone America/Los_Angeles)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@coderabbitai

coderabbitai Bot commented Oct 3, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are limited based on label configuration.

🏷️ Required labels (at least one) (1)
  • coderabbit-review-active

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: Repository: Zoo-Code-Org/Zoo-Code/.coderabbit.yaml
  • Review profile: ASSERTIVE
  • Plan: Advanced
  • Run ID: 9206112b-07a5-4ee5-b827-2a26bcf4237a

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

github-actions Bot commented Oct 3, 2026

Copy link
Copy Markdown
Contributor

Review status

This PR was opened by an automated account. A human maintainer must verify the change intent, provenance, and validation before merging.

Current step: Fix the failing required CI checks; awaiting-maintainer requires CI and automated review completion.

Review-state labels are managed by this workflow; do not edit them manually. community-approved is managed the same way — do not add or remove it manually. It signals a fresh community code approval for the current head as an advisory priority only; maintainer review is still required.

@codecov

codecov Bot commented Oct 3, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants