Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Handle aborted tool calls to prevent `tool_use` without `tool_result` error

Aperta
#43 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
32/100
Tipo di issue
Bug
Chiarezza
Da chiarire
Stato di attività
Ferma
Stack tecnologico
typescript
Ambito
ai

Direzione di ricerca

Inizia tracciando come viene gestita la cancellazione delle chiamate agli strumenti MCP e quando vengono mantenuti i messaggi. Riproduci una chiamata interrotta, quindi determina se la persistenza debba attendere un risultato o creare un risultato di cancellazione; il lavoro è completo quando la conversazione rimane valida senza un blocco tool_use non corrisposto.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

TUI

https://codercom.slack.com/archives/C093W1J73V0/p1761009411681159

Problem

When the agent is stopped while making an MCP call, a tool_use block is written but no corresponding tool_result block exists (because the call was canceled). This causes the conversation to be broken forever with the error:

`tool_use` ids were found without `tool_result` blocks immediately after <the id>

Context

This appears to be a state management issue where messages are stored even when tool execution is incomplete or canceled. The conversation becomes permanently broken after this happens.

Potential Solutions

  1. Don't store messages unless we have the result - Only persist the message once the tool_result is available
  2. Add a "cancelled" result block - When cancellation occurs, inject a tool_result block with a cancellation error
  3. Research API best practices - Investigate if there's an expected way to handle this according to the API specification

Impact

This breaks the conversation flow permanently and requires the user to start a new conversation or manually delete the tool_use block from the context.

Lingua principale
TypeScript
Stelle
165
Fork
20
Merge medio
1m
PR unite (30g)
7

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di coder/blink

Tutte le issue di coder/blink

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.