ai-harness: a forwarded command completes with no result, also when the owner rejects it
Los mantenedores suelen responder en 1 día
@tombeckenham ya está trabajando en esto.
Desde el 15/10/2026.
Evaluación
Este issue todavía no se ha evaluado.
Descripción
TanStack AI version
@tanstack/ai-harness on the feat/harness-core branch, with #1780 (not released yet).
Framework/Library version
Node 24.8.0. No UI framework: the bug is in the durable host.
Describe the bug and the steps to reproduce it
With #1780, a durable host passes an input for a thread that another host owns to stores.inbox, and the owner runs it. For session.command(...), the host that passed it on ends the command operation right away with status completed and the result undefined.
So the caller gets a wrong answer in two cases:
- The command returns a value: the caller gets
undefined. - The owner rejects the command (
unknown_command, invalid input) or the command throws: the caller still getscompleted.
The real result exists only in the owner's events. Code: executeCommand in packages/ai-harness/src/session/turn.ts.
Steps:
- Open one thread on two durable hosts that share
log,runs,workClaims, andinbox. - Start a turn on host A, so A owns the thread.
- Call
hostB.command('unknown')while the turn runs. - The operation on host B completes with
undefined. On host A, the command is rejected.
Possible fixes:
- Host B waits for the owner's result in the log (a settled record for the command input), and ends its operation with it.
- Host B ends the operation with a receipt only (
queued), and the docs say that a forwarded command has no result.
Your Minimal, Reproducible Example - (Sandbox Highly Recommended)
packages/ai-harness/tests/forwarding.test.ts on #1780 has the two-host setup (sharedStores()). Use it with the steps above, and expect the operation on host B to fail.
Do you intend to try to help solve this bug with your own PR?
Maybe, I'll investigate and start debugging
Terms & Code of Conduct
- I agree to follow this project's Code of Conduct
- I understand that if my bug cannot be reliable reproduced in a debuggable environment, it will probably not be fixed and this issue may even be closed.
- Lenguaje dominante
- TypeScript
- Estrellas
- 3.2k
- Forks
- 361
- Merge medio
- 1 d 8 h
- PR fusionados (30 d)
- 266
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de TanStack/ai
-
Discriminate status-dependent record and option types (RunRecord, SessionIndexEntry, InputState, durable-only options)Posiblemente ocupada @jherr la tomó hoy. Abiertoenhancement waiting-on: maintainer
TanStack/ai#1799 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
ai-harness: an input with no principal runs with the owner session's principalPosiblemente ocupada @tombeckenham la tomó hace 1 día. Abiertowaiting-on: maintainer
TanStack/ai#1797 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
ai-harness: recovery runs a turn without the user message when the turn never startedPosiblemente ocupada @tombeckenham la tomó hace 1 día. Abiertowaiting-on: maintainer
TanStack/ai#1795 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
ai-mcp: modern tool calls omit x-mcp-header parameter headers in 0.9.0Posiblemente ocupada @tombeckenham la tomó hace 1 día. Abiertowaiting-on: maintainer
Dificultad 4/5 3-5 días Aptitud para principiantes 32/100
TanStack/ai#1794 · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Responses replay puts assistant text between function_call and function_call_outputPosiblemente ocupada @tombeckenham la tomó hace 1 día. Abiertowaiting-on: maintainer
TanStack/ai#1792 · 1 asignado ·
Los mantenedores suelen responder en 1 día
Todos los issues de TanStack/ai
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
melgarafael/DeskcommCRM#3000 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
callstackincubator/simlock#639 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 80/100
aws/agentcore-cli#2606 ·
Los mantenedores suelen responder en 1 día
-
🐛 [BUG] - FeatureComparisonTable text-only cells are top-aligned while icon cells are centeredAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 7 días
-
ai-driven-qa bug Cosmetic
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
Los mantenedores suelen responder en 1 día