docs(theming): el registro §8 recoge tabs y toast, con su sha — y la cola A CIERRA

Los dos commits de esta sesión, con sus cifras y sus artefactos:

- `tabs` 96 % → 97 % CERRADO (`300153f9f`) — 79 claves, ninguna acuñada,
  centinela 70/79 con 9 adjudicadas.
- `toast` 98 % → 100 % (`b8eccc1c4`) — 85 claves, ninguna acuñada, centinela
  51/85 con 34 adjudicadas.

Y con ellos la Cola A queda CERRADA: los cuatro (`scroll-area`, `slider`,
`tabs`, `toast`) cerraron **sin acuñar una sola clave**. Sus contratos ya
estaban enteros y lo que quedaba fuera eran literales-identidad y, en `tabs`,
el canal de VALOR de soma. Cuando el número no se mueve porque no debe, eso ES
el resultado — y así está escrito en el handoff.

Lo que enseñaron los dos últimos, para el que siga:

- §12.9 en una tarjeta PORTALADA se lleva la TARJETA ENTERA, no sólo la
  tipografía — 21 claves de `toast`, y con coste de producto: un toast `risk`
  y uno `fulfill` visten la misma tarjeta gris. Medido, adjudicado con
  `PLANE_SUPERSEDED` y registrado en next-features §12; sin firma no se toca.
- La misma clave puede mentir en reposo y decir la verdad en animación: los
  `{tono}-accent` alcanzan bajo `[data-loading]`, donde el `@keyframes` del
  pulso gana a toda declaración normal.
- Poner `openMarker` puede EMPEORAR la medición cuando la superficie se
  auto-descarta: tres corridas del guard discreparon sobre código idéntico.
- El indicador de `tabs` es canal de valor: `MeasuredIndicator` escribe su rect
  en cada movimiento, y un público encima sería un knob que rompe el
  deslizamiento al fijarse.

Guard: `docs:check` 0 · prettier limpio sobre el contenido normalizado a LF.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
alpha-0.1-background
dev 2 months ago
parent b8eccc1c4f
commit fde65af7ea

@ -117,12 +117,38 @@ compone?») tiene por tanto una salida barata y ya probada: no escribir la regla
REPOSO y su token nunca ha pintado. Tiene cara de defecto de a11y (un lector
anuncia todas las etiquetas como seleccionadas). Toca morfo ⇒ §12.
### Cola A: quedan CUATRO
`scroll-area` 94 · `tabs` 96 · `slider` 97 · `toast` 98. Y de la deuda B, tres:
`audio-player` (sin README de eidos donde escribir la sección), `palabras` y
`proof-of-human` (carriles propios). Más **quince pestañas `Tokens`**
pendientes, la deuda hermana que destapó saldar la B.
### Cola A: CERRADA (2026-08-24)
Los cuatro, por dos sesiones en paralelo: `scroll-area` 94 → **100 %**
(`3282ef978`) · `slider` 97 → **100 %** (`4d3ca2fd8`) · `tabs` 96 → **97 %
CERRADO** (`300153f9f`) · `toast` 98 → **100 %** (`b8eccc1c4`). **Los cuatro
cerraron sin acuñar UNA sola clave**: sus contratos ya estaban enteros y lo que
quedaba fuera eran tres literales-identidad (un rail al 100 %, una barra al
`opacity: 1`, la lista `fitted` al 100 %, la tarjeta al `opacity: 1`) y, en
`tabs`, el canal de VALOR de soma. Cuando el número no se mueve porque no debe,
eso ES el resultado.
**Lo que dejaron los dos últimos, en una línea cada uno:**
- **`tabs`** — la mitad de un contrato puede vivir en las VARIANTES (40/79 →
70/79 barriendo `data-variant` y usando las dos URL que el propio demo
ofrece), y su indicador es **canal de valor**: `--indicator-{x,y,w,h}` los
escribe `MeasuredIndicator` en cada movimiento, así que un público encima
sería un knob que un tema puede fijar — y fijarlo rompe el deslizamiento.
- **`toast`** — **§12.9 en una tarjeta PORTALADA se lleva la TARJETA ENTERA**,
21 claves, y con coste de PRODUCTO: un toast `risk` y uno `fulfill` visten la
misma tarjeta gris, y la franja de acento no se ve nunca en reposo (el plano
declara el ATAJO `border`, que pisa el `border-inline-start`). Matiz para la
firma: los seis `{tono}-accent` SÍ alcanzan bajo `[data-loading]`, donde el
`@keyframes` del pulso gana a toda declaración normal — **la misma clave
miente en reposo y dice la verdad en animación**. Y una del instrumento:
**poner `openMarker` EMPEORA la medición** cuando la superficie se
auto-descarta (tres corridas discrepando); sin marcador el guard dispara una
tarjeta nueva antes de cada token y da 51/85 tres veces seguidas.
De la deuda B siguen tres: `audio-player` (sin README de eidos donde escribir
la sección), `palabras` y `proof-of-human` (carriles propios). Más las pestañas
`Tokens` que queden pendientes, la deuda hermana que destapó saldar la B.
## LO QUE DEJÓ LA SESIÓN DEL 2026-08-24 (doce componentes + supervisión)

@ -521,6 +521,62 @@ excepción abre la mano para MEDIR, no para contabilizar.
## 8. Registro
- 2026-08-24 — **`toast` 98 % → 100 %** (`b8eccc1c4`), contrato 85 → **85**
claves —ninguna acuñada—, centinela **51/85** con 34 adjudicadas. Llegaba con
`global`, `private` y `sistema` a CERO y **un** knob fuera de alcance: el
`opacity: 1` de la tarjeta, que se FIRMA como identidad — es el polo EN REPOSO
del par abierto/cerrado, y el que lleva tokens es el otro (`closed-offset`,
`closed-scale`). Tercer literal-identidad del día, tras `scroll-area` y
`slider`. **Lo que enseñó**: (1) **en una tarjeta PORTALADA el plano `overlay`
no se lleva sólo la tipografía — se lleva la TARJETA ENTERA, y esta vez con
coste de PRODUCTO**. El item sella `data-depth='overlay'` y el plano declara
`background`, el **ATAJO `border`** y `box-shadow` a la misma (0,1,0) y más
tarde: 21 claves (12 `{tono}-{surface,border}` + `provider-border-width` +
`accent-width` + `provider-shadow`) no mueven nada, mientras
`--depth-overlay-surface` / `-border` / `-shadow` y `--border-width` lo
repintan todo. **Un toast `risk` y uno `fulfill` visten la misma tarjeta
gris**, y la franja de acento —un `border-inline-start` que el atajo posterior
pisa en los cuatro lados— no se ve NUNCA en reposo. §12.9 sigue sin firmar, así
que se ADJUDICAN con `PLANE_SUPERSEDED` y la incidencia entra en
`next-features` §12; (2) **la misma clave puede mentir en reposo y decir la
verdad en animación** — los seis `{tono}-accent` alcanzan bajo `[data-loading]`,
donde la regla del pulso es (0,2,0) y su `@keyframes` gana a toda declaración
normal (100 fotogramas: oklab L 0.5032..0.8514 sin escribir, 0.0823..0.5032 con
el token en `rgb(1,2,3)`); (3) **poner `openMarker` EMPEORA la medición** —
primera vez: una tarjeta se auto-descarta a los 5 s, así que «¿ya está
abierta?» no tiene respuesta útil y tres corridas sobre código idéntico
discreparon en QUÉ token leía muerto. Sin marcador, el guard cae al de por
defecto (una parte que este componente no tiene) y dispara una tarjeta nueva
antes de CADA token: 51/85 tres veces seguidas. La sonda aprendió lo mismo
(`DEMO_VARIANTS`): medía UN nodo porque un toast no EXISTE hasta que algo lo
lanza. Diff de computed vacío (1.760 valores × 7 estados, 8 nodos), capturas 2×
byte a byte idénticas — por un script propio, porque su viewport es
`position: fixed` y cae fuera del recorte del escenario que usa `__shot`.
- 2026-08-24 — **`tabs` 96 % → 97 % CERRADO** (`300153f9f`), contrato 79 → **79**
claves —ninguna acuñada—, centinela **70/79** con 9 adjudicadas. Sus tres knobs
fuera de alcance se clasificaron uno a uno y los tres quedan fuera POR
DOCTRINA. **La propuesta §4.1 de su ficha es INCORRECTA y no se ejecuta**:
pedía acuñar `indicator-width` / `-height` sobre `var(--indicator-w, 0px)`, y
esas vars son el **canal de VALOR de soma** — la capa `MeasuredIndicator`
escribe el rect del trigger activo en cada movimiento, así que un público
encima sería un knob que un tema puede FIJAR, y fijarlo rompe el
deslizamiento. Es la adjudicación que `navigation-menu` ya lleva escrita para
su propio `indicator-w` (y la razón por la que su `-x` se retiró, muerto). El
tercero, el `width: 100%` de `fitted`, se FIRMA como identidad. **Lo que
enseñó**: (1) **la mitad de un contrato puede vivir en las VARIANTES** — el
escenario arranca en `line` y el guard leía 40/79; barriendo `data-variant` y
añadiendo las dos superficies de URL que el propio demo ofrece
(`perm.orientation=vertical`, `perm.disabled=true`) sube a 70/79 sin adjudicar
una clave de más; (2) **`trigger-bg` muere de una regla que existe para que se
lea la etiqueta** — la demo monta el `Indicator` y
`[data-tabs-list]:has([data-tabs-indicator]) [data-tabs-trigger]` (0,2,0) pone
el fondo transparente; sin indicador, que es la composición por DEFECTO,
alcanza; (3) `scrollable-fade` trae dos razones y cualquiera bastaría: vive
bajo un opt-in y pinta por `mask-image`, que el guard no lee. **Comprobado y
refutado**: su trigger NO compone el `Button` canónico, así que la clase «el
compuesto gana a la receta que lo compone» de `toolbar` / `form` no le aplica.
Diff de computed vacío (2.016 valores × 8 estados, 8 nodos), capturas 2×
idénticas.
- 2026-08-24 — **`slider` 97 % → 100 %** (`4d3ca2fd8`), contrato 39 → **39**
claves —ninguna acuñada—, centinela **32/39** con 7 adjudicadas. Llegaba con
`global` y `private` a CERO (sus cuatro privados son la escala por talla, que

Loading…
Cancel
Save

Powered by TurnKey Linux.