diff --git a/scripts/cosmic/atuq-en-imagen.py b/scripts/cosmic/atuq-en-imagen.py index d2281439..436b954a 100755 --- a/scripts/cosmic/atuq-en-imagen.py +++ b/scripts/cosmic/atuq-en-imagen.py @@ -649,6 +649,20 @@ def main(): % perfil_d, 60) estado["recent_crashes_despues"] = leer_contador_de_caidas(volcado) estado["last_success_despues"] = leer_sello_de_exito(volcado) + # ⚠ EL PISO SE COMPRUEBA, NO SE CONFÍA. `PISO_SELLO` son 180 s medidos EN ESTA + # máquina (TCG sin KVM, con la carga que tenga el anfitrión): con el anfitrión + # cargado el mismo arranque puede no llegar al gancho, y entonces esta corrida + # SUMA al contador y envenena la siguiente — en silencio, que es como pasó la + # primera vez. Con el sello leído antes y después, eso se puede DECIR. + if estado["last_success_despues"] is not None and \ + estado["last_success_despues"] == estado.get("last_success_antes"): + print(" ⚠⚠ el sello NO se movió (%s): este arranque no terminó ⇒ la corrida " + "SUMA al contador de caídas. Si usaste --until-paint, subí PISO_SELLO" + % estado["last_success_despues"]) + elif estado["last_success_despues"] is not None: + print(" ✓ el arranque SELLÓ el éxito (last_success %s → %s): esta corrida " + "no envenena la siguiente" + % (estado.get("last_success_antes"), estado["last_success_despues"])) print("---- el contador de caídas, DESPUÉS ----") print(volcado.strip()) # ⚠ SÓLO LA FASE BASE SE ANOTA. La serie de `primera-pintura.json` es una TASA del