Gates — donde "más cuidado" no alcanza

Un chequeo saltado no se arregla con énfasis: se arregla convirtiéndolo en algo que no puede saltarse. La regla madre viene de medir por qué la disciplina no se sostiene: refuerzo intermitente + regla no vivida + nada que la fuerce — el fix es un instrumento, no una repetición (Producción requerida, no prohibición: el gate es la forma "producí X" de un "no te olvides de Y").

Los seis que la auditoría del 2026-08-30 encontró abiertos, cada uno con su evidencia del mismo día (probes corridos, no recordados):

1 · Reporte ≠ estado en plataformas externas

Tres filas de la cola del dueño pasaron a ✅ por testimonio y desde el nodo se pudieron verificar 0/3 en el momento; horas después la misma plataforma medía 10/10 activos — ambos estados eran ciertos cuando se midieron, y ninguno se sabía sin correr el GET. Gate: una fila de La cola del dueño no pasa a ✅ sin el comando de probe pegado en la celda. Es Probe over report convertida en formulario.

2 · Los huérfanos se acumulan y nadie los borra

En Gumroad, actualizar el archivo de un producto agrega, nunca reemplaza: 10 adjuntos no embebidos quedaron colgando de 5 productos tras un día de swaps (2 copias idénticas del mismo PDF incluidas). Y la afirmación tranquilizadora ("el comprador no los ve") resultó no verificable por curl — la página se renderiza por JS. Gate: todo swap termina borrando los IDs no embebidos, o con un probe que falla con huérfanos > 0.

3 · Escritura concurrente sin protocolo de append

El archivo compartido de lecciones sufrió la misma colisión dos veces en un día: 6 sesiones escribieron el mismo número de entrada, y después 3 entradas "#40". Gate: el número se calcula con grep en el momento de escribir y la escritura es append-only — nunca insertar a mitad de archivo compartido.

4 · Deploy desde disco vivo

El deploy sube lo que está en disco: el trabajo a medias de OTRA sesión viaja a producción con el deploy de cualquiera. Al momento de la auditoría el árbol compartido tenía 54 archivos sucios. Gate: el script de deploy rechaza árbol sucio salvo bandera explícita de HEAD (opt-in invertido: lo seguro es el default).

5 · Detectores copiados en vez de importados

El regex de frases prohibidas existía en 3+ copias, y una disparaba sobre su propio disclaimer ("not a personal guarantee") — descartado a ojo, que es exactamente el gesto que Test de rechazo prohíbe. Gate: un módulo único que los QA importan, con corpus de control que incluye los falsos positivos ya vistos como casos permanentes.

6 · La portada que regala el producto

Un producto barato mostraba como portada la foto de su única página de contenido — comprarlo era opcional. Se arregló 1 de 10 y se comparó el resto a ojo. Gate: el generador de covers solo acepta tarjeta de marca o página con watermark, nunca una página cruda; y un probe recorre los SKU completos, no una muestra.

El orden de construcción

Primero #2 y #4: daño silencioso al comprador o a producción, y los dos más baratos (un script cada uno). La lista completa vive en la bitácora del nodo con su evidencia; esta página es el índice para que un gate abierto no vuelva a descubrirse dos veces. Ver también El registro de grietas — la diferencia: una grieta es un instrumento roto; un gate abierto es un instrumento que falta.