7af2173014
- carta_article_ids() en sync_audio_to_prod.py ahora comprueba returncode
del docker exec y lanza RuntimeError si falla, en vez de devolver una
lista vacía silenciosa (bug preexistente: un fallo de Docker/consulta se
confundía con "la carta no tiene artículos").
- El wrapper resuelve --carta a fichero temporal en vez de mapfile con
sustitución de procesos (mapfile < <(cmd) no deja comprobar el exit
code real de cmd), captura el rc de python explícitamente y aborta con
exit 1 sin sincronizar nada si la consulta falla.
- sys.path ya no depende del cwd ("scripts" relativo): se pasa la ruta
absoluta de SCRIPT_DIR al script inline.
Probado: --carta real sin cambios de comportamiento (28 candidatos,
ok=21/skip=7); consulta rota a propósito (FEA_DB_CONTAINER inexistente)
aborta limpio con exit=1 y 0 sincronizaciones; invocación desde otro
directorio de trabajo da el mismo resultado que desde la raíz del repo.
Revisión de Codix en el PR #215.