Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

[bot] OpenAI Decisions API (`client.decisions.create()`) not instrumented

已关闭
#2,618 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
45/100
Issue 类型
功能
描述清晰度
描述清楚
活跃度
活跃
技术栈
nodejs, typescript
领域
ai, backend

调研方向

Start with js/src/auto-instrumentations/configs/openai.ts, which shows how the existing Responses and Embeddings resources are instrumented, then check js/src/wrappers/oai.ts for the manual proxy. Add a Decisions entry and a plugin channel under js/src/instrumentation/plugins/, and raise the openai devDependency in js/package.json to at least 7.30.0. Done means client.decisions.create() emits a span in a recorded test.

由索引模型根据 Issue 内容生成。

描述

Summary

OpenAI's Node SDK added a standalone Decisions API (client.decisions.create(), endpoint POST /v1/decisions) in [email protected] (changelog: "add standalone Decisions support"). It runs the dedicated gpt-6-luna model (added in [email protected], "add GPT-6 Sol and Luna model identifiers") to turn text/image input into typed, structured answers — a generative model-execution call distinct from Chat Completions/Responses, not a CRUD or admin endpoint. Development is active and ongoing: the latest openai release (7.33.0, 2026-10-14) adds "organization Decisions usage reporting" and documentation clarifications for decision creation. This repo has zero instrumentation for this surface — no config entry, no channel, no wrapper — so calls to client.decisions.create() produce no Braintrust spans at all.

What instrumentation is missing

  • client.decisions.create({ model: "gpt-6-luna", input, decision }) — POST /v1/decisions. Accepts text/image input plus a typed decision schema (choices/score/boolean-style questions) and returns a structured, typed answer instead of free-form prose.

No coverage in any instrumentation layer:

  • js/src/auto-instrumentations/configs/openai.ts — instruments Images.*, Audio.* (speech/transcriptions/translations), Chat.Completions.create/parse/stream, Embeddings.create, Moderations.create, and Responses.create/stream/parse/compact. No entry for a Decisions resource.
  • js/src/instrumentation/plugins/ — no openai-decisions-style channel or plugin file.
  • js/src/wrappers/oai.ts — manual wrapper proxies the resources above only; no decisions property handling.

A case-insensitive repo-wide search for decisions under js/src/ returns no genuine matches (the only two hits are an unrelated test description string and an unrelated code comment, neither referencing this API).

Braintrust docs status

not_found — https://www.braintrust.dev/docs/integrations/ai-providers/openai lists the OpenAI methods Braintrust auto-traces for TypeScript (chat completions, embeddings, moderation, Responses API, batch API, Agents API, images, audio) and does not mention a Decisions API, decisions.create, or gpt-6-luna anywhere.

Upstream references

Local files inspected

  • js/src/auto-instrumentations/configs/openai.ts — full file read; no Decisions entry
  • js/src/wrappers/oai.ts — no decisions proxy handling
  • Repo-wide case-insensitive grep for decisions under js/src/ — no relevant matches
  • js/package.json — openai devDependency pinned at 6.25.0 (below the >=7.30.0 floor needed for this surface), confirming it is a genuinely new capability relative to this repo's current test/record setup rather than something already exercised
主要语言
TypeScript
星标
29
派生
16
平均合并
1 天 20 小时
30 天内合并 PR
70

环境准备

  • 提供 Dockerfile 或 Docker Compose 文件
  • 没有 Pull Request 模板
  • 没有贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

braintrustdata/braintrust-sdk-javascript 的其他 Issue

查看 braintrustdata/braintrust-sdk-javascript 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。