corpus: ORDEN se puede imponer desde fuera — 17 recetas sin reconstruir 780
El fichero de orden estaba fijo en la linea 69 y lo regeneraba el bloque python en cada corrida, asi que no habia forma de pasarle una lista concreta. Con el grafo ya corregido quedan 17 recetas que cierran las SEIS imagenes (base, cli, sway, mirada, cosmic, gnome) y ninguna esta bloqueada; correr el corpus entero para llegar a ellas es absurdo. Ahora `ORDEN_IMPUESTO=1 ORDEN=<fichero>` usa la lista del que llama y hereda gratis lo que hace util a este script: el flock de la regla 1, el vigia de disco de dos sistemas de ficheros y el log por receta. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Xd5DComN9Nu47TBpYMBHBn
This commit is contained in:
@@ -66,7 +66,15 @@ ts() { date -u +%Y-%m-%dT%H:%M:%SZ; }
|
||||
# staging. Construyendo por orden alfabético, tras un día de máquina no habría NI UNA imagen
|
||||
# completa. Se ordena por objetivo: primero las clausuras de los perfiles de `targets.toml`
|
||||
# (base, cli, escritorio-*), después todo lo demás. Así cada perfil que cierra es utilizable ya.
|
||||
ORDEN="$ROOT/work/reconstruccion-orden.txt"
|
||||
# ORDEN se puede IMPONER desde fuera (2026-08-23): `ORDEN=work/faltan-perfiles.txt` corre una lista
|
||||
# concreta en vez del corpus entero, y hereda gratis el flock, el vigía de disco y el log de acá.
|
||||
# Nació de tener 17 recetas sueltas —las que cierran las seis imágenes— y ninguna forma de pasarlas
|
||||
# sin reconstruir 780. Si el fichero ya existe y no está vacío, NO se regenera: la lista del que
|
||||
# llama manda. Admite tanto rutas `recipes/…/x.toml` como nombres a secas.
|
||||
ORDEN="${ORDEN:-$ROOT/work/reconstruccion-orden.txt}"
|
||||
if [ -s "$ORDEN" ] && [ -n "${ORDEN_IMPUESTO:-}" ]; then
|
||||
echo " orden IMPUESTO desde $ORDEN ($(grep -c . "$ORDEN") entradas) — no regenero"
|
||||
else
|
||||
python3 - "$ORDEN" <<'PY'
|
||||
import json, os, sys, subprocess
|
||||
# Las raíces salen de `targets.toml` vía su expansor oficial (scripts/targets.py), NO de los nodos
|
||||
@@ -114,6 +122,7 @@ with open(sys.argv[1], "w") as fh:
|
||||
fh.write("\n".join(pri + resto) + "\n")
|
||||
print(f" orden: {len(pri)} de perfil primero, {len(resto)} de catálogo después")
|
||||
PY
|
||||
fi
|
||||
mapfile -t RECETAS < "$ORDEN"
|
||||
|
||||
# ── PARTICIÓN ENTRE WORKERS: SHARD=i/N ──────────────────────────────────────────────────────────
|
||||
|
||||
Reference in New Issue
Block a user