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

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-16 23:12:55 -04:00
co-authored by Claude Fable 5
parent 7f310005ea
commit 2e85dfc8a3
+18
View File
@@ -22,6 +22,24 @@ ya usa como identidad se convierte en verificación por-lectura del kernel. Cost
**Gate barato:** prototipo de `hammer hydrate --backend composefs` sobre un artefacto sellado;
comparar con hardlink en frío/caliente. No reemplaza ADR 0005 — convive como backend.
**Prototipo MEDIDO (2026-07-17, laptop, composefs 1.0.8, sobre el product-rootfs sellado
`ba351f1b…`, 262MB / 730 entradas):**
- `hammer hydrate` (hardlink, ADR 0005): **28ms**. `mkcomposefs --digest-store`: **507ms**
(incluye hashear todo al objects/). El manifiesto `.cfs` resultante: **136KB firmables**
para el rootfs entero.
- La comparación de velocidad es la métrica equivocada: ambos son sub-segundo. Lo que
composefs compra y el hardlink NO puede dar: (1) fs-verity por fichero en runtime —
integridad verificada en cada lectura, el cierre §5 en serio; (2) proyección
genuinamente read-only — **con hardlinks, un write con privilegios a través del árbol
hidratado corrompe el store** (comparten inode); con composefs es imposible por
construcción; (3) el manifiesto chico como unidad de firma/distribución.
- **Hallazgo de diseño**: el objects/ de composefs se indexa por digest **fs-verity
(sha256)**, no por `b3:` ⇒ el backend mantiene un objects/ paralelo al store (lo
construye `mkcomposefs --digest-store` solo, y DEDUPLICA contenido entre artefactos)
o hammer guarda el mapa b3→verity al sellar. No es bloqueante, es una tabla.
- **Pendiente (pide root)**: montar el `.cfs` (overlayfs+EROFS) y medir lectura
fría/caliente vs hardlink. El kernel linux-metal re-sellado ya trae EROFS+FS_VERITY.
## 2. PGO/BOLT con perfil sellado — la que NADIE probó bien
**El problema ajeno.** PGO y BOLT dan 1020% real (Fedora ya envía clang/rustc bolteados),