Commit graph

232 commits

Author SHA1 Message Date
senke
29cdca1e02 docs: update remediation and onboarding for v0.101
- REMEDIATION_PROGRESS: add Phase v0.101 section
- V0_101_RELEASE_SCOPE: check build criteria
- VERSION: 0.101.0-dev (release tag will create)
2026-02-18 18:16:06 +01:00
senke
a992d394bb fix(chat): ensure WebSocket auth token from query or cookie
- Chat server: accept token from ?token= or access_token cookie (httpOnly)
- Frontend: append token to WS URL when available (TokenStorage)
2026-02-18 12:42:48 +01:00
senke
aa7980ab71 fix(streaming): ensure HLS audio chain works end-to-end
- HAProxy: route /hls to stream server
- Vite proxy: /ws, /stream, /hls for dev
- HLS_BASE_URL: empty when STREAM_URL relative (proxy)
- FEATURE_STATUS: HLS_STREAMING operational
2026-02-18 12:42:42 +01:00
senke
7f72e280a4 docs: add full stack startup procedure for v0.101 2026-02-18 12:04:27 +01:00
senke
e11984898d chore: consolidate CI, E2E, backend and frontend updates
- CI: workflows updates (cd, ci), remove playwright.yml
- E2E: global-setup, auth/playlists/profile specs
- Remove playwright-report and test-results artifacts from tracking
- Backend: auth, handlers, services, workers, migrations
- Frontend: components, features, vite config
- Add e2e-results.json to gitignore
- Docs: REMEDIATION_PROGRESS, audit archive
- Rust: chat-server, stream-server updates
2026-02-17 16:43:21 +01:00
senke
ea1b60466a fix(backend): remediation plan — tests, playback_analytics, job queue, gamification
Phase 1 - Backend tests:
- Add PlaybackAnalytics to AutoMigrate in setupTestTrackHandler
- Create migration 081_create_playback_analytics.sql for production
- PlaybackAnalyticsService: return ErrTrackNotFound for missing track
- RecordPlay handler: return 404 when track not found
- CreateShare: use RespondSuccess, fix services.ErrTrackNotFound/ErrForbidden
- GetTrackLikes, UnlikeTrack: use RespondSuccess for consistent response
- GetUserLikedTracks test: fix route /users/:id/likes and params
- GetSharedTrack_InvalidToken: set share service in test

Phase 4 - Job queue transcoding:
- Add EnqueueTranscodingJob to JobEnqueuer interface
- Add TypeTranscoding and processTranscodingJob (stub) in JobWorker
- MockJobEnqueuer: implement EnqueueTranscodingJob

