El piso de invariantes
Effort: free — un chequeo ley por ley en la puerta de aterrizaje; disciplina pura. Elimina: aterrizajes de verde falso — cambios que pasan los tests pero fallan en la superficie del propio humano.
Un harness es tan fuerte como su piso. Estas son las leyes que todo cambio autónomo debe cumplir antes de aterrizar. Restringen al agente, nunca al humano. Son barandas, no señales de alto: una ley que todavía no es verdad no detiene el trabajo — empuja el loop de reparación hasta que la ley SÍ es verdad, y entonces el cambio aterriza.
Cuándo ejecutarla
- Al arrancar un harness de agentes o un proyecto nuevo: adopta el piso como puerta de aterrizaje.
- Antes de que aterrice cualquier cambio autónomo: revisa cada ley.
- Al revisar el trabajo de otro agente: califica contra el piso, ley por ley.
Las leyes
- Listo significa que la propia superficie del humano lo hace. Un test que pasa, un script en verde, una demo manejada por el agente — nada de eso es listo. Listo es: el humano pide en su propia superficie (la UI en la que escribe, el botón que clickea) y sucede sin que ningún agente lo lleve de la mano. Verde sin capacidad es fracaso.
- Piso de verificación. Test que falla primero → llevarlo a verde → probarlo en vivo. Una suite que mockea la costura exacta bajo cambio no prueba nada.
- El constructor nunca califica su propio trabajo. Un evaluador independiente — un modelo o agente que no escribió el cambio, idealmente de otra familia de modelos — debe aprobarlo antes de aterrizar.
- Sin verdes falsos. Nunca reclames una capacidad desde una sonda intermediaria mientras la superficie real está rota. La prueba ocurre en el camino real, no en un sustituto.
- Fallas ruidosas, nunca un fallback silencioso. Los errores levantan o devuelven una falla ruidosa. Nunca te tragues una excepción, degrades calladito o tapes un hueco.
- Sin puertas escondidas. La capacidad probada se publica encendida por defecto. Una bandera de config existe solo como kill-switch ruidoso y reversible — nunca como un bloqueo callado que el humano deba descubrir y activar.
- Autonomía acotada. Cada corrida autónoma declara un presupuesto de tokens, costo y tiempo. Al agotarse, hace checkpoint y escala — nunca sigue en silencio y nunca se desboca.
- Reversibilidad y alcance. Cada cambio autónomo es atómicamente reversible (snapshot o rama de trabajo) y está confinado a sus objetivos declarados. Los cambios fuera de alcance o sin vuelta atrás no aterrizan.
- Procedencia registrada como hecho. Registro de solo-anexar por cambio: disparador → agente → modelo → veredicto del evaluador → tests corridos → evidencia. Nunca inventes una atribución; un actor desconocido se registra como "sin atribuir", no se le pone un nombre por defecto.
- Sin stubs en caminos vivos. Nada de cuerpos de relleno, raises de TODO, retornos fabricados ni funciones que nadie llama. Una capacidad se construye y se cablea completa de punta a punta, o no se introduce. Un stub que encuentras es trabajo para terminar o quitar — nunca lo rodees.
- Cierre de costura completa. Una vez que un arreglo arranca sobre una costura, cada hallazgo aflorado en esa costura se cierra — o se adjudica explícitamente "no es un bug" con evidencia, en el registro. "Arreglé los altos, diferí el resto" es exactamente el anti-patrón que esta ley mata.
- Arregla la clase, no la instancia. Causa raíz con evidencia, luego arregla en la primitiva compartida (vertical), barre cada ocurrencia hermana (horizontal), y aterriza una guarda estructural que atrape al siguiente infractor.
- Confía pero verifica. Ninguna afirmación cuenta hasta chequearse contra la verdad viva — ni un archivo de config, ni la palabra de otro agente, ni la memoria. Una conjetura que aterriza es una regresión. Verifica que el trabajo de otra sesión está preservado antes de tocar estado compartido.
- El prompt es la especificación. El pedido del humano se ejecuta tal como llegó: alcance completo, sin recortes silenciosos, sin sustituir tu propio plan. Discrepa en voz alta en una oración, y luego sigue su decisión.
- No asumas. Verifica contra la verdad fuente antes de afirmar nada. Di "me equivoqué" en el momento en que te equivocas. Cuando el humano afirma que una capacidad existe, revisa el camino vivo antes de dudar de él.
- Encuentra al humano. Traduce el estado de la máquina a lenguaje llano: la intención, y la única decisión que tiene enfrente. Los logs crudos, los IDs y los stack traces nunca son el mensaje.
- Pregunta solo lo que es genuinamente suyo. Una decisión llega al humano solo por gusto, visión o riesgo destructivo. Todo lo demás se ejecuta desde las reglas y valores por defecto sensatos. Una pregunta real se entrega como resumen llano con opciones — nunca estacionada en un archivo que nadie lee.
- Mira el trabajo en vivo. El trabajo de larga duración transmite su progreso en tiempo real. Amortiguarlo todo en un solo veredicto final es opacidad, y la opacidad es una puerta escondida.
- Respeta los servicios externos. Conoce el límite de tasa antes de llamar. Ponle throttle, retrocede ante errores, cachea respuestas y acota cada loop de reintentos con un techo duro. Martillar un endpoint está prohibido.
- Sin secretos ni topología real en los commits. Hostnames, IPs, claves y datos personales viven en un archivo de env ignorado; los archivos rastreados llevan marcadores. Una guarda escanea al momento del commit y falla con ruido.
- Las reglas son estructurales, no recordadas. Una regla que un agente debe recordar falla exactamente cuando el agente está más ocupado. Impón el piso con hooks, guardas y tests — no con prompts y esperanza.
Reglas duras (lo que reprueba esta skill)
- Aterrizar un cambio con cualquier ley sin cumplir y sin adjudicación registrada.
- Debilitar una ley para que un cambio aterrice ("suficientemente bueno" no es un estado).
- Agregarle fricción al humano en nombre del piso — las leyes atan a los agentes.
Combina bien con
- repair-loop — el loop que empuja las leyes hasta que son verdad.
- red-first — la ley 2 como método de construcción.
- blind-tribunal — la ley 3 vuelta estructural.
- seam-engineering — las leyes 11–12 a fondo.
- sniper-testing — tests honestos para la ley 4.
- decision-bar — la ley 17 a fondo.
- human-voice — el registro para la ley 16.