Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

[bot] Vercel AI SDK: `experimental_evaluate` instrumentation is stale after upstream rename to `experimental_decide`

クローズ
#2,619 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

@lforst がすでに取り組んでいます。

2026年10月14日 から。

  • #2621 @lforst による — マージ済み

評価

難易度
3/5
見積もり時間
1〜2日
初心者へのやさしさ
45/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
活発
技術スタック
javascript, typescript
領域
ai, observability

調査の方向性

Start with the sole Vercel AI SDK entry in js/src/auto-instrumentations/configs/ai-sdk.ts (lines 18-31), which targets functionQuery experimental_evaluate for the ai >=7.0.103 <8.0.0 range, and read the comment above it. Check how the existing config entries and tests in that directory are structured, then see whether a decision-feature entry for experimental_decide fits the same pattern. Done when a call through experimental_decide yields a Braintrust span and the config is covered by a test.

索引モデルが issue の本文から書いたものです。

説明

Summary

This repo's Vercel AI SDK instrumentation targets the function export experimental_evaluate to trace the AI SDK's structured-decision feature, but upstream renamed that export to experimental_decide in [email protected] ("feat: rename evaluate to decide"). The existing instrumentation config's version range (>=7.0.103 <8.0.0) still nominally spans the current ai release line (latest: 7.0.140), but it is matching against an export name (experimental_evaluate) that no longer corresponds to the feature's current public entrypoint upstream. This is an existing-instrumentation-goes-stale-after-upstream-rename gap, not a never-instrumented surface: calls made through the current public function name produce no Braintrust span.

What instrumentation is missing

  • experimental_decide(...) — the current public export (post-rename) for the AI SDK's structured decision/evaluation feature. Upstream continued developing this feature under the new name after the rename, including: image input support for "OpenAI Decisions and language model adapters" ([email protected]), ordered text/file/JSON parts in decision state ([email protected]), and serialization of decision file bytes as base64 in OpenTelemetry attributes — i.e. upstream already emits its own OTel attributes for this feature that this repo's tracing does not pick up.

Current (stale) coverage:

  • js/src/auto-instrumentations/configs/ai-sdk.ts:18-31 — the sole config entry for this feature targets functionQuery: { functionName: "experimental_evaluate", isExportAlias: true } against ai >=7.0.103 <8.0.0, dist/index.js. No entry anywhere in this file (or js/src/instrumentation/plugins/ai-sdk-*) references experimental_decide.
  • A repo-wide case-insensitive search for experimental_decide / generateDecision under js/src/ returns no matches.

Braintrust docs status

not_found — https://www.braintrust.dev/docs/integrations/ai-providers/vercel-ai-sdk and the Vercel AI SDK tracing cookbook describe Braintrust's AI SDK span coverage (generateText, streamText, generateObject, streamObject, tool-call child spans) and do not mention experimental_evaluate, experimental_decide, or a decision/evaluation span anywhere.

Upstream references

  • ai package changelog (raw): https://raw.githubusercontent.com/vercel/ai/main/packages/ai/CHANGELOG.md
    • 7.0.128: "feat: rename evaluate to decide"
    • 7.0.133: "Add ordered text, file, and JSON parts to experimental decision state"; image input support for "OpenAI Decisions and language model adapters"; "Serialize decision file bytes as base64" in OpenTelemetry attributes
    • 7.0.139: "Fix validation of rounded choice probabilities in experimental_decide"
    • Latest version in changelog: 7.0.140

Local files inspected

  • js/src/auto-instrumentations/configs/ai-sdk.ts — full file read; only experimental_evaluate is targeted, with a comment noting "Evaluation does not emit v7 telemetry callbacks. Instrument its public export."
  • Repo-wide case-insensitive grep for experimental_decide, generateDecision, decisions under js/src/ — no relevant matches
主要言語
TypeScript
スター
29
フォーク
16
平均マージ
1日 20時間
マージ済み PR(30日)
70

環境構築

  • Dockerfile または Docker Compose ファイルあり
  • プルリクエストのテンプレートなし
  • コントリビューションガイドなし

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

braintrustdata/braintrust-sdk-javascript のほかの issue

braintrustdata/braintrust-sdk-javascript の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。