senke
fd51839d34
chore(docs): reorganize markdown files, add docs/README (P2)
2026-02-16 11:04:24 +01:00
senke
ab85dd793f
docs: update REMEDIATION_PROGRESS with Phase 2 completion
2026-02-16 10:53:29 +01:00
senke
7c981c1ec8
docs(security): document Lot 9 (2FA) and Lot 10 (OAuth) verification (A07)
...
Both flows verified correct - no code changes required.
2026-02-16 10:23:33 +01:00
senke
fae4588d70
fix(security): update or remove vulnerable npm devDependencies (A06)
...
- Remove @lhci/cli, newman, pa11y-ci (used only by obsolete Makefile.old)
- Redirect qa:postman, qa:lh, qa:a11y scripts to explanatory message
- npm audit fix for remaining lodash vulnerability
- Document Lot 6 (bypass flags verified) and Lot 8 in REMEDIATION_PROGRESS
2026-02-16 10:20:10 +01:00
senke
b05d7a04e3
fix(security): remove or protect education routes (A01)
...
Education packages internal/api/education and internal/core/education were
empty directories with no routes registered. Removed empty dirs and
documented in REMEDIATION_PROGRESS.md.
2026-02-16 10:18:43 +01:00
senke
36c03e1cba
docs: add developer onboarding guide
2026-02-15 16:13:20 +01:00
senke
37e6e426f0
feat(payments): document Hyperswitch activation and validate checkout flow
2026-02-15 16:08:49 +01:00
senke
43af35fd93
chore(audit 2.2, 2.3): nettoyer .md et .json à la racine
...
- Archiver 131 .md dans docs/archive/root-md/
- Archiver 22 .json dans docs/archive/root-json/
- Conserver 7 .md utiles (README, CONTRIBUTING, CHANGELOG, etc.)
- Conserver package.json, package-lock.json, turbo.json
- Ajouter README d'index dans chaque archive
2026-02-15 14:35:08 +01:00
senke
92f432fb9e
chore: consolidate pending changes (Hyperswitch, PostCard, dashboard, stream server, etc.)
2026-02-14 21:45:15 +01:00
senke
ae586f6134
Phase 2 stabilisation: code mort, Modal→Dialog, feature flags, tests, router split, Rust legacy
...
Bloc A - Code mort:
- Suppression Studio (components, views, features)
- Suppression gamification + services mock (projectService, storageService, gamificationService)
- Mise à jour Sidebar, Navbar, locales
Bloc B - Frontend:
- Suppression modal.tsx deprecated, Modal.stories (doublon Dialog)
- Feature flags: PLAYLIST_SEARCH, PLAYLIST_RECOMMENDATIONS, ROLE_MANAGEMENT = true
- Suppression 19 tests orphelins, retrait exclusions vitest.config
Bloc C - Backend:
- Extraction routes_auth.go depuis router.go
Bloc D - Rust:
- Suppression security_legacy.rs (code mort, patterns déjà dans security/)
2026-02-14 17:23:32 +01:00
senke
8a0f008345
chore: playwright workflow, docs, rapports audit, visual-tests, tmt unit
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-11 22:19:34 +01:00
senke
bbbe557eca
ci: add npm audit, govulncheck, cargo audit to CI
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-11 21:33:27 +01:00
senke
816676906a
docs: mark veza-mobile as abandoned, document ghost features
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-11 21:31:22 +01:00
senke
b1ed46b142
small fixes : cors + login loop
2026-02-07 20:36:48 +01:00
senke
be7d7b02cc
feat(e2e): Playwright + pixelmatch stack for pixel-perfect visual regression
...
- playwright.config.visual.ts: dedicated config, viewport 1280x720, Chromium only,
snapshots in e2e/tests/visual/__snapshots__
- e2e/tests/visual/visual-regression.spec.ts: login, register, dashboard (full/header/sidebar),
player bar, playlists, 404, mobile/tablet viewports; dark theme + reduceMotion
- scripts/visual-diff.js: optional pixelmatch script to generate diff image from two PNGs
- docs/VISUAL_TESTING_STRATEGY.md: strategy, commands, CI, workflow
- npm scripts: test:visual, test:visual:update, test:visual:report
- deps: pixelmatch, pngjs; @playwright/test aligned to 1.58.1
- baseline snapshots added for login, dashboard, playlists, 404, viewports
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 20:01:30 +01:00
senke
995063383f
docs(frontend): update roadmap checklist and implementation log
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 19:52:48 +01:00
senke
d4f4e41e1a
docs(frontend): add Spotify/Discord quality roadmap and checklist
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 19:50:43 +01:00
senke
3298295d75
docs(audit): TrackDetailPage refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 06:57:46 +01:00
senke
793ad47e27
docs(audit): PlaylistDetailPage refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 06:47:07 +01:00
senke
75c9472b36
docs(audit): PlaylistActions refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 06:10:30 +01:00
senke
ce166e320f
docs(audit): EquipmentDetailView refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 05:46:19 +01:00
senke
b54f6cf00a
docs(audit): TrackListPagination refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 05:04:24 +01:00
senke
7edd6267fc
docs(audit): PlaylistAnalytics refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 04:54:00 +01:00
senke
e6adea58d3
docs(audit): VirtualizedChatMessages refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 04:44:30 +01:00
senke
41050fce5d
docs(audit): LibraryPage refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 04:31:15 +01:00
senke
f9eda10044
docs(audit): router refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 04:16:43 +01:00
senke
70614a86af
docs(audit): ChatView refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 04:01:30 +01:00
senke
d56cf96900
docs(audit): AuthView refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 03:54:38 +01:00
senke
1dd0896d0b
docs(audit): AdminView refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 22:32:04 +01:00
senke
14d81649ad
docs(audit): NotificationsView refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 22:23:19 +01:00
senke
cb72f73f52
docs(audit): EducationView refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 22:11:45 +01:00
senke
c6c254bb05
docs(audit): SettingsView refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 22:00:12 +01:00
senke
837269e361
docs(audit): CartView refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 21:51:30 +01:00
senke
8d1ac73507
docs(audit): PurchasesView refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 21:43:08 +01:00
senke
3e5f8e49d2
docs(audit): SocialView refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 21:35:06 +01:00
senke
6b7ac3582f
docs(audit): MarketplaceView refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 21:26:33 +01:00
senke
833b66e0b6
docs(audit): AnalyticsView refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 18:34:24 +01:00
senke
88b6581b8d
docs(audit): LiveView refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 18:16:11 +01:00
senke
193f2f204b
docs(audit): CheckoutView refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 18:04:47 +01:00
senke
a848d9d2f4
docs(audit): AdminDashboardView refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 17:54:39 +01:00
senke
27db3ef8ed
docs(audit): components/settings/account AccountSettings refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 17:43:34 +01:00
senke
a98989db87
docs(audit): ChatInterface refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 14:25:15 +01:00
senke
197162072b
docs(audit): CreateProductView refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 14:17:28 +01:00
senke
5dd242d847
docs(audit): FileDetailsView refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 14:06:09 +01:00
senke
366d44d65f
docs(audit): VirtualizedList refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 13:55:32 +01:00
senke
610f727d3b
docs(audit): context/AudioContext refactorised 2026-02-05
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 13:46:58 +01:00
senke
a1b5ef6d65
docs(audit): add features/player AudioPlayer refactor entry to FRONTEND_DEEP_DIVE_AUDIT
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 13:37:31 +01:00
senke
4a3eda6101
docs(audit): add Library UploadModal refactor entry to FRONTEND_DEEP_DIVE_AUDIT
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 13:26:57 +01:00
senke
94dc4c6ae2
docs(audit): add DiscoverView refactor entry to FRONTEND_DEEP_DIVE_AUDIT
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 13:19:48 +01:00
senke
c2d7d32f3d
docs(audit): add UserProfilePage refactor entry to FRONTEND_DEEP_DIVE_AUDIT
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 13:11:09 +01:00