From 97280552697dd59a46c5f1ef9a8363f81561bb04 Mon Sep 17 00:00:00 2001 From: Sergio Date: Mon, 10 Aug 2026 14:03:46 +0000 Subject: [PATCH] runbook del armador: el zig del kernel se busca por directorio versionado, no por PATH MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit «no encuentro el ejecutable zig en …» no quiere decir que falte zig: falta ESA versión. hammer lo resuelve en .dev-fs/tools/zig-x86_64-linux-/, ni el symlink tools/zig ni el PATH cuentan. Medido para el caso concreto del kernel: linux.toml NO pinea zig_version, pero tres de sus deps.build sí — flex, openssl y elfutils, las tres a 0.13.0 — y la receta derivada las hereda enteras. En gioser están 0.13.0 y 0.16.0, así que el eje está cubierto. Aviso de la sesión de granja/store; verificado contra las recetas antes de escribirlo. Co-Authored-By: Claude Opus 5 (1M context) --- docs/runbooks/armador-de-kernel.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docs/runbooks/armador-de-kernel.md b/docs/runbooks/armador-de-kernel.md index ee06645a..5ce41d69 100644 --- a/docs/runbooks/armador-de-kernel.md +++ b/docs/runbooks/armador-de-kernel.md @@ -116,6 +116,12 @@ scripts de la granja ya lo toman por fuera y hammer se bloquearía contra ellos. Nada más del armador toca el store: `plan` calcula el `ArtifactHash` con `hammer_build::artifact_hash`, que es cómputo puro sobre las recetas, y `probe`/`gate`/`bundles`/`closure` sólo leen. +**Si el build muere con «no encuentro el ejecutable zig en …», el zig está bien: falta ESA versión.** +hammer lo busca por **directorio versionado** (`.dev-fs/tools/zig-x86_64-linux-/`), no por el +symlink `tools/zig` ni por el `PATH`. `linux.toml` no pinea `zig_version`, pero tres de sus +`deps.build` sí — `flex`, `openssl` y `elfutils`, las tres a **0.13.0** — y la receta derivada las +hereda enteras. + ## 4. El gate de no-regresión — **por objetivo** La regla es «todo dispositivo en uso debe seguir teniendo driver». Aplicada global rechazaría