Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

[bot] ruby-anthropic gem (alexrudall) not instrumented

Abierto
#157 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
55/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Tranquilo
Stack tecnológico
ruby

Línea de trabajo

Empieza por lib/braintrust/contrib/ruby_openai/integration.rb y lib/braintrust/contrib/anthropic/integration.rb para comparar los patrones del community-gem y del official-gem. Después, inspecciona lib/braintrust/contrib.rb, Appraisals y braintrust.gemspec para comprobar el registro y la cobertura de dependencias. Se considera terminado cuando las superficies de ejecución de messages, streaming, batches y vision de ruby-anthropic estén instrumentadas y el gem esté representado en la configuración del repositorio.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Summary

The ruby-anthropic gem (~444K downloads, v0.4.2, April 2025) by alexrudall is not instrumented by this SDK. This is a direct asymmetry: the SDK instruments both the official OpenAI gem (openai) and alexrudall's community OpenAI gem (ruby-openai), but for Anthropic it only instruments the official gem (anthropic) — not the equivalent community gem (ruby-anthropic) by the same author.

What is missing

No instrumentation exists for any ruby-anthropic execution surface. Key APIs that should be instrumented:

Messages API (Chat Completions)
  • client.messages(parameters: { model:, messages:, ... }) — Core chat completions method supporting Claude models (claude-3-haiku, claude-3-sonnet, claude-3-opus, claude-3.5-sonnet, etc.)
Streaming
  • client.messages(parameters: { ..., stream: Proc.new { |chunk| } }) — Streaming responses via callback proc
Batches API
  • client.messages.batches.create(parameters: { ... }) — Asynchronous batch processing of multiple message requests
Vision
  • Multimodal image analysis via base64-encoded image content in messages

Braintrust docs status

not_found — Braintrust docs at https://www.braintrust.dev/docs/instrument/trace-llm-calls list only the official anthropic gem (minimum version 0.3.0) for Ruby Anthropic tracing. No mention of ruby-anthropic anywhere.

Upstream sources

Local repo files inspected

  • lib/braintrust/contrib.rb (lines 196–205) — registers 4 integrations: OpenAI, RubyOpenAI, RubyLLM, Anthropic. No RubyAnthropic integration.
  • lib/braintrust/contrib/ — contains openai/, ruby_openai/, ruby_llm/, anthropic/ directories. No ruby_anthropic/ directory.
  • lib/braintrust/contrib/ruby_openai/integration.rb — instruments alexrudall's ruby-openai gem, confirming the pattern of instrumenting community gems alongside official ones.
  • lib/braintrust/contrib/anthropic/integration.rb — only instruments the official anthropic gem (checks for ::Anthropic::Client).
  • Appraisals — no appraisal scenarios for ruby-anthropic
  • braintrust.gemspec — no mention of ruby-anthropic
  • Grep for ruby.anthropic and ruby_anthropic across lib/braintrust/ returns zero matches

Notes

The existing ruby_openai integration demonstrates the pattern for instrumenting alexrudall's community gems. A ruby_anthropic integration could follow the same structure: RubyAnthropic::Integration, RubyAnthropic::MessagesPatcher, etc., mirroring how RubyOpenAI::ChatPatcher parallels OpenAI::ChatPatcher.

Lenguaje dominante
Ruby
Estrellas
9
Forks
10
Merge medio
3 d 43 min
PR fusionados (30 d)
9

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de braintrustdata/braintrust-sdk-ruby

Todos los issues de braintrustdata/braintrust-sdk-ruby

Issues similares

Más issues de Ruby

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.