Phase 5 - Gamification cleanup:
- Move api_manager.go to internal/api/archive/
- Add archive/README.md documenting archived modules
- Update TODOS_AUDIT.md and FEATURE_STATUS.md
2026-02-17 16:01:45 +01:00
senke
b51a331b7a docs: align FEATURE_STATUS and validation scripts with v0.101 state
- docs/FEATURE_STATUS.md: 19 operational features (Gear, Live, Analytics, Roles)
- apps/web/docs/FEATURE_STATUS.md: reference 103 report, 19 features summary
- scripts/validate-full.sh: add full validation (validate-light + go test + npm test)
2026-02-17 15:35:58 +01:00
senke
057d9a8361 chore(docs): reorganize markdown files, add docs/README (P2) 2026-02-16 11:04:24 +01:00
senke
986d4bb0a4 docs: update REMEDIATION_PROGRESS with Phase 2 completion 2026-02-16 10:53:29 +01:00
senke
fed6e715c6 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
e866629a58 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
effbd7e36f 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
6cb9e7521d docs: add developer onboarding guide 2026-02-15 16:13:20 +01:00
senke
277120b0ad feat(payments): document Hyperswitch activation and validate checkout flow 2026-02-15 16:08:49 +01:00
senke
0fb75f759b 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
7f7b6547bc chore: consolidate pending changes (Hyperswitch, PostCard, dashboard, stream server, etc.) 2026-02-14 21:45:15 +01:00
senke
04c25aa24f 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
b733f47a33 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
d534c4e857 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
ffd578befd 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
875df12d8b small fixes : cors + login loop 2026-02-07 20:36:48 +01:00
senke
6ce5ea10a4 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
0a8aee2178 docs(frontend): update roadmap checklist and implementation log
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 19:52:48 +01:00
senke
3f9af329cd 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
17b57dc885 docs(audit): TrackDetailPage refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 06:57:46 +01:00
senke
1474078090 docs(audit): PlaylistDetailPage refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 06:47:07 +01:00
senke
b0921cd070 docs(audit): PlaylistActions refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 06:10:30 +01:00
senke
92bd9eeef3 docs(audit): EquipmentDetailView refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 05:46:19 +01:00
senke
7744e3ca0e docs(audit): TrackListPagination refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 05:04:24 +01:00
senke
5fd968ec4a docs(audit): PlaylistAnalytics refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 04:54:00 +01:00
senke
0352824f06 docs(audit): VirtualizedChatMessages refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 04:44:30 +01:00
senke
51c1937b51 docs(audit): LibraryPage refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 04:31:15 +01:00
senke
e3fa53925c docs(audit): router refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 04:16:43 +01:00
senke
e342776843 docs(audit): ChatView refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 04:01:30 +01:00
senke
509a893b50 docs(audit): AuthView refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 03:54:38 +01:00
senke
a5a5e001d0 docs(audit): AdminView refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 22:32:04 +01:00
senke
5a6d647434 docs(audit): NotificationsView refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 22:23:19 +01:00
senke
fe63e56c1f docs(audit): EducationView refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 22:11:45 +01:00
senke
99517571d3 docs(audit): SettingsView refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 22:00:12 +01:00
senke
0c19958cd2 docs(audit): CartView refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 21:51:30 +01:00
senke
b076b83f19 docs(audit): PurchasesView refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 21:43:08 +01:00
senke
7d8345684d docs(audit): SocialView refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 21:35:06 +01:00
senke
be4b297a06 docs(audit): MarketplaceView refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 21:26:33 +01:00
senke
ac1cf02544 docs(audit): AnalyticsView refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 18:34:24 +01:00
senke
b74dc97fb4 docs(audit): LiveView refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 18:16:11 +01:00
senke
11611749df docs(audit): CheckoutView refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 18:04:47 +01:00
senke
2c4ea8b7cd docs(audit): AdminDashboardView refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 17:54:39 +01:00
senke
a83688dac1 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
ae1b014a4b docs(audit): ChatInterface refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 14:25:15 +01:00
senke
7278bdccef docs(audit): CreateProductView refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 14:17:28 +01:00
senke
430c4e730d docs(audit): FileDetailsView refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 14:06:09 +01:00
senke
00a700b9a9 docs(audit): VirtualizedList refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 13:55:32 +01:00
senke
36a13b10c3 docs(audit): context/AudioContext refactorised 2026-02-05
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 13:46:58 +01:00
senke
c7c477574e 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
0388888845 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
5cafe00902 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
b125e215b2 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
senke
dacda36ac6 docs(audit): GroupDetailView refactor entry
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 12:35:28 +01:00
senke
2d94d09cda docs(audit): EditProfile refactor entry
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 11:45:29 +01:00
senke
049060cf9a docs(audit): FormBuilder refactor entry
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 11:36:31 +01:00
senke
f5c9916421 docs(audit): MonitoringDashboardContent subcomponents entry
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 11:28:03 +01:00
senke
1137819c92 docs(audit): Table (data) refactor entry
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 11:23:10 +01:00
senke
8353417f30 docs(audit): tooltip refactor entry
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 10:32:46 +01:00
senke
0d8b1b21f4 docs(audit): tabs refactor entry
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 10:12:56 +01:00
senke
82692c5c8f docs(audit): accordion refactor entry
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 02:33:34 +01:00
senke
7e420189b1 docs(audit): dropdown-menu refactor entry
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 02:27:58 +01:00
senke
f9ffc4d552 docs(audit): StudioView refactor entry
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 02:18:00 +01:00
senke
564eb059e2 docs(audit): CloudSettingsView refactor entry
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 02:11:58 +01:00
senke
7e139b77c1 docs(audit): AIToolsView refactor entry
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 02:07:27 +01:00
senke
fab2ca1077 docs(audit): ConnectivityView refactor entry
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 02:02:23 +01:00
senke
15fbe672df docs(audit): GoLiveView refactor entry
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 01:57:44 +01:00
senke
9450e68054 docs(audit): CreateProjectModal refactor entry
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 01:51:46 +01:00
senke
085d3ae049 docs(audit): ProjectsManager refactor entry
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 01:45:05 +01:00
senke
80acd8b50c docs(audit): TrackHistory refactor entry in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 01:35:21 +01:00
senke
3911f1d579 docs(audit): TwoFactorSetup refactor entry in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 01:26:01 +01:00
senke
8ee736ba38 docs(audit): UploadView refactor entry in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 01:12:44 +01:00
senke
e555235ad8 docs(audit): AddCollaboratorModal refactor entry in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 01:04:43 +01:00
senke
b77308476b docs(audit): ajouter SharePlaylistModal au tableau des refactorisations
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 00:58:07 +01:00
senke
6a31bf9ae9 docs(audit): ajouter CreatePlaylistDialog au tableau des refactorisations
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 00:53:10 +01:00
senke
4937beecf6 docs(audit): ajouter PlaylistSearch au tableau des refactorisations
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 00:47:47 +01:00
senke
4d4123c2a3 docs(audit): ajouter PlaylistBatchActions au tableau des refactorisations
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 00:37:26 +01:00
senke
f4eb6f82d8 docs(audit): ajouter AddTrackToPlaylistModal au tableau des refactorisations
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 00:22:33 +01:00
senke
4e2c920b49 docs(audit): add PlaylistTrackList to refactored components table
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 00:14:41 +01:00
senke
3d31321e96 docs(audit): add NotificationMenu to refactored components table
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 00:07:42 +01:00
senke
6dca8a36d9 docs(audit): add LibraryManager to refactored components table
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 00:00:58 +01:00
senke
b6563112ea docs(audit): add CourseDetailView to refactored components table
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 23:52:47 +01:00
senke
3120aa96f5 docs(audit): add CourseLearningView to refactored components table
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 23:46:20 +01:00
senke
a88d5a3e7c docs(audit): mark ProductDetailView (marketplace) as refactored in frontend audit
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 23:38:28 +01:00
senke
56940b16ad docs(audit): mark PlaybackHeatmap as refactored in frontend audit
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 23:31:25 +01:00
senke
ea2810d64b docs(audit): mark ProjectDetailView as refactored in frontend audit
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 23:24:57 +01:00
senke
c69124595e docs(audit): mark SessionsPage as refactored in frontend audit
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 23:19:26 +01:00
senke
9eb27d108b docs(audit): mark TrackSearchFilters as refactored in frontend audit
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 23:09:51 +01:00
senke
775f28f313 docs(audit): add AccountSettings to refactored components in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 23:04:31 +01:00
senke
5001769177 docs(audit): add Dialog to refactored components in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 23:00:02 +01:00
senke
6b21655f3f docs(audit): add PlaylistList to refactored components in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 22:55:11 +01:00
senke
aeab65de09 docs(audit): add TrackFilters to refactored components in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 22:46:26 +01:00
senke
0b6d1c0511 docs(audit): record AudioPlayer (components/player) refactor in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 22:40:19 +01:00
senke
4b6f272861 docs(audit): record DataList refactor in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 22:36:06 +01:00
senke
62708affa0 docs(audit): record OptimizedImage refactor in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 22:31:48 +01:00
senke
5c228ae374 docs(audit): record AvatarUpload refactor in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 22:21:13 +01:00
senke
7d9b7084d6 docs(audit): record DatePicker refactor in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 22:15:27 +01:00
senke
5e4266fc5e docs(audit): record ShareLinkManager refactor in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 22:09:42 +01:00
senke
b70900a8f0 docs(audit): record PlaybackDashboard refactor in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 22:04:54 +01:00
senke
f61d05b527 docs(audit): record MonitoringDashboard refactor in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 21:57:59 +01:00
senke
2b3a5d84b9 docs(audit): record RegisterPage refactor in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 21:50:42 +01:00
senke
03f4387f13 docs(audit): record FileManagerView refactor in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 21:45:27 +01:00
senke
a4d5e19099 docs(audit): record SearchPage refactor in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 21:39:51 +01:00
senke
5d9a9418b7 docs(audit): record NotificationsPage refactor in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 21:34:54 +01:00
senke
7541e5a528 docs(audit): mark CloudFileBrowser as module in features/studio, update problemes identifies
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 21:19:58 +01:00
senke
df5e51d105 docs(audit): mark Select as refactored in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 21:16:43 +01:00
senke
8fcabd49f5 docs(audit): mark file-upload as refactored in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 21:09:32 +01:00
senke
a51640f1a0 docs(audit): mark UploadModal as refactored in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 21:03:23 +01:00
senke
4490e78ff6 docs(ui): update audit report and mark LazyComponent as refactored in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 20:49:46 +01:00
senke
d7aaa0e69c docs(views): update audit report and mark GearView as refactored in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 20:40:12 +01:00
senke
1eb766d0fa docs(views): update audit report and mark ProfileView as refactored in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 20:31:26 +01:00
senke
335faefe17 docs(user): update audit report and mark ProfileForm as refactored in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 20:21:28 +01:00
senke
81cc36d5ff docs(audit): mark ChatSidebar as refactored in FRONTEND_DEEP_DIVE_AUDIT
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 20:07:56 +01:00
senke
5853cb2432 docs(search): update audit report for Search refactor
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 19:46:03 +01:00
senke
af8387eece docs(tracks): update audit report for CommentThread refactor
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 19:21:09 +01:00
senke
6be3a9653f chore(dx): add .cursorrules and design system audit documentation 2026-02-05 14:18:17 +01:00
senke
c377b57e6a docs(storybook): final comparison 67%→0%, contract update, silent toasts in Storybook 2026-02-05 13:39:59 +01:00
senke
39ab058416 docs: add Storybook contract (decorator, MSW mocks, no app providers in stories) 2026-02-05 13:22:16 +01:00
senke
31c9f2af0c feat: global update including storybook setup and backend fixes
- Web: Setup Storybook, added addons, configured Tailwind, added stories for UI components.
- Backend: Updated API router, database, workers, and auth in common.
- Stream Server: Removed SQLx queries and updated auth.
- Docs & Scripts: Updated documentation and recovery scripts.
2026-02-02 19:34:14 +01:00
senke
5ea70a9250 config(template): add comprehensive .env.template
Created centralized environment template with all configuration
variables documented and categorized.

