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
This commit is contained in:
30
unionflow/.cursor/rules/unionflow-backend.mdc
Normal file
30
unionflow/.cursor/rules/unionflow-backend.mdc
Normal file
@@ -0,0 +1,30 @@
|
||||
---
|
||||
description: Conventions backend UnionFlow (Quarkus, DDD, API)
|
||||
globs: unionflow-server-impl-quarkus/**/*.java, unionflow-server-api/**/*.java
|
||||
alwaysApply: false
|
||||
---
|
||||
|
||||
# UnionFlow Backend
|
||||
|
||||
## Architecture DDD
|
||||
|
||||
- **Resources** (JAX-RS) → **Services** → **Repositories** (Panache)
|
||||
- Jamais: Resource accédant directement au Repository
|
||||
- Logique métier uniquement dans les Services
|
||||
|
||||
## API / Impl
|
||||
|
||||
- `unionflow-server-api`: DTOs (records), enums — **aucune** dépendance Quarkus/JPA
|
||||
- `unionflow-server-impl-quarkus`: Entités, mappers MapStruct, implémentation
|
||||
|
||||
## Conventions
|
||||
|
||||
- Entités étendent `BaseEntity` (UUID, audit trail, version, actif)
|
||||
- DTOs: Java `record` avec validation Jakarta
|
||||
- Tests: `@QuarkusTest`, `@TestTransaction` pour rollback
|
||||
- Couverture JaCoCo: **100%** exigé
|
||||
- Langue: code/technique en anglais, domaine/logs/commentaires en français
|
||||
|
||||
## Référence
|
||||
|
||||
Voir `CONSTITUTION.md` sections 1 (DDD), 2 (API/Impl), 5 (QA), 8 (API Design).
|
||||
29
unionflow/.cursor/rules/unionflow-mobile.mdc
Normal file
29
unionflow/.cursor/rules/unionflow-mobile.mdc
Normal file
@@ -0,0 +1,29 @@
|
||||
---
|
||||
description: Conventions Flutter/mobile UnionFlow
|
||||
globs: unionflow-mobile-apps/**/*.dart
|
||||
alwaysApply: false
|
||||
---
|
||||
|
||||
# UnionFlow Mobile (Flutter)
|
||||
|
||||
## Structure
|
||||
|
||||
- Architecture feature-first avec Bloc
|
||||
- `lib/features/{feature}/` : data/, domain/, presentation/, di/
|
||||
- Design system partagé dans `lib/shared/design_system/`
|
||||
|
||||
## Conventions
|
||||
|
||||
- Bloc pour la gestion d'état
|
||||
- Injectable/GetIt pour l'injection de dépendances
|
||||
- Modèles avec json_serializable
|
||||
- Tests: bloc_test, mockito
|
||||
|
||||
## Backend
|
||||
|
||||
- API: unionflow-server-impl-quarkus
|
||||
- Auth: Keycloak OAuth2, JWT via flutter_secure_storage
|
||||
|
||||
## Référence
|
||||
|
||||
Voir `CONSTITUTION.md` section 13 (Mobile Integration).
|
||||
37
unionflow/.cursor/rules/unionflow-spec-kit.mdc
Normal file
37
unionflow/.cursor/rules/unionflow-spec-kit.mdc
Normal file
@@ -0,0 +1,37 @@
|
||||
---
|
||||
description: Spec-Kit et workflow Spec-Driven Development pour UnionFlow
|
||||
alwaysApply: true
|
||||
---
|
||||
|
||||
# UnionFlow - Spec-Kit & Spec-Driven Development
|
||||
|
||||
## Contexte projet
|
||||
|
||||
UnionFlow est un monorepo (Java/Quarkus backend + Flutter mobile). La constitution est dans `CONSTITUTION.md` et `.specify/memory/constitution.md`.
|
||||
|
||||
## Commandes Spec-Kit disponibles
|
||||
|
||||
| Commande | Usage |
|
||||
|----------|-------|
|
||||
| `/speckit.constitution` | Créer ou mettre à jour les principes du projet |
|
||||
| `/speckit.specify` | Décrire une nouvelle feature (crée branche + spec) |
|
||||
| `/speckit.plan` | Générer le plan technique d'implémentation |
|
||||
| `/speckit.tasks` | Décomposer en tâches exécutables |
|
||||
| `/speckit.implement` | Exécuter l'implémentation |
|
||||
| `/speckit.clarify` | Clarifier les exigences avant le plan |
|
||||
|
||||
## Workflow feature
|
||||
|
||||
1. `/speckit.specify` + description → crée `specs/00X-nom/spec.md`
|
||||
2. `/speckit.clarify` (optionnel) → précise les exigences
|
||||
3. `/speckit.plan` + stack technique → génère `plan.md`, `data-model.md`, etc.
|
||||
4. `/speckit.tasks` → génère `tasks.md`
|
||||
5. `/speckit.implement` → implémente
|
||||
|
||||
## Branches
|
||||
|
||||
Format: `001-nom-court`, `002-autre-feature`. Les specs vivent dans `specs/001-nom-court/`.
|
||||
|
||||
## Références obligatoires
|
||||
|
||||
Avant toute implémentation backend ou mobile, lire `CONSTITUTION.md` pour les conventions DDD, API, tests, sécurité.
|
||||
Reference in New Issue
Block a user