|
|
# select — ficha de auditoría (RE-AUDITADA 2026-07-07, profundidad piloto)
|
|
|
|
|
|
- **Familia**: selección (popup propio, de-dialoged: su Content es listbox, no dialog) · **Método**: solo análisis; evidencia por dimensión · demos fuera
|
|
|
- **Capas leídas**: [morfo](../../../src/uix/morfo/components/select.ts) (256 líneas; eventos :16-64, roles :91-243, teclado :119-125) · pack ✓ existe
|
|
|
- **Máquina**: PASS limpio · tests ✓ · README ×2 ✓ · depth ×2 ✓
|
|
|
|
|
|
## Dimensiones (evidencia leída)
|
|
|
|
|
|
| # | Dimensión | Estado | Evidencia |
|
|
|
|---|---|---|---|
|
|
|
| 3 | Coherencia semántica | ✓ completa | 4 eventos: `commit-select`/`commit-unselect` (affirm :21,:31) + `emerge-open`/`emerge-dismiss` (:38-64 — posee su popup, correcto: no delega a Popover porque su Content NO es dialog) + `expression: 'pack'` + pack ✓. **unselect=affirm** consistente con calendar/combobox (censo ×3: la doctrina de-facto "des-seleccionar es acto afirmativo; reset/cancel neutral" — solo falta escribirla) |
|
|
|
| 8 | Contrato morfo | ✓ ejemplar | Trigger `role='combobox'` (:91) + `aria-activedescendant` (:110) con la razón del managed-focus documentada (:62 "items are never DOM-focused"); listbox/option/group/separator (:144-243) — APG select-only combobox completo |
|
|
|
| 9 | A11y | ✓ con verificación | Teclado :119-125 (Enter/Space open, flechas, Home/End, Escape) ✓; **F-2**: typeahead (saltar a opción por carácter — APG lo recomienda; el nativo lo tiene) no declarable en la gramática keyboard del morfo → verificar en provider durante fixes |
|
|
|
| 10 | Theming | ✓ | list-surface adoptado (era pendiente del registro 06-21); focus outline (o5) → SYS-5; depth ×2 ✓ |
|
|
|
| resto | | ✓ | tests ✓; README ×2 ✓ |
|
|
|
|
|
|
## Hallazgos y propuestas
|
|
|
|
|
|
| ID | Hallazgo | Propuesta |
|
|
|
|---|---|---|
|
|
|
| **F-1** | Adopción list-surface a confirmar fila a fila (item/option/group-label por `--list-item-*` sin re-declarar) | Verificación dirigida (grep + visual) en fase de fixes |
|
|
|
| **F-2** | Typeahead sin evidencia en morfo (puede vivir en provider) | Verificación dirigida; si falta, añadirlo (APG) |
|
|
|
|
|
|
## Escalan al sistema
|
|
|
|
|
|
Censo "unselect=affirm" ×3 (con calendar F-5: la respuesta es CONSISTENCIA — documentar, no corregir).
|
|
|
|
|
|
## Veredictos
|
|
|
|
|
|
*(pendiente — checkpoint post-barrido)*
|