[bot] OpenAI Responses API `compact()` (server-side conversation compaction) not instrumented
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 78/100
- Issue-Typ
- Feature
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- ruby
- Bereich
- observability
Rechercherichtung
Lies zunächst lib/braintrust/contrib/openai/instrumentation/responses.rb und lib/braintrust/contrib/openai/patcher.rb und vergleiche anschließend die vorhandene Instrumentierung für create und stream. Ergänze Tests für den Aufruf von compact über den bestehenden Responses-Patching-Pfad und prüfe die relevanten Tests auf Spans, komprimierte Ausgabe und Tokenverbrauch. Fertig ist es, wenn client.responses.compact(params) einen Trace mit der Eingabe, Ausgabe und dem Tokenverbrauch des Aufrufs erzeugt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
<!-- provider-gap-audit: openai-responses-compact-not-instrumented -->
Summary
The official openai Ruby gem's Responses resource exposes a stable compact method (client.responses.compact(params)) that invokes the model to compact/summarize a long-running conversation and returns an OpenAI::Models::Responses::CompactedResponse. This is a model-execution call — billed, and producing a model-generated summary — not a CRUD/admin operation. It is not instrumented anywhere in this repo: only create and stream are wrapped for the Responses API.
What is missing
OpenAI::Resources::Responses#compactis not wrapped byInstrumentation::Responsesand is not patched byResponsesPatcher.- No span is created, so a compaction call produces zero trace: no input, no output (the compacted summary), no token usage/cost for the compaction call itself.
Braintrust docs status
supported (in another Braintrust SDK, not Ruby) — https://docs.braintrust.dev/integrations/ai-providers/openai explicitly lists, in the TypeScript SDK's Responses API span table: openai.responses.compact ↔ responses.compact (OpenAI SDK v6.10.0 or later). The same page's Ruby-relevant sections only reference create, parse, and stream variants — compact is absent for Ruby (and for Python/Go/Java/.NET). This is a concrete Ruby-specific parity gap against Braintrust's own TypeScript instrumentation of the identical upstream capability.
Upstream sources
- Official OpenAI Ruby SDK:
OpenAI::Resources::Responses#compact(params)— "Compact a conversation. Returns a compacted response object." — https://github.com/openai/openai-ruby/blob/main/lib/openai/resources/responses.rb - OpenAI changelog: server-side compaction launched in the Responses API (February 2026) — https://platform.openai.com/docs/changelog
Local repo files inspected
lib/braintrust/contrib/openai/instrumentation/responses.rb—Instrumentation::Responses::InstanceMethodsdefines onlycreate(line 35) andstream(line 59); nocompactlib/braintrust/contrib/openai/patcher.rb—ResponsesPatcher#perform_patch(lines 94–111) includesInstrumentation::Responsesinto::OpenAI::Resources::Responses/the target's singleton class, but the module itself has nocompactwrapper, so calls pass straight tosuperuntracedlib/braintrust/contrib/openai/integration.rb— confirmsResponsesPatcheris the sole patcher registered for the Responses API surface
- Vorherrschende Sprache
- Ruby
- Sterne
- 9
- Forks
- 11
- Ø Merge
- 1 T. 11 Std.
- Gemergte PRs (30 T.)
- 3
Entwicklungsumgebung
- Enthält ein Dockerfile oder eine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus braintrustdata/braintrust-sdk-ruby
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
-
[BOT ISSUE] OpenAI Chat Completions missing reasoning model and web search metadata parametersOffen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 64/100
Alle Issues in braintrustdata/braintrust-sdk-ruby
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
Maintainer antworten meist innerhalb von 1 Tag
-
Websockify heartbeat for vnc_containerEvtl. vergeben @robinkar hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
Maintainer antworten meist innerhalb von 1 Tag
-
needs verification
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
Maintainer antworten meist innerhalb von 7 Tagen
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 88/100
akitaonrails/ai-book-2026#13 ·
-
Mend: dependency security vulnerability
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 63/100
Maintainer antworten meist innerhalb von 1 Tag