Story Index: Absence Management (ABSMGT)
Module: absence-management
Total stories: 22
Decomposed from: docs/architecture/absence-management-arch.md (approved)
PRD reference: docs/prd/absence-management-prd.md
Design reference: docs/design/absence-management-design.md
Brand context: BOTH — Papillon HR Suite + ALTARYS ENTERPRISE HR Suite
Date: 13/03/2026
Dependency Graph
Tier 0: Foundation (Sequential)
AB-001 → AB-002 → AB-003 → AB-004 → AB-005
Tier 1: Configuration (Parallel, after AB-002)
┌─ AB-006 (Settings)
AB-002 ──┼─ AB-007 (Leave Types)
└─ AB-008 (Holidays + Exceptional Config)
Tier 2: Core Workflows (Parallel, after Tier 0)
AB-004 ──── AB-009 (Balance View)
AB-003+005 ─ AB-010 (Request Creation) ──┬─ AB-011 (List + Detail)
├─ AB-012 (Approval + Rejection)
└─ AB-013 (Cancellation)
Tier 3: Specialized Workflows (after Tier 2)
AB-010+012 ── AB-014 (Sick Leave + Doc Upload)
AB-010+008 ── AB-015 (Permission Exceptionnelle)
AB-012 ─────── AB-016 (Maternity Declaration)
AB-012+014 ── AB-017 (Sick Indemnization Engine)
Tier 4: Dashboards & Advanced (after Tier 2-3)
AB-002 ─────── AB-018 (Team Calendar)
AB-009+011 ── AB-019 (HR Dashboard)
AB-012 ─────── AB-020 (Manual Balance Adjustment)
AB-009 ─────── AB-021 (HR Balance Detail)
AB-009+010 ── AB-022 (Termination Handler)
Story List
| # |
Story ID |
Title |
Depends On |
Complexity |
Status |
| 1 |
AB-001 |
Dev Environment + Test Infrastructure |
None |
S |
🔲 |
| 2 |
AB-002 |
Data Model + Flyway Migrations |
AB-001 |
M |
🔲 |
| 3 |
AB-003 |
Employee Event Listeners + Cache Sync |
AB-002 |
S |
🔲 |
| 4 |
AB-004 |
Scheduled Accrual Job — Core Logic |
AB-002, AB-003 |
M |
🔲 |
| 5 |
AB-005 |
Scheduled Accrual Job — Edge Cases + Multi-Tenant |
AB-004 |
M |
🔲 |
| 6 |
AB-006 |
Absence Settings Configuration |
AB-002 |
S |
🔲 |
| 7 |
AB-007 |
Leave Type Configuration |
AB-002 |
S |
🔲 |
| 8 |
AB-008 |
Public Holidays + Exceptional Leave Config |
AB-002 |
S |
🔲 |
| 9 |
AB-009 |
Leave Balance View |
AB-002, AB-004 |
S |
🔲 |
| 10 |
AB-010 |
Leave Request Creation — Annual & Unpaid |
AB-003, AB-005, AB-009 |
M |
🔲 |
| 11 |
AB-011 |
Leave Request List + Detail View |
AB-010 |
S |
🔲 |
| 12 |
AB-012 |
Leave Approval & Rejection |
AB-010 |
M |
🔲 |
| 13 |
AB-013 |
Leave Cancellation |
AB-010 |
S |
🔲 |
| 14 |
AB-014 |
Sick Leave + Document Upload |
AB-010, AB-012 |
M |
🔲 |
| 15 |
AB-015 |
Permission Exceptionnelle Request |
AB-010, AB-008 |
M |
🔲 |
| 16 |
AB-016 |
Maternity Declaration |
AB-012 |
M |
🔲 |
| 17 |
AB-017 |
Sick Leave Indemnization Engine |
AB-012, AB-014 |
M |
🔲 |
| 18 |
AB-018 |
Team Calendar |
AB-002 |
M |
🔲 |
| 19 |
AB-019 |
HR Dashboard |
AB-009, AB-011 |
M |
🔲 |
| 20 |
AB-020 |
Manual Balance Adjustment |
AB-012 |
S |
🔲 |
| 21 |
AB-021 |
HR Employee Balance Detail |
AB-009 |
S |
🔲 |
| 22 |
AB-022 |
Employee Termination Handler |
AB-009, AB-010 |
M |
🔲 |
Concurrency Tiers
| Tier |
Stories |
Can Start After |
| 0 — Foundation |
AB-001, AB-002, AB-003, AB-004, AB-005 |
Immediately (sequential within tier) |
| 1 — Configuration |
AB-006, AB-007, AB-008 |
AB-002 merged |
| 2 — Core Workflows |
AB-009, AB-010, AB-011, AB-012, AB-013 |
Tier 0 merged (AB-010 needs AB-003+005+009) |
| 3 — Specialized |
AB-014, AB-015, AB-016, AB-017 |
AB-010 + AB-012 merged |
| 4 — Dashboards & Advanced |
AB-018, AB-019, AB-020, AB-021, AB-022 |
Varies (see dependency graph) |
Implementation Order
- AB-001 — Dev environment must exist before any code
- AB-002 — All entities and tables must exist before any business logic
- AB-003 — Employee cache needed for leave request validation
- AB-004 — Accrual engine populates balances
- AB-005 — Accrual edge cases (multi-tenant, catch-up, pause rules)
- AB-006 — Settings needed for unit display and carry-over (can parallel with AB-007, AB-008)
- AB-007 — Leave types needed for request creation (can parallel with AB-006, AB-008)
- AB-008 — Holidays + exceptional config needed for day computation and exceptional requests
- AB-009 — Balance view is the employee's first screen — high business value
- AB-010 — Request creation is the core transaction — highest business value
- AB-011 — List + detail view completes the employee self-service loop
- AB-012 — Approval is the manager's primary action — high business value
- AB-013 — Cancellation completes the request lifecycle
- AB-014 — Sick leave extends the base flow with document upload
- AB-015 — Exceptional leave extends with 2-step wizard
- AB-016 — Maternity is a separate HR workflow
- AB-017 — Indemnization engine completes sick leave payroll integration
- AB-018 — Team calendar is a key manager tool (light dependencies)
- AB-019 — HR dashboard aggregates existing data
- AB-020 — Manual adjustment is an HR correction tool
- AB-021 — Balance detail is the HR investigation view
- AB-022 — Termination handler is an event-driven edge case
PRD Acceptance Criteria Coverage
| PRD User Story |
PRD ACs |
Assigned To Stories |
| US-ABS-001: Request Annual Leave |
4 ACs |
AB-009 (AC-032), AB-010 (AC-033, AC-034, AC-035) |
| US-ABS-002: Approve/Reject Leave |
3 ACs |
AB-012 (AC-039, AC-040, AC-041) |
| US-ABS-003: View Team Calendar |
3 ACs |
AB-018 (AC-057, AC-058, AC-059) |
| US-ABS-004: Maternity Leave Auto-Creation |
3 ACs |
AB-016 (AC-051, AC-052, AC-053) |
| US-ABS-005: Sick Leave with Certificate |
3 ACs |
AB-014 (AC-045, AC-046, AC-047) |
| US-ABS-006: View Leave Balance |
3 ACs |
AB-009 (AC-029, AC-030, AC-031) |
| US-ABS-007: Permission Exceptionnelle |
3 ACs |
AB-015 (AC-048, AC-049, AC-050) |
| US-ABS-008: HR Dashboard |
2 ACs |
AB-019 (AC-060, AC-061) |
| US-ABS-009: Cancel Leave |
3 ACs |
AB-013 (AC-042, AC-043, AC-044) |
| US-ABS-010: Employee Termination Handling |
3 ACs |
AB-022 (AC-070, AC-071, AC-072) |
Total: 30 PRD ACs → 30 assigned ✅ (none missing)
Design Screen Coverage
| Screen |
Route |
Assigned To |
| S1 Employee Home — Mes congés |
/absences |
AB-009 (balance), AB-011 (history) |
| S2 Leave Request Form |
/absences/demande |
AB-010 (annual/unpaid), AB-014 (sick), AB-015 (exceptional) |
| S3 Leave Request Detail |
/absences/demande/:id |
AB-011 (detail), AB-013 (cancel) |
| S4 Pending Approvals |
/absences/approbations |
AB-012 |
| S5 Approval Detail |
/absences/approbations/:id |
AB-012 |
| S6 Team Calendar |
/absences/calendrier |
AB-018 |
| S7 HR Dashboard |
/absences/tableau-de-bord |
AB-019 |
| S8 Employee Balance Detail |
/absences/employes/:id/solde |
AB-021 |
| S9 Maternity Declaration |
/absences/maternite/nouvelle |
AB-016 |
| S10 Manual Balance Adjustment |
/absences/employes/:id/ajustement |
AB-020 |
| S11 Leave Configuration |
/absences/parametres/types |
AB-006 (settings), AB-007 (types), AB-008 (exceptional) |
| S12 Public Holidays |
/absences/parametres/jours-feries |
AB-008 |
Total: 12 screens → 12 assigned ✅ (none missing)
Complexity Summary
| Complexity |
Count |
Stories |
| S |
10 |
AB-001, AB-003, AB-006, AB-007, AB-008, AB-009, AB-011, AB-013, AB-020, AB-021 |
| M |
12 |
AB-002, AB-004, AB-005, AB-010, AB-012, AB-014, AB-015, AB-016, AB-017, AB-018, AB-019, AB-022 |
| L |
0 |
— |
| XL |
0 |
— |