Files
walkies/docs/features/scheduling.md

3.4 KiB

Feature: Scheduling & Publishing

Source: VSMS Functional Requirements v1.1, Section 3


Shift Templates

Admins manage the recurring schedule through weekly shift templates. Each template defines the base structure for a shift that repeats each week.

Template fields:

  • Name (e.g. Morning Shift)
  • Day of week
  • Start time and end time
  • Minimum and maximum volunteer capacity (e.g. min 3, max 5)
  • Role requirements per shift (e.g. 1 Behaviour Team, 3 Dog Shelter Volunteers, 1 Dog Log Monitor)
  • Recurring volunteer assignments — volunteers assigned to a template automatically appear on every generated instance of that shift

Template Requirements

FR ID Requirement Notes
FR-S01 Admin can create, edit, and delete shift templates. Deleting a template does not affect already-generated shift instances.
FR-S02 Admin manually triggers shift generation for a given period (e.g. a month). The system generates instances from all active templates for that period. Duplicate generation is prevented. Auto-rolling generation is out of scope for MVP.
FR-S03 Editing a shift template applies only to shift instances that have not yet been published. Published instances are protected from template changes. Published instances can still be edited manually — see FR-S07/FR-S08.

Publishing

Generated shift instances are in draft (unpublished) state until Admin publishes them. Publishing makes the schedule visible to volunteers and triggers notifications.

FR ID Requirement Notes
FR-S04 Admin manually publishes a month's schedule. On publish, each assigned volunteer receives a single email listing all their shifts for that month. See notifications.md for details.
FR-S05 Admin can unpublish a published month. All volunteers assigned to shifts in that month are notified that the schedule has been retracted. Intended for accidental early-publish scenarios.
FR-S06 Admin can see unconfirmed volunteers (those who have not acknowledged the monthly schedule email) flagged on the schedule view.

Editing Published Shifts

Admin can manually edit individual shift instances at any time, including after publishing. These edits do not affect the underlying template or other weeks.

FR ID Requirement Notes
FR-S07 Admin can adjust volunteer assignments on any individual shift instance (add or remove a specific volunteer for that occurrence only).
FR-S08 Admin can adjust the min/max volunteer headcount on any individual shift instance.
FR-S09 When Admin edits a published shift (assignments or capacity), all volunteers assigned to that shift have their confirmation status reset and must re-acknowledge. Volunteers are notified of the change — see FR-N09.
FR-S10 When Admin adds a volunteer to a shift mid-month (after publishing), that volunteer receives a notification about the newly added shift. See FR-N10.

State Model

Template → [generate] → Draft Instance → [publish] → Published Instance
                                                           ↓
                                                   Admin can edit (FR-S07/S08)
                                                   Resets acknowledgement (FR-S09)