chore: update TODO.md with new feature ideas and refactoring plans
- Added sections for future features including TFS/Azure DevOps integration, task management, and modular architecture. - Detailed a migration plan for restructuring the project directory to align with Next.js 13+ best practices. - Included specific tasks for improving integration interfaces and enhancing the user experience.
This commit is contained in:
108
TODO.md
108
TODO.md
@@ -394,4 +394,110 @@ lib/
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
*Focus sur l'expérience utilisateur et le design moderne. App standalone prête pour évoluer.*
|
## 🚀 Nouvelles idées & fonctionnalités futures
|
||||||
|
|
||||||
|
### 🔄 Intégration TFS/Azure DevOps
|
||||||
|
- [ ] **Lecture des Pull Requests TFS** : Synchronisation des PR comme tâches
|
||||||
|
- [ ] PR arrivent en backlog avec filtrage par team project
|
||||||
|
- [ ] Synchronisation aussi riche que Jira (statuts, assignés, commentaires)
|
||||||
|
- [ ] Filtrage par team project, repository, auteur
|
||||||
|
- [ ] **Architecture plug-and-play pour intégrations**
|
||||||
|
- [ ] Refactoriser pour interfaces génériques d'intégration
|
||||||
|
- [ ] Interface `IntegrationService` commune (Jira, TFS, GitHub, etc.)
|
||||||
|
- [ ] UI générique de configuration des intégrations
|
||||||
|
- [ ] Système de plugins pour ajouter facilement de nouveaux services
|
||||||
|
|
||||||
|
### 📋 Daily - Gestion des tâches non cochées
|
||||||
|
- [ ] **Page des tâches en attente**
|
||||||
|
- [ ] Liste de toutes les todos non cochées (historique complet)
|
||||||
|
- [ ] Filtrage par date, catégorie, ancienneté
|
||||||
|
- [ ] Action "Archiver" pour les tâches ni résolues ni à faire
|
||||||
|
- [ ] **Nouveau statut "Archivé"**
|
||||||
|
- [ ] État intermédiaire entre "à faire" et "terminé"
|
||||||
|
- [ ] Interface pour voir/gérer les tâches archivées
|
||||||
|
- [ ] Possibilité de désarchiver une tâche
|
||||||
|
|
||||||
|
### 🎯 Jira - Suivi des demandes en attente
|
||||||
|
- [ ] **Page "Jiras en attente"**
|
||||||
|
- [ ] Liste des Jiras créés par moi mais non assignés à mon équipe
|
||||||
|
- [ ] Suivi des demandes formulées à d'autres équipes
|
||||||
|
- [ ] Filtrage par projet, équipe cible, ancienneté
|
||||||
|
- [ ] **Nouveau modèle de données**
|
||||||
|
- [ ] Table séparée pour les "demandes en attente" (différent des tâches Kanban)
|
||||||
|
- [ ] Champs spécifiques : demandeur, équipe cible, statut de traitement
|
||||||
|
- [ ] Notifications quand une demande change de statut
|
||||||
|
|
||||||
|
### 🏗️ Architecture & technique
|
||||||
|
- [ ] **Système d'intégrations modulaire**
|
||||||
|
- [ ] Interface `IntegrationProvider` standardisée
|
||||||
|
- [ ] Configuration dynamique des intégrations
|
||||||
|
- [ ] Gestion des credentials par intégration
|
||||||
|
- [ ] **Modèles de données étendus**
|
||||||
|
- [ ] `PullRequest` pour TFS/GitHub
|
||||||
|
- [ ] `PendingRequest` pour les demandes Jira
|
||||||
|
- [ ] `ArchivedTask` pour les daily archivées
|
||||||
|
- [ ] **UI générique**
|
||||||
|
- [ ] Composants réutilisables pour toutes les intégrations
|
||||||
|
- [ ] Configuration unifiée des filtres et synchronisations
|
||||||
|
- [ ] Dashboard multi-intégrations
|
||||||
|
|
||||||
|
### 📁 Refactoring structure des dossiers (PRIORITÉ HAUTE)
|
||||||
|
|
||||||
|
#### **Problème actuel**
|
||||||
|
- Structure mixte : `src/app/`, `src/actions/`, `src/contexts/` mais `components/`, `lib/`, `services/`, etc. à la racine
|
||||||
|
- Alias TypeScript incohérents dans `tsconfig.json`
|
||||||
|
- Non-conformité avec les bonnes pratiques Next.js 13+ App Router
|
||||||
|
|
||||||
|
#### **Plan de migration**
|
||||||
|
- [ ] **Phase 1: Migration des dossiers**
|
||||||
|
- [ ] `mv components/ src/components/`
|
||||||
|
- [ ] `mv lib/ src/lib/`
|
||||||
|
- [ ] `mv hooks/ src/hooks/`
|
||||||
|
- [ ] `mv clients/ src/clients/`
|
||||||
|
- [ ] `mv services/ src/services/`
|
||||||
|
|
||||||
|
- [ ] **Phase 2: Mise à jour tsconfig.json**
|
||||||
|
```json
|
||||||
|
"paths": {
|
||||||
|
"@/*": ["./src/*"]
|
||||||
|
// Supprimer les alias spécifiques devenus inutiles
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
- [ ] **Phase 3: Correction des imports**
|
||||||
|
- [ ] Tous les imports `@/services/*` → `@/services/*` (déjà OK)
|
||||||
|
- [ ] Tous les imports `@/lib/*` → `@/lib/*` (déjà OK)
|
||||||
|
- [ ] Tous les imports `@/components/*` → `@/components/*` (déjà OK)
|
||||||
|
- [ ] Tous les imports `@/clients/*` → `@/clients/*` (déjà OK)
|
||||||
|
- [ ] Tous les imports `@/hooks/*` → `@/hooks/*` (déjà OK)
|
||||||
|
- [ ] Vérifier les imports relatifs dans les scripts/
|
||||||
|
|
||||||
|
- [ ] **Phase 4: Mise à jour des règles Cursor**
|
||||||
|
- [ ] Règle "services" : Mettre à jour les exemples avec `src/services/`
|
||||||
|
- [ ] Règle "components" : Mettre à jour avec `src/components/`
|
||||||
|
- [ ] Règle "clients" : Mettre à jour avec `src/clients/`
|
||||||
|
- [ ] Vérifier tous les liens MDC dans les règles
|
||||||
|
|
||||||
|
- [ ] **Phase 5: Tests et validation**
|
||||||
|
- [ ] `npm run build` - Vérifier que le build passe
|
||||||
|
- [ ] `npm run dev` - Vérifier que le dev fonctionne
|
||||||
|
- [ ] `npm run lint` - Vérifier ESLint
|
||||||
|
- [ ] `npx tsc --noEmit` - Vérifier TypeScript
|
||||||
|
- [ ] Tester les fonctionnalités principales
|
||||||
|
|
||||||
|
#### **Structure finale attendue**
|
||||||
|
```
|
||||||
|
src/
|
||||||
|
├── app/ # Pages Next.js (déjà OK)
|
||||||
|
├── actions/ # Server Actions (déjà OK)
|
||||||
|
├── contexts/ # React Contexts (déjà OK)
|
||||||
|
├── components/ # Composants React (à déplacer)
|
||||||
|
├── lib/ # Utilitaires et types (à déplacer)
|
||||||
|
├── hooks/ # Hooks React (à déplacer)
|
||||||
|
├── clients/ # Clients HTTP (à déplacer)
|
||||||
|
└── services/ # Services backend (à déplacer)
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*Focus sur l'expérience utilisateur et le design moderne. App standalone prête pour évoluer vers une plateforme d'intégration complète.*
|
||||||
|
|||||||
Reference in New Issue
Block a user