parent
313a261078
commit
81e67c49a7
@ -0,0 +1,61 @@
|
||||
---
|
||||
title: UIX — auditoría de reglas Sema sin firma
|
||||
type: notes
|
||||
audience: human + agent
|
||||
authority: process — evaluación, no contrato de componente
|
||||
status: reviewed
|
||||
---
|
||||
|
||||
# Reglas de Sema con sólo selector
|
||||
|
||||
Fecha: 2026-09-24. Se releyeron las cuatro guías de componente y el contrato
|
||||
de Sema. El usuario autoriza limpiar duplicación y errores sin cambiar el
|
||||
comportamiento; `web/` queda fuera.
|
||||
|
||||
## Pre-flight: ContextMenu y DropdownMenu
|
||||
|
||||
| Característica | ContextMenu | DropdownMenu | Decisión |
|
||||
| ----------------- | --------------------------------------------- | ---------------------------------- | ------------------------------------- |
|
||||
| Apertura y cierre | `emerge-open`/`emerge-close` sobre `content` | Los mismos eventos sobre `content` | Conservar las reglas y sus selectores |
|
||||
| Selección | `commit-select` sobre `item` con tap 0.3/12/0 | Idéntica firma, con Morfo propio | Conservar exactamente la firma |
|
||||
| Disparador | Menú contextual | Botón dedicado | Mantener Soma y Morfo separados |
|
||||
| Submenús | Familia por defecto | Familia por defecto | No añadir reglas ni cambiar eventos |
|
||||
|
||||
| Referencia oficial | Equivalente cercano | Diferencia pertinente | Decisión UIX |
|
||||
| ---------------------------------------------------------------------------------------- | --------------------------------------------------- | ------------------------------------ | -------------------------------------- |
|
||||
| [WAI-ARIA APG Menu Button](https://www.w3.org/WAI/ARIA/apg/patterns/menu-button/) | Apertura y foco en menú | No prescribe sonido ni háptica | Conservar teclado y ARIA fuera de Sema |
|
||||
| [Radix Dropdown Menu](https://www.radix-ui.com/primitives/docs/components/dropdown-menu) | Menú compuesto con submenús y foco gestionado | No define la firma perceptiva de UIX | No alterar partes ni estado |
|
||||
| [Ark UI Menu](https://ark-ui.com/docs/components/menu) | Trigger de botón o contextual, ítems seleccionables | Modelo de estado distinto | Conservar los dos Morfos actuales |
|
||||
| [Bits UI Dropdown Menu](https://bits-ui.com/docs/components/dropdown-menu) | Menú Svelte con ítems y grupos | Sin política Sema equivalente | Mantener la selección local |
|
||||
|
||||
Morfo posee eventos, partes, ARIA y teclado; Soma posee apertura, foco y
|
||||
selección; Sema posee únicamente la proyección perceptiva; Eidos conserva
|
||||
recetas, tamaños y variantes. Esta fase sólo corregirá los comentarios de los
|
||||
dos packs. No se modifican sus arrays, API, DOM, CSS ni demos. El alcance
|
||||
procede de las instrucciones vigentes del usuario de refactorización neutra.
|
||||
|
||||
## Hallazgo transversal
|
||||
|
||||
Un recorrido AST de los packs bajo `src/uix/sema/components/` encontró **40
|
||||
reglas cuyo único campo es `selector`, repartidas en 22 packs**. En el resolver,
|
||||
estas reglas no eligen nombre de sonido y `ruleAsOverride` entrega un objeto
|
||||
vacío a `applyOverride`: no aportan valores a la firma efectiva. Sí siguen
|
||||
siendo entradas del `Sema.cascade` exportado y el motor las recorre en cada
|
||||
emisión que coincide. Por eso no se eliminan en esta fase. Su retirada exige
|
||||
caracterizar la firma resuelta y decidir si la forma del pack exportado forma
|
||||
parte del contrato de consumidores y herramientas.
|
||||
|
||||
ContextMenu y DropdownMenu tienen dos de estas reglas cada uno. Sus encabezados
|
||||
atribuyen a esas reglas ajustes concretos de sonido; hoy el nombre y la firma
|
||||
de sonido provienen de la tabla por familia/verbo/intención. La única firma
|
||||
que estos packs añaden es el tap de `commit-select` sobre `item`. La suite
|
||||
dirigida de censo, resolver y motor pasó 167/167 antes de editar, y ambas
|
||||
auditorías de componente dieron PASS.
|
||||
|
||||
## Resultado de este lote
|
||||
|
||||
Se corrigieron sólo los encabezados de ContextMenu y DropdownMenu: ya no
|
||||
atribuyen a sus reglas vacías ganancias, contornos o sonidos concretos que no
|
||||
declaran. La suite dirigida pasó 167/167 después de editar y ambas auditorías
|
||||
de componente siguieron en PASS. El diff elimina 30 líneas de comentarios; las
|
||||
reglas exportadas, los selectores y la resolución de sonido y háptica no cambian.
|
||||
Loading…
Reference in new issue