Added a scroll-to-bottom button in task detail view that appears when content is scrollable and hides when users reach the bottom. The button provides quick navigation to view all content.
🐰 A button appears when scrolls grow tall,
Through DOM observers, we heed the call,
With smooth scroll dances to content's end,
The rabbit's gift—no need to scroll and rend! ✨
- Removes Cypress test framework entirely, using only Playwright for E2E tests
- All Cypress tests were already covered by Playwright; added 2 missing tests for URL filter/search parameters
- Removes ~2000 lines of Cypress code and configuration
- Updated ESLint and Stylelint configurations to reflect testing changes
🐰 Farewell to Cypress, dear and bright,
We hop to Playwright's testing light,
Factories cleared, the config gone,
Our tests now march in Playwright's song!
~✨ The Testing Rabbit
- Re-enable 16 previously skipped Playwright E2E tests that now pass
- Fix test setup issues that were causing flakiness
## Changes
- **task/task.spec.ts** (8 tests): kanban navigation, description
editing, assignees, labels, due dates
- **task/overview.spec.ts** (4 tests): task ordering, due date handling
- **user/settings.spec.ts** (2 tests): avatar upload, name update
- **user/login.spec.ts** (2 tests): bad password error, redirect after
login
## Key fixes
- Kanban view tests now properly create `TaskBucket` entries so tasks
appear in the kanban board
- Avatar upload test uses the API directly to avoid `canvas.toBlob()`
issues in headless browser environments
- Login redirect test no longer uses the shared `login()` helper that
expected redirect to `/`
Drag and drop tasks between projects from list and kanban views, with cross-project move handling and success notification. With visual drop-target highlighting when hovering a project during a drag.