gioser

sergio/takana

> Una distribución Linux construida con un laboratorio funcional y hermético en el > sótano, y una terminal mutable, clásica y anárquica en el piso de arriba — diseñada > desde el suelo para que una IA programadora entienda, modifique y co…

TOML 1572Shell 203Rust 109Markdown 993728 Definiciones

vigía: mirar también la caché de módulos de Go

El 2026-08-28 `/dev/sda2` llegó al 100% —CERO bytes— porque
`/home/sergio/go/pkg/mod` pasó de 498 MB a 25 G construyendo las recetas Go.
El vigía miraba store/work-sources/CARGO_HOME y no eso, así que no avisó.

Los builds Go morían con `write /home/sergio/go/pkg/mod/cache/download/…: no
space left on device`, que no se lee como un fallo de disco del build porque la
ruta no está en el repo (httpx, hugo, impl…). Y un `/` lleno no rompe una
tanda: rompe la máquina (gitea, caddy).

GOPATH se movió a /mnt/cosecha/gopath por symlink, igual que ~/.cargo. Se añade
al vigía igualmente, para que lo vea si alguien lo devuelve a `/`.

c11beea3b84252a98cc741304735ac9d3339992b · por Sergio · (hace 1 mes) · padre 0003fb53e · ver el árbol en este commit

Delta semántico

Ninguna definición cambió: el cambio es de texto, documentación o datos.

1 archivos · +9 −1

diff --git a/scripts/reconstruir-corpus.sh b/scripts/reconstruir-corpus.sh
index 55c5fc5c..2b132ce2 100755
--- a/scripts/reconstruir-corpus.sh
+++ b/scripts/reconstruir-corpus.sh
@@ -58,10 +58,18 @@ SECO=0; [ "${1:-}" = "--seco" ] && SECO=1
 # Ahora se miden los tres sitios donde hammer SÍ crece —store, árboles de fuentes y CARGO_HOME—
 # y se toma el mínimo. Si comparten FS, `df` repite el número y esto es inocuo.
 CARGO_H="${CARGO_HOME:-$HOME/.cargo}"
+# ── GOPATH TAMBIÉN CRECE, y llenó `/` hasta 0 BYTES el 2026-08-28 ───────────────────────────────
+# El vigía miraba store/sources/CARGO_HOME pero NO la caché de módulos de Go. Esa noche pasó de
+# 498 MB a **25 G** construyendo las recetas Go y dejó `/dev/sda2` al 100% — sin espacio ni para el
+# resto de la máquina (gitea, caddy). Los builds Go morían con
+# `write /home/sergio/go/pkg/mod/cache/download/…: no space left on device`, que NO se parece a un
+# fallo de disco del build porque la ruta no es del repo. Se movió a `/mnt/cosecha/gopath` (symlink,
+# igual que ~/.cargo) y se añade acá para que el vigía lo vea aunque alguien lo devuelva a `/`.
+GO_MODCACHE="${GOMODCACHE:-$(go env GOMODCACHE 2>/dev/null || echo "$HOME/go/pkg/mod")}"
 avail_gb() { df -BG --output=avail "$1" 2>/dev/null | tail -1 | tr -dc 0-9; }
 libre_gb() {
   local m=999999 v d
-  for d in "$STORE" "$ROOT/work/sources" "$CARGO_H"; do
+  for d in "$STORE" "$ROOT/work/sources" "$CARGO_H" "$GO_MODCACHE"; do
     [ -e "$d" ] || continue
     v=$(avail_gb "$d"); [ -z "${v:-}" ] && continue
     [ "$v" -lt "$m" ] && m=$v