docs(leave) : sharpen carried CP docblock (net accruing, prior-forfait case)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-20 16:36:53 +02:00
parent 0e5661bb7f
commit f3d94a8590

View File

@@ -567,14 +567,18 @@ final readonly class EmployeeLeaveSummaryProvider implements ProviderInterface
/**
* CP à reporter d'une phase non-forfait vers une entrée en FORFAIT : jours ouvrés
* NETS (acquis + en cours d'acquisition jours ouvrés posés) + samedis BRUTS (acquis,
* sans déduction des samedis posés). 0 si aucune phase précédente ou si la précédente
* est elle-même un FORFAIT (nouvel embauché → cas 2).
* sans déduction des samedis posés). Retourne 0 si aucune phase précédente (nouvel
* embauché → cas 2) ou si la précédente est elle-même un FORFAIT (ré-embauche / double
* transition forfait — pas de report CP non-forfait à reprendre).
*
* Composition du retour :
* Composition du retour (clés de computeYearSummary, branche CDI_CDD_NON_FORFAIT) :
* remainingDays : acquis (report N-1) restant après jours ouvrés posés
* accruingDays : généré de l'exercice restant (jours + samedis générés)
* accruingDays : généré de l'exercice restant, NET des jours posés en débordement
* (= remainingGenerated + remainingGeneratedSaturdays)
* remainingSaturdays : samedis acquis (report N-1) restants
* + takenSaturdays : ré-ajout des samedis posés (règle métier ci-dessous)
* + takenSaturdays : ré-ajout des samedis posés (règle métier ci-dessous). Invariant :
* comme accruingDays a déjà déduit les samedis posés en débordement,
* ce ré-ajout laisse le solde samedi BRUT (généré + acquis), pas net.
*
* Règle (validée comptable) : seuls les congés en JOURS OUVRÉS déjà posés réduisent
* le report ; les SAMEDIS déjà posés ne le réduisent pas. computeYearSummary déduit