Glosario
60 términos de «Gestión de estado y persistencia: que las tareas largas sobrevivan a una interrupción». Pasa el cursor sobre la primera aparición en la lección para ver la definición.
| Término | Definición | Fuente |
|---|---|---|
| memoria | El contexto que le das al modelo; responde «¿qué ha visto el modelo?». Puede estar ya persistida en disco (como `NOTES.md`) o seguir viviendo en la memoria del proceso. | How we built our multi-agent research system — Anthropic Engineering |
| estado de ejecución | La escena en curso que sostiene el proceso del arnés: el arreglo `messages`, los contadores de turnos, `tokensUsed`, la llamada a herramienta todavía sin registrar. Por omisión vive en la memoria del proceso y se pierde cuando el proceso termina. | How we built our multi-agent research system — Anthropic Engineering |
| messages | El arreglo con el historial completo de la conversación que el arnés sostiene en memoria; es la única fuente para restaurarle el contexto al modelo y el campo más grande del punto de control. | How we built our multi-agent research system — Anthropic Engineering |
| turns | Contador de cuántos turnos se ejecutaron, usado para juzgar condiciones de parada como el tope máximo de turnos; al reanudar debe continuar desde el valor del punto de control, no volver a cero. | How we built our multi-agent research system — Anthropic Engineering |
| tokensUsed | Contador acumulado de uso de tokens; al reanudar hay que arrastrarlo desde el punto de control para sostener las decisiones de umbral de compactación de contexto. | How we built our multi-agent research system — Anthropic Engineering |
| pendingToolUse | Campo del punto de control que marca una llamada colgante (el modelo la nombró, el resultado todavía no se registró); vale `null` o un objeto como `{id, name, input}`. | How we built our multi-agent research system — Anthropic Engineering |
| llamada colgante | Un bloque `tool_use` que el modelo nombró pero cuyo resultado no alcanzó a volver a `messages` cuando el proceso se cayó, y que queda sin su `tool_result` emparejado. | How we built our multi-agent research system — Anthropic Engineering |
| punto de control | Serializar el estado de ejecución (`messages`, `turns`, `tokensUsed`, `pendingToolUse`) a disco para que el proceso pueda reanudar después de una caída; es una de las salvaguardas deterministas que se emparejan con la adaptabilidad del modelo. | How we built our multi-agent research system — Anthropic Engineering |
| checkpoint.json | El archivo de punto de control que sostiene `version`, `task`, `turns`, `tokensUsed`, `messages` y `pendingToolUse`: una instantánea completa de la escena de ejecución. | How we built our multi-agent research system — Anthropic Engineering |
| version | Número de versión del protocolo dentro de `checkpoint.json`; le permite a `loadCheckpoint` confirmar la compatibilidad de formato y negarse a cargar versiones que no coinciden. | How we built our multi-agent research system — Anthropic Engineering |
| task | La cadena con la tarea original del usuario, guardada en `checkpoint.json` para que el arnés reiniciado sepa a qué tarea pertenece esta escena y pueda reportar avance. | How we built our multi-agent research system — Anthropic Engineering |
| saveCheckpoint | Función que escribe el estado actual a disco; las implementaciones correctas escriben primero un archivo temporal y después renombran de forma atómica, para no quedar con un archivo a medio escribir. | How we built our multi-agent research system — Anthropic Engineering |
| punto de guardado A | Primer punto de control dentro de un turno, guardado después de que el modelo nombra una herramienta pero antes de que se ejecute; anota en `pendingToolUse` el bloque `tool_use` de ese turno. | How we built our multi-agent research system — Anthropic Engineering |
| punto de guardado B | Segundo punto de control dentro de un turno, guardado después de que los resultados de herramienta entran a `messages`; deja `pendingToolUse` de vuelta en `null`. | How we built our multi-agent research system — Anthropic Engineering |
| archivo temporal | Archivo intermedio (por ejemplo, `checkpoint.json.tmp`) que se escribe primero durante una escritura atómica de punto de control; queda escrito por completo antes de renombrarse para reemplazar al archivo real. | How we built our multi-agent research system — Anthropic Engineering |
| fs.renameSync | Operación de renombrado atómico dentro del mismo sistema de archivos; la entrada de directorio apunta por completo al archivo nuevo o se queda en el viejo, sin estado intermedio a medio renombrar. | How we built our multi-agent research system — Anthropic Engineering |
| sobrescribir en el lugar | Sobrescribir directo el archivo de punto de control con `fs.writeFileSync`; no es atómico y puede dejar un JSON truncado si matan el proceso a mitad de escritura. | How we built our multi-agent research system — Anthropic Engineering |
| reanudación | Reiniciar el bucle desde un punto de control tras una caída: leer el estado de vuelta, reconstruir `messages` y seguir desde donde ocurrió el error en lugar de arrancar de nuevo en el turno 1. | How we built our multi-agent research system — Anthropic Engineering |
| loadCheckpoint | Función que lee y parsea el archivo de punto de control; debe validar el campo `version` y fallar en voz alta ante una versión que no coincide o un parseo fallido, no caer en silencio a un estado vacío. | How we built our multi-agent research system — Anthropic Engineering |
| reconcile | Función que maneja un `pendingToolUse` colgante al reanudar; decide, según la naturaleza de la herramienta (solo lectura frente a alto impacto) y el estado del registro, si volver a ejecutar, reutilizar o devolver `is_error`. | Handle tool calls — Claude API |
| READ_ONLY_TOOLS | Conjunto de nombres de herramientas (`read_file`, `grep`, `list_dir`, `web_search`) considerados libres de efectos secundarios; `reconcile` vuelve a ejecutar sin riesgo las herramientas de este conjunto al reanudar. | Handle tool calls — Claude API |
| herramienta de solo lectura | Herramienta con cero efectos secundarios (leer archivos, buscar); se puede volver a ejecutar varias veces sin riesgo porque el mundo exterior queda igual. | Handle tool calls — Claude API |
| herramienta de alto impacto | Herramienta que cambia el estado externo (`send_email`, `create_ticket`, `delete_file`); hay que confirmar si ya se ejecutó antes de volver a correrla, para no duplicar efectos secundarios. | Handle tool calls — Claude API |
| is_error | Campo opcional de `tool_result` que se pone en `true` para indicar que la herramienta falló o que su estado es desconocido, para que el modelo se entere y se adapte en vez de dar por hecho el éxito. | Handle tool calls — Claude API |
| tool_result | Bloque de contenido que se le devuelve al modelo por cada `tool_use`; el protocolo exige que todo `tool_use` tenga su `tool_result` emparejado, unidos por `tool_use_id` y todos en el mensaje de usuario siguiente. | Handle tool calls — Claude API |
| tool_use | Bloque de contenido en una respuesta del modelo que nombra una herramienta a llamar; contiene los campos `id`, `name` e `input`. Un `tool_use` colgante queda sin su `tool_result` emparejado cuando el proceso se cae. | Handle tool calls — Claude API |
| idempotente | Operación que produce el mismo efecto final se ejecute una o muchas veces; el criterio es el efecto (el estado externo final), no el valor de retorno. | How we built our multi-agent research system — Anthropic Engineering |
| registro de efectos | Anotación aparte en disco, indexada por `tool_use_id`, que rastrea qué efectos secundarios ocurrieron de verdad; se escribe en el instante en que una herramienta tiene éxito y le permite a la reanudación distinguir «se ejecutó» de «no se ejecutó». | How we built our multi-agent research system — Anthropic Engineering |
| effects.json | El archivo del registro de efectos, indexado por `tool_use_id`, que anota el nombre de la herramienta, el resultado y la marca de tiempo; se escribe apenas la herramienta tiene éxito, antes del punto de guardado B. | How we built our multi-agent research system — Anthropic Engineering |
| tool_use_id | Identificador único que el modelo le asigna a cada bloque `tool_use`; no cambia al reproducirse, lo que lo vuelve una clave de idempotencia natural para el registro de efectos. | Handle tool calls — Claude API |
| at-least-once | La semántica de ejecución inherente a la reanudación basada en puntos de control: una herramienta puede terminar y que el resultado no alcance a registrarse antes de la caída, con lo que se vuelve imposible distinguir «no se ejecutó» de «se ejecutó pero no quedó anotado». | How we built our multi-agent research system — Anthropic Engineering |
| loadEffects | Función que lee el registro de efectos; devuelve un objeto vacío si el archivo no existe o falla el parseo, tratándolo como «todavía no hay anotaciones» en vez de bloquear la reanudación. | How we built our multi-agent research system — Anthropic Engineering |
| saveEffect | Función que escribe el registro de efectos de vuelta a disco con escritura atómica de archivo temporal más renombrado; solo debe llamarse después de que la herramienta se ejecutó con éxito y hay un resultado real. | How we built our multi-agent research system — Anthropic Engineering |
| compuerta de aprobación | Chequeo previo a la ejecución para herramientas de alto impacto que exige confirmación humana; pregunta «¿esto se debería hacer?» (distinto del «¿esto ya ocurrió?» del registro de efectos). | How we built our multi-agent research system — Anthropic Engineering |
| ensureTicket | Ejemplo de rediseñar «crear» como «asegurar que exista»: busca por título, devuelve el existente si lo encuentra y crea solo si falta; idempotente por diseño. | How we built our multi-agent research system — Anthropic Engineering |
| append | Estilo de escritura acumulativa (`array.push`, agregar al final de un archivo de log); cada llamada suma de verdad un elemento más, así que el estado final varía con la cantidad de llamadas: por lo general no es idempotente. | How we built our multi-agent research system — Anthropic Engineering |
| sobrescritura | Estilo de escritura por reemplazo (fijar una línea en un valor fijo, `write_file` de archivo completo); llamarlo una vez o diez deja el mismo estado final: suele ser idempotente. | How we built our multi-agent research system — Anthropic Engineering |
| runToolUses | Función que ejecuta todos los bloques `tool_use` de un turno; una vez integrados el registro de efectos y la compuerta de aprobación, el orden queda: consultar el registro, después la aprobación, después ejecutar, después anotar en el registro. | How we built our multi-agent research system — Anthropic Engineering |
| rebobinar | Revertir la escena de decisión a un turno anterior para reintentar cuando la tarea se salió del camino (no por una caída); revierte el punto de control, no los efectos secundarios externos ya consumados. | Checkpointing — Claude Code Docs |
| bifurcar | Copiar dos líneas temporales independientes a partir del mismo punto de control para explorar rutas distintas; cada línea temporal recibe su propia secuencia de puntos de control y un registro de efectos en blanco. | Checkpointing — Claude Code Docs |
| rewindTo | Función que recupera el punto de control de un turno específico desde la secuencia conservada turno por turno; por omisión toma el último punto de guardado escrito en ese turno. | Checkpointing — Claude Code Docs |
| forkFrom | Función que copia una línea temporal independiente desde el punto de control de un turno específico; la línea nueva trae su propia secuencia de puntos de control y un registro de efectos en blanco, aislada de la línea principal. | Checkpointing — Claude Code Docs |
| turn-014-A.json | Ejemplo de nomenclatura para la secuencia de puntos de control turno por turno: mete el número de turno y la letra del punto de guardado en el nombre del archivo, para identificar con precisión el turno y el momento. | Checkpointing — Claude Code Docs |
| pickLatestPoint | Función que encuentra el último punto de guardado escrito dentro de un turno; se apoya en que el orden lexicográfico de A/B coincide de forma natural con el orden temporal «antes de la herramienta → después del resultado». | Checkpointing — Claude Code Docs |
| escena de decisión | Lo que los puntos de control rebobinan de verdad: `messages`, `turns`, `pendingToolUse` y los demás campos definidos dentro de la instantánea; no las acciones del mundo exterior ya consumadas. | Checkpointing — Claude Code Docs |
| modo de simulación | Modo usado durante una bifurcación en el que las acciones externas no se ejecutan de verdad, para que las dos líneas temporales no disparen la misma herramienta de alto impacto y dupliquen efectos secundarios. | How we built our multi-agent research system — Anthropic Engineering |
| secuencia de puntos de control | Serie de archivos de punto de control conservados turno por turno en vez de sobrescribir para quedarse solo con el más reciente; es requisito previo para rebobinar y bifurcar, y cada línea bifurcada carga su propia copia independiente. | Checkpointing — Claude Code Docs |
| Git | Sistema de control de versiones que administra el historial permanente y colaborativo del código; distinto de los puntos de control (recuperación de sesión en escala de minutos) y del registro de efectos (anotación de efectos secundarios externos). | Checkpointing — Claude Code Docs |
| CRASH_AFTER | Variable de entorno que controla el momento de la caída simulada (por ejemplo, `CRASH_AFTER=after-effect-write:3` dispara la caída después de la tercera escritura al registro). | How we built our multi-agent research system — Anthropic Engineering |
| SimulatedCrash | Tipo de excepción dedicado a simular la muerte del proceso; `main()` atrapa solo esta, imprime un log y sale con código 137, para que las demostraciones se lean como muertes reales y no como trazas de pila. | How we built our multi-agent research system — Anthropic Engineering |
| crashPoint | Función disparadora de caída simulada controlada por variable de entorno; compara la etiqueta de la operación actual contra `CRASH_AFTER` y lanza `SimulatedCrash` cuando coinciden. | How we built our multi-agent research system — Anthropic Engineering |
| --resume | Bandera de línea de comandos que indica que este arranque debe llamar a `loadCheckpoint` y tomar la ruta de recuperación en vez de empezar de cero; sin ella, `main()` limpia de forma explícita los archivos viejos de punto de control y de registro. | How we built our multi-agent research system — Anthropic Engineering |
| cola de respuestas | Sustituto de verificación que reemplaza al cliente real del modelo y devuelve respuestas preescritas en orden fijo, para volver determinista la ejecución de la tarea y reproducible el momento de la caída. | How we built our multi-agent research system — Anthropic Engineering |
| makeStubClient | Función fábrica que construye un cliente de modelo simulado a partir de una cola de respuestas, usada en la verificación para reemplazar las llamadas reales a `client.messages.create`. | How we built our multi-agent research system — Anthropic Engineering |
| main() | Función de entrada del programa que toma un solo juicio: si está `--resume` o no, y a partir de ahí enruta a la vía de recuperación o a la de arranque limpio, atrapando de forma uniforme `SimulatedCrash` para imprimir y salir. | How we built our multi-agent research system — Anthropic Engineering |
| división en tres | Las tres ramas de `reconcile` para una llamada colgante: acierto en el registro (reutilizar), fallo en el registro más solo lectura (volver a ejecutar), fallo en el registro más efectos secundarios (`is_error` al modelo). | Handle tool calls — Claude API |
| ejecutar primero, anotar después | Disciplina del registro de efectos: hay que obtener el resultado real de la ejecución de la herramienta antes de escribirlo en el registro; invertir ese orden anota «listo» para cosas que nunca corrieron. | How we built our multi-agent research system — Anthropic Engineering |
| 137 | Código de salida convencional para un proceso muerto por SIGKILL; las demostraciones de verificación lo usan para que las caídas simuladas se lean como muertes reales y no como excepciones. | How we built our multi-agent research system — Anthropic Engineering |
| arnés de verificación | Método de prueba que usa una cola de respuestas fija más puntos de caída controlados para fijar los elementos no deterministas (respuestas del modelo, momento de la caída) y poder hacer aserciones línea por línea sobre el comportamiento de recuperación. | How we built our multi-agent research system — Anthropic Engineering |
| proporción | Principio de que la maquinaria de puntos de control se agrega solo cuando la complejidad mejora los resultados de forma demostrable; no toda tarea corta necesita puntos de control completos. | Building Effective AI Agents — Anthropic Engineering |