veza/veza-backend-api/docs/TODOS_AUDIT.md
senke 06d56dd298 feat(backend): OAuth FRONTEND_URL from config, docs update
- Add FrontendURL to config (FRONTEND_URL or VITE_FRONTEND_URL)
- OAuth handlers use config instead of os.Getenv
- Update TODOS_AUDIT: mark UUID migration items as resolved
- Add ISSUES_P2_BACKLOG.md for GitHub issues
- Add ROUTES_ORPHANES.md for routes without UI
- Document FRONTEND_URL in .env.example
2026-02-17 16:42:23 +01:00

187 lines
6.6 KiB
Markdown

# TODOs Audit Report
**Date**: 2025-01-27
**Total TODOs/FIXMEs/HACKs/XXXs Found**: 31
**Phase 3 Update (2026-02)**: Audit refreshed. P1/P2 items tracked for next sprint. Read replicas (3.7) and CDN backend wiring documented.
## Summary
This document lists all TODO, FIXME, HACK, and XXX comments found in the codebase, categorized by priority and status.
## Priority Categories
- **P0**: Critical - Blocks functionality or security
- **P1**: High - Important for production readiness
- **P2**: Medium - Quality of life improvements
- **P3**: Low - Nice to have, technical debt
## Status
- **Open**: Not yet addressed
- **In Progress**: Currently being worked on
- **Resolved**: Completed
- **Deferred**: Postponed to future work
---
## TODOs by File
### `internal/core/track/service.go`
- **TODO(P2-GO-018)**: Enqueue job pour traitement asynchrone (metadata, waveform, etc.) selon ORIGIN_ASYNC_PROCESSING
- **Priority**: P2
- **Status**: Open
- **Category**: Performance optimization
### `internal/core/track/handler.go`
- ~~**TODO(P2-GO-004)**: trackUploadService attend int64 - Migration UUID partielle à compléter~~
- ~~**TODO(P2-GO-004)**: Migration UUID partielle - trackUploadService nécessite migration vers UUID~~
- **Status**: **Resolved** (2026-02) — trackUploadService utilise uuid.UUID (GetUploadProgress, UpdateUploadStatus, GetUploadStats)
### `internal/database/database.go`
- **TODO**: Implémenter OAuth user lookup
- **Priority**: P2
- **Status**: Open
- **Category**: Feature incomplete
- **TODO**: Implémenter avec vraie DB (3 occurrences)
- **Priority**: P2
- **Status**: Open
- **Category**: Implementation placeholder
### `internal/handlers/oauth_handlers.go`
- ~~**TODO**: Get from config (frontendURL hardcoded)~~
- **Status**: **Resolved** (2026-02) — frontendURL lu depuis config.FrontendURL (FRONTEND_URL or VITE_FRONTEND_URL)
### `internal/handlers/session.go`
- **TODO**: Déterminer si c'est la session actuelle
- **Priority**: P2
- **Status**: Open
- **Category**: Feature incomplete
### `internal/logging/logger.go`
- **TODO**: Implémenter avec AtomicLevel lors de la création du logger
- **Priority**: P2
- **Status**: Open
- **Category**: Enhancement
### `internal/repositories/playlist_collaborator_repository.go`
- ~~**FIXME**: Assurer que le modèle PlaylistCollaborator utilise UUID~~
- **Status**: **Resolved** (2026-02) — Interface et modèle utilisent uuid.UUID
### `internal/services/playlist_version_service.go`
- ~~**FIXME**: models.PlaylistVersion ID types need check. Assuming repo handles UUID if struct updated.~~
- **Status**: **Resolved** (2026-02) — models.PlaylistVersion utilise uuid.UUID (ID, PlaylistID, UserID)
### `internal/services/track_history_service.go`
- ~~**FIXME**: models.TrackHistory needs UUID too if not updated~~
- **Status**: **Resolved** (2026-02) — models.TrackHistory et RecordHistoryParams utilisent uuid.UUID
### `internal/services/job_service.go`
- **TODO**: Intégrer asynq ou autre système de queue (3 occurrences)
- **Priority**: P2
- **Status**: Open
- **Category**: Architecture
### `internal/services/playlist_service.go`
- ~~**FIXME**: PlaylistVersionService likely needs update for UUID too, but assuming it takes what we give or we handle it later~~
- **Status**: **Resolved** (2026-02) — PlaylistVersionService et modèles alignés sur UUID
### `internal/api/archive/api_manager.go` (archived, build-ignored)
- **TODO**: Réactiver api_manager.go après stabilisation du noyau et alignement des services (graphql, grpc, websocket, features)
- **Priority**: P3
- **Status**: Deferred (fichier archivé)
- **Category**: Future feature
- **TODO**: Implement feature start
- **Priority**: P3
- **Status**: Deferred
- **Category**: Future feature
- **TODO**: Implement feature stop
- **Priority**: P3
- **Status**: Deferred
- **Category**: Future feature
- **TODO**: Implement comprehensive metrics collection
- **Priority**: P2
- **Status**: Open
- **Category**: Enhancement
### `internal/api/user/service.go`
- **TODO**: Parse JSON strings to structs (simplified for now)
- **Priority**: P2
- **Status**: Open
- **Category**: Implementation placeholder
- **TODO**: Serialize structs to JSON (simplified for now)
- **Priority**: P2
- **Status**: Open
- **Category**: Implementation placeholder
### `internal/api/handlers/chat_handlers.go`
- **TODO**: Réactiver chat_handlers après stabilisation du noyau et alignement des services (ChatService, MessageType, RoomType)
- **Priority**: P3
- **Status**: Deferred
- **Category**: Future feature
### `internal/api/handlers/two_factor_handlers.go`
- **TODO**: Réactiver two_factor_handlers après stabilisation du noyau et alignement des services (AuthService.GetUserByID)
- **Priority**: P3
- **Status**: Deferred
- **Category**: Future feature
### `internal/api/admin/service.go`
- **TODO**: Implement based on doc_admin_handler.md (3 occurrences)
- **Priority**: P2
- **Status**: Open
- **Category**: Feature incomplete
### `internal/config/config.go`
- **TODO**: Améliorer la configuration CORS dans api/router.go pour utiliser c.CORSOrigins depuis la config
- **Priority**: P2
- **Status**: Open
- **Category**: Code quality
### `cmd/modern-server/main.go`
- **TODO**: Réactiver internal/api/handlers après stabilisation du noyau
- **Priority**: P3
- **Status**: Deferred (file deprecated)
- **Category**: Legacy code
- **TODO**: Réactiver services après stabilisation du noyau
- **Priority**: P3
- **Status**: Deferred (file deprecated)
- **Category**: Legacy code
- **TODO**: Utiliser cfg.LogLevel pour déterminer le mode
- **Priority**: P2
- **Status**: Deferred (file deprecated)
- **Category**: Legacy code
- **TODO**: Ajouter ReadTimeout et WriteTimeout si nécessaire
- **Priority**: P2
- **Status**: Deferred (file deprecated)
- **Category**: Legacy code
- **TODO**: Utiliser config pour timeout
- **Priority**: P2
- **Status**: Deferred (file deprecated)
- **Category**: Legacy code
---
## Summary by Priority
- **P0**: 0 items
- **P1**: 0 items (UUID migration completed — 7 items resolved 2026-02)
- **P2**: 18 items (various improvements)
- **P3**: 6 items (deferred/future features)
## Recommendations
1. ~~**P1 Items (UUID Migration)**~~: Completed (2026-02)
2. **P2 Items**: Prioritize based on impact and effort
3. **P3 Items**: Defer to future sprints or remove if no longer relevant
## Action Items
1. Create GitHub issues for P1 items
2. Review P2 items and prioritize
3. Remove or update P3 items in deprecated code
4. Update this document as TODOs are resolved
---
**Last Updated**: 2026-02-17
**Maintained By**: Veza Backend Team