# Smoke Test Checklist

Manual verification before declaring **v1.0 ready for internal testing**.

Use a staging or production-like environment with real MongoDB. Record pass/fail and notes.

## Access

- [ ] **Login** — admin credentials; redirect to dashboard when authenticated
- [ ] **Logout** — session cleared
- [ ] **Viewer login** (optional) — can browse read-only modules; cannot create lead or run import

## Market & import

- [ ] **Import processed file** — `/imports` upload → detect → preview → execute
- [ ] **Market browse** — `/market/companies` lists imported companies with pagination

## Campaigns stack

- [ ] **Segment creation** — `/segments/new` save dynamic segment
- [ ] **Template creation** — `/email-templates/new` with variables
- [ ] **Campaign creation** — `/campaigns/new` draft with segment + template
- [ ] **Generate recipients** — campaign detail → generate recipients
- [ ] **SMTP verify** — `/email-test` or campaign detail verify (env or mailbox)
- [ ] **Test email** — send test from email-test page
- [ ] **Campaign send batch** — small batch on draft/scheduled campaign (watch rate limits)

## Inbox & AI

- [ ] **Inbox sync** — `/inbox` sync pulls messages (IMAP configured)
- [ ] **AI classify** — classify one reply from inbox detail or bulk on list
- [ ] **Convert to Lead** — inbox AI panel → create lead from reply

## Leads & pipeline

- [ ] **Pipeline move** — move opportunity stage on `/pipeline`
- [ ] **Tasks** — list/complete a task on `/tasks`

## Dashboard & notifications

- [ ] **Dashboard refresh** — `/dashboard` loads KPIs without error
- [ ] **Notifications** — bell shows items after an action (e.g. lead created)

## Admin safety

- [ ] **Settings admin-only** — non-admin cannot open `/settings` (redirect)
- [ ] **Data cleanup preview only** — `/settings/data-cleanup` preview works; do **not** execute destructive scopes in production smoke test unless on disposable DB

## Health

- [ ] **GET /api/health** — returns `ok` or `degraded`, database connected, no secrets in JSON

## Sign-off

| Role | Name | Date | Result |
|------|------|------|--------|
| Admin tester | | | |
| Owner | | | |
