Files
pitchfast/backlog/archive/tasks/task-20 - Implement-TASK-7-slice-3-dashboard-UI.md

49 lines
1.8 KiB
Markdown

---
id: TASK-20
title: Implement TASK-7 slice 3 dashboard UI
status: In Progress
assignee: []
created_date: '2026-06-04 13:54'
updated_date: '2026-06-04 13:58'
labels: []
dependencies: []
priority: high
ordinal: 22000
---
## Description
<!-- SECTION:DESCRIPTION:BEGIN -->
Build dashboard leads review page and blacklist management UI for lead qualification and blacklist controls.
<!-- SECTION:DESCRIPTION:END -->
## Acceptance Criteria
<!-- AC:BEGIN -->
- [x] #1 Replace dashboard leads placeholder with inline lead review and review mutations
- [x] #2 Replace dashboard blacklist placeholder with blacklist create/edit/list/delete UI
- [ ] #3 Use shadcn-style dashboard components and keep TypeScript compile clean
<!-- AC:END -->
## Implementation Plan
<!-- SECTION:PLAN:BEGIN -->
1. Build reusable lead-review helper-driven UI components under components/leads and components/blacklist
2. Replace dashboard placeholder pages for leads and blacklist
3. Extend dashboard-model label helpers where needed
4. Add/adjust dashboard-model tests for new helper mappings
5. Run lint/tests and report results
<!-- SECTION:PLAN:END -->
## Implementation Notes
<!-- SECTION:NOTES:BEGIN -->
1) Built lead-review model helpers and added dashboard-model tests
2) Replaced dashboard/leads and dashboard/blacklist placeholders with component-backed UI
3) Added lead review table controls for priority/contact, notes, duplicate/blacklist handling, and review email fields
4) Added blacklist manager with create/list/edit/delete and backend blocking note in UI
Validation completed: pnpm -s exec tsc -p tsconfig.json --noEmit + pnpm -s test pass; targeted eslint on changed files pass; full `pnpm -s lint` currently fails on pre-existing blacklist.ts any-typed fields from prior task work
<!-- SECTION:NOTES:END -->