por qué oracle
Un verde que no mide nada es peor que un rojo.
Un rojo te dice que algo está mal. Un verde vacío te dice que está todo bien cuando nadie miró. Oracle existe para que cada verde diga qué midió, con qué número y qué quedó sin mirar.
una historia real
Un agente construyó una batalla naval «con Oracle». El test dio verde.
En septiembre de 2026 le pedimos a un agente de programación el mismo juego dos veces: una batalla
naval con Oracle y otra sin Oracle. Las dos versiones funcionaban. La versión con Oracle tenía su
catálogo de medidas, su corpus y un oracle test en verde.
Al revisarla encontramos que el catálogo estaba vacío. El único caso del corpus validaba la sintaxis de un archivo, no una regla del juego. Ninguna medida sabía qué era un barco, una casilla o un turno. El verde era cierto y no decía nada: se podía borrar la lógica del juego y seguía verde.
El defecto era de Oracle, y lo arreglamos en Oracle:
oracle testahora termina diciendo su alcance (qué verificó) y que no volvió a medir el producto.- Un proyecto sin medidas propias sale , no verde.
- Hay un camino corto a la primera regla real del producto: del juego a un hecho exportado, a una medida y a un veredicto. Es el ejemplo del barco en la fila 10 de la portada.
El postmortem completo, con las cifras de cada versión y lo que no se pudo sostener, está en el repositorio.
qué cambia
Un test verifica una función. Una medida vigila una regla del proyecto.
| Un test unitario | Una medida de Oracle | |
|---|---|---|
| Qué mira | el código, llamándolo | hechos que un sensor exporta del producto |
| Dónde vive | junto al código que prueba | en un catálogo aparte, con su propio historial |
| El umbral | implícito en el assert | explícito, con segun: contrato, medición, convención o tanteo |
| Lo que no ve | no lo dice | lo declara en alcance, obligatorio |
| Al fallar | una excepción | el valor, el umbral y las filas que ofendieron |
| Si falta el dato | depende de cómo se escribió | requiere: sale sin evidencia, nunca verde |
| Quién la vigila | nadie, salvo mutación de código aparte | la mutación de medidas, siempre: si un caso no la nota, se sabe |
No compiten. Los tests siguen verificando funciones; las medidas vigilan lo que el proyecto promete de sí mismo, con la evidencia a la vista.
cinco niveles
De dónde sale cada dato, hasta el catálogo que se juzga a sí mismo.
Un veredicto vale lo que vale el dato que lo sostiene. Por eso Oracle separa cinco pisos: qué se observó, con qué instrumento, qué filas salieron, qué regla las juzga y quién vigila a las reglas. Si un piso falla, se sabe cuál, en vez de desconfiar de todo.
- L2El catálogo se juzga a sí mismomedidas sobre las medidas: toda medida declara su alcance, ninguna sombra supera su cota
- L1Medidasreglas escritas en Oracle, con umbral, defensa y alcance
- L0Hechosfilas planas, sin opinión: lo que el sensor vio
- L−1El sensorunidades, límites y de qué programa salió cada fila
- L−2El referentequé archivo o corrida se observó, con su huella, para saber si sigue vigente
Cada nivel se apoya en el de abajo y lo puede poner en duda. La decisión completa está en la decisión 005.
programar con agentes
Cuanto menos mira un humano, más hace falta un juez que no sea el autor.
Un agente que escribe código y sus tests en la misma pasada se da la razón a sí mismo. Oracle pone las reglas afuera, de sólo lectura para el agente, y le devuelve un rojo con el testigo exacto que tiene que corregir.
Cuando el agente trabaja solo, Oracle hace de andamiaje: cada paso se juzga con medidas deterministas, y el humano entra cuando quiere, no porque el agente necesite que alguien le diga si está bien.
cuándo no
Cuándo Oracle no es lo que necesitás.
- Si querés probar una función. Para eso está un test unitario, y es más corto.
- Si no podés exportar hechos. Oracle juzga lo que un sensor le cuenta. Sin sensor no hay veredicto, y el proyecto sale sin medición.
- Si esperás una prueba de corrección. Una medida verde dice que su regla se cumple sobre esos hechos, dentro de su alcance. No demuestra que el producto esté bien en todo lo demás.
empezar
Tu primer rojo, en cinco minutos.
Instalar, escribir una medida y verla fallar con sus testigos.
De cero a un rojo