docs: SDD 15 §H2b hecho — memoización de ejecución wasm (cómputo como dato)

El prototipo vive en tawasuyu/03_ukupacha/wawa/wawa-memo (crate host/std):
reproduce la vía pura del kernel y monta la clave del contrato §4 sobre un
LwwMap. Test §5 verde (72 casos byte-idénticos, Hit/Miss, fallas cacheadas,
E-invalidación, merge de malla). Desbloquea H2c.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-03 20:07:33 -04:00
co-authored by Claude Opus 4.8
parent b173630e81
commit ea2dface82
+11 -1
View File
@@ -112,9 +112,19 @@ spike de wawa, no de hammer.
fuel/mem/ABI); único vector residual acotado = payload de NaN vía `reinterpret` (sólo cross-build,
irrelevante para H2b local). La superficie de capacidades (`env/*.rs`) reintroduce no-determinismo
o efectos ⇒ NO memoizable; sólo la vía linker-vacío lo es.
- **H2b** — Prototipo de `blake3(módulo)+blake3(entrada) → blake3(salida)` como caché local
- **H2b** — Prototipo de `blake3(módulo)+blake3(entrada) → blake3(salida)` como caché local
(un `LwwMap` de `shared/crdt`), sin malla todavía. Test: misma entrada ⇒ hit; recompute ⇒
byte-idéntico (o el determinismo está roto y H2a mintió).
**Hecho (2026-07-03):** crate `tawasuyu/03_ukupacha/wawa/wawa-memo` (host/std, standalone).
Reproduce fiel la vía pura del kernel (`ejecutar_dinamico_v2`: linker vacío + fuel 500k + 1 MiB
+ wasmi sin simd + despacho polimórfico) y monta la clave del contrato §4 (`blake3(bytecode) ‖
blake3(entrada_le) ‖ E`, con `E` = hash de entorno que pinnea wasmi/features/fuel/mem/abi). El
test de §5 **da verde**: 9 módulos × 8 entradas ejecutados dos veces ⇒ `blake3(salida)`
byte-idéntico (H2a no mintió); Miss→Hit sirve valor idéntico al recomputado; las fallas
(`Trampa`/`SinCombustible`/`Carga`) se cachean (§4 regla 4); `E` distinta ⇒ clave distinta (§4
regla 2); y dos réplicas convergen al fundir el `LwwMap` (anti-entropy, preview de H2c). Como la
clave es content-addressed y la función pura, el LWW nunca tiene conflicto real ⇒ el mapa es
monótono y compartible sin coordinar. **Verde ⇒ H2c desbloqueado** (compartir por la malla).
- **H2c** — (si H2b pasa) compartir la caché por la malla minga/agora. Frontera: envenenamiento
de caché por un peer ⇒ se **verifica reproduciendo** en el primer uso dudoso (no se confía en
el resultado ajeno; se confía en poder recomputarlo). Es el modelo de confianza de SDD 09