Conversation
Simplify auth model to two clear paths: `vizzly login` (interactive) and `VIZZLY_TOKEN` (CI). The per-directory project mapping system (`project:select`) is no longer needed now that user JWTs work on all API endpoints. - Remove `project:select`, `project:list`, `project:token`, `project:remove` commands and CLI registrations - Remove project mapping storage from global config - Remove project mapping lookup from config loader token resolution - Remove mapping endpoints from projects router and project service - Remove mapping operations and helpers from project/operations and project/core - Delete Projects tab from reporter dashboard, move DeviceFlowLogin into Builds view inline - Remove mapping hooks and API client methods from reporter - Add `--project <slug>` filter to `comparisons` command - Clean up context display to remove mapping references - Delete test files for removed code, update remaining tests
This comment has been minimized.
This comment has been minimized.
PR Review: Remove Project Linking SystemOverviewThis is a well-executed refactoring that significantly simplifies the authentication model. The removal of 2,763 lines while adding only 215 demonstrates effective code deletion. All tests pass (1862/1862) and the changes maintain architectural consistency. Recommendation: ✅ Approve with requested changes Issues Found🟡 Medium:
|
- Extract `project` from filters in `searchComparisons` so the flag actually gets passed to the API - Remove stale JSDoc referencing mappingStore in operations.js - Remove unused `isUserAuth` flag from config loader
Vizzly - Visual Test ResultsCLI Reporter - 11 changes need review
Changes needing review (11)filter-failed-only · Firefox · 1920×1080 · 11.3% diff search-no-results · Firefox · 1920×1080 · 11.3% diff dashboard-mixed-state · Firefox · 1920×1080 · 11.3% diff fullscreen-viewer · Firefox · 1920×1080 · 5.4% diff bulk-accept-dialog · Firefox · 1920×1080 · 11.3% diff search-homepage · Firefox · 1920×1080 · 11.3% diff ...and 5 more in Vizzly. CLI TUI - 1 change needs review
|







Summary
Simplifies the auth model to two clear paths:
vizzly login(interactive) andVIZZLY_TOKEN(CI). The per-directory project mapping system (project:select) was built before user JWTs worked on all API endpoints — now it's unnecessary overhead.What's removed:
project:select,project:list,project:token,project:removeCLI commands~/.vizzly/config.json(stale keys harmlessly ignored, no migration needed)/api/projects/mappings,/api/builds/recent)project/operations.jsandproject/core.jsWhat's added/changed:
--project <slug>filter oncomparisonscommand (matches existingbuildspattern)DeviceFlowLoginmoved inline into Builds view (was only reusable piece from deleted Projects tab)vizzly logininstead ofproject:selectWhat stays unchanged:
vizzly login/logout/whoamivizzly projects/vizzly orgscommandsVIZZLY_TOKENenv var +--tokenflag-2,763 lines deleted, 215 added across 27 files.
Test plan
npm test— 1862 tests pass, 0 failuresnpm run lint— cleannpm run build— compiles (151 files + reporter bundle)vizzly --help— noproject:*commands in outputvizzly tdd start— dashboard loads, Builds tab works, no Projects tabvizzly builds --project <slug>— filters by projectvizzly comparisons --project <slug>— filters by project