docs(theming): file-upload barre DESCENDIENTES y se come el token de sus huéspedes

Lo destapó la sesión de chat-composer y lo dejó sin registrar a propósito
(este fichero estaba en manos de otra sesión); la medición de aquí es propia.

file-upload declara `[data-file-upload] [data-disabled]` — un selector de
DESCENDIENTE, (0,2,0), el mismo peso que `[data-chat-composer-send][data-disabled]`,
y se emite más tarde. Dentro de un FileUpload, que es donde la composición
documentada pone al composer, el token del composer muere.

Medido desde los dos asientos sobre el mismo nodo deshabilitado: suelto y
envuelto computa 0.4 en los dos casos —los defaults coinciden, así que el VALOR
no delata nada—, pero envuelto la clave del composer desde :root no lo mueve y
la de file-upload sí (0.4 -> 0.321). Es invisible hasta que un tema mueva uno de
los dos, y entonces el huésped no responde a su propia clave.

file-upload es HOY el único componente del catálogo con un barrido así: una
sola ocurrencia en las 162 recetas. No es una clase, es una regla concreta que
se puede acotar — pero acotarla mueve el píxel de cualquier huésped
deshabilitado que hoy hereda, así que es firma, no commit de theming.

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

@ -1443,6 +1443,31 @@ Lo que `chart` destapó (2026-08-22):
chevron, con lo que los dos tokens de reposo del trigger leen muertos. Miden chevron, con lo que los dos tokens de reposo del trigger leen muertos. Miden
bien con el panel CERRADO. No hay arreglo dentro de una corrida: el bien con el panel CERRADO. No hay arreglo dentro de una corrida: el
instrumento sólo puede estar en un estado a la vez; se adjudica. instrumento sólo puede estar en un estado a la vez; se adjudica.
- **⚠ UN COMPONENTE BARRE DESCENDIENTES Y SE COME EL TOKEN DE SUS HUÉSPEDES**
(medido 2026-08-24 en `chat-composer` dentro de `file-upload`, verificado en
la supervisión). `file-upload` declara
`[data-file-upload] [data-disabled] { opacity: var(--file-upload-disabled-opacity) }`
— un selector de DESCENDIENTE, (0,2,0), el mismo peso que
`[data-chat-composer-send][data-disabled]`, y se emite más tarde. Dentro de
un FileUpload, que es donde la composición **documentada** pone al composer,
el token del composer muere.
Medido desde los dos asientos sobre el mismo nodo deshabilitado: suelto y
envuelto computa `0.4` en los dos casos —los defaults coinciden, así que el
VALOR no delata nada—, pero envuelto `--chat-composer-disabled-opacity`
desde `:root` no lo mueve (0.4) y `--file-upload-disabled-opacity` sí
(0.4 → 0.321). Es invisible hasta que un tema mueva uno de los dos, y
entonces el huésped no responde a su propia clave.
**`file-upload` es HOY el único componente del catálogo con un barrido de
descendientes así** (`grep` sobre las 162 recetas: una sola ocurrencia), o
sea que no es una clase, es una regla concreta que se puede acotar. El
arreglo —restringirla a las partes propias— mueve el píxel de cualquier
huésped deshabilitado que hoy hereda, así que es firma, no commit de
theming. Emparenta con «un componente COMPUESTO gana a la receta que lo
compone» (gradient-picker / form / emoji-picker): misma cascada, dirección
contraria.
- **⚠ LA SONDA Y EL GUARD NO SE PUEDEN LANZAR CON `--import tsx/esm`** (medido - **⚠ LA SONDA Y EL GUARD NO SE PUEDEN LANZAR CON `--import tsx/esm`** (medido
2026-08-24 supervisando `calendar`). Cualquier script del eje que use 2026-08-24 supervisando `calendar`). Cualquier script del eje que use
`page.evaluate` muere con `ReferenceError: __name is not defined` dentro del `page.evaluate` muere con `ReferenceError: __name is not defined` dentro del

Loading…
Cancel
Save

Powered by TurnKey Linux.