202 lines
6.3 KiB
Markdown
202 lines
6.3 KiB
Markdown
|
|
# TODOs Audit Report
|
||
|
|
|
||
|
|
**Date**: 2025-01-27
|
||
|
|
**Total TODOs/FIXMEs/HACKs/XXXs Found**: 31
|
||
|
|
|
||
|
|
## 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
|
||
|
|
- **Priority**: P1
|
||
|
|
- **Status**: Open
|
||
|
|
- **Category**: Migration incomplete
|
||
|
|
- **TODO(P2-GO-004)**: Migration UUID partielle - trackUploadService nécessite migration vers UUID
|
||
|
|
- **Priority**: P1
|
||
|
|
- **Status**: Open
|
||
|
|
- **Category**: Migration incomplete
|
||
|
|
|
||
|
|
### `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)
|
||
|
|
- **Priority**: P2
|
||
|
|
- **Status**: Open
|
||
|
|
- **Category**: Configuration
|
||
|
|
|
||
|
|
### `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
|
||
|
|
- **Priority**: P1
|
||
|
|
- **Status**: Open
|
||
|
|
- **Category**: Migration incomplete
|
||
|
|
|
||
|
|
### `internal/services/playlist_version_service.go`
|
||
|
|
- **FIXME**: models.PlaylistVersion ID types need check. Assuming repo handles UUID if struct updated.
|
||
|
|
- **Priority**: P1
|
||
|
|
- **Status**: Open
|
||
|
|
- **Category**: Migration incomplete
|
||
|
|
|
||
|
|
### `internal/services/track_history_service.go`
|
||
|
|
- **FIXME**: models.TrackHistory needs UUID too if not updated
|
||
|
|
- **Priority**: P1
|
||
|
|
- **Status**: Open
|
||
|
|
- **Category**: Migration incomplete
|
||
|
|
|
||
|
|
### `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
|
||
|
|
- **Priority**: P1
|
||
|
|
- **Status**: Open
|
||
|
|
- **Category**: Migration incomplete
|
||
|
|
|
||
|
|
### `internal/api/api_manager.go`
|
||
|
|
- **TODO**: Réactiver api_manager.go après stabilisation du noyau et alignement des services (graphql, grpc, websocket, features)
|
||
|
|
- **Priority**: P3
|
||
|
|
- **Status**: Deferred
|
||
|
|
- **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**: 7 items (UUID migration incomplete)
|
||
|
|
- **P2**: 18 items (various improvements)
|
||
|
|
- **P3**: 6 items (deferred/future features)
|
||
|
|
|
||
|
|
## Recommendations
|
||
|
|
|
||
|
|
1. **P1 Items (UUID Migration)**: Complete UUID migration for remaining services
|
||
|
|
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**: 2025-01-27
|
||
|
|
**Maintained By**: Veza Backend Team
|