Reopening a failed durable session returns opaque internal_error
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 52/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- javascript, rust, wasm
Línea de trabajo
Comienza con el ciclo de vida durable-session de openSession/getSession y la API de actor de RivetKit descrita en la reproducción; reproduce la ruta de reapertura de una sesión fallida usando un presupuesto limitado de tiempo de ejecución de JavaScript. Se considera terminado cuando la reapertura restaura o restablece el adaptador fallido, o devuelve un error session_failed tipado que contiene el fallo serializado almacenado en lugar de internal_error.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Problem
A durable session can enter state.status === "failed" after its ACP adapter exits during a prompt—for example, after exceeding limits.jsRuntime.cpuTimeLimitMs. getSession({ sessionId }) correctly preserves a useful serialized failure such as prompt_interrupted.
Calling openSession(...) again with the same durable sessionId does not restore or reset the adapter. Through the RivetKit actor API it instead returns only:
group=rivetkit code=internal_error message="An internal error occurred"
The stored failure explaining why the session cannot be reopened is lost at the action boundary. A fresh session on the same actor still opens successfully.
Expected behavior
One of the following would make this lifecycle recoverable:
openSessionrestores or resets a session whose durable state isfailed; or- it returns a typed terminal error such as
session_failed, including the stored serialized failure and documenting that callers must calldeleteSessionbefore recreating it.
It should not collapse this state into a generic internal_error.
Reproduction outline
- Create a durable Pi session with a stable
sessionId. - Cause the adapter to exit during a prompt, such as by using a small JavaScript CPU-time budget.
- Confirm
getSession({ sessionId })reportsstate.status === "failed". - Call
openSessionagain with the samesessionIdand original options. - Observe the opaque RivetKit
internal_error. - Open a new session ID and observe that it succeeds.
Observed with @rivet-dev/[email protected] on the RivetKit actor path.
- Lenguaje dominante
- Rust
- Estrellas
- 4.7k
- Forks
- 263
- Merge medio
- 9 h 13 min
- PR fusionados (30 d)
- 29
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
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 rivet-dev/agentos
-
Dificultad 4/5 3-5 días Aptitud para principiantes 18/100
rivet-dev/agentos#2027 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Python edits to filesystem.writeFile-created files are reverted by shadow reconciliationPosiblemente ocupada @ankssjain la tomó hace 8 días. Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 20/100
rivet-dev/agentos#2022 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 Medio día Aptitud para principiantes 32/100
rivet-dev/agentos#2020 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 45/100
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 66/100
rivet-dev/agentos#1994 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de rivet-dev/agentos
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
Los mantenedores suelen responder en 1 día
-
V1 manifest lists written by Java lose added/existing/deleted file countsPosiblemente ocupada @kacper-li-airspace-intelligence la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
apache/iceberg-rust#3445 ·
Los mantenedores suelen responder en 4 días
-
Slack integration: links on self-hosted domains never unfurl (parseCapShareUrl only accepts cap.so / cap.link)Posiblemente ocupada @mangeshraut712 la tomó hoy. Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
CapSoftware/Cap#2546 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
Los mantenedores suelen responder en 1 día
-
sync: small cleanups after #69Abiertoarea::tern-sync kind::cleanup triage::ready
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día