Add focus traps for modals, accessible names for icon/select controls, ownership badge role=status, list semantics for the scan queue, and aria-live updates for the card count. Co-authored-by: Cursor <cursoragent@cursor.com>
42 lines
1.6 KiB
Markdown
42 lines
1.6 KiB
Markdown
---
|
||
convoy: redesign-scanner-flow
|
||
multitask_group: audit-redesign-scanner-flow-44
|
||
prs: [42, 43, 44]
|
||
audited_at: 2026-05-27
|
||
outcome: comment-only
|
||
---
|
||
|
||
# Post-PR audit: redesign-scanner-flow
|
||
|
||
Combined diff: `55af7e3..673af83` (Briefs 1–3, PRs #42–#44).
|
||
|
||
## Rollup
|
||
|
||
| Role | Recommendation | Blockers |
|
||
| --- | --- | --- |
|
||
| Reviewer | comment-only | 0 critical |
|
||
| Design system | 7 token violations (pre-existing `CameraScanner.js` overlay) | 0 blockers |
|
||
| A11y | 8 critical, 8 warnings | Ownership badge + modal focus |
|
||
|
||
Reports posted to [PR #44](https://github.com/varutasu/tcg-vault/pull/44#issuecomment).
|
||
|
||
## Follow-up convoys (queued)
|
||
|
||
| Slug | Priority | Source |
|
||
| --- | --- | --- |
|
||
| `scanner-redesign-a11y-fixes` | P1 | **In progress** — PR pending |
|
||
| `scanner-user-cards-quantity-guard` | P2 | Reviewer — parseInt/NaN guard parity with decks handler |
|
||
| `test-scanner-redesign-surfaces` | P2 | Reviewer — unit tests for new components + upload route |
|
||
| `document-condition-foil-destination-semantics` | P3 | Reviewer — clarify or migrate condition/foil for collection/deck rows |
|
||
| `camera-scanner-token-cleanup` | P3 | Design system — replace hardcoded hex overlay colors in CameraScanner |
|
||
|
||
## Acceptance criteria sign-off
|
||
|
||
| # | Criterion | Status |
|
||
| --- | --- | --- |
|
||
| 1 | Single destination; scans auto-route | ✅ |
|
||
| 2 | Condition/foil/quantity propagate | ⚠️ owned only; collection/deck accept but don't persist |
|
||
| 3 | Ownership badge | ⚠️ works visually; a11y role missing |
|
||
| 4 | Scan image URL on user_cards | ✅ |
|
||
| 5 | Lint + vitest baseline | ✅ |
|
||
| 6 | Destination picker keyboard + badge a11y | ⚠️ picker ✅; badge ❌ |
|