jq transforma y consulta JSON. La opción -e o --exit-status basa el estado en el último valor emitido: 0 si no es false ni null, 1 si es false o null, y 4 si no produjo un resultado válido. El manual también distingue errores de uso, sistema y compilación.
Es útil en automatización, pero importa que cuente la última salida. Si un filtro emite varias comprobaciones, un valor final correcto no confirma que cada registro anterior haya pasado. Diseña el filtro para expresar la condición real de aceptación, en lugar de interpretar cualquier JSON impreso como éxito.
--slurp reúne el flujo de entrada en un array y ejecuta el filtro una vez. Puede facilitar una comprobación global, pero cambia el uso de memoria: acumula la entrada en vez de tratar un valor cada vez. Decide expresamente qué hacer con entrada vacía, campos ausentes y tipos inesperados.
Veredicto: jq -e es una pieza útil, no un validador automático de esquemas. Prueba el criterio con una muestra válida, un registro intermedio erróneo, entrada vacía y JSON mal formado; revisa salida y estado. Esta revisión se basa en documentación, sin benchmark, puntuación de laboratorio ni afirmación de haber probado un proceso de producción concreto.