[Bug] Session transcript corruption when executing commands during server tool execution

Resolved 💬 2 comments Opened May 29, 2026 by edgargomero Closed Jun 2, 2026

Bug Description
Diagnóstico

No es un bug en tu código de CeapsiApi: es el transcript de esa sesión de Claude Code que quedó corrupto. La secuencia fue:

  1. En esa sesión se llamó a la herramienta advisor (una server-tool, tarda unos segundos en responder).
  2. Mientras el advisor estaba "pensando", se ejecutaron comandos /plugin (instalaste los plugins github y commit-commands).
  3. Claude Code intercaló esos 4 registros de /plugin entre el bloque de llamada (server_tool_use, línea 169) y el bloque de respuesta

(advisor_tool_result, línea 174) en el archivo de sesión.

Como Claude Code agrupa los bloques de una misma respuesta por su message.id y exige que sean contiguos, esos 4 registros en el medio parten el par: la
llamada queda en un mensaje y el resultado queda huérfano al inicio de otro (messages.7.content.0). La API rechaza eso en cada turno → por eso la sesión
quedó trabada.

La prueba está en el mismo archivo: hay otro par de advisor (líneas 59-60) que sí está contiguo y por eso nunca falla. Mi reparación consiste en dejar el
par 169-174 idéntico a ese par sano.

Nota de comportamiento: es un bug de Claude Code. Hasta que lo arreglen, no ejecutes comandos / mientras un advisor() está en curso — intercala registros
y rompe el par.

Verificaciones (ya hechas, solo lectura)

  • Los 4 registros a borrar (170-173) son los logs de /plugin; nada fuera de ese tramo los referencia. Borrarlos es seguro y los plugins siguen instalados

(su estado vive en config, no en el transcript).

  • Es el único par roto del archivo (el scan estructurado encontró solo 2 server_tool_use, ambos de advisor).

Environment Info

  • Platform: darwin
  • Terminal: ghostty
  • Version: 2.1.157
  • Feedback ID: ffd24751-9eb9-46f9-b126-11e280f0a82d

Errors

[]

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