Files
takana/docs/adr/0002-alpine-first.md
T
Sergio 97ceb72411 takana etapa 5b: los 59 docs de diseño, runbooks y ADR
645 líneas. Los ADR entran porque en este repo SON documentos vivos, no
registros inmutables: el 0013 tiene 5 commits, el 0009 dos. Eso se comprobó
antes de decidir, no se asumió por convención general.

EXCLUIDOS por ser REGISTRO o generado: docs/evidencia/ (6), el HANDOFF de la
noche de KDE (1) y docs/state/ (24, se regenera solo). Reescribir un comando
dentro de una evidencia la falsifica.

Y el ADR 0016 se excluye de todo barrido, con un aviso adentro para el próximo
que barra: habla SOBRE el renombre, así que necesita seguir diciendo 'hammer'.
El barrido se lo llevó puesto y lo dejó titulado 'Renombre del sistema: takana
→ takana'; revertido.

Congelados, verificados uno por uno con controles: /opt/hammer, /var/lib/hammer,
/usr/bin/hammer, /mnt/vvv/hammer, la URL de gitea, hammer-farm.service,
hammer-live-install.sh, BRIEFING-hammer.md, hammerd, hammer-recover y
HAMMER_LIVE.
2026-09-09 19:25:51 +00:00

35 lines
1.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ADR 0002 — Validar sobre Alpine antes de la distro propia
- **Estado:** aceptada
- **Fecha:** 2026-06-06
## Contexto
El instinto es construir la distro desde el bootstrap (toolchain, init, userland) y luego poner
la capa AI-nativa encima. Pero el bootstrap from-scratch es el trabajo más largo y arriesgado
del proyecto (meses), y **no es donde está la innovación**. La innovación es la capa AI-nativa:
build determinista + mutable + diario + `.swm`.
## Decisión
Montar y validar toda la capa de `takana` **sobre Alpine Linux** (Fases 06). Sólo después,
una vez probado el concepto, bajar a la distro propia (track posterior).
## Razones
- Alpine ya es **musl + busybox + FHS mutable + minimalista** — exactamente nuestra filosofía,
ya cocida y mantenida.
- Permite validar el bucle disruptivo (overlay, diario, `.swm`, bus de IA) **en semanas**, no
meses.
- Todo el tooling (Rust) y el lab (`zig cc`) se reusan sin retrabajo cuando bajemos a la distro
propia: cambia el *suelo*, no las herramientas.
## Consecuencias
- En la fase Alpine, `/store` y `/var/lib/hammer` viven dentro del rootfs de Alpine; el init es
el de Alpine (OpenRC), no el propio. El bus por pipes nativo del init propio es track posterior.
- No probamos el bootstrap completo en esta fase; `zig cc` cubre la compilación sin necesitar
bootstrap (ver [ADR 0003](0003-zig-cc-builder.md)).
- Riesgo: alguna fricción musl/static en Alpine que no represente la distro propia. Aceptable —
Alpine es musl real, la fricción es representativa.