Categories:
- REQUIRED: DATABASE_URL, JWT_SECRET (min 32 chars), REDIS
- RECOMMENDED: SENTRY_DSN, COOKIE_SECURE, CORS_ALLOWED_ORIGINS
- OPTIONAL: RABBITMQ, SMTP, CLAMAV, S3

Features:
- Clear documentation for each variable
- Default values specified
- Validation rules documented
- Environment-specific guidance (dev vs prod)
- Security notes for sensitive values

Impact: Single source of truth for configuration, reduces config drift.

Fixes: P3.4 (part 1) from audit AUDIT_TEMP_29_01_2026.md
2026-01-29 23:32:18 +01:00
senke
0d7586692f config(dev): add Vite proxy for API requests
Added proxy configuration to forward /api requests to backend
on localhost:8080 during development.

Benefits:
- Eliminates CORS errors in dev (requests are same-origin)
- No need for CORS_ALLOWED_ORIGINS in dev environment
- Matches production behavior (frontend and API on same domain)
- Simplifies local development setup

Configuration:
- Target: http://localhost:8080
- changeOrigin: true (modifies Host header)
- secure: false (allows self-signed certs in dev)

Impact: Dev environment more stable, no CORS configuration needed.

Fixes: P2.1 from audit AUDIT_TEMP_29_01_2026.md
2026-01-29 23:22:32 +01:00
senke
6d036133ca batch 1 2025-12-22 22:00:50 +01:00
senke
d33c351ac6 refonte: backend-api go first; phase 1 2025-12-12 21:34:34 -05:00
okinrev
8d6ce72bb2 report generation and future tasks selection 2025-12-08 19:57:54 +01:00
okinrev
8caa2fd7ca STABILISATION: phase 3–5 – API contract, tests & chat-server hardening 2025-12-06 17:21:59 +01:00
okinrev
25e82d1e3d STABILISATION: phase 1 & phase 2 2025-12-06 14:45:07 +01:00
okinrev
5ffcd50e0a P0: stabilisation backend/chat/stream + nouvelle base migrations v1
Backend Go:
- Remplacement complet des anciennes migrations par la base V1 alignée sur ORIGIN.
- Durcissement global du parsing JSON (BindAndValidateJSON + RespondWithAppError).
- Sécurisation de config.go, CORS, statuts de santé et monitoring.
- Implémentation des transactions P0 (RBAC, duplication de playlists, social toggles).
- Ajout d’un job worker structuré (emails, analytics, thumbnails) + tests associés.
- Nouvelle doc backend : AUDIT_CONFIG, BACKEND_CONFIG, AUTH_PASSWORD_RESET, JOB_WORKER_*.

Chat server (Rust):
- Refonte du pipeline JWT + sécurité, audit et rate limiting avancé.
- Implémentation complète du cycle de message (read receipts, delivered, edit/delete, typing).
- Nettoyage des panics, gestion d’erreurs robuste, logs structurés.
- Migrations chat alignées sur le schéma UUID et nouvelles features.

Stream server (Rust):
- Refonte du moteur de streaming (encoding pipeline + HLS) et des modules core.
- Transactions P0 pour les jobs et segments, garanties d’atomicité.
- Documentation détaillée de la pipeline (AUDIT_STREAM_*, DESIGN_STREAM_PIPELINE, TRANSACTIONS_P0_IMPLEMENTATION).

Documentation & audits:
- TRIAGE.md et AUDIT_STABILITY.md à jour avec l’état réel des 3 services.
- Cartographie complète des migrations et des transactions (DB_MIGRATIONS_*, DB_TRANSACTION_PLAN, AUDIT_DB_TRANSACTIONS, TRANSACTION_TESTS_PHASE3).
- Scripts de reset et de cleanup pour la lab DB et la V1.

Ce commit fige l’ensemble du travail de stabilisation P0 (UUID, backend, chat et stream) avant les phases suivantes (Coherence Guardian, WS hardening, etc.).
2025-12-06 11:14:38 +01:00
okinrev
94dac54d40 P0 UUID Phase A: migrations + backend Go UUID refactor 2025-12-04 02:15:48 +01:00