F5 de PLAN-background.md: los seis blocks de D-BG.10 (2) reciben `Background.*`.
El hero cayó en F2 y la página compuesta ya existía — no había que construirla,
había que verificarla con la decoración puesta.
La forma es uniforme y tiene un solo desvío: cada block gana un prop `decor` que
monta `<Background.Pattern>` como HIJA de su `Section`, la misma composición que
el hero ya probó. El desvío es `cta`, donde la decoración va dentro del PANEL,
que es donde está el ojo.
**Dos hallazgos que sólo la medición podía dar.**
Dentro del panel sólido del `cta`, las dos tramas TINTADAS hunden el titular
bajo AA: `glow` lleva la copia blanca de 5,18:1 a **3,06:1** y `mesh` a
**2,27:1**. Pintan un lavado claro anclado en `50% 0%` — exactamente donde se
asienta el titular. Las de línea toman la tinta de regla, oscurecen, y la copia
sube a **14,35:1** mientras la textura sigue leyéndose a 3,19:1 contra el panel.
Por eso el default es `rings`, que además irradia del mismo anclaje superior que
usaba el glow. Las tintadas se ofrecen igual: el app decide, pero ya con el
número delante, en el tipo y en el README.
Y una trama tintada dentro del panel era invisible por construcción:
`--_background-tint` cae en `--color-primary-solid`, que es EL MISMO valor que
pinta el panel — un halo del color del panel sobre el color del panel. El block
pasa ahora `color="var(--color-content-on-solid)"`, el token que ya usa para su
propia copia; medido después, el tinte resuelve a `#ffffff`.
**Los defaults, y por qué dos están apagados.** `cta` `rings` · `stats-band`
`grid`, porque una banda de cifras se lee como medida y la rejilla es la trama
que lo dice sin decorar por decorar · `testimonials` y `feature-split` `glow`.
`site-footer` y `banner` reciben la capacidad APAGADA: la columna B del plan de
calidad no pide acabado en ninguno de los dos, y encenderlo por nuestra cuenta
sería inventar un aspecto que nadie pidió.
**Un desvío de alcance, declarado.** La columna B pedía «`Backdrop` alterno» POR
FILA en `feature-split`; se resuelve en la SECCIÓN. Una banda por fila obligaría
a cada `Row` a poseer el estado de alternancia, y eso es coordinación — un block
que coordina deja de ser un block que no posee nada.
Medido en Chrome sobre la página compuesta real: cinco pilas, los cinco
anfitriones adoptados (`position: relative` + `isolation: isolate`) sin que
ningún block los posicione; la copia mide 15,88:1 sobre las secciones decoradas
y 5,18:1 sobre el panel del cta — AA en todas. Sobre lienzo oscuro, medido
aparte: 17,06 → 13,23:1 con `glow` y 12,37:1 con `grid`/`dots`.
Ledger: seis filas nuevas, A-100…A-105, cada una con su mecanismo y su
evidencia.
Gates: `blocks:check` 0/18 · `rtl:check` 0/180 · `docs:check` 0/0 en 634 docs ·
434/435 (el fallo es el `skin-media-player` de siempre) · `check` 0 errores
propios · prettier limpio.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Ephemeral, time-stamped artifacts — not part of the permanent reference
corpus. Session hand-offs, audits, migration plans, "continue next time" notes.
They are kept for history and traceability only. The source of truth for how the
framework works lives in the reference / architecture / canon docs (the layer
READMEs, active_architecture.md, GUIA_IMPLEMENTACION_SEMAUIX.md, the RFCs),
never here.
Rule of thumb: anything written as "as of <date>", "handoff", "estado actual",
or "continue next session" belongs here, not inside a reference doc. A reference
doc should read as if it were always true.
Contents
handoffs-2026-05.md — session hand-off blocks that
used to be embedded inline in the layer READMEs and architecture docs. Pulled
out so the reference docs stay timeless.
arts-audit-2026-06.md — audit of the arts/
artifacts (ex-sium): contract / barrel / diagnostics findings, what was fixed
and what was deliberately left.