fix(cards): audience absence_enfant = AM + co-parents du foyer

Le resolver couple_am n’incluait que le créateur et l’AM ; le co-parent
ne voyait pas la notification. Docs : V1 réponses + modifs via agenda.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-10-05 12:19:30 +02:00
co-authored by Cursor
parent 6c8ef32a11
commit 0c736f5605
4 changed files with 103 additions and 5 deletions
+6
View File
@@ -587,6 +587,12 @@ POST /repos/jmartin/petitspas/pulls/{index}/merge
**Flux V1** : BDD agenda → API liste/CRUD → module Cartes SYSTEM → front bulles (séparé).
**V1 cartes (réponses)** :
- `absence_enfant` → info (`none`) — pas d’ack AM ; audience **AM + tous les parents du foyer** (co-parent inclus)
- `arret_maladie_am` → ack parent (« Bien reçu »)
- `conge_am` → accept / refuse (+ motivation refus)
- **Modifs d’absence** → via **agenda / calendrier**, pas via bulle `absence_enfant_modif` (reporté au ticket calendrier)
**Réf. détail** : `docs/32_MINI-SPEC-BULLES-CARTES.md`
---
+13 -5
View File
@@ -61,7 +61,7 @@ La teinte pastel est **100 % front** : table de mapping `type_code` → asset (`
- Libellés UI :
- `conge_am` → « Demande de congés »
- `arret_maladie_am` → « Arrêt maladie »
- `absence_enfant` (+ `_modif`) → « Notification d’absence »
- `absence_enfant` → « Notification d’absence »
### 3.2 Carte **congés** (`conge_am`)
@@ -93,10 +93,13 @@ Clé = **choix front**, pas une valeur API.
|------------|---------|--------|
| **`aqua`** | Congés AM | `conge_am` |
| **`blue`** | Arrêt maladie AM | `arret_maladie_am` |
| **`peach`** | Absence enfant / info pratique | `absence_enfant`, `absence_enfant_modif` |
| **`peach`** | Absence enfant / info pratique | `absence_enfant` |
| **`pink`** | Soins / bobo / problème **enfant** (AM → parents) | `soin_enfant` *(nouveau — voir §5)* |
| **`lavender`** | Admin / divers | futurs types admin |
**Hors scope V1 cartes** : `absence_enfant_modif` (ack AM sur modif).
Les **modifications d’absence** se font via l’**agenda / calendrier**, pas via une bulle dédiée. On rebranchera une notif éventuelle quand le calendrier sera implémenté.
**Principes**
- Couleur = famille visuelle (lisible sans tout lire).
@@ -138,6 +141,7 @@ Pourquoi **pas seulement la messagerie** ?
| Famille | Couleur UI | Exemples | `response_mode` |
|---------|------------|----------|-----------------|
| Soins (détail) | `pink` | `soin_temperature`, `soin_medicament`, `soin_bobo` — ou sous-types dans payload | `ack` |
| Modif absence | `peach` | `absence_enfant_modif` — **via calendrier** d’abord ; bulle ack AM éventuelle ensuite | `ack` |
| Sortie | `peach` / `lavender` | `sortie_a_valider` | `accept_refuse` |
| Admin | `lavender` | `info_admin`, `document_a_fournir` | `ack` / `none` |
@@ -150,7 +154,9 @@ Variante soins : un seul fond rose ; l’icône / sous-type change.
- Créateur : pas de boutons réponse ; éventuel « En attente de réponse ».
- Refus : afficher `last_refuse_comment`.
- Congé : `accept_refuse` côté destinataire.
- Absence enfant : info / ack — pas de veto AM en V1.
- Absence enfant : **info seule** (`response_mode: none`) — pas de veto ni ack AM en V1.
- Absence enfant : audience = **AM + tous les parents du foyer** (créateur + co-parent), pas seulement le déclarant.
- Modif / édition d’absence : **agenda**, pas les cartes (V1).
- File courte : `purge_at` ; l’**agenda** conserve l’historique métier.
---
@@ -167,11 +173,13 @@ Variante soins : un seul fond rose ; l’icône / sous-type change.
## 9. Recettes
- [ ] API cartes **sans** champ `couleur` (ni feed ni `/types`).
- [ ] Front mappe `conge_am` → aqua, `arret_maladie_am` → blue, `absence_*` → peach.
- [ ] Front mappe `conge_am` → aqua, `arret_maladie_am` → blue, `absence_enfant` → peach.
- [ ] Accept / refuse congé OK.
- [ ] Arrêt traité + période en cours → reste visible.
- [ ] Arrêt : ack parent « Bien reçu » ; traité + période en cours → reste visible.
- [ ] Absence enfant : pas de bouton (info).
- [ ] Filtre couple / placement.
- [ ] (Plus tard) `soin_enfant` rose AM → parents + ligne agenda.
- [ ] (Plus tard / calendrier) modifs d’absence + éventuel `absence_enfant_modif`.
---