selfhost-verify: RUST_EXPECT_REF=7fa6cb4e + swap --restore deja el toolchain prístino

Auto-consistencia de hammer-rust VERIFICADA en host (2026-06-17): of_tree(stage1)
construido con hammer-rust 1.91.1 = b3:7fa6cb4e… reproducido 2× (store-rust y store-rust2,
builds frescos independientes). Es el nuevo EXPECT_REF para SWAP_RUST (criterio elegido:
auto-consistencia, ≠ el 9adefb82 de Alpine). Cableado como default de RUST_EXPECT_REF.

swap-rust-into-toolchain.sh --restore: ahora también elimina lo AÑADIDO por el swap
(rustlib x86_64-unknown-linux-musl + librustc_driver de hammer), no sólo restaura
rustc/cargo. Round-trip apply→restore deja el devfs prístino (verificado: sólo
x86_64-alpine-linux-musl + driver de Alpine). Antes dejaba ~350 MB de cruft.

Nota: los leftovers NO afectaban el of_tree (un build Alpine con/ sin ellos diverge igual
del baseline Jun13 — ver hallazgo de drift abajo); la limpieza es higiene/reversibilidad.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-17 01:17:24 -04:00
co-authored by Claude Opus 4.8
parent 9f7e75901b
commit 5549330c94
2 changed files with 16 additions and 4 deletions
@@ -51,7 +51,18 @@ if [ "$RESTORE" = 1 ]; then
echo " (sin backup de usr/bin/$b — ¿ya restaurado?)"
fi
done
echo " (los .so y el rustlib x86_64-unknown-linux-musl añadidos quedan; son inertes — el rustc de Alpine no los usa)"
# Quitar también lo AÑADIDO por el swap: el librustc_driver de hammer (hash propio, distinto del
# de Alpine) y el sysroot del triple x86_64-unknown-linux-musl (un devfs Alpine prístino NO los
# tiene). Inertes para el rustc de Alpine, pero dejarlos es ~350 MB de cruft y deja el toolchain
# no-prístino; lo limpiamos para que --restore sea reversibilidad total.
rm -rf "$TOOLCHAIN/usr/lib/rustlib/x86_64-unknown-linux-musl"
# Sólo los librustc_driver que NO son de Alpine (Alpine deja exactamente uno; el swap añadió otro).
if [ -d "$PREFIX/lib" ]; then
for so in "$PREFIX"/lib/librustc_driver-*.so; do
[ -e "$so" ] && rm -f "$TOOLCHAIN/usr/lib/$(basename "$so")"
done
fi
echo " limpiado usr/lib/rustlib/x86_64-unknown-linux-musl + librustc_driver de hammer"
exit 0
fi