Commit graph

2174 commits

Author SHA1 Message Date
senke
679345be52 [FIX] Fix migration errors for missing tables
- Add table existence checks before adding constraints/triggers
- Fix playback_analytics references (table doesn't exist)
- Fix playlist_versions references (table doesn't exist)
- Fix follows.deleted_at reference (column doesn't exist)
- Fix marketplace_products/orders triggers (tables don't exist)
- All migrations now pass successfully
2026-01-04 01:44:13 +01:00
senke
6dc01a0489 [DOC] Update troubleshooting guide with Redis system service solution 2026-01-04 01:44:13 +01:00
senke
b9d2c145e8 [DOC] Add simple startup guide for integration testing 2026-01-04 01:44:13 +01:00
senke
990bc980fa [FIX] Fix migration SQL syntax and add troubleshooting guide
- Fix 050_data_validation_constraints.sql: Replace IF NOT EXISTS with DO blocks
- PostgreSQL doesn't support IF NOT EXISTS with ADD CONSTRAINT
- Add quick troubleshooting guide (DEPANNAGE_RAPIDE.md)
- Note: .env file is gitignored (as expected)
2026-01-04 01:44:13 +01:00
senke
fef6d568c5 [DOC] Fix all remaining port 5173 references to 3000 2026-01-04 01:44:13 +01:00
senke
5e43ee87fd [DOC] Fix remaining port 5173 references to 3000 2026-01-04 01:44:13 +01:00
senke
b85b99ed5a [DOC] Fix frontend port to 3000 in startup guides
- Update port from 5173 to 3000 (actual Vite config)
- Update CORS_ALLOWED_ORIGINS examples
- Fix all URL references
2026-01-04 01:44:13 +01:00
senke
a9ba3b990d [DOC] Add quick commands reference for integration testing 2026-01-04 01:44:13 +01:00
senke
f228954f3f [DOC] Add integration testing startup guide
- Complete guide for testing backend/frontend integration
- Docker Compose setup instructions
- Environment variables configuration
- Troubleshooting section
- Quick start commands
2026-01-04 01:44:13 +01:00
google-labs-jules[bot]
e35ef8a6ec feat: production-ready fixes and hybrid deployment support
- Frontend Fixes:
  - Correct import paths for `useToast` hook in `WebhooksPage.tsx` and `AdminDashboardPage.tsx` (camelCase vs kebab-case).
  - Update `WebhooksPage.tsx` to use the existing custom `Dialog` component API instead of non-existent composed components.
- Backend Fixes:
  - Remove explicit transaction blocks from `011_cleanup_refresh_tokens.sql` to avoid conflict with migration runner's transaction handling.
- Configuration:
  - Create `.env` file with production configuration for local testing.
  - Fix Nginx configuration in `apps/web/nginx.conf`:
    - Use resolver and variables for upstream proxies to ensure frontend starts even if backends are down.
    - Fix stream server proxy path to route `/stream` to `/ws`.
  - Fix `docker-compose.production.yml` to use correct `Dockerfile` for stream server.
  - Add `docker-compose.hybrid.yml` to support running infrastructure (DBs) in Docker with `network_mode: host` while running apps natively (bypassing Docker build rate limits).
2025-12-31 17:09:47 +00:00
okinrev
faa64ded14 Merge pull request #3 from okinrev/production-ready-fixes-10504759203042880560
feat: Prepare production-ready environment and fix frontend build
2025-12-31 17:32:59 +01:00
google-labs-jules[bot]
59ead9e2b8 feat: prepare production environment and fix frontend build
- Create .env file with production configuration for local testing.
- Fix frontend compilation errors:
  - Correct import paths for `useToast` hook in `WebhooksPage.tsx` and `AdminDashboardPage.tsx`.
  - Update `WebhooksPage.tsx` to use the existing custom `Dialog` component API.
- Improve Nginx configuration in `apps/web/nginx.conf`:
  - Use resolver and variables for upstream proxies to prevent crash when backend services are down.
  - Fix stream server proxy path to route `/stream` to `/ws` as expected by the backend.
- Update `docker-compose.production.yml` to use correct `Dockerfile` name for stream server.
2025-12-31 16:27:36 +00:00
senke
123022a7b3 final remediation 2025-12-26 09:56:47 +01:00
senke
4b9f8bd9f6 [INTEGRATION] Achieve 10/10 integration score
 All 3 V2 tasks completed:
- INT-V2-001: Fixed legacy auth store reference
- INT-V2-002: Use TrackStatus enum in types/api.ts
- INT-V2-003: Updated documentation with id: string

Integration score: 8.5/10 → 10/10
All 35 tasks completed (32 initial + 3 V2)
2025-12-26 09:55:05 +01:00
senke
24319874a2 [INT-V2-003] Update documentation with id: string
- Replace id: number with id: string in player/README.md
- Replace id: number with id: string in Table.test.tsx
- Update test data to use string IDs
- Aligns with UUID standard (id: string everywhere)
2025-12-26 09:54:51 +01:00
senke
75d1081488 [INT-V2-002] Use TrackStatus enum in types/api.ts
- Replace string literal union with TrackStatus enum
- Import TrackStatus from @/features/tracks/types/track
- Improves type-safety for Track.status field
2025-12-26 09:54:32 +01:00
senke
badd652577 [INT-V2-001] Fix legacy auth store reference in stateInvalidation.ts
- Replace require('@/stores/auth') with require('@/features/auth/store/authStore')
- Aligns with INT-AUTH-002: single auth store migration
2025-12-26 09:54:08 +01:00
senke
e07a1fc805 [AUDIT] Post-implementation integration audit - Score: 8.5/10
- 32/32 tâches d'intégration complétées (100%)
- Score amélioré: 6.5/10 → 8.5/10 (+2.0)
- Production-ready avec 3 améliorations mineures optionnelles
- Rapport complet: INTEGRATION_AUDIT_POST_IMPLEMENTATION.md
- TodoList V2: VEZA_INTEGRATION_V2_TODOLIST.json (3 tâches P3)
2025-12-26 09:41:52 +01:00
senke
10060bf878 [INT-DOC-001] Generate OpenAPI/Swagger documentation (already configured, added /docs alias) 2025-12-26 09:32:56 +01:00
senke
81918d35ba [INT-TEST-002] Create E2E test for CRUD operations 2025-12-26 09:32:00 +01:00
senke
fd1fc4346b [INT-TEST-001] Create E2E test for complete auth flow 2025-12-26 09:31:16 +01:00
senke
d122e909dc [INT-ENDPOINT-006] Implement backend conversation management endpoints (already implemented) 2025-12-26 09:29:24 +01:00
senke
dcee3f4080 [INT-ENDPOINT-005] Implement backend playlist collaborator endpoints (already implemented) 2025-12-26 09:28:54 +01:00
senke
468ef6e38f [INT-ENDPOINT-004] Implement backend GET /api/v1/playlists/search (already implemented) 2025-12-26 09:28:26 +01:00
senke
7683f779c8 [INT-ENDPOINT-003] Implement backend GET /api/v1/tracks/search (already implemented) 2025-12-26 09:27:56 +01:00
senke
c700953728 [INT-ENDPOINT-002] Implement backend GET /api/v1/users/search (already implemented) 2025-12-26 09:27:26 +01:00
senke
9747aaa041 [INT-ENDPOINT-001] Add frontend service for GET /api/v1/sessions/stats 2025-12-26 09:26:50 +01:00
senke
40591f70fc [INT-CLEANUP-004] Add barrel exports for clean imports 2025-12-26 09:25:52 +01:00
senke
75b6c7197b [INT-CLEANUP-003] Remove legacy hooks using old API client (already completed - no legacy hooks found) 2025-12-26 09:24:01 +01:00
senke
f54e5e558f [INT-CLEANUP-002] Consolidate type definitions in single location 2025-12-26 09:22:05 +01:00
senke
1fc6a66d37 [INT-CLEANUP-001] Remove all unused API service files (offline-storage.ts, secure-auth.ts) 2025-12-26 09:17:31 +01:00
senke
087aaa5a2e [INT-AUTH-004] Add token expiration pre-check 2025-12-26 09:15:13 +01:00
senke
546bc9fba3 [INT-AUTH-003] Verify refresh token flow handles edge cases 2025-12-26 09:13:36 +01:00
senke
563eb264b6 [INT-AUTH-002] Remove duplicate auth store - migrate to features/auth/store/authStore.ts 2025-12-26 09:11:46 +01:00
senke
11b61b14a7 [INT-API-005] Add retry logic for 429 rate limit responses 2025-12-26 09:10:26 +01:00
senke
2fd5b3935f [INT-API-004] Add request timeout configuration per endpoint type 2025-12-25 22:42:56 +01:00
senke
550d98b531 [INT-API-003] Standardize error handling across all services 2025-12-25 22:42:07 +01:00
senke
64b56b5e56 [INT-API-002] Verify response unwrapping in interceptor 2025-12-25 22:40:59 +01:00
senke
90f86da7d9 [INT-API-001] Remove duplicate API client (lib/apiClient.ts) - already completed 2025-12-25 22:40:05 +01:00
senke
b0557335d5 [INT-TYPE-008] Validate AuthResponse matches backend exactly 2025-12-25 22:39:41 +01:00
senke
99e02b6a3d [INT-TYPE-007] Create PaginatedResponse generic type 2025-12-25 22:38:20 +01:00
senke
259ddeb9dd [INT-TYPE-006] Complete ApiError interface with all backend fields 2025-12-25 22:37:36 +01:00
senke
fbf6973643 [INT-TYPE-005] Create PlaylistVisibility enum aligned with backend 2025-12-25 22:36:51 +01:00
senke
38eccdfcaa [INT-TYPE-004] Create TrackStatus enum aligned with backend 2025-12-25 22:36:20 +01:00
senke
a183599fb1 [INT-TYPE-003] Standardize Playlist.id to string everywhere 2025-12-25 22:35:38 +01:00
senke
961149d837 [INT-TYPE-002] Standardize Track.id to string everywhere 2025-12-25 22:34:55 +01:00
senke
3d9f116649 [INT-TYPE-001] Standardize User.id to string everywhere 2025-12-25 22:33:16 +01:00
senke
89928e186a [INT-AUTH-001] Ensure CSRF protection active in production 2025-12-25 22:28:46 +01:00
senke
df426df2c6 [INT-CORS-002] Add preflight request handling validation 2025-12-25 22:27:05 +01:00
senke
5719e47a1c [INT-CORS-001] Configure CORS_ALLOWED_ORIGINS for production 2025-12-25 22:26:41 +01:00