dahoud
5d53ba719a
docs: audit mobile zéro données fictives (T024) ✅
...
Phase 4 Mobile - Section 4.2 Fiche membre KYC
Document d'audit complet : AUDIT_MOBILE_ZERO_MOCK.md
Sections auditées :
1. Paramètres LCB-FT (seuils) ✅
- ParametresLcbFtRepository appelle /api/parametres-lcb-ft
- Seuil dynamique chargé au runtime
- Fallback 500k XOF technique uniquement
2. Champs KYC Membre ✅
- MembreCompletModel désérialisé depuis JSON backend
- Enums alignés avec backend (NiveauVigilanceKyc, StatutKyc)
- KycStatusWidget affiche données API uniquement
3. Gestion des erreurs ✅
- ErrorFormatter analyse messages backend
- Pas de messages inventés
- Détection dynamique erreurs LCB-FT
4. Constantes et fallbacks ✅
- kSeuilOrigineFondsObligatoireXOF = fallback technique
- Jamais utilisé directement dans logique métier
- Pattern graceful degradation acceptable
Checklist 8/8 ✅ :
- Tous les seuils LCB-FT depuis API
- Toutes données KYC depuis backend
- Aucun mock ou données de test
- Enums alignés avec backend
- Messages d'erreur depuis backend
- Fallbacks purement techniques
- Pas de listes en dur
- Pas de valeurs par défaut métier
Verdict : ✅ CONFORME - Zéro données fictives.
Spec : specs/001-mutuelles-anti-blanchiment/spec.md
Progression : 21/27 tâches (78%)
Signed-off-by: lions dev Team
2026-03-15 02:54:32 +00:00
dahoud
c190867c59
feat(mobile): widget affichage statut KYC membre (T023)
...
Phase 4 Mobile - Section 4.2 Fiche membre KYC
Nouveau widget : KycStatusWidget
- Affichage lecture seule du statut KYC du membre
- 3 informations LCB-FT :
* Statut de vérification (NON_VERIFIE, EN_COURS, VERIFIE, REFUSE)
* Niveau de vigilance (SIMPLIFIE, RENFORCE)
* Date de vérification d'identité (si disponible)
Design :
- Card avec icône verified_user
- Emojis pour statuts (✅ ⏳ ❌ ⏸️ )
- Couleurs sémantiques (vert=vérifié, rouge=refusé, bleu=en cours, orange=non vérifié)
- Message informatif sur conformité BCEAO/OHADA
- Format date DD/MM/YYYY (intl)
Utilisation :
- Prêt pour intégration dans ProfilePage (onglet Informations personnelles)
- Accepte MembreCompletModel ou champs individuels
- Gère les valeurs nulles (affiche "Non renseigné")
Impact UX :
- Membre informé de son statut KYC
- Transparence sur processus de vérification
- Conformité réglementaire visible
Spec : specs/001-mutuelles-anti-blanchiment/spec.md
Progression : 20/27 tâches (74%)
Signed-off-by: lions dev Team
2026-03-15 02:53:17 +00:00
dahoud
cfec9e8a7d
feat(mobile): ajout champs KYC au modèle membre (T022)
...
Phase 4 Mobile - Section 4.2 Fiche membre KYC
Nouveaux enums :
- NiveauVigilanceKyc : SIMPLIFIE, RENFORCE
- StatutKyc : NON_VERIFIE, EN_COURS, VERIFIE, REFUSE
Modification MembreCompletModel :
- niveauVigilanceKyc (NiveauVigilanceKyc nullable)
- statutKyc (StatutKyc nullable)
- dateVerificationIdentite (DateTime nullable)
Ajouts complets :
- Champs dans constructeur (avec valeurs nullables)
- Méthode copyWith (3 nouveaux paramètres)
- Liste props Equatable (pour égalité structurelle)
- Annotations @JsonKey avec noms snake_case
Impact :
- Modèle mobile aligné avec backend MembreResponse
- Prêt pour affichage statut KYC dans fiche membre
- Conformité LCB-FT : traçabilité vérification identité
Spec : specs/001-mutuelles-anti-blanchiment/spec.md
Progression : 19/27 tâches (70%)
Signed-off-by: lions dev Team
2026-03-15 02:51:53 +00:00
dahoud
7e929ac440
docs: mise à jour PROGRESSION.md - Phase 4 Mobile 43% (18/27 total)
...
Phase 4 Mobile : 3/7 tâches (43%)
- T018 ✅ Récupération seuil LCB-FT depuis API
- T019 ✅ Formulaires avec origineFonds obligatoire
- T020 ⏩ Upload pièce justificative (optionnel, skip)
- T021 ✅ Gestion erreurs 400 LCB-FT
Section 4.1 Épargne : 75% (3/4 tâches)
- Seuil dynamique depuis backend
- Validation LCB-FT sur tous les flux (dépôt/retrait/transfert)
- Messages d'erreur conviviaux et explicites
Section 4.2 KYC : 0% (0/3 tâches - à démarrer)
Progression globale : 18/27 tâches (67%)
Commits : 74161df , 5ef8ae1 , 6231847
Signed-off-by: lions dev Team
2026-03-15 02:48:14 +00:00
dahoud
62318476f8
feat(mobile): amélioration gestion erreurs LCB-FT (T021)
...
Phase 4 Mobile - Section 4.1 Épargne
Nouveau fichier :
- ErrorFormatter : utilitaire central pour formater les erreurs backend
- Détecte et formate spécialement les erreurs LCB-FT (origine fonds manquante)
- Détecte erreurs KYC, réseau, 400/401/403/404/500
- Messages conviviaux avec emojis
- Durée d'affichage adaptée (6s pour LCB-FT, 3s sinon)
Modifications 3 dialogs (dépôt, retrait, transfert) :
- Remplacement affichage erreur brut par ErrorFormatter.format()
- Messages explicites : "L'origine des fonds est obligatoire (conformité LCB-FT)"
- Durée snackbar conditionnelle selon type erreur
Impact UX :
- Messages d'erreur clairs et professionnels
- Utilisateur comprend POURQUOI l'origine fonds est requise (anti-blanchiment)
- Temps de lecture suffisant pour messages importants
Spec : specs/001-mutuelles-anti-blanchiment/spec.md
Progression : 18/27 tâches (67%)
Signed-off-by: lions dev Team
2026-03-15 02:46:41 +00:00
dahoud
5ef8ae1140
feat(mobile): ajout validation LCB-FT au transfert épargne (T019)
...
Phase 4 Mobile - Section 4.1 Épargne
Modifications TransfertEpargneDialog :
- Import ParametresLcbFtRepository + lcb_ft_constants
- Chargement seuil LCB-FT au initState (comme dépôt/retrait)
- Ajout champ origineFonds avec validation conditionnelle
- Validation : montant >= seuil → origine fonds obligatoire
- Message clair pour utilisateur avec montant seuil dynamique
- onChanged sur montant pour mise à jour UI en temps réel
Impact :
- Les 3 types d'opérations (dépôt, retrait, transfert) ont maintenant la validation LCB-FT
- Champ origineFonds transmis dans TransactionEpargneRequest
- Conformité BCEAO/OHADA sur tous les flux épargne
Spec : specs/001-mutuelles-anti-blanchiment/spec.md
Progression : 17/27 tâches (63%)
Signed-off-by: lions dev Team
2026-03-15 02:42:46 +00:00
dahoud
74161dfc89
feat(mobile): récupération seuil LCB-FT depuis API (T018)
...
Phase 4 Mobile - Section 4.1 Épargne
Nouveaux fichiers :
- SeuilLcbFtModel : modèle pour seuil depuis API
- ParametresLcbFtRepository : appel /api/parametres-lcb-ft/seuil-justification
- @lazySingleton pour injection GetIt
Modifications :
- DepotEpargneDialog : charge seuil au initState, fallback 500k XOF
- RetraitEpargneDialog : idem
- Remplace constante kSeuilOrigineFondsObligatoireXOF par valeur dynamique
Impact :
- Seuil LCB-FT maintenant configurable par organisation
- Fallback automatique si API échoue
- Messages utilisateur avec montant dynamique
Spec : specs/001-mutuelles-anti-blanchiment/spec.md
Progression : 16/27 tâches (59%)
Signed-off-by: lions dev Team
2026-03-15 02:41:05 +00:00
dahoud
6ba710401c
docs: mise à jour PROGRESSION.md - Phase 3 complétée (56% total)
...
Phase 3 terminée : 67% (4/6 tâches, 2 optionnelles skip)
- T012 ✅ ParametresLcbFtService créé
- T013 ✅ Validation seuils (existante)
- T014 ✅ Audit opérations (existant)
- T017 ✅ Endpoint REST mobile
Progression globale : 15/27 tâches (56%)
Signed-off-by: lions dev Team
2026-03-15 02:34:36 +00:00
dahoud
e41db9578d
docs: documentation progression Spec 001 (41% complété)
...
Ajout fichier PROGRESSION.md détaillant l'état d'avancement :
- Phase 1 (API) : 100% complété - 6/6 tâches ✅
- Phase 2 (Migrations) : 100% complété - 5/5 tâches ✅
- Phase 3 (Impl Quarkus) : 0% - 6 tâches restantes
- Phase 4 (Mobile) : 0% - 7 tâches restantes
- Phase 5 (Finition) : 0% - 3 tâches restantes
Total : 11/27 tâches complétées (41%)
Contenu :
- Vue d'ensemble par phase
- Détails réalisations API et Migrations
- Liste tâches restantes avec descriptions
- Références fichiers et commits
- Prochaines étapes recommandées
Spec : specs/001-mutuelles-anti-blanchiment/spec.md
Branche : 001-mutuelles-anti-blanchiment
Signed-off-by: lions dev Team
2026-03-15 02:25:01 +00:00
dahoud
309edc4e23
feat(api): Phase 1 - Extensions API LCB-FT (Spec 001)
...
Extensions API pour conformité BCEAO/OHADA - Lutte contre le Blanchiment
des Capitaux et le Financement du Terrorisme (LCB-FT).
Changements :
1. DTOs Transaction Épargne (déjà présents, validation effectuée)
- TransactionEpargneRequest : origineFonds, pieceJustificativeId
- TransactionEpargneResponse : origineFonds, pieceJustificativeId
2. Enums et DTOs KYC Membre (déjà présents, validation effectuée)
- NiveauVigilanceKyc : SIMPLIFIE, RENFORCE
- StatutKyc : NON_VERIFIE, EN_COURS, VERIFIE, REFUSE
- MembreResponse : niveauVigilanceKyc, statutKyc, dateVerificationIdentite
3. Extensions DTOs Paiement
- TypeObjetIntentionPaiement : +RETRAIT_EPARGNE, +CREDIT_REMBOURSEMENT
- InitierDepotEpargneRequest : +origineFonds, +justificationLcbFt
- DeclarerPaiementManuelRequest : +origineFonds, +justificationLcbFt
- InitierPaiementEnLigneRequest : +origineFonds, +justificationLcbFt
4. Nouveaux DTOs Paramètres LCB-FT
- ParametresLcbFtRequest : seuils justification et validation manuelle
- ParametresLcbFtResponse : configuration org/plateforme
Tâches : T001-T005 complétées
Prochaine étape : Phase 2 - Migrations Flyway
Spec : specs/001-mutuelles-anti-blanchiment/spec.md
Signed-off-by: lions dev Team
2026-03-15 02:17:25 +00:00
dahoud
e8ad874015
feat: WebSocket temps réel + Finance Workflow + corrections
...
- Task #6 : WebSocket /ws/dashboard + Kafka events (5 topics)
* Backend: KafkaEventProducer, KafkaEventConsumer
* Mobile: WebSocketService (reconnection, heartbeat, typed events)
* DashboardBloc: Auto-refresh depuis WebSocket events
- Finance Workflow: approbations + budgets (backend + mobile)
* Backend: entities, services, resources, migrations Flyway V6
* Mobile: features finance_workflow complète avec BLoC
- Corrections DI: interfaces IRepository partout
* IProfileRepository, IOrganizationRepository, IMembreRepository
* GetIt configuré avec @injectable
- Spec-Kit: constitution + templates mis à jour
* .specify/memory/constitution.md enrichie
* Templates agent, plan, spec, tasks, checklist
- Nettoyage: fichiers temporaires supprimés
Signed-off-by: lions dev Team
2026-03-15 02:12:17 +00:00
dahoud
bbc409de9d
chore: mise à jour sous-module unionflow-server-impl-quarkus (dashboard KPI)
...
Made-with: Cursor
2026-03-09 19:59:03 +00:00
dahoud
553e731a51
feat(mobile): Contribution Totale + KPI dashboard membre
...
- MembreDashboardSyntheseModel: totalCotisationsPayeesToutTemps
- DashboardStatsEntity: contributionsAmountOnly (cotisations seules)
- Mapping: Mon Solde Total = cotisations tout temps + épargne, Contribution Totale = cotisations seules
- Engagement: fallback tauxCotisationsPerso si tauxParticipation absent
- Carte Contribution Totale utilise contributionsAmountOnly
Made-with: Cursor
2026-03-09 19:58:39 +00:00
dahoud
0a9dece955
feat(api): ajout totalCotisationsPayeesToutTemps dans MembreDashboardSyntheseResponse
...
- Champ pour la carte Contribution Totale (cotisations tout temps)
- Test unitaire mis à jour
Made-with: Cursor
2026-03-09 19:58:00 +00:00
dahoud
b1957c1c81
feat(unionflow): ajout Spec-Kit, constitution, mission mutuelles
...
- Config Spec-Kit pour Spec-Driven Development
- CONSTITUTION.md + .specify/memory/constitution.md
- Commandes Cursor /speckit.*, règles projet
- Mission: associations + mutuelles d'épargne et de financement
- .gitignore: versionner config spec-kit unionflow
Made-with: Cursor
2026-02-27 14:41:07 +00:00
dahoud
144b68f8e7
chore: ajouter .gitignore complet pour nettoyer le workspace
...
- Ignore tous les fichiers de build (target/, build/, node_modules/, etc.)
- Ignore les fichiers temporaires et cache
- Ignore la documentation obsolète (.md sauf README, CHANGELOG, CONTRIBUTING)
- Ignore les fichiers IDE (.idea/, .vscode/, etc.)
- Ignore les fichiers sensibles (.env, clés, secrets)
- Ignore les logs et fichiers de base de données
- Ignore les exécutables inutiles
- Ignore les scripts temporaires (sauf ceux dans scripts/)
- Ignore les configurations d'outils (.cursor/, .claude/, .specify/)
- Ignore les fichiers Keycloak sensibles
2026-01-21 13:15:37 +00:00