[bot] OpenAI Decisions API (client.decisions.create) not instrumented
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 50/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- ruby
- Área
- ai, observability
Línea de trabajo
Start with lib/braintrust/contrib/openai/integration.rb (the patchers list near line 53) and lib/braintrust/contrib/openai/instrumentation/moderations.rb, the simplest non-streaming patcher to copy. A new DecisionsPatcher and instrumentation/decisions.rb would wrap client.decisions.create. Done when a call produces a span with model, input, questions, answers and usage, and a test under the OpenAI contrib specs verifies it.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
<!-- provider-gap-audit: openai-decisions-api-not-instrumented -->
Summary
OpenAI shipped a new standalone Decisions API (client.decisions.create), reaching public beta on 2026-10-06 and landing in the official openai Ruby gem the same day (v0.101.0). It is a distinct generative inference endpoint — not a variant of Chat Completions or Responses — and this SDK's OpenAI integration has no instrumentation for it.
The endpoint runs on a dedicated model (gpt-6-luna) and returns typed answers (predicate/choice/score questions with probabilities and confidence) over text/image input, billed separately from normal chat/responses usage. This is exactly the kind of distinct generative execution surface this SDK otherwise instruments (model, input, output, usage/cost).
What is missing
No DecisionsPatcher or Instrumentation::Decisions exists. The OpenAI integration only wires up three patchers:
# lib/braintrust/contrib/openai/integration.rb:53
[ChatPatcher, ResponsesPatcher, ModerationsPatcher]
and lib/braintrust/contrib/openai/instrumentation/ only contains chat.rb, responses.rb, common.rb, and moderations.rb — no file for client.decisions.create.
Expected instrumentation (matching the pattern used for moderations.rb, the simplest existing non-streaming patcher): a span per client.decisions.create call capturing the model (gpt-6-luna), input, the questions array (names/types/instructions), and the returned answers (values, probabilities, confidence) plus usage/cost, since Decisions billing differs from standard chat pricing ($0.10/M input tokens, no output/cache charge).
Braintrust docs status
not_found — https://www.braintrust.dev/docs/integrations/ai-providers/openai documents Chat Completions, Responses, Embeddings, Moderations, Batch API, Agents API, Images, and Audio for the OpenAI integration. No mention of Decisions anywhere on the page.
Upstream sources
- Official docs: https://developers.openai.com/api/docs/guides/decisions
openaiRuby gem changelog: https://github.com/openai/openai-ruby/releases — v0.101.0 (2026-10-06): "api: add standalone Decisions support (#811)"- Coverage of the public-beta launch: https://www.unite.ai/openai-releases-decisions-api-in-public-beta-powered-by-gpt-6-luna/
Local repo files inspected
lib/braintrust/contrib/openai/integration.rb(line 53) —patchersreturns only[ChatPatcher, ResponsesPatcher, ModerationsPatcher]lib/braintrust/contrib/openai/patcher.rb— noDecisionsPatcherclass definedlib/braintrust/contrib/openai/instrumentation/— contains onlychat.rb,responses.rb,common.rb,moderations.rb; nodecisions.rb- Grep for
decisions/Decisionacrosslib/— zero matches
- Lenguaje dominante
- Ruby
- Estrellas
- 9
- Forks
- 11
- Merge medio
- 3 d 43 min
- PR fusionados (30 d)
- 9
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de braintrustdata/braintrust-sdk-ruby
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
braintrustdata/braintrust-sdk-ruby#155 ·
Los mantenedores suelen responder en 1 día
-
[BOT ISSUE] OpenAI Chat Completions missing reasoning model and web search metadata parametersAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
braintrustdata/braintrust-sdk-ruby#143 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
braintrustdata/braintrust-sdk-ruby#137 ·
Los mantenedores suelen responder en 1 día
-
ruby
Dificultad 3/5 Medio día Aptitud para principiantes 62/100
braintrustdata/braintrust-sdk-ruby#229 ·
Los mantenedores suelen responder en 1 día
-
ruby
Dificultad 3/5 1-2 días Aptitud para principiantes 45/100
braintrustdata/braintrust-sdk-ruby#228 ·
Los mantenedores suelen responder en 1 día
Todos los issues de braintrustdata/braintrust-sdk-ruby
Issues similares
-
`github-events` aborts the repository scan when a closed pull's API payload has a null `head`Posiblemente ocupada @renyamamoto2026-cmyk la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
zerocracy/judges-action#2823 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
aws/aws-sdk-ruby#3460 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 67/100
Los mantenedores suelen responder en 17 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
riscv/riscv-unified-db#2755 ·
Los mantenedores suelen responder en 1 día