Por qué reintentar un pago es peligroso — y la línea que lo soluciona.
La conexión de un cliente se cae a mitad del pago, así que su aplicación reintenta el cargo —tres veces. Tu código ingenuo se ejecuta tres veces. El cliente es cobrado 3× por un pedido, y ahora es tu llamada a las 3am. Este error exacto ha costado dinero real a empresas reales. Hagámoslo imposible.
Idempotencia: misma solicitud, mismo efecto — sin importar cuántas veces.
Una operación es idempotente cuando hacerlo una vez y hacerlo diez veces te lleva al mismo lugar. El truco: dale a cada solicitud un clave, recuerda las claves que has manejado, y haz que una clave repetida sea una no-operación. Los reintentos se vuelven seguros.
Aquí está el roto charge(). Ejecútalo — cobra tres veces. Luego añade la protección para que una clave repetida no haga nada, y ejecuta de nuevo. Python real, ejecutándose aquí mismo.
Verde significa 3 reintentos → 1 cobro. No leíste sobre idempotencia — la implementaste, y una verificación lo confirmó. Así es cada lección de Sage: un modelo mental, un diagrama y una prueba que un escéptico puede ejecutar. Sin cuestionario autoevaluado, sin “creo que lo entiendo.”
Esa fue una lección. Hay cientos más.
Cada una termina con una prueba como esta y se acumula en un portafolio que un gerente de contratación puede ejecutar.