Cierra el eje: el haptico entra al mapa, `masterGain` deja de descartarse, y
`applyTheme` gana el septimo eje.
⚠️ CORRIGE MI PROPIA PROPUESTA. Dije que la puerta unica iba en la raiz de
composicion. Al medirlo, la dependencia corre AL REVES: `ActiveEidos` tiene
`#uix` y lo conduce (registra presets con `uix.motion`), mientras `ActiveUix`
no tiene eidos. Un tema compuesto en la raiz habria invertido la direccion.
Va donde ya vive el metodo que se llama a si mismo «the capstone composing
them», y que hasta hoy componia seis de ocho.
eidos.applyTheme({ color: '#3b5bdb', sound: { soft: { gain: 0.08 } } });
eidos.clearTheme(); // revierte los siete
Un eje que pasas se aplica, uno que omites revierte — la misma lectura
atomica que ya tenian los seis visuales, ahora sobre siete. Sin `uix` (render
headless) el eje perceptual se salta y los visuales siguen: un tema que se
aplica a medias es mejor que uno que revienta.
EL HAPTICO, AL MAPA. Su tabla `kind → pattern` vivia como const dentro del
canal, asi que era el unico eje perceptual que un tema no alcanzaba —
exactamente la asimetria que el trabajo del sonido existia para quitar,
dejada en pie un canal mas alla. Ahora es `SEMA_MAP.haptics`, con perfiles
derivados (`floorMs` + `scale`/`gapMs`) o constantes (`pattern`): los tres
kinds evaluativos son ritmos constantes porque lo que hace reconocible a un
`error` es su cadencia, no su longitud. El canal lo lee por GETTER, no por
copia, asi que un `applyMap()` en caliente le llega sin re-registrarlo.
`masterGain` SE APLICA. Pasarlo con motor compartido se tiraba en silencio
(S-05/S-32) pese a ser una perilla viva del motor y la forma natural de poner
el volumen desde la raiz. Ahora llega a `master.setGain`, y de las opciones
que de verdad no pueden aplicarse a un motor ajeno se AVISA en vez de
desaparecer.
Y `DeltaValue` pasa a exportarse: es la forma de toda semilla de override, sin
ella un consumidor no puede tipar el tema que esta pasando. Su ausencia era un
error VIVO en el estudio de sema, que lo importaba y no podia — por eso check
BAJA a 73 desde el baseline de 75.
VERIFICADO: theming 8/8 (incluye re-vocear el haptico y que la tabla autorada
quede intacta) · sema+eidos+morfo 802/802 · check 73 (baseline 75, −2 por el
export) · docs:check 0/618 · suite completa 7 fallos, los mismos ajenos y
preexistentes de contracts.test.
⚠️ Nada de esto se ha OIDO ni TOCADO en un dispositivo real: todo esta medido
con el resolver y las suites.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>