getsentry / getsentry/sentry-javascript

Replace deprecated `gen_ai.response.tool_calls` with `gen_ai.output.messages`

Ouverte
#22,839 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub
Task
Langage dominant
TypeScript
Étoiles
8.7k
Forks
1.8k
Merge moyen
1 j 17 h
PR mergées (30 j)
515

Description

`@sentry/conventions` deprecates `gen_ai.response.tool_calls` in favor of `gen_ai.output.messages`. `gen_ai.response.tool_calls` holds a stringified array of tool-call objects; `gen_ai.output.messages` expects a stringified array of structured message objects (`[{role, parts: [...], finish_reason}]`), which unifies response text and tool calls into a single message.

Entails building the structured message format from the tool calls and emitting it under the new attribute. Affects all AI integrations (OpenAI, Anthropic, Google GenAI, LangChain, LangGraph, Workers AI, and the shared streaming path). Should be done together with the `gen_ai.response.text` replacement, since both merge into the same `gen_ai.output.messages` attribute.

We can likely postpone this until after the major, if we do it at all, since there are still discussions about handling this in Relay.

References:

* [`gen_ai.response.tool_calls`]()
* [`gen_ai.output.messages`]()

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Start by reviewing the gen_ai.response.tool_calls and gen_ai.output.messages convention references, then trace the OpenAI, Anthropic, Google GenAI, LangChain, LangGraph, Workers AI, and shared streaming integrations. Coordinate this with the gen_ai.response.text replacement and resolve the noted Relay discussion first; done means tool calls are represented in the new structured output-messages attribute across the affected paths.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
typescript
Domaine
observability
Type d'issue
Refactorisation
Difficulté
4/5
Temps estimé
3-5 jours
Activité
Calme
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.