diff --git a/src/uix/eidos/CHANNELS_SYNTHESIS.md b/src/uix/eidos/CHANNELS_SYNTHESIS.md index 69462bc3d..c175a640d 100644 --- a/src/uix/eidos/CHANNELS_SYNTHESIS.md +++ b/src/uix/eidos/CHANNELS_SYNTHESIS.md @@ -6,17 +6,27 @@ > `COLOR_ENGINE_RFC` · `TYPOGRAPHY_ENGINE_RFC` · `DEPTH_ENGINE_RFC` · `SHAPE_ENGINE_RFC` · > `STRUCTURE_ENGINE_RFC`. Demo vivo: **`/temas/orquesta`** (el mezclador). -## 1. El modelo de dos momentos (transversal) +## 1. Dos momentos, unidos por un token: sema emite, eidos lee -Todo canal —no solo motion— respeta el mismo eje doble: +Un suceso fluye por **dos momentos**, conectados por el **token**: -| Momento | Atributo | Qué es | Quién | +- **Momento de sema (emisión)** — sema evalúa el suceso y lo **emite**. Sonido + háptica los + **ejecuta ahí mismo** (canales runtime); para lo visual, lo **estampa como tokens** + `data-event-*` (family · intent · phase). Sema **no conoce DOM/CSS**. +- **Momento de eidos (materialización)** — eidos **lee** esos tokens (+ `data-state`) y los + **materializa** en CSS (el canal visual). Es el **único dueño visual**. + +El **token es el contrato**: sema escribe, eidos lee — y por eso las capas se desacoplan (sema +agnóstico del DOM, eidos sin lógica semántica). + +Sobre ese eje productor → consumidor corre el eje **temporal** (motion F1) — *qué* token: + +| Token | Naturaleza | Quién lo escribe | Eidos lo lee como | |---|---|---|---| -| **estado** | `data-state` | lo que el elemento **es** (persistente): color de reposo, plano, forma, posición | soma / morfo | -| **evento** | `data-event-*` | lo que le **ocurre** (transitorio, durante el `hold`): el tinte que pulsa, la sombra que recede, la esquina que se afirma, el tick, la vibración | sema (proyecta) → eidos (materializa visual) | +| `data-state` | persistente — lo que el elemento **es** | soma / morfo | `presets` | +| `data-event-*` | transitorio — lo que **ocurre** (durante el `hold`) | sema (emite) | `signatures` | -El orden entre ambos lo fija `sequence` (`pre` / `coincident` / `post`). Eidos lee **los dos**: -`presets` sobre `data-state`, `signatures` sobre `data-event-*`. +`sequence` (`pre` / `coincident` / `post`) ordena los dos. ## 2. Canales de expresión (libro) vs canales de sema (runtime) diff --git a/web/routes/temas/orquesta/+page.svelte b/web/routes/temas/orquesta/+page.svelte index 68168a65d..0dde5890c 100644 --- a/web/routes/temas/orquesta/+page.svelte +++ b/web/routes/temas/orquesta/+page.svelte @@ -171,21 +171,21 @@
-

Dos momentos, un solo modelo

+

Dos momentos: sema emite, eidos lee

- Todo canal respeta el mismo rigor: lo que el elemento es (estado, persistente) vs - lo que le ocurre (evento, durante el hold). El mezclador de arriba dispara el - momento-evento; el reposo es el momento-estado. + El suceso fluye por dos momentos unidos por un token. Sema lo emite; eidos + lo lee y lo materializa. Sema no conoce el DOM; eidos es el único dueño visual. El + token (data-event-*) es el contrato entre ambos.

- estado · data-state -

color de reposo · plano de profundidad · forma en reposo · posición. Persistente — soma/morfo.

+ momento de sema · emite +

Evalúa el suceso —familia · intención · fase— y lo estampa como tokens data-event-*. Sonido + háptica los ejecuta aquí mismo. No toca el DOM/CSS.

- evento · data-event-* -

el tinte que pulsa · la sombra que recede · la esquina que se afirma · el tick · la vibración. Transitorio — sema, durante el hold.

+ momento de eidos · lee +

Lee esos tokens (+ data-state) y los materializa en CSS — el canal visual: el tinte, la sombra que recede, la esquina que se afirma, la escala.