Close the seven code-review findings in disposition and leave the phase pending on browser checks plus the v0.1.1 tag. Co-authored-by: Cursor <cursoragent@cursor.com>
2.4 KiB
2.4 KiB
Phase 12.2 — UI Review
Audited: 2026-10-02
Baseline: 12.2-UI-SPEC.md (approved)
Screenshots: Not captured — no live admin session was driven in this pass
Interaction captures: off
Scope Decision
UI audit of the three new controls (DatepickerField, FileuploadField, relation child/pivot modals) against the existing Direction C system. No new tokens. This pass used the committed SPA tests and a code read of the review-fix commit 516f9c9; it did not open a browser.
Pillar Scores
| Pillar | Score | Finding |
|---|---|---|
| 1. Copywriting | 4 | All new strings go through t / phrasebook keys. No new literal UI copy in the review-fix commit. |
| 2. Visuals | 3 | Components reuse Button, FormGrid, ConfirmDialog, Reka DatePicker/Dialog/Progress. Visual fit of the calendar popover and file tiles is a human check. |
| 3. Color | 4 | Danger/soft/skel/muted tokens only; no new palette. |
| 4. Typography | 4 | DM Sans / tabular-nums for dates, times, sizes as specified. |
| 5. Spacing | 4 | Existing control heights and 4px scale; no new spacing tokens. |
| 6. Experience Design | 4 | Save blocked while uploads are in flight (CR-01). Abort deletes a stored file (CR-02). Reorder keeps the latest snapshot (WR-03). Dirty includes active uploads. |
Overall: 4 — automated backstops pass; browser visual UAT still required.
UI-SPEC backstops
| Backstop | Automated evidence | Status |
|---|---|---|
| Esc returns focus; disabled day cannot be selected | admin/tests/form/DatepickerField.test.ts |
pass |
| Datetime local wall clock / UTC emit; ignoreTimezone | admin/tests/app/dateFormat.test.ts |
pass |
| Protected thumbs use X-Session-Key, object URL, revoke | admin/tests/form/FileuploadField.test.ts |
pass |
| Keyboard reorder, focus, announce, one request | admin/tests/form/FileuploadField.test.ts |
pass |
Priority Fixes
None blocking. Human items live in 12.2-UAT.md.
Files Audited
admin/src/views/FormView.vueadmin/src/components/form/fields/FileuploadField.vueadmin/src/components/form/fields/DatepickerField.vue(via tests)admin/src/components/form/formContext.tsadmin/src/components/relation/RelationChildModal.vueadmin/src/app/dateFormat.tsadmin/tests/form/FileuploadField.test.tsadmin/tests/app/dateFormat.test.tsadmin/tests/smoke/deferred.smoke.test.ts