Loading
_ DESCIFRANDO CONEXIÓN SEGURA...

Idempotencia y reversibilidad

5 tareas · 38 min · Principiante

Dos propiedades separan una automatización confiable de una que da miedo. La primera es que repetir una acción no cambie el resultado: ejecutarla una vez o tres debe dejar el sistema igual. La segunda es que cada acción tenga su vuelta atrás escrita antes de necesitarla. En Molinos Río Dulce abres un playbook con reintentos, su historial de ejecuciones, el estado que guardó antes de contener a un usuario y el plan de reversión, y buscas dónde falla cada propiedad.

0 de 5 · 0%

Objetivo de la sala

Dos propiedades separan una automatización confiable de una que da miedo. La primera es que repetir una acción no cambie el resultado: ejecutarla una vez o tres debe dejar el sistema igual. La segunda es que cada acción tenga su vuelta atrás escrita antes de necesitarla. En Molinos Río Dulce abres un playbook con reintentos, su historial de ejecuciones, el estado que guardó antes de contener a un usuario y el plan de reversión, y buscas dónde falla cada propiedad.

Una operación es idempotente cuando aplicarla varias veces produce el mismo resultado que aplicarla una. Desactivar una clave que ya está desactivada no cambia nada: es idempotente. Crear una clave nueva cada vez que se llama no lo es: dos llamadas dejan dos claves.

Esta propiedad importa porque en automatización las repeticiones no son raras. Los eventos pueden llegar duplicados, los reintentos se disparan tras un error de tiempo de espera y las personas relanzan un flujo que parecía colgado. Una acción idempotente tolera todo eso sin que nadie se entere. Una que no lo es necesita protección.

Responde para continuar

¿Cuál de estas operaciones es idempotente?

Ver pista de ayuda

Pregúntate si el resultado cambia al repetirla.

Abre historial-de-ejecuciones.csv. La columna intento marca los reintentos legítimos: un intento 2 tras un error de tiempo de espera es la política de reintentos funcionando. Lo preocupante es lo que no es un reintento: dos ejecuciones del mismo evento, ambas en intento 1, con el mismo objetivo y la misma acción, a tres segundos de distancia. Sin una clave de idempotencia, el playbook no pudo reconocer que ya había trabajado ese evento.

Responde para continuar

¿Qué evento aplicó la misma acción dos veces sobre el mismo objetivo? Escribe su identificador.

Ver pista de ayuda

Busca dos filas con el mismo id_evento cuyo resultado sea aplicada en las dos.

La solución estándar es una clave de idempotencia: un valor estable que identifica «esta acción, sobre este objetivo, por este evento». El playbook la guarda al terminar y la consulta al empezar. Si ya existe, no repite la acción. Para que funcione tiene que ser estable en los reintentos (no puede incluir la hora del intento) y tiene que construirse con lo que identifica el hecho: el id del evento, la acción y el objetivo.

Responde para continuar

¿Cómo debe construirse la clave de idempotencia de un playbook?

Ver pista de ayuda

Debe ser igual cuando el mismo hecho se repite.

Una contención reversible exige conocer el estado anterior. Deshabilitar a un usuario y quitarle sus grupos es fácil; devolverlo a como estaba solo es posible si alguien guardó antes la lista exacta de grupos y el estado de la cuenta. Abre estado-previo-EJE-9120.txt: es lo que el playbook escribió antes de actuar. Con ese archivo, la reversión no depende de la memoria de nadie.

Responde para continuar

¿A cuántos grupos pertenecía el usuario antes de la contención? Escribe solo el número.

Ver pista de ayuda

Cuenta los elementos de la lista bajo grupos.

Cada acción de un playbook debería tener en el plan de reversión su par: desactivar una clave se deshace reactivándola desde el estado guardado, crear una clave nueva se deshace desactivándola. Abre plan-de-reversion.csv. Una fila con la reversión en blanco es una acción cuyo daño nadie previó, y según la política de la tarea 1 de la sala 1, una acción así no puede ser automática.

Responde para continuar

¿Qué acción del plan de reversión no tiene paso que la deshaga? Escríbela tal cual.

Ver pista de ayuda

Busca la fila donde la columna reversion está vacía.

Inicia sesión para registrar tus puntos y progreso en el ranking.

Whoami-Labs Pro

Whoami-Labs Pro utiliza cookies

Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad