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…
2026-07-17
- joyas #1 composefs: prototipo medido — hydrate 28ms vs mkcomposefs 507ms (métrica equivocada: lo que compra es verity por lectura + RO real + manifiesto 136KB firmable); hallazgo: objects/ por sha256-verity ⇒ mapa b3→verity al sellar
- variantes-cpu T5 MEDIDO: zstd cortado (dispatch runtime, v3/v4=ruido con i7); zlib inconcluso pero la respuesta es zlib-ng; la lista caliente se concentra en mesa/códecs
- linux-metal: perfil escritorio/juego — NTSYNC, PREEMPT full+HZ_1000 explícitos, MGLRU, ZRAM, EROFS+FS_VERITY (sustrato composefs), split_lock_detect=off; sched-ext DIFERIDO (exige BTF que la receta apaga a propósito)
- harkaq: Q1-copy.fail RESPONDIDA — fs-verity mata el vector page-cache
- joyas reusables: composefs, PGO/BOLT con perfil sellado, mimalloc, MGLRU, uutils, corpus Clear Linux, reglas ananicy — cada una con su pieza receptora
- libarchive 3.8.1: receta mínima (bsdtar estático, sólo zlib) + tanda para el worker — plan-freebsd T3.1, sha256 verificado
- cierre §3: lección casper aterrizada — clases de servicio declaradas + mapa clase→permiso musl (plan-freebsd T2.1-T2.2 HECHAS)
- plan jaula-juegos: kernel (NTSYNC/sched-ext/cmdline), nativos (gamescope/scx/mesa-RADV), jaula glibc por fases (flatpak → SLR sellado) con política harkaq
- plan variantes-cpu: x86-64-v3 sobre el CAS — selección en hydrate (musl sin hwcaps), lista caliente estilo Solus, piloto zlib/zstd
- cierres §4: CVE por grafo — frontera mínima de rebuild (dirty_cone + topo_order)
- plan freebsd: traza positiva (filemon/META MODE) + taxonomía casper para cierre §3 + libarchive al catálogo
- cierres §3: política de runtime derivada por medición (sin tocar la cripto)
- cierres §2: why-differs — explica POR QUÉ dos artefactos no reproducen
- cierres §1: consenso de reconstrucción — funcionando (2/2 builders, mismo hash)
- matar-gcc: riesgo GUI VERIFICADO — el ABI de las libs migradas es idéntico
2026-07-16
- kernels: LANDLOCK+AUDIT+IO_URING+BPF_SYSCALL explícitos en linux-metal/linux-generic (contrato kikin)
- boot: activate --from-select idempotente — el hook de apagado de arje-zero lo invoca incondicional
- matar-gcc: balance final — 29 migradas, 4 matraca dura diagnosticada
- arje-link: resync del espejo con arje-bus (Subscribe 13→14 + Parked/Refloored
- matar-gcc: libevdev + mtdev migradas a zig-cc (generan la lib con zig)
- harkaq: cpp/getent en las sondas del provisioning (coherente con base.policy)
- matar-gcc: curl+libevent migradas + BALANCE final (27 recetas C a zig)
- matar-gcc: 14 recetas C más migradas gcc→zig-cc (verificadas en laptop, store completo)
- matar-gcc: 11 recetas C migradas gcc→zig-cc (medido: construyen y corren)
- mirada-usb: el overlay de mesa pisaba libudev-zero con el libudev de eudev — input muerto en el tester NVIDIA
- matar-gcc: migra-zig.sh + veredicto medido — las C-puras SON granjeables (~85%)
- mirada-usb: force_gpt en la cmdline + post-mortem del viaje NVIDIA
- harkaq: el clasificador distingue gcc-compilador de gcc-sonda — matar-gcc son 47 recetas
- harkaq: mtdev — deuda de config.sub CERRADA con patch soberano (+ límite del modelo descubierto)
- harkaq: granja con volumen + auto-shutdown VALIDADA end-to-end
- harkaq: granja con volumen persistente + workers auto-terminantes
- harkaq: declarar deps medidas por el kernel (cosecha automática)
- harkaq: declarar deps medidas por el kernel (cosecha automática)
- harkaq: revisadas las 5 irreducibles — 2 recuperadas, 3 casos genuinos diagnosticados
- harkaq: el disparo de cosecha es loop nohup, NO cron (arje-zero es PID1)
- harkaq: declarar deps medidas por el kernel (cosecha automática)
- harkaq: declarar deps medidas por el kernel (cosecha automática)
- harkaq: declarar deps medidas por el kernel (cosecha automática)
- harkaq: gate 2 de la campaña — ¿el binario TIENE la jaula dentro?
- harkaq: runbook de la campaña desatendida (worker + cron, para retomar sin mí)