Commit graph

154 commits

Author SHA1 Message Date
senke
bcde78461e docs: update PROJECT_STATE post v0.203 merge 2026-02-21 05:11:36 +01:00
senke
95aa9682d7 docs: update FEATURE_STATUS, PROJECT_STATE, CHANGELOG for v0.203 2026-02-20 18:47:23 +01:00
senke
cbd2266bc3 chore(release): create branch release/v0.203 2026-02-20 18:31:29 +01:00
senke
b5fe6e8fd1 feat(release): v0.202 — Lots G, H, F, C, D
- Lot G: Recherche avancée (musical_key, tri pertinence, autocomplete, facettes, historique)
- Lot H: Analytics créateur (stats, charts, completion rate, export CSV/JSON)
- Lot F: Seller dashboard (GET /sell/stats, liste produits)
- Lot C: Player (crossfade, gapless preload, PiP)
- Lot D2: Autoplay (GET /tracks/recommendations, section À écouter ensuite)

Backend: GetRecommendations handler, route /tracks/recommendations
Frontend: PlayerQueue recommendations, fix TS errors (GlobalPlayer, AnalyticsViewKpiGrid, etc.)
Docs: FEATURE_STATUS, PROJECT_STATE, CHANGELOG, SCOPE_CONTROL
2026-02-20 18:16:17 +01:00
senke
992e93cd23 chore: finalize v0.201 docs (CHANGELOG, FEATURE_STATUS, PROJECT_STATE, SCOPE_CONTROL) 2026-02-20 15:44:30 +01:00
senke
425b11d50c docs: prepare v0.201 — scope, project state, SCOPE_CONTROL
- V0_201_RELEASE_SCOPE.md: Phase 2 Contenu (recherche, métadonnées, analytics)
- PROJECT_STATE.md: état actuel, prochaines étapes
- SCOPE_CONTROL.md: référence v0.201
- .cursorrules: scope v0.201
2026-02-20 15:23:12 +01:00
senke
a11f8e526a chore(v0.103): finalize release — CHANGELOG, FEATURE_STATUS, .cursorrules scope 2026-02-20 15:14:25 +01:00
senke
813e83caab docs: document WebAuthn/Passkeys deferral to v0.104 (A3) 2026-02-20 14:52:53 +01:00
senke
5a43cb8356 docs: document 2FA SMS deferral to v0.104 (A2) 2026-02-20 14:49:21 +01:00
senke
6a1686aad8 feat(auth): add OAuth Spotify provider (A1) 2026-02-20 14:48:08 +01:00
senke
134b8979c0 chore(v0.102): consolidate remaining changes — docs, frontend, backend
- docs: SCOPE_CONTROL, CONTRIBUTING, README, .github templates
- frontend: DeveloperDashboardView, Player components, MSW handlers, auth, reactQuerySync
- backend: playback_analytics, playlist_service, testutils, integration README

Excluded (artifacts): .auth, playwright-report, test-results, storybook_audit_detailed.json
2026-02-20 13:02:12 +01:00
senke
ef016a07ed docs(live): document Go Live limitation (A6) 2026-02-20 12:56:29 +01:00
senke
618dd77e11 docs: close v0.101, add v0.102 scope placeholder 2026-02-19 22:50:30 +01:00
senke
b05d08649f chore: finalize v0.101 release — all criteria validated 2026-02-19 19:31:06 +01:00
senke
2b7a01bf7d fix(e2e): align local E2E setup with CI or document CI-only validation 2026-02-19 19:23:17 +01:00
senke
42f2f54abc chore: finalize v0.101 release — all criteria validated 2026-02-19 19:19:19 +01:00
senke
aad59b6b8a docs: validate no regression on critical flows for v0.101 2026-02-19 19:13:38 +01:00
senke
7aaaf9fef7 fix(e2e): align local E2E setup with CI or document CI-only validation 2026-02-19 19:10:15 +01:00
senke
27c48e703a docs: finalize v0.101 security checklist and scope 2026-02-19 19:01:56 +01:00
senke
5d0f303e3c docs: update v0.101 remediation status and scope checklist 2026-02-19 16:27:22 +01:00
senke
df0eb9b0ad fix(e2e): align CI Go version to 1.24 for v0.101
fix(web): resolve lint errors for v0.101
- eslint: add ignores (e2e, scripts, playwright-report, generated types)
- eslint: add browser globals, disable react-hooks in stories
- fix empty catch blocks (Cart, MarketplacePage, RolesPage, SettingsPage)
- fix PlayerExpanded: move useEffect before early return
- fix TrackHistory.test: rename type import to avoid no-redeclare
2026-02-19 16:27:10 +01:00
senke
c73effcf88 chore(docs): add v0.101 diagnostic baseline
- Add V0_101_DIAGNOSTIC_BASELINE.md with initial diagnostic results
- Fix eslint: remove storybook plugin dep, add dist_verification to ignores
- Fix .storybook/preview.tsx: remove unused React, use object shorthand
2026-02-19 16:08:05 +01:00
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