Summary
Improve the existing Contacts Import surface. This issue is intentionally scoped to existing app code and should not introduce a new standalone tool or unrelated feature.
Current area
import wizard steps, contact parser, malformed row handling, preview data, and contact import types
Relevant paths
- src/features/contacts/ImportWizard.tsx
- src/features/contacts/parseContacts.ts
- src/features/contacts/types.ts
Goal
improve the current contacts import wizard so contact data parsing is transparent and recoverable.
Work focus
Audit the existing surface for keyboard flow, focus order, visible focus, ARIA naming, reduced-motion behavior, and screen-reader clarity. Fix gaps in place without changing the core workflow.
Acceptance criteria
Scope guardrails
- Keep the work inside the relevant existing app/module paths above unless a small shared helper is clearly justified.
- Do not add a new V1/V2 tool folder for this issue.
- Do not use real user data, secrets, private keys, or live customer mail.
- Keep copy and UI aligned with the Stealth Mail safety, speed, and sender-control positioning.
Suggested validation
- Run the most relevant unit or e2e tests for the touched area.
- Run �un x tsc --noEmit and �un run lint when the local environment supports the project dependency install.
Summary
Improve the existing Contacts Import surface. This issue is intentionally scoped to existing app code and should not introduce a new standalone tool or unrelated feature.
Current area
import wizard steps, contact parser, malformed row handling, preview data, and contact import types
Relevant paths
Goal
improve the current contacts import wizard so contact data parsing is transparent and recoverable.
Work focus
Audit the existing surface for keyboard flow, focus order, visible focus, ARIA naming, reduced-motion behavior, and screen-reader clarity. Fix gaps in place without changing the core workflow.
Acceptance criteria
Scope guardrails
Suggested validation