#!/usr/bin/env bash
# Pasa las pruebas del verde y resume.
#
#   ./ejecutar.sh          todas
#   ./ejecutar.sh 04 05    solo esas
#
# NINGUNA abre el TUI ni suena por el altavoz. Lo que no se puede automatizar
# —si contesta bien, si encadena herramientas, si la voz convence— esta en
# ESCALERA.md, que se recorre a mano.
#
# Van en este orden porque cada una explica los fallos de la siguiente: sin
# tarjeta libre (01) no carga el modelo (02), sin modelo no hay tool calling
# (04), y sin que quepa el prompt (05) el TUI dara respuestas truncadas que
# parecen otra cosa.

cd "$(dirname "$0")"

if [ $# -gt 0 ]; then
    PRUEBAS=()
    for n in "$@"; do PRUEBAS+=("$(ls "${n}"_*.sh 2>/dev/null | head -1)"); done
else
    PRUEBAS=($(ls [0-9][0-9]_*.sh))
fi

FALLADAS=()
for p in "${PRUEBAS[@]}"; do
    [ -n "$p" ] || continue
    [ -x "$p" ] || chmod +x "$p" 2>/dev/null
    "./$p" || FALLADAS+=("$p")
done

printf '\n\033[1m════════════════════════════════════\033[0m\n'
if [ ${#FALLADAS[@]} -eq 0 ]; then
    printf '\033[32m  todo en orden\033[0m\n'
    printf '\033[90m  siguiente: ../verde-launcher.sh y seguir ../ESCALERA.md\033[0m\n'
    exit 0
fi
printf '\033[31m  fallan: %s\033[0m\n' "${FALLADAS[*]}"
exit 1
