Scheduling Domain
Current technical architecture of read-only 7shifts scheduling and service-day planning
Overview
In the current MVP, 7shifts is the schedule source of truth. Danvas mirrors published shifts into a local read model and exposes the staff viewer at /schedule. The former manual builder is not an active write surface; /admin/schedule-builder redirects to /schedule.
Canonical sources: Schedule Builder compatibility record, ADR-0058, and executable schedule services.
Schedule sync
- The Vercel cron
apps/api/app/cron/sync-schedule-from-7shiftsruns every six hours (0 */6 * * *). - It imports the current and upcoming 7shifts window into the local schedule read model.
- Danvas schedule rows are read-only in this mode; edits and publication happen in 7shifts.
SCHEDULE_SYNC_EXCLUDED_SLUGScontrols configured exclusions; verify the current route parser before changing operational defaults.
Service-day planning and tasks
Schedule synchronization and Daily Line-Up publication are separate lifecycle boundaries. Published Daily Line-Up dayparts are the side-effect boundary for service-day assignments, accountability, and task/readiness materialization; schedule sync does not replace lineup publish. See ADR-0071, the Lineup Cards contract, and the current packages/shift-tasks / packages/lineup modules.