El emulador local
El emulador es el mismo binario del agente que corre junto a tu unidad en el clúster, arrancado en otro modo. No puede diverger de lo real. Crea el árbol /zaroz, fija el entorno del contrato, ejecuta tu comando, imprime cada señal que recibe y aplica la misma validación.
Ejecuta tu servidor con él
Code
Tu proceso ve ZAROZ_DIR=./zaroz, ZAROZ_UNIT_KEY=match-1, ZAROZ_CONTRACT_VERSION=1 y las demás variables del contrato. Lee ./zaroz/unit.json, escribe ./zaroz/signals/ready y el emulador imprime la señal con su hora.
Contrólalo desde otra terminal
Code
El socket de control (./zaroz/.control.sock) existe solo en el emulador, nunca en un pod real.
En Docker
Code
Code
Los binarios estáticos se construyen para Linux (amd64 y arm64). En Windows usa WSL. Todavía no hay compilación para macOS.
La suite de conformidad
El crate conformance tiene licencia MIT. Arranca una unidad y comprueba el contrato de punta a punta: archivos presentes antes de empezar, señales reflejadas, asignación entregada y confirmada, el aviso de drenaje antes de SIGTERM y cada archivo contra su JSON Schema. Los mismos identificadores de aserción se ejecutan contra el emulador en tu CI y contra una unidad real en la plataforma, así que una unidad que pasa en local se comporta igual en el clúster.
La imagen y los binarios del emulador se publicarán en la organización zaroz-oss con el lanzamiento (allí se anunciará el nombre exacto de la imagen; <registry> arriba lo representa). El código del agente es privado; los esquemas del contrato, el emulador, la suite de conformidad, el helper y los ejemplos son públicos.
