feat(indexation): add scheduling frequency and metadata management
Summary
Implémente la fonctionnalité de fréquence d'indexation programmée et améliore la gestion des métadonnées S3.
- Ajout de
frequency(daily/weekly/monthly) aux jobs d'indexation - Sélection du jour pour les synchronisations hebdomadaires
- Enum type-safe pour les valeurs de fréquence
- Regroupement intelligent des métadonnées S3
Changes
📊 Database Model
-
IndexationJob: Colonnesfrequency(String(50)) etselected_day(String(20)) - Valeurs par défaut:
frequency='weekly',selected_day='sunday'
🔧 API Layer
-
indexations_api.py: Exposerfrequencyetselected_daydans les réponses
📋 Schemas
-
IndexationFrequencyEnum: DAILY, WEEKLY, MONTHLY - Champs optionnels avec valeurs par défaut
🛠 ️ Services
-
indexation_service.py: Logique de création avec defaults -
user_account_service.py: Regroupement des métadonnées S3 en objet structuré
Test Plan
-
Créer un job avec frequency=daily -
Créer un job avec frequency=weeklyetselected_day=monday -
Vérifier les valeurs par défaut (weekly/sunday) -
Tester le regroupement des métadonnées S3 -
Vérifier que les valeurs persisten en base de données -
Valider l'enum avec des valeurs invalides