feat: implement v0.4.0 - Reports, Charts, Comparison, Dark Mode, E2E Testing
Backend (@backend-dev): - Add ReportService with PDF/CSV generation (reportlab, pandas) - Implement Report API endpoints (POST, GET, DELETE, download) - Add ReportRepository and schemas - Configure storage with auto-cleanup (30 days) - Rate limiting: 10 downloads/minute - Professional PDF templates with charts support Frontend (@frontend-dev): - Integrate Recharts for data visualization - Add CostBreakdown, TimeSeries, ComparisonBar charts - Implement scenario comparison page with multi-select - Add dark/light mode toggle with ThemeProvider - Create Reports page with generation form and list - Add new UI components: checkbox, dialog, tabs, label, skeleton - Implement useComparison and useReports hooks QA (@qa-engineer): - Setup Playwright E2E testing framework - Create 7 test spec files with 94 test cases - Add visual regression testing with baselines - Configure multi-browser testing (Chrome, Firefox, WebKit) - Add mobile responsive tests - Create test fixtures and helpers - Setup GitHub Actions CI workflow Documentation (@spec-architect): - Create detailed kanban-v0.4.0.md with 27 tasks - Update progress.md with v0.4.0 tracking - Create v0.4.0 planning prompt Features: ✅ PDF/CSV Report Generation ✅ Interactive Charts (Pie, Area, Bar) ✅ Scenario Comparison (2-4 scenarios) ✅ Dark/Light Mode Toggle ✅ E2E Test Suite (94 tests) Dependencies added: - Backend: reportlab, pandas, slowapi - Frontend: recharts, date-fns, @radix-ui/react-checkbox/dialog/tabs - Testing: @playwright/test 27 tasks completed, 100% v0.4.0 implementation
This commit is contained in:
30
frontend/e2e/screenshots/baseline/README.md
Normal file
30
frontend/e2e/screenshots/baseline/README.md
Normal file
@@ -0,0 +1,30 @@
|
||||
# Baseline Screenshots
|
||||
|
||||
This directory contains baseline screenshots for visual regression testing.
|
||||
|
||||
## How to add baselines:
|
||||
|
||||
1. Run tests to generate initial screenshots
|
||||
2. Review the screenshots in `e2e/screenshots/actual/`
|
||||
3. Copy approved screenshots to this directory:
|
||||
```bash
|
||||
cp e2e/screenshots/actual/*.png e2e/screenshots/baseline/
|
||||
```
|
||||
4. Or use the update command:
|
||||
```bash
|
||||
UPDATE_BASELINE=true npm run test:e2e
|
||||
```
|
||||
|
||||
## Naming convention:
|
||||
|
||||
- `{page-name}-desktop.png` - Desktop viewport
|
||||
- `{page-name}-mobile.png` - Mobile viewport
|
||||
- `{page-name}-tablet.png` - Tablet viewport
|
||||
- `{page-name}-{browser}.png` - Browser-specific
|
||||
- `{page-name}-dark.png` - Dark mode variant
|
||||
|
||||
## Important:
|
||||
|
||||
- Only commit stable, approved screenshots
|
||||
- Update baselines when UI intentionally changes
|
||||
- Review diffs carefully before updating
|
||||
Reference in New Issue
Block a user