Commit graph

233 commits

Author SHA1 Message Date
senke
25e7345a6a test(chat): Sprint 5 -- unit tests, E2E tests, feature parity validation
- Add hub_test.go: register/unregister, join/leave room, broadcast, exclude sender,
  send to user, multiple clients same user (6 tests)
- Add handler_messages_test.go: send message, missing fields, edit ownership check,
  soft delete (4 tests)
- Add handler_realtime_test.go: typing broadcast, read receipts, reactions add/remove,
  delivered status (5 tests)
- Add e2e_chat_ws_test.go: auth valid, missing token, invalid token, ping/pong
- Add e2e_chat_messages_test.go: 2-client message flow, typing indicator
- Create CHAT_FEATURE_PARITY.md: 25-feature checklist (all OK or IMPROVED)
2026-02-22 20:49:32 +01:00
senke
ae8a6efb3c docs(v0.502): plan d'implémentation Chat Server Rewrite (Rust → Go)
- Create ADR-002-chat-server.md: decision to rewrite Rust chat in Go
- Rewrite V0_502_RELEASE_SCOPE.md with 4 detailed lots (34 tasks)
- Create PLAN_V0_502_IMPLEMENTATION.md with 6 sprints and commit instructions
- Update .cursorrules scope reference for v0.502
2026-02-22 20:26:18 +01:00
senke
4bec537766 docs(v0.501): Sprint 6 -- finalization and tag
- FIN-01: Add smoke test results (22/22 features pass)
- FIN-02: Update PROJECT_STATE.md for v0.501
- FIN-03: Update CHANGELOG.md with v0.501 entries
- FIN-04: Archive V0_501 scope, create V0_502 placeholder
- FIN-05: Add v0.501 retrospective
- FIN-06: Validate Go build passes
2026-02-22 18:45:07 +01:00
senke
28136f2897 feat(v0.501): Sprint 5 -- integration, tests, and cleanup
- INT-01: Add E2E streaming tests (upload -> HLS auth)
- INT-02: Add E2E cloud tests (CRUD auth, public gear)
- INT-03: Split track/handler.go into 4 focused sub-handlers
- INT-04: Create migration squash script + MIGRATIONS.md
- INT-05: Add Trivy container image scanning CI workflow
- INT-06: Replace production console.log with structured logger
2026-02-22 18:40:07 +01:00
senke
bcc885327b feat(v0.501): Sprint 4 -- Cloud frontend + Gear advanced
- C1-09: Create CloudPage with folder tree, file list, and /cloud route
- C1-10: Create CloudUploadModal with drag-and-drop and progress
- C1-11: Create CloudFilePreview mini player inline
- C1-12: Add Cloud stories (loading, empty, populated, quota full)
- G1-01: Add is_public toggle, public gear endpoint, GearShowcase
- G1-02: Add gear image upload endpoints, GearImageGallery component
- G1-03: Add gear search with ILIKE + SearchBar in toolbar
- G1-04: Add stories for GearShowcase and GearImageGallery
2026-02-22 18:30:49 +01:00
senke
bce563beb5 docs: add v0.404 CHANGELOG and retrospective
FIN-05 + FIN-06: Complete CHANGELOG for v0.404 with all security,
infrastructure, code quality, documentation, testing, and integration
changes. Retrospective includes pre/post scores (4.2 -> 6.6/10).
2026-02-22 17:57:49 +01:00
senke
022e274636 docs: archive V0_404_RELEASE_SCOPE.md (completed)
FIN-04: Moved scope document to docs/archive/ with completion header.
2026-02-22 17:56:59 +01:00
senke
097fe7a59b docs: update SCOPE_CONTROL.md and cursorrules to reference v0.501
FIN-03: Active scope now points to V0_501_RELEASE_SCOPE.md.
Updated .cursorrules scope from v0.402 to v0.501.
2026-02-22 17:56:55 +01:00
senke
9e7e2f6e37 docs: update PROJECT_STATE.md to reflect v0.404 stabilization
FIN-02: Updated version to v0.404, added security score improvements
(5->7/10), infrastructure readiness, code quality metrics, and
updated next version target to v0.501.
2026-02-22 17:56:51 +01:00
senke
5cf0baabc8 docs: add ADR-001 (Go+Rust architecture) and ADR-002 (chat server migration)
CLN-08 + INT-01: Documents the rationale for multi-language architecture
and the decision to rewrite chat server from Rust to Go in v0.501.
2026-02-22 17:45:15 +01:00
senke
4e72fe5fda docs: align FEATURE_STATUS.md with actual code state
CLN-05: Corrected OAuth status (Discord/Spotify not implemented),
HLS streaming (integration in progress), Chat (partial). Added
erratum section for v0.404 audit.
2026-02-22 17:45:03 +01:00
senke
f64c858464 docs: prepare v0.403 implementation (scope, plan, SCOPE_CONTROL)
- Add V0_403_RELEASE_SCOPE.md: P3 Payout, R1 Reviews, F1 Factures, R2 Remboursements
- Add PLAN_V0_403_IMPLEMENTATION.md: phases détaillées, commits suggérés
- Update SCOPE_CONTROL: reference v0.403, v0.402 taguée
- Update FEATURE_STATUS: section Prévu en v0.403
- Update PROJECT_STATE: prochaines étapes v0.403
2026-02-22 16:01:03 +01:00
senke
d502ea83ee docs: update PAYMENTS_SETUP for checkout complete URL 2026-02-22 14:42:44 +01:00
senke
23034cd3a1 docs: update SCOPE_CONTROL for v0.402 2026-02-22 14:26:28 +01:00
senke
ef4afc39d0 docs: add V0_402_RELEASE_SCOPE and PLAN_V0_402_IMPLEMENTATION 2026-02-22 14:26:19 +01:00
senke
c97ebe70e7 test(marketplace): add MSW handlers, update CHANGELOG and docs for v0.401 2026-02-22 14:23:28 +01:00
senke
428bdb088d docs(scope): update SCOPE_CONTROL for v0.401
- Référence active V0_401_RELEASE_SCOPE
- Règle d'or, checklist, historique versions alignés
2026-02-22 14:02:31 +01:00
senke
e5f44941b7 docs(v0.401): add V0_401_RELEASE_SCOPE and PLAN_V0_401_IMPLEMENTATION
- V0_401_RELEASE_SCOPE: Phase 4 Commerce (M1 produits, M2 licences, M3 seller)
- PLAN_V0_401_IMPLEMENTATION: phases 0-4, diagramme Mermaid, commits suggérés
2026-02-22 14:02:24 +01:00
senke
88ef467820 chore(docs): remove V0_302_IMPLEMENTATION, update V0_302_RELEASE_SCOPE 2026-02-22 03:46:50 +01:00
senke
b517258ef5 feat(chat): add call signaling types 2026-02-22 03:46:10 +01:00
senke
5987c846b2 docs(scope): update SCOPE_CONTROL for v0.303 2026-02-22 03:38:49 +01:00
senke
eea7262d93 docs(v0.303): add full V0_303_RELEASE_SCOPE with C2 detail 2026-02-22 03:38:43 +01:00
senke
0bf60726d3 docs: prepare v0.302 documentation - scope, implementation guide, SCOPE_CONTROL 2026-02-22 03:35:45 +01:00
senke
5d12ec2c6f docs: add V0_303_RELEASE_SCOPE placeholder for transition 2026-02-22 03:28:59 +01:00
senke
c918e0204d docs: update FEATURE_STATUS, PROJECT_STATE, CHANGELOG for v0.302 2026-02-22 03:24:01 +01:00
senke
fd606a6234 docs: préparation v0.302 - V0_302_RELEASE_SCOPE, PROJECT_STATE, SCOPE_CONTROL, FEATURE_STATUS, CHANGELOG 2026-02-21 05:42:16 +01:00
senke
a27ccc12b6 docs: plan finalisation v0.301, checklists cochées, PROJECT_STATE et SCOPE_CONTROL à jour 2026-02-21 05:36:33 +01:00
senke
f145ff740b docs: update FEATURE_STATUS, PROJECT_STATE, CHANGELOG for v0.301 2026-02-21 05:32:29 +01:00
senke
15398e8941 docs: prepare v0.301 Phase 3 Social implementation
- Add V0_301_RELEASE_SCOPE.md: P0 (Chat Server fix), C1 (typing, read receipts),
  P1 (presence), S1 (social enrichi)
- Update SCOPE_CONTROL.md to reference v0.301
- Update PROJECT_STATE.md and FEATURE_STATUS.md
- Update .cursorrules scope to v0.301
2026-02-21 05:13:43 +01:00
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
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