Implement volunteer and admin time off, including conflict detection and resolution.
Spec
See docs/features/time-off.md
Requirements
Volunteer Time Off
FR-T01 Volunteers (including Trainees) can add time off for a single day or date range, with optional reason
FR-T02 Volunteers can edit/delete their own future time off (not past)
FR-T03 If time off covers an assigned shift: warning shown → on confirm, volunteer removed from shift, Admin notified
FR-T04 If Admin deletes a volunteer's time off: volunteer re-added to affected shifts; Admin sees impact preview first
Admin Time Off Controls
FR-T05 Admin can add, edit, and delete time off for any user
FR-T06 Hard block: Admin cannot assign a volunteer to a shift if they have time off on that date; must remove time off first
FR-T07 Volunteer cannot claim an open shift that conflicts with their time off; prompted to resolve conflict first
Implement volunteer and admin time off, including conflict detection and resolution.
## Spec
See `docs/features/time-off.md`
## Requirements
### Volunteer Time Off
- **FR-T01** Volunteers (including Trainees) can add time off for a single day or date range, with optional reason
- **FR-T02** Volunteers can edit/delete their own future time off (not past)
- **FR-T03** If time off covers an assigned shift: warning shown → on confirm, volunteer removed from shift, Admin notified
- **FR-T04** If Admin deletes a volunteer's time off: volunteer re-added to affected shifts; Admin sees impact preview first
### Admin Time Off Controls
- **FR-T05** Admin can add, edit, and delete time off for any user
- **FR-T06** Hard block: Admin cannot assign a volunteer to a shift if they have time off on that date; must remove time off first
- **FR-T07** Volunteer cannot claim an open shift that conflicts with their time off; prompted to resolve conflict first
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Implement volunteer and admin time off, including conflict detection and resolution.
Spec
See
docs/features/time-off.mdRequirements
Volunteer Time Off
Admin Time Off Controls