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.3 KiB
8.3 KiB
mask-field — ficha de auditoría (RE-AUDITADA 2026-07-07, profundidad piloto)
- Familia: fields (Tier-1, decisiones LOCKED 07-05) · Método: solo análisis; evidencia por dimensión · demos fuera
- Capas leídas: morfo completo (1-110+) · soma types completo · pack ✓ · engine propio (
mask-engine, tests ×2 ✓) - Máquina: PASS con
R-1.3· tests 2 ✓✓ · README ×2 ✓
Dimensiones (evidencia leída)
| # | Dimensión | Estado | Evidencia |
|---|---|---|---|
| 1 | Composición | ✓ | Single-input compositivo; el morfo RAZONA por qué NO se fragmenta en fake-segments (eso es de Date/Time — :18-20) |
| 2 | Naming | ✓ con dato nuevo | value/onValueChange ✓ + onValueCommit: OnChangeFn para blur/Enter (types :75-76) — TERCER patrón de callback terminal del catálogo (vs onSubmit crudo de search/password) → fila clave en _naming; showMask/placeholderChar/definitions (decisiones locked); unmaskedValue como derivado read-only en snippet (:19-20) |
| 3 | Coherencia semántica | ✓ | commit-set solo en confirmación — la doctrina teclear≠commit citada y alineada (morfo :43-47); expression: 'pack' + pack ✓ |
| 4 | API | ✓ ejemplar | Alfabeto de tokens documentado con escape y cola opcional (\9, [ ... ] — types :47-53); definitions merge-over con RegExp por slot (:55-60); modelo de valor = string enmascarado con la convención de la industria citada (morfo :25-28) |
| 5 | Tokens | ✓ con dup | height-{k} duplicada (SYS-6); tokens 9-A-* del engine per decisión |
| 6 | Sema | ✓ | Pack ✓ |
| 7 | Animaciones | ✓ | showMask revela esqueleto sin keyframes |
| 8 | Contrato morfo | ✓ | APG textbox CORRECTO (:41 — un solo textbox, no combobox como search); data-complete con razón (intrínseco a máscara, gate de submit sin re-derivar — :74-77); flags focused/empty ✓ |
| 9 | A11y | ✓ con doctrina propia | Valor anunciado siempre veraz: los keystrokes rechazados REVIERTEN visiblemente en vez de tragarse en silencio (el lector siempre relee el valor comprometido — morfo :21-23) — doctrina exportable a cualquier input con formateo |
| 10 | Theming | hallazgo | R-1.3 readonly sin estilo (patrón familia) |
| 11 | Composición interna | ✓ documentada | Field integration EXPLÍCITA: el Input se registra en Field.inputId → Label/Helper/Error se auto-cablean (types :35-38) — de lo poco de la familia que documenta el wiring |
| 12 | Estados | ✓ | complete/focused/empty + OR-merge; name envía el valor ENMASCARADO (documentado :89) |
| 13 | Runtime | ✓ | Engine puro con suite propia; sin timers/DOM crudo |
| 14 | Docs+tests | ✓ el mejor de la familia | 2 suites (engine + provider) |
| 15 | i18n | ✓ | translationRef en aria-label; texts morfo |
Hallazgos y propuestas
| ID | Hallazgo | Propuesta |
|---|---|---|
| F-1 | readonly sin estilo (R-1.3) | Tratamiento único de familia |
| F-2 | height-{k} duplicada |
SYS-6 |
| Nota ✓ | onValueCommit (OnChangeFn) es candidato a CANON del callback terminal (vs onSubmit crudo) — coincide con la convención Radix/bits del slider |
Veredicto _naming: unificar el trío de patrones |
Escalan al sistema
_naming (callback terminal: onValueCommit vs onSubmit vs solo-evento) · SYS-5 · SYS-6 · doctrina "valor anunciado veraz" exportable.
Veredictos
(pendiente — checkpoint post-barrido)