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.
4.0 KiB
4.0 KiB
time-field — ficha de auditoría (RE-AUDITADA 2026-07-07, profundidad piloto)
- Familia: fields (trío de segmentos) · Método: solo análisis; evidencia por dimensión · demos fuera
- Capas leídas: morfo completo (1-100+teclado) · soma types completo · provider dirigido (commit wiring :436) · wrapper eidos completo · css/recipe (censo familia: focus o2/b1, alturas, marker compartido) · sema: sin pack, declarado (
expression: "family-default", morfo :8) - Máquina: PASS limpio · tests ✓ · README ×2 ✓
Dimensiones (evidencia leída)
| # | Dimensión | Estado | Evidencia |
|---|---|---|---|
| 1 | Composición | ✓ | Partes compositivas (Provider/Input/Segment/Label/HiddenInput); snippet segments ordenado (types :20-22) |
| 2 | Naming | ✓ conforme | value/onValueChange + placeholder/onPlaceholderChange (types :30-36); validate/onInvalid, minValue/maxValue, readonlySegments, granularity, hideTimeZone, errorMessageId, locale/dir/hourCycle (:38-67) — fila conforme en _naming.md |
| 3 | Coherencia semántica | hallazgo de trío | Solo commit-set (morfo :14-25) — date-field además emite commit-reset al limpiar: vaciar un time-field no produce señal semántica → F-1. intent: neutral, sequence: post ✓ canon |
| 4 | API | ✓ | Espejo exacto de date-field (sin kind, correcto: no aplica a horas); bindables declarados; fallbacks reactivos documentados (types :59-67) |
| 5 | Tokens | ✓ con dup | Recipe canónico; height-{k} re-declara el bundle (SYS-6, evidencia matriz familia) |
| 6 | Sema | declarado, cuestionado | family-default EXPLÍCITO en morfo — el trío roto es elección declarada, no olvido; la pregunta SYS-3 pasa a ser: ¿debe el trío compartir UNA expression (los tres pack o los tres default)? El provider usa fallbackTarget en el trigger (:436 ✓ el fix de partes doble-registradas) |
| 7 | Animaciones | ✓ | Sin keyframes; transición solo-background heredada del patrón de familia |
| 8 | Contrato morfo | ✓ más rico que su hermano | APG spinbutton ✓; teclado 5 teclas (verificado — sin Home/End, F-2); su bloque ARIA del Input es MÁS completo que el de date-field: añade aria-readonly ariaBoolean + aria-invalid condicional (morfo :76-90) que date-field no tiene → F-3 (unificar el trío al bloque rico) |
| 9 | A11y | ✓ con F-2 | aria-value* por segmento, labelledby condicional; falta Home/End |
| 10 | Theming | censo | Focus outline (o2/b1) → SYS-5; segment marker compartido ✓ (state-layer llega) |
| 11 | Composición interna | mandato | Sin wrapper [data-field] (SYS-6/B.1 — fue LA sonda en vivo de esta familia); wrapper eidos espejo exacto de date-field (leído) |
| 12 | Estados | ✓ | invalid/disabled/readonly/required + readonlySegments granular; hidden-input forms ✓ |
| 13 | Runtime | ✓ | Sin timers/listeners crudos en lo dirigido; fallbackTarget ✓ |
| 14 | Docs+tests | ✓ | README ×2, suite ✓ |
| 15 | i18n | ✓ | texts morfo; formatter por locale reactivo; $libs/days ✓ |
Hallazgos y propuestas
| ID | Hallazgo | Propuesta |
|---|---|---|
| F-1 | Falta commit-reset (date-field lo tiene; limpiar no suena) |
Añadir el evento al morfo + wiring en provider (espejo de date-field) — como parte del veredicto de trío SYS-3 |
| F-2 | Sin Home/End (APG spinbutton) | Pass de familia de segmentos (con date/color) |
| F-3 | ARIA del Input asimétrico en el trío (este es el RICO) | Unificar: date-field adopta aria-readonly/aria-invalid de time-field |
| F-4 | height-{k} duplicadas |
SYS-6 |
Escalan al sistema
SYS-3 matizado con evidencia nueva: el trío declara expressions distintas a propósito (pack vs family-default ×2) — el veredicto es de COHERENCIA declarada, no de olvido. · SYS-5 · SYS-6.
Veredictos
(pendiente — checkpoint post-barrido)