You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
8.5 KiB
8.5 KiB
form — ficha de auditoría (RE-AUDITADA 2026-07-07, profundidad piloto)
- Familia: fields (orquestación) · Método: solo análisis; evidencia por dimensión · demos fuera
- Capas leídas: morfo completo (1-90+) · soma types superficie de props · pack ✓
- Máquina: PASS limpio · tests ✓ · README ×2 ✓
Dimensiones (evidencia leída)
| # | Dimensión | Estado | Evidencia |
|---|---|---|---|
| 1 | Composición | ✓ | Provider(<form> real)/Submit/Reset/ErrorSummary compositivos |
| 2 | Naming | dato de censo | isPending/data-pending para async-en-vuelo (morfo :75, types) mientras button/field usan loading — DOS nombres para el concepto → _naming; disableWhenPristine en Reset ✓ expresivo; submitCount en snippet |
| 3 | Coherencia semántica | ✓ referencia | commit-submit con intent fulfill (:16-24 — el cierre terminal donde la doctrina de button dice que vive el intent fuerte ✓); signal-warn-invalid untilFix + requiresFocusMove + persistent-trace con §6.2 y §9.2 citados y el ciclo clearSignal/clearTarget documentado (:26-53) — CUARTO contrato de referencia de la familia; commit-reset neutral ✓ |
| 4 | API | ✓ | Standard-Schema (el adaptador always-async con untrack — antecedente de memoria); estados dirty/touched/submitted proyectados |
| 5 | Tokens | ✓ | Gaps por size vía recipe |
| 6 | Sema | ✓ | Pack ✓ — el submit ES el sitio del carácter |
| 7 | Animaciones | ✓ | Sin keyframes |
| 8 | Contrato morfo | ✓ | APG landmark form CORRECTO (:9); data-{pending,dirty,touched,invalid,submitted} + aria-busy condicional (:74-88) |
| 9 | A11y | ✓ ejemplar | El focus-move del warn aterriza en el form y focusFirstInvalid() perfora al primer campo inválido (documentado :43-48); ErrorSummary con títulos singular/plural interpolados (:12-13) |
| 10 | Theming | ✓ | Focus o1 contenedor |
| 11 | Composición interna | ✓ | ES el otro extremo del OR-merge: Field se registra y deriva dirty/touched/errors de aquí |
| 12 | Estados | ✓ | Ciclo completo submit/reset/pending |
| 13 | Runtime | ✓ | Validación async sin timers crudos (Standard-Schema) |
| 14 | Docs+tests | ✓ | README ×2, suite ✓ |
| 15 | i18n | ✓ | error-summary-title con {{count}} + variante singular |
Hallazgos y propuestas
| ID | Hallazgo | Propuesta |
|---|---|---|
| F-1 | isPending vs loading (dos nombres para async-en-vuelo en el catálogo) |
Veredicto _naming: elegir uno (nota: pending es el término del form nativo/React 19; loading el de controles — puede ser DOS conceptos legítimos [form en vuelo vs control ocupado] — decidir si se unifica o se documenta la distinción) |
Escalan al sistema
_naming (pending vs loading).
Veredictos
(pendiente — checkpoint post-barrido)