# Deuda que harkaq NO puede declarar sola — revisión humana

De 83 recetas barridas, la deuda genuina se reduce a **3 casos**, ninguno "falta una receta grande".
Todo lo demás era declarable (make/binutils/pkgconf…) o sondas de compilador de Alpine (gcc, cpp,
ldd, c89, c99, getent — se deniegan y clasifican, D3). Los 3 que quedan, cada uno una historia:

## ncurses — `fs.make_dir /usr/lib`  (NO es de-Alpinización)
El `make install` de ncurses **escribe** en `/usr/lib`, no en `/out/usr/lib`. Es una escritura de
estructura durante install, no la lectura de una lib de Alpine. Causa probable: la fase install no
respeta `DESTDIR` para ese subárbol. **Acción:** revisar el `install` de la receta (¿pasa DESTDIR a
todo?), no declarar nada. Conceder `/usr/lib` como `rw` sería tapar el síntoma y cegar la evidencia.

## mtdev — config.sub de Alpine  ✅ CERRADO (2026-07-16), + gcc-compilador descubierto
**config.sub: cerrado.** El `config.sub` de mtdev 1.1.6 no conoce `*-musl`, así que la receta copiaba
el de Alpine (`/usr/share/autoconf/build-aux/`). Ahora se parchea el config.sub del propio tarball
(`recipes/mtdev-config-sub-musl.patch`, +`-musl*` a la whitelist de OS, 11 líneas): input soberano,
hasheado con la receta, sin tocar Alpine. Verificado: mtdev construye y no lee `/usr/share/autoconf`.

**Descubierto al cerrarlo — mtdev tenía DOS deudas de Alpine:** también usa `compiler = "gcc"` (el gcc
de Alpine, no zig). Bajo la jaula, la política deniega `/usr/bin/gcc` (sonda esperada) y el configure
da `C compiler cannot create executables`. Es parte de la campaña **matar gcc** (kernel, cmake, mtdev),
un frente aparte. Y revela un **límite del modelo de clasificación**: harkaq marca gcc como "sonda
esperada" siempre, así que dice `Hermetico`, pero para una receta `compiler=gcc` el gcc es esencial y
el build no compila sin él. harkaq no distingue "gcc sondeado (ignorable)" de "gcc = compilador".

## perl — `/etc/hosts`, `/etc/resolv.conf`  (config de sistema para tests)
Los tests de perl durante el build resuelven red y leen la config del sistema. No es un binario ni
lib de Alpine: es config. El build **completa igual** (esos tests fallan o se saltan bajo la jaula).
**Acción, una de:** (a) añadir `/etc/hosts`+`/etc/resolv.conf` al runtime base si se quiere que esos
tests corran; (b) aceptar la denegación (benigna). No es de-Alpinización.
