---
name: test-scanner-redesign-surfaces
classification: test
success_metric: |
  Vitest covers scanner redesign API validation and key component behaviors
  (destination picker, scanned card row, upload-image auth/rate-limit/MIME).
depends_on:
  - redesign-scanner-flow
status: shipped
created: 2026-05-27
---

# Convoy: test-scanner-redesign-surfaces

**As-shipped:** PR #47 (2026-05-27). Vitest coverage for redesign API validation and scanner components.

P2 follow-up from `audit-redesign-scanner-flow-44` reviewer report.

## Scope

- `test/api/user-cards.test.js` — quantity validation
- `test/api/scan/upload-image.test.js` — auth, rate limit, MIME rejection
- `test/components/ScannerDestinationPicker.test.js` — game filter + destination toggle
- `test/components/ScannedCardItem.test.js` — ownership badge + metadata controls

## Acceptance criteria

1. `npm run test:run` green with new tests exercising real behavior (not implementation trivia).
2. No live DB or Blob calls in tests.
