WP-09 : tableau de bord RH, et disparition des données de démonstration
`src/lib/demo` n'existe plus. Aucun écran de PlanFlow ne lit désormais autre chose que la base. Un indicateur doit être explicable Chaque tuile est un lien vers ses lignes sources : profils incomplets, fins de période d'essai, titres de séjour, entrées, sorties, avenants, journal des absences. Un chiffre qu'on ne peut pas ouvrir ne se corrige pas — il se conteste. Et chaque ligne mène à la fiche du salarié. Les manques sont **nommés**, pas comptés : « 6 profils incomplets » n'aide personne à agir, « il manque l'IBAN de trois salariés » se règle en un message. Le NIR et l'IBAN sont contrôlés par la présence de leur colonne chiffrée, jamais déchiffrés — savoir qu'une valeur existe n'exige pas de la lire. Des chiffres qui refusent de mentir - La rotation moyenne entrées et sorties : compter seulement les départs sous-estime la rotation d'une équipe qui recrute autant qu'elle perd. - Sur un effectif nul, elle rend `—` et non « 0 % ». Zéro pour cent de rotation sur un établissement vide est une affirmation fausse, pas une absence de mouvement. - L'absentéisme se rapporte aux jours **théoriquement travaillés**, pas aux jours calendaires : rapporter à 30 jours ferait passer un problème réel pour du bruit. - Un taux horaire absent vaut zéro dans le coût, jamais une estimation : afficher un coût inventé serait pire qu'un coût partiel. Les échéances remontent avant de tomber Périodes d'essai à 45 jours, titres de séjour à 90. Les échéances **dépassées** sont conservées et placées en tête : une période d'essai qu'on a laissé filer est plus urgente qu'une échéance à venir, et la masquer parce qu'elle est passée est précisément ce qui la rend coûteuse. Périmètre et confidentialité Le filtrage par établissement s'applique **avant** l'agrégation : les mouvements d'un autre établissement ne transparaissent pas, même fondus dans un total. Le journal des absences ne porte jamais le motif médical — un tableau de bord n'en a aucun besoin. Un salarié, qui n'a pas accès à l'annuaire, reçoit un accueil adapté plutôt qu'une erreur d'autorisation ou un tableau de bord vide. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Cr9dkEHwbDgkWPnyGj1Rjv
This commit is contained in:
12 files changed
+1360
-227
No files matched your search
@@ -12,9 +12,37 @@ La spécification de construction est [`PLAN.md`](PLAN.md). Elle est normative :
|
||||
|
||||
## État
|
||||
|
||||
**WP-00 — socle** et **implémentation du design** : six écrans sur données de démonstration.
|
||||
Neuf lots livrés. **Aucun écran ne lit plus de données de démonstration** : le
|
||||
répertoire `src/lib/demo` a disparu.
|
||||
|
||||
**WP-01 — tenancy, identité, autorisation** : en cours. Modèle de données, RLS, journal d'audit append-only, catalogue de 70 capacités, cinq rôles, sessions en base. Les écrans lisent encore `src/lib/demo`.
|
||||
| Lot | Contenu |
|
||||
|---|---|
|
||||
| WP-00 | Socle : Next.js, PostgreSQL, CSP restrictive, CI, sauvegardes |
|
||||
| WP-01 | Tenancy, identité, autorisation : RLS, audit append-only, 70 capacités, cinq rôles |
|
||||
| WP-02 | Référentiels et registre de paramétrage juridique |
|
||||
| WP-03 | Dossiers salariés, contrats et avenants, forfait jours |
|
||||
| WP-04 | Planning : quatre vues, publication par équipe, impression |
|
||||
| WP-05 | Moteur de règles de convention, effectif-daté |
|
||||
| WP-06 | Absences, registre de compteurs, calendrier |
|
||||
| WP-07 | Heures prévu/réalisé/payé, périodes de paie verrouillables |
|
||||
| WP-08 | Export Silae, format relevé sur un export réel du dossier |
|
||||
| WP-09 | Tableau de bord RH : indicateurs explicables |
|
||||
|
||||
Restent WP-10 (documents) et WP-11 (communication, optionnel), ainsi que deux
|
||||
points nommés à l'intérieur des lots livrés : la régularisation automatique sur
|
||||
la période suivante et l'information au retour d'arrêt.
|
||||
|
||||
### Ce qui attend une décision du client
|
||||
|
||||
Ces points sont des **signaux d'arrêt** au sens de `PLAN.md` : ils ne se
|
||||
devinent pas.
|
||||
|
||||
- Les **codes d'absence Silae** (`AB-100`, `AB-200`, `AB-300`, `AB-630`) : leur
|
||||
existence est connue, leur signification non. L'export refuse de tourner tant
|
||||
que la correspondance n'est pas confirmée.
|
||||
- Le **régime dominical** applicable aux magasins, qui détermine si la
|
||||
majoration de 100 % et le repos compensateur sont les bonnes contreparties.
|
||||
- Les **règles applicables aux mineurs**, sans source primaire au dossier.
|
||||
|
||||
## Démarrer
|
||||
|
||||
|
||||
Reference in new issue
Block a user