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.
9.0 KiB
9.0 KiB
field-langs — ficha de auditoría (RE-AUDITADA 2026-07-07, profundidad piloto)
- Familia: fields (campo localizado; recién embarcado
0522efe0) · Método: solo análisis; evidencia por dimensión · demos fuera - Capas leídas: morfo completo (1-90+) · soma types superficie · sema:
family-defaultRAZONADO in-place - Máquina: PASS con
R-2.7(line-height: 1.2literal sin anotar) · tests 0 · README soma ✗ / eidos ✓ - Corrección sobre el pass superficial: el antiguo F-4 ("semántica del conmutador sin declarar") era FALSO — el morfo la declara y razona (abajo). La ficha superficial no había leído el contrato.
Dimensiones (evidencia leída)
| # | Dimensión | Estado | Evidencia |
|---|---|---|---|
| 1 | Composición | ✓ ejemplar | Patrón picker A27 citado (morfo :9-13): compone el eidos <Field> + conmutador in-control cuya FORMA se adapta (segmented ≤3 idiomas · Select ghost >3 o forzado); Switcher kind: 'private' con razón doble (:77-84): el commit-toggle del ToggleGroup es semántica EQUIVOCADA para navegación de contexto + su chrome se colaría en el control — radiogroup propio en segmented |
| 2 | Naming | ✓ | LangSpec = code | {code,label?,dir?} (RTL por idioma ✓); values: Record<LangCode,string> bindable; switcherSide: start|end lógico; switcherMode: auto|segmented|select |
| 3 | Coherencia semántica | ✓ declarada y razonada | shift-navigate con cap. 27 citado (cambio de régimen entre valores por-idioma, NO fijación — :39-52); expression: 'family-default' RAZONADO (:29-33): el settle visual es la base de shift, el tap del press lo pone el pack del ToggleGroup compuesto — decisión sema COMPOSICIONAL documentada (modelo para el veredicto SYS-3: family-default puede ser elección arquitectural, no hueco) |
| 4 | API | ✓ | languages + required: LangCode[] + missingRequired derivado en snippet (validación por idioma) |
| 5 | Tokens | hallazgo | F-1: line-height: 1.2 literal (R-2.7) |
| 6 | Sema | ✓ | Ver dim 3 — el caso canónico de default-por-composición |
| 7 | Animaciones | ✓ | Sin keyframes |
| 8 | Contrato morfo | ✓ | data-active-lang emit value + data-switcher-side enum + flags; switcher-label localizado |
| 9 | A11y | ✓ a verificar en fixes | Radiogroup del switcher (roles por verificar en las partes restantes al ejecutar) |
| 10-12 | ✓ | Compone Field DE VERDAD (el recién llegado hace lo que el mandato SYS-6 pide a los veteranos) | |
| 13 | Runtime | ✓ | Sin señales de indisciplina en lo leído |
| 14 | Docs+tests | gap doble | Cero tests (draft por idioma, missingRequired, switch de contexto) + README soma ausente (el contrato headless sin doc) |
| 15 | i18n | ✓ | Su razón de ser; texts + switcher-label |
Hallazgos y propuestas
| ID | Hallazgo | Propuesta |
|---|---|---|
| F-1 | line-height: 1.2 literal (R-2.7) |
var(--leading-ui) o anotación /* literal: razón */ |
| F-2 | Cero tests | Suite: valores por idioma (persistencia del borrador al conmutar), missingRequired, modos del switcher — SYS-2 |
| F-3 | README soma ausente (patrón invertido) | Crearlo — SYS-4 |
| Nota ✓✓ | La razón escrita del family-default composicional (:29-33) es EL modelo para el veredicto SYS-3 |
Citarla en el checkpoint: "default legítimo cuando el carácter lo aporta el compuesto" |
Escalan al sistema
SYS-2 · SYS-4 · SYS-3 gana su segundo criterio documentado (composición aporta el carácter → default legítimo).
Veredictos
(pendiente — checkpoint post-barrido)