Skip to content

feat(ai): put the provider error type and request id on RUN_ERROR - #1880

Merged
AlemTuzlak merged 1 commit into
mainfrom
feat/run-error-provider-details
Oct 22, 2026
Merged

AlemTuzlak merged 1 commit into
mainfrom
feat/run-error-provider-details

Conversation

@AlemTuzlak

@AlemTuzlak AlemTuzlak commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

RUN_ERROR now tells you which provider error happened and which request failed. An Anthropic 529 still has code: '529', and metadata.tanstack now also has errorType: 'overloaded_error' and the provider's requestId. You can retry on overloaded_error without reading the message text, and you can give the request id to the provider's support.

🎯 Changes

  • New helper toRunErrorDetails(error) in @tanstack/ai/adapter-internals. It reads errorType from the SDK error's type or the error body, and requestId from requestID, request_id, or the request-id / x-request-id header. Each value must be a string of 128 characters or fewer.
  • The Anthropic text adapter and the openai-base Chat Completions and Responses adapters set both fields. chat() moves them to metadata.tanstack on RUN_ERROR.
  • code does not change. toRunErrorPayload does not change, because about 65 places spread its result.
  • The toRunErrorRawEvent comment no longer groups request ids with secrets. A request id is not a secret.
  • Docs: docs/chat/stream-events.md, docs/protocol/metadata.md. Changeset: run-error-provider-details.

This came from an app that builds on TanStack AI (item A15 on its findings list).

✅ Checklist

  • I have followed the steps in the Contributing guide.
  • I have tested code changes locally with pnpm run test:pr, or these tests do not apply to this pull request.
  • I fully understand the code in this pull request, including any code generated with AI assistance.
  • Docs: I updated docs/ for this change, or this change is not user-facing.
  • Changeset: I added a changeset (pnpm changeset), or this PR does not change a published package.

🚀 Release Impact

  • This change affects published code, and I have generated a changeset.
  • This change is docs/CI/dev-only (no release).

Testing

Commands run. The new packages/ai/tests/run-error-details.test.ts and the new cases in the Anthropic and openai-base retry-after-wire tests pass. They use the real SDKs with a mocked fetch, and they fail without the change. The related adapter test files pass (224 tests). test:types and test:oxlint pass for the changed packages. Not run locally: pnpm test:pr, the full suites, and E2E. CI runs them.

Manual test.

  1. Run pnpm --dir packages/ai exec vitest run tests/run-error-details.test.ts.
  2. Run pnpm --dir packages/ai-anthropic exec vitest run tests/retry-after-wire.test.ts. The 529 case checks errorType: 'overloaded_error' and the request id on RUN_ERROR.

How this PR makes testing easy. The two test files above.

Risk / rollback

Low. Two optional fields are added, and nothing existing changes. To undo, revert the PR.

Public API change

Before

if (chunk.type === 'RUN_ERROR') console.log(chunk.code) // "529", the type is only in the message text

After

if (chunk.type === 'RUN_ERROR') {
  const details = chunk.metadata?.tanstack
  console.log(chunk.code, details?.errorType, details?.requestId) // "529" "overloaded_error" "req_011..."
}

Summary by CodeRabbit

  • New Features
    • Run errors now include the provider’s error type and request ID when available, alongside the HTTP status code.
    • These details are accessible in both streaming error events and run metadata.
  • Documentation
    • Added guidance and examples for reading provider error details in client and server code.

Add toRunErrorDetails to read errorType and requestId from an SDK error. The Anthropic and openai-base text adapters spread them on RUN_ERROR, and chat() moves them to metadata.tanstack. code stays the HTTP status.
@changeset-bot

changeset-bot Bot commented Oct 22, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 006d3dd

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 52 packages
Name Type
@tanstack/ai Minor
@tanstack/ai-anthropic Minor
@tanstack/openai-base Minor
@tanstack/ai-acp Patch
@tanstack/ai-angular Patch
@tanstack/ai-bedrock Patch
@tanstack/ai-byteplus Patch
@tanstack/ai-claude-code Patch
@tanstack/ai-client Patch
@tanstack/ai-cloudflare Patch
@tanstack/ai-code-mode-snippets Patch
@tanstack/ai-code-mode Patch
@tanstack/ai-codex Patch
@tanstack/ai-cohere Patch
@tanstack/ai-compaction Patch
@tanstack/ai-computer-use Patch
@tanstack/ai-devtools-core Patch
@tanstack/ai-durable-stream Patch
@tanstack/ai-elevenlabs Patch
@tanstack/ai-fal Patch
@tanstack/ai-gemini Patch
@tanstack/ai-grok-build Patch
@tanstack/ai-grok Patch
@tanstack/ai-groq Patch
@tanstack/ai-llmgateway Patch
@tanstack/ai-lovable Patch
@tanstack/ai-mcp Patch
@tanstack/ai-memory Patch
@tanstack/ai-mistral Patch
@tanstack/ai-octane Patch
@tanstack/ai-ollama Patch
@tanstack/ai-ollaya Patch
@tanstack/ai-openai Patch
@tanstack/ai-opencode Patch
@tanstack/ai-openrouter Patch
@tanstack/ai-perplexity Patch
@tanstack/ai-persistence Patch
@tanstack/ai-preact Patch
@tanstack/ai-react Patch
@tanstack/ai-reactor Patch
@tanstack/ai-remix Patch
@tanstack/ai-sandbox-cloudflare Patch
@tanstack/ai-sandbox Patch
@tanstack/ai-skills Patch
@tanstack/ai-solid Patch
@tanstack/ai-svelte Patch
@tanstack/ai-typesafe Patch
@tanstack/ai-vercel-gateway Patch
@tanstack/ai-vertex Patch
@tanstack/ai-vue Patch
@tanstack/ai-worldlabs Patch
ag-ui Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@coderabbitai

coderabbitai Bot commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Source mode: Auto
  • Repository: TanStack/ai
  • Branch: main
  • File: .coderabbit.yaml
  • Commit: fa2a291
  • Layers: Repository YAML
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 7128929a-25e5-47b0-b83b-5bfc4b9c9f01
📥 Commits

Reviewing files that changed from the base of the PR and between fa2a291 and 006d3dd.

📒 Files selected for processing: 12
  • .changeset/run-error-provider-details.md
  • docs/chat/stream-events.md
  • docs/protocol/metadata.md
  • packages/ai-anthropic/src/adapters/text.ts
  • packages/ai-anthropic/tests/retry-after-wire.test.ts
  • packages/ai/src/activities/error-payload.ts
  • packages/ai/src/adapter-internals.ts
  • packages/ai/src/types.ts
  • packages/ai/tests/run-error-details.test.ts
  • packages/openai-base/src/adapters/chat-completions-text.ts
  • packages/openai-base/src/adapters/responses-text.ts
  • packages/openai-base/tests/retry-after-wire.test.ts

Included review availability: This review used your included allowance. Your plan provides up to 8 included reviews per hour; 7 remain after this review.

📝 Walkthrough

Anthropic and OpenAI adapters now include provider error types and request IDs in RUN_ERROR events. The shared helper extracts bounded values from supported error fields and response headers. Types, tests, and documentation describe the event fields and their use in metadata.tanstack.

Changes: Provider error details

Layer / File(s) Summary
Error detail contract and extraction
packages/ai/src/types.ts, packages/ai/src/activities/error-payload.ts, packages/ai/src/adapter-internals.ts, packages/ai/tests/run-error-details.test.ts
RunErrorEvent and TanStackRunMetadata add optional errorType and requestId fields. toRunErrorDetails extracts non-empty strings up to 128 characters from supported error fields and response headers.
Adapter emission and usage guidance
packages/ai-anthropic/src/adapters/text.ts, packages/ai-anthropic/tests/retry-after-wire.test.ts, packages/openai-base/src/adapters/*-text.ts, packages/openai-base/tests/retry-after-wire.test.ts, docs/chat/stream-events.md, docs/protocol/metadata.md, .changeset/run-error-provider-details.md
Anthropic and OpenAI adapters add extracted details to RUN_ERROR events. Tests check event fields and chat() metadata. Documentation describes the fields, and the changeset marks three packages for minor releases.

Priority: ➖ Normal

Estimated code review effort: 3 (Moderate) | ~20 minutes

Change: Feature

Sequence Diagram(s)

sequenceDiagram
  participant AnthropicTextAdapter
  participant toRunErrorDetails
  participant RUN_ERROR
  participant chat
  AnthropicTextAdapter->>toRunErrorDetails: Extract bounded errorType and requestId
  toRunErrorDetails-->>AnthropicTextAdapter: Return available details
  AnthropicTextAdapter->>RUN_ERROR: Emit error details and HTTP status
  RUN_ERROR->>chat: Pass event details
  chat->>chat: Place details in metadata.tanstack
Loading

Suggested reviewers: tombeckenham

Merge Risk: ⚪ Minimal · up to 006d3

No actionable merge-blocking issue is established; the provider error details can proceed through normal checks.

Pre-merge checks: Passed 5
Check name Status Explanation
Title check Passed The title clearly and concisely describes the primary change: adding provider error type and request ID to RUN_ERROR.
Description check Passed The description explains the changes, testing, documentation, changeset, release impact, risk, rollback, and public API behavior. It also clearly states that the full test:pr suite was not run locally…
Docstring Coverage Passed Docstring coverage is 88.89% which is sufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 9 functions across 9 files. (3 skipped: 3 u…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Description check

Explanation

The description explains the changes, testing, documentation, changeset, release impact, risk, rollback, and public API behavior. It also clearly states that the full test:pr suite was not run locally.

Full details: Docstring Coverage

Explanation

Docstring coverage is 88.89% which is sufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 9 functions across 9 files. (3 skipped: 3 unsupported.)

✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · 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.

@nx-cloud

nx-cloud Bot commented Oct 22, 2026 •

Copy link
Copy Markdown

View your CI Pipeline Execution ↗ for commit 006d3dd

Command Status Duration Result
nx run-many --targets=build --exclude=examples/... ✅ Succeeded 2m 22s View ↗

☁️ Nx Cloud last updated this comment at 2026-10-22 10:19:01 UTC

@pkg-pr-new

pkg-pr-new Bot commented Oct 22, 2026

Copy link
Copy Markdown

Open in StackBlitz

@tanstack/ai

npm i https://pkg.pr.new/@tanstack/ai@1880

@tanstack/ai-acp

npm i https://pkg.pr.new/@tanstack/ai-acp@1880

@tanstack/ai-angular

npm i https://pkg.pr.new/@tanstack/ai-angular@1880

@tanstack/ai-anthropic

npm i https://pkg.pr.new/@tanstack/ai-anthropic@1880

@tanstack/ai-bedrock

npm i https://pkg.pr.new/@tanstack/ai-bedrock@1880

@tanstack/ai-byteplus

npm i https://pkg.pr.new/@tanstack/ai-byteplus@1880

@tanstack/ai-claude-code

npm i https://pkg.pr.new/@tanstack/ai-claude-code@1880

@tanstack/ai-client

npm i https://pkg.pr.new/@tanstack/ai-client@1880

@tanstack/ai-cloudflare

npm i https://pkg.pr.new/@tanstack/ai-cloudflare@1880

@tanstack/ai-code-mode

npm i https://pkg.pr.new/@tanstack/ai-code-mode@1880

@tanstack/ai-code-mode-snippets

npm i https://pkg.pr.new/@tanstack/ai-code-mode-snippets@1880

@tanstack/ai-codex

npm i https://pkg.pr.new/@tanstack/ai-codex@1880

@tanstack/ai-cohere

npm i https://pkg.pr.new/@tanstack/ai-cohere@1880

@tanstack/ai-compaction

npm i https://pkg.pr.new/@tanstack/ai-compaction@1880

@tanstack/ai-computer-local

npm i https://pkg.pr.new/@tanstack/ai-computer-local@1880

@tanstack/ai-computer-playwright

npm i https://pkg.pr.new/@tanstack/ai-computer-playwright@1880

@tanstack/ai-computer-sandbox

npm i https://pkg.pr.new/@tanstack/ai-computer-sandbox@1880

@tanstack/ai-computer-use

npm i https://pkg.pr.new/@tanstack/ai-computer-use@1880

@tanstack/ai-devtools-core

npm i https://pkg.pr.new/@tanstack/ai-devtools-core@1880

@tanstack/ai-durable-stream

npm i https://pkg.pr.new/@tanstack/ai-durable-stream@1880

@tanstack/ai-elevenlabs

npm i https://pkg.pr.new/@tanstack/ai-elevenlabs@1880

@tanstack/ai-event-client

npm i https://pkg.pr.new/@tanstack/ai-event-client@1880

@tanstack/ai-fal

npm i https://pkg.pr.new/@tanstack/ai-fal@1880

@tanstack/ai-gemini

npm i https://pkg.pr.new/@tanstack/ai-gemini@1880

@tanstack/ai-grok

npm i https://pkg.pr.new/@tanstack/ai-grok@1880

@tanstack/ai-grok-build

npm i https://pkg.pr.new/@tanstack/ai-grok-build@1880

@tanstack/ai-groq

npm i https://pkg.pr.new/@tanstack/ai-groq@1880

@tanstack/ai-isolate-cloudflare

npm i https://pkg.pr.new/@tanstack/ai-isolate-cloudflare@1880

@tanstack/ai-isolate-daytona

npm i https://pkg.pr.new/@tanstack/ai-isolate-daytona@1880

@tanstack/ai-isolate-e2b

npm i https://pkg.pr.new/@tanstack/ai-isolate-e2b@1880

@tanstack/ai-isolate-node

npm i https://pkg.pr.new/@tanstack/ai-isolate-node@1880

@tanstack/ai-isolate-quickjs

npm i https://pkg.pr.new/@tanstack/ai-isolate-quickjs@1880

@tanstack/ai-isolate-quickjs-bun

npm i https://pkg.pr.new/@tanstack/ai-isolate-quickjs-bun@1880

@tanstack/ai-llmgateway

npm i https://pkg.pr.new/@tanstack/ai-llmgateway@1880

@tanstack/ai-lovable

npm i https://pkg.pr.new/@tanstack/ai-lovable@1880

@tanstack/ai-mcp

npm i https://pkg.pr.new/@tanstack/ai-mcp@1880

@tanstack/ai-memory

npm i https://pkg.pr.new/@tanstack/ai-memory@1880

@tanstack/ai-mistral

npm i https://pkg.pr.new/@tanstack/ai-mistral@1880

@tanstack/ai-octane

npm i https://pkg.pr.new/@tanstack/ai-octane@1880

@tanstack/ai-ollama

npm i https://pkg.pr.new/@tanstack/ai-ollama@1880

@tanstack/ai-ollaya

npm i https://pkg.pr.new/@tanstack/ai-ollaya@1880

@tanstack/ai-openai

npm i https://pkg.pr.new/@tanstack/ai-openai@1880

@tanstack/ai-opencode

npm i https://pkg.pr.new/@tanstack/ai-opencode@1880

@tanstack/ai-openrouter

npm i https://pkg.pr.new/@tanstack/ai-openrouter@1880

@tanstack/ai-perplexity

npm i https://pkg.pr.new/@tanstack/ai-perplexity@1880

@tanstack/ai-persistence

npm i https://pkg.pr.new/@tanstack/ai-persistence@1880

@tanstack/ai-preact

npm i https://pkg.pr.new/@tanstack/ai-preact@1880

@tanstack/ai-react

npm i https://pkg.pr.new/@tanstack/ai-react@1880

@tanstack/ai-reactor

npm i https://pkg.pr.new/@tanstack/ai-reactor@1880

@tanstack/ai-remix

npm i https://pkg.pr.new/@tanstack/ai-remix@1880

@tanstack/ai-sandbox

npm i https://pkg.pr.new/@tanstack/ai-sandbox@1880

@tanstack/ai-sandbox-blaxel

npm i https://pkg.pr.new/@tanstack/ai-sandbox-blaxel@1880

@tanstack/ai-sandbox-boxd

npm i https://pkg.pr.new/@tanstack/ai-sandbox-boxd@1880

@tanstack/ai-sandbox-cloudflare

npm i https://pkg.pr.new/@tanstack/ai-sandbox-cloudflare@1880

@tanstack/ai-sandbox-daytona

npm i https://pkg.pr.new/@tanstack/ai-sandbox-daytona@1880

@tanstack/ai-sandbox-docker

npm i https://pkg.pr.new/@tanstack/ai-sandbox-docker@1880

@tanstack/ai-sandbox-e2b

npm i https://pkg.pr.new/@tanstack/ai-sandbox-e2b@1880

@tanstack/ai-sandbox-local-process

npm i https://pkg.pr.new/@tanstack/ai-sandbox-local-process@1880

@tanstack/ai-sandbox-railway

npm i https://pkg.pr.new/@tanstack/ai-sandbox-railway@1880

@tanstack/ai-sandbox-sprites

npm i https://pkg.pr.new/@tanstack/ai-sandbox-sprites@1880

@tanstack/ai-sandbox-upstash-box

npm i https://pkg.pr.new/@tanstack/ai-sandbox-upstash-box@1880

@tanstack/ai-sandbox-vercel

npm i https://pkg.pr.new/@tanstack/ai-sandbox-vercel@1880

@tanstack/ai-skills

npm i https://pkg.pr.new/@tanstack/ai-skills@1880

@tanstack/ai-solid

npm i https://pkg.pr.new/@tanstack/ai-solid@1880

@tanstack/ai-svelte

npm i https://pkg.pr.new/@tanstack/ai-svelte@1880

@tanstack/ai-typesafe

npm i https://pkg.pr.new/@tanstack/ai-typesafe@1880

@tanstack/ai-utils

npm i https://pkg.pr.new/@tanstack/ai-utils@1880

@tanstack/ai-vercel-gateway

npm i https://pkg.pr.new/@tanstack/ai-vercel-gateway@1880

@tanstack/ai-vertex

npm i https://pkg.pr.new/@tanstack/ai-vertex@1880

@tanstack/ai-vue

npm i https://pkg.pr.new/@tanstack/ai-vue@1880

@tanstack/ai-worldlabs

npm i https://pkg.pr.new/@tanstack/ai-worldlabs@1880

@tanstack/openai-base

npm i https://pkg.pr.new/@tanstack/openai-base@1880

@tanstack/preact-ai-devtools

npm i https://pkg.pr.new/@tanstack/preact-ai-devtools@1880

@tanstack/react-ai-devtools

npm i https://pkg.pr.new/@tanstack/react-ai-devtools@1880

@tanstack/solid-ai-devtools

npm i https://pkg.pr.new/@tanstack/solid-ai-devtools@1880

@tanstack/svelte-ai-devtools

npm i https://pkg.pr.new/@tanstack/svelte-ai-devtools@1880

commit: 006d3dd

@github-actions

Copy link
Copy Markdown
Contributor

Coverage

✅ Coverage held across 70 compared package(s).

Each package is measured twice in this job — on this PR and on its merge-base with main — and compared. A metric fails only when it is at or above 60% on the merge-base and under 60% on this PR. Other drops are listed but do not fail. Packages your PR doesn't affect are not measured and not listed.

package statements branches functions lines
ai 92.05% (+0.01) 85.95% (+0.04) 92.69% (+0.02) 93.66% (+0.01) ok
ai-acp 78.41% (0.00) 66.66% (0.00) 70.27% (0.00) 80.13% (0.00) ok
ai-angular 73.83% (0.00) 60.89% (0.00) 61.83% (0.00) 75.40% (0.00) ok
ai-anthropic 93.09% (+0.74) 88.11% (+0.59) 95.86% (0.00) 93.50% (+0.77) ok
ai-bedrock 90.05% (0.00) 82.59% (0.00) 94.20% (0.00) 91.27% (0.00) ok
ai-byteplus 97.05% (0.00) 91.62% (0.00) 98.27% (0.00) 98.48% (0.00) ok
ai-claude-code 88.90% (0.00) 76.88% (0.00) 86.66% (0.00) 90.38% (0.00) ok
ai-client 87.71% (0.00) 79.80% (0.00) 86.73% (0.00) 90.03% (0.00) ok
ai-cloudflare 85.55% (0.00) 76.44% (0.00) 85.48% (0.00) 86.79% (0.00) ok
ai-code-mode 91.71% (0.00) 83.12% (0.00) 86.27% (0.00) 92.63% (0.00) ok
ai-code-mode-snippets 87.13% (0.00) 75.67% (0.00) 91.11% (0.00) 88.39% (0.00) ok
ai-codex 94.53% (0.00) 85.10% (0.00) 89.09% (0.00) 95.54% (0.00) ok
ai-cohere 88.97% (0.00) 88.37% (0.00) 85.71% (0.00) 91.80% (0.00) ok
ai-compaction 97.38% (0.00) 92.79% (0.00) 100.00% (0.00) 98.88% (0.00) ok
ai-computer-local 97.29% (0.00) 85.71% (0.00) 88.00% (0.00) 96.84% (0.00) ok
ai-computer-playwright 100.00% (0.00) 100.00% (0.00) 100.00% (0.00) 100.00% (0.00) ok
ai-computer-sandbox 96.20% (0.00) 84.37% (0.00) 100.00% (0.00) 95.94% (0.00) ok
ai-computer-use 97.26% (0.00) 93.36% (0.00) 100.00% (0.00) 99.36% (0.00) ok
ai-devtools 83.13% (0.00) 72.77% (0.00) 87.07% (0.00) 85.22% (0.00) ok
ai-durable-stream 86.70% (0.00) 82.25% (0.00) 92.30% (0.00) 88.72% (0.00) ok
ai-elevenlabs 74.68% (0.00) 69.59% (0.00) 59.13% (0.00) 75.46% (0.00) ok
ai-fal 91.10% (0.00) 82.63% (0.00) 92.40% (0.00) 91.60% (0.00) ok
ai-gemini 67.96% (0.00) 67.21% (0.00) 63.83% (0.00) 68.59% (0.00) ok
ai-grok 48.80% (0.00) 53.49% (0.00) 56.46% (0.00) 49.63% (0.00) ok
ai-grok-build 79.14% (0.00) 63.56% (0.00) 76.99% (0.00) 80.97% (0.00) ok
ai-groq 51.30% (0.00) 47.73% (0.00) 67.39% (0.00) 53.42% (0.00) ok
ai-isolate-cloudflare 94.11% (0.00) 70.66% (0.00) 100.00% (0.00) 93.96% (0.00) ok
ai-isolate-daytona 90.25% (0.00) 80.59% (0.00) 100.00% (0.00) 90.15% (0.00) ok
ai-isolate-e2b 92.11% (0.00) 81.48% (0.00) 97.36% (0.00) 95.05% (0.00) ok
ai-isolate-node 84.00% (0.00) 43.39% (0.00) 100.00% (0.00) 83.78% (0.00) ok
ai-isolate-quickjs 89.07% (0.00) 76.41% (0.00) 90.90% (0.00) 90.30% (0.00) ok
ai-isolate-quickjs-bun 7.76% (0.00) 8.08% (0.00) 5.00% (0.00) 8.33% (0.00) ok
ai-llmgateway 97.77% (0.00) 100.00% (0.00) 88.88% (0.00) 97.77% (0.00) ok
ai-lovable 73.21% (0.00) 55.63% (0.00) 85.07% (0.00) 73.96% (0.00) ok
ai-mcp 94.82% (0.00) 90.32% (0.00) 97.77% (0.00) 96.77% (0.00) ok
ai-memory 73.87% (0.00) 52.70% (0.00) 79.74% (0.00) 76.04% (0.00) ok
ai-mistral 84.75% (0.00) 79.82% (0.00) 92.59% (0.00) 85.39% (0.00) ok
ai-octane 91.19% (0.00) 68.26% (0.00) 87.44% (0.00) 91.47% (0.00) ok
ai-ollama 93.80% (0.00) 80.92% (0.00) 90.62% (0.00) 93.76% (0.00) ok
ai-ollaya 86.84% (0.00) 89.28% (0.00) 85.71% (0.00) 91.66% (0.00) ok
ai-openai 65.12% (0.00) 65.66% (0.00) 66.99% (0.00) 65.56% (0.00) ok
ai-opencode 70.50% (0.00) 62.29% (0.00) 66.32% (0.00) 72.12% (0.00) ok
ai-openrouter 88.26% (0.00) 73.44% (0.00) 90.78% (0.00) 90.22% (0.00) ok
ai-perplexity 91.34% (0.00) 90.43% (0.00) 100.00% (0.00) 93.87% (0.00) ok
ai-persistence 92.22% (0.00) 82.60% (0.00) 97.45% (0.00) 94.92% (0.00) ok
ai-preact 86.50% (0.00) 71.00% (0.00) 87.50% (0.00) 87.98% (0.00) ok
ai-react 81.94% (0.00) 65.42% (0.00) 80.73% (0.00) 82.67% (0.00) ok
ai-reactor 94.91% (0.00) 83.33% (0.00) 93.33% (0.00) 96.55% (0.00) ok
ai-remix 43.02% (0.00) 30.35% (0.00) 39.02% (0.00) 46.23% (0.00) ok
ai-sandbox 77.51% (0.00) 82.76% (0.00) 74.52% (0.00) 78.01% (0.00) ok
ai-sandbox-blaxel 87.64% (0.00) 77.18% (0.00) 82.26% (0.00) 89.71% (0.00) ok
ai-sandbox-boxd 95.86% (0.00) 87.12% (0.00) 95.31% (0.00) 98.17% (0.00) ok
ai-sandbox-cloudflare 67.73% (0.00) 57.27% (0.00) 71.64% (0.00) 68.92% (0.00) ok
ai-sandbox-daytona 82.84% (0.00) 81.89% (0.00) 67.60% (0.00) 85.25% (0.00) ok
ai-sandbox-docker 80.15% (0.00) 71.49% (0.00) 77.38% (0.00) 82.13% (0.00) ok
ai-sandbox-e2b 94.42% (0.00) 88.97% (0.00) 93.24% (0.00) 98.63% (0.00) ok
ai-sandbox-local-process 68.00% (0.00) 53.59% (0.00) 75.86% (0.00) 68.88% (0.00) ok
ai-sandbox-railway 94.75% (0.00) 92.68% (0.00) 90.90% (0.00) 97.59% (0.00) ok
ai-sandbox-sprites 73.23% (0.00) 59.70% (0.00) 73.83% (0.00) 76.17% (0.00) ok
ai-sandbox-upstash-box 94.82% (0.00) 91.52% (0.00) 91.04% (0.00) 97.76% (0.00) ok
ai-sandbox-vercel 44.67% (0.00) 38.18% (0.00) 35.18% (0.00) 45.76% (0.00) ok
ai-skills 80.38% (0.00) 64.05% (0.00) 84.86% (0.00) 82.44% (0.00) ok
ai-solid 75.81% (0.00) 57.63% (0.00) 71.28% (0.00) 78.11% (0.00) ok
ai-svelte 74.05% (0.00) 50.99% (0.00) 70.05% (0.00) 78.64% (0.00) ok
ai-typesafe 78.04% (0.00) 84.61% (0.00) 66.66% (0.00) 82.05% (0.00) ok
ai-vercel-gateway 77.56% (0.00) 63.38% (0.00) 84.90% (0.00) 80.76% (0.00) ok
ai-vertex 96.77% (0.00) 97.22% (0.00) 100.00% (0.00) 96.77% (0.00) ok
ai-vue 73.33% (0.00) 48.73% (0.00) 73.28% (0.00) 74.66% (0.00) ok
ai-worldlabs 79.62% (0.00) 71.50% (0.00) 91.42% (0.00) 82.66% (0.00) ok
openai-base 90.90% (0.00) 79.78% (0.00) 97.79% (0.00) 93.04% (0.00) ok

@AlemTuzlak
AlemTuzlak enabled auto-merge (squash) October 22, 2026 10:31
@AlemTuzlak
AlemTuzlak merged commit 781a3a8 into main Oct 22, 2026
15 checks passed
@AlemTuzlak
AlemTuzlak deleted the feat/run-error-provider-details branch October 22, 2026 10:32
@AlemTuzlak AlemTuzlak mentioned this pull request Oct 22, 2026
5 of 7 tasks
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.

1 participant