Vista generada de dec-0073: ABI rules v0 candidate
docs/decisions/dec-0073-abi-rules-v0-candidate.mdVista generada desde
docs/decisions/dec-0073-abi-rules-v0-candidate.md. No se edita a mano:bun run docs:genla regenera ybun run docs:checkfalla si difiere. El estado aquí es el del model: si discrepa con otra página, manda el model.
| Campo | Valor |
|---|---|
| Estado | LOCKED (migrado de un rNN por gate-3: el fichero no declara estado) |
| Referencia legada | r56-D4.2 |
| Fichero | docs/decisions/dec-0073-abi-rules-v0-candidate.md |
Por qué importa (del frontmatter del ADR):
TKT-040 M3: 'ABI memory rules | spec formal... cubriendo los 8 puntos de r56 D4.2'. AC-D4.2 a AC-D4.6 dependen literalmente de estas reglas. r57 asume la forma del ABI del client core; r59 asume consumer WASM/native con estas reglas.
Nodos del roadmap que lo citan en refs: ninguno.
Páginas de la documentación que lo citan: ninguna todavía.
Leído de docs/decisions/dec-0073-abi-rules-v0-candidate.md, el fichero canónico.
ABI rules v0 candidate: opaque handles, fixed-width integers, caller-owned buffers, no allocator ownership crossing la ABI, no Zig structs en layout público, structured status/error codes, conformance fixtures compartidas byte-idénticas WASM+native, version negotiation obligatoria vía styx_client_abi_version().
Split de docs/decisions/r56-portable-client-core-abi-2026-07-15.md (lock r56-D4.2) durante PASO 7 (2026-07-16). Ver el fichero padre para el contexto completo del pack original.
dec-0072
Vista generada de dec-0072: styx-client-core adoptado en 4 capas L0(algebra)->L1(contracts)->L2(state machines)->L3(session orchestration), con L3 explícitamente DIFERIDA hasta consumer_count>
dec-0074
Vista generada de dec-0074: ABI NO se declara estable hasta (1) consumer WASM real en F-WEB-PLAYER-ENGINE, (2) consumer nativo real en F-APPLIANCE-PI3, (3) fixtures cross-target idénticos, (4) evolución compatible documentada o política de breaking-changes; cierre de fase promueve 'ABI v1 candidate'