7304aafc83
Centralize label, error, help, required, and ARIA relationships across core field wrappers. Preserve WBS evidence and keep the item IN_PROGRESS pending predecessor acceptance evidence. Evidence: frontend pnpm typecheck; pnpm test (42/42); pnpm build.
2.0 KiB
2.0 KiB
AEG-V16-017 — FieldShell standardization
Scope
- WBS / Requirement / UI / Test: AEG-V16-017 / REQ-V16-FEC-01 / UI-V16-FEC-01 / T-V16-FEC-01
- Classification: one FE component vertical slice; no API, database, policy, provider, or design-token contract change.
- Target gate: MVP-A. This note records implementation evidence only; it does not claim the gate is passed.
Source / Assumption / Unknown / Decision Required
- Source:
docs/CURRENT/CATALOGS/WBS_MASTER.csv,docs/CURRENT/CATALOGS/WBS_PROGRESS_TRACKER.csv,contracts/ui/ui-adapter.v4.json, and the existing components underfrontend/src/shared/ui/components/. - Assumption: the v4 provider adapters preserve fall-through ARIA attributes on their concrete input control. This is characterized by the shared-component test; provider-level evidence remains owned by AEG-V16-013 and AEG-V16-066.
- Unknown: the tracker has no rows for AEG-V16-009 through AEG-V16-016, while the Master marks them PLANNED and their source artifacts exist. Their acceptance evidence has not been reconstructed in this slice.
- Decision Required: a WBS owner must reconcile the Master and progress tracker and attach/approve the AEG-V16-016 vendor-boundary evidence before AEG-V16-017 can be marked COMPLETED.
Acceptance mapping
| Acceptance requirement | Implementation evidence |
|---|---|
| label/error/help/ARIA single boundary | FieldShell.vue owns IDs, label, required indicator, invalid state, and message relationship. |
| no repeated field chrome in feature components | text, textarea, select, date, and number wrappers render FieldShell. |
| reproducible regression check | FieldShell.spec.ts, pnpm typecheck, and pnpm test result are recorded in the tracker after execution. |
Non-goals
- Provider selection, capability changes, visual approval, and runtime API behavior.
- Multi-select and checkbox semantics: their v4 provider contracts do not yet expose the normalized field-control props needed for a safe conversion.