Daily Line-Up & Compliance
Tracking shift reports, manager reports, and filing compliance
Danvas compliance has two related stores with different populations. The
compatibility Compliance Ledger is seeded from the published schedule
(managers) and published Daily Line-Up (staff); report_obligations is the
authoritative worked-shift obligation fact used for certified completion
metrics. A report submission cannot create an obligation.
Accountability model
| Report Type | Who is Due | Seeded When | Filed Via |
|---|---|---|---|
| Staff Shift Report | Anyone on a published line-up roster for the service day | Line-up publish (not draft save) | Service Day → Tasks → Submit Shift Report or /reports/new |
| Manager Report | Managers with a certified worked-shift obligation (the schedule seeds a provisional candidate) | Schedule finalization, then worked-shift reconciliation | Review → Manager Reports (/reports/manager) |
- Service-day grain (staff): One staff report obligation per employee per location per calendar service day — even if they work Lunch and Dinner.
- Unlinked staff: Employees without a linked user account can remain in the compatibility projection; authoritative denominators require a certified worked-shift obligation.
- Dual obligations: A manager on the schedule and a published lineup may owe both a manager report and a staff shift report.
- Service week: Weekly compliance percentages use a Saturday–Friday boundary.
Daily line-up workflow
- Manager opens Service Day → Line-Up (or Service Day Setup for all dayparts).
- Rosters staff, sets goals, marks a Closer, and adds briefing items.
- Publishes each daypart when ready — draft saves do not create compliance rows.
- Staff receive Slack notifications and acknowledge published cards.
- After service, staff file one shift report for the day. Filing must match an existing obligation; it cannot create a missing expectation. Certified obligations become Filed or Late by the stored next-day 4:00 a.m. local deadline.
Removing an assignee from all published lineups for that service day deletes their unfiled staff compliance. Removing them from one daypart only does not clear compliance if they remain on another daypart that day.
Manager reports workflow
When the weekly management schedule is finalized, Danvas seeds manager compatibility rows and provisional manager-obligation candidates for scheduled managers and admins. Worked-shift reconciliation certifies only rows supported by canonical labor facts.
- Reopening a published schedule deletes unfiled manager compliance rows for that week.
- Line-up-driven staff compliance is unaffected by schedule reopen.
Compliance dashboard
Admins and managers view filing status at Review → Compliance (or /admin/compliance). The
dashboard reads the authoritative report_obligations reader: a rolling
service-day summary plus a detail card for the current service day. The
denominator counts active certified worked-shift-backed obligations only;
summary windows are bounded through each location's current service date using
the authorized locations' stored timezones. Provisional, uncertified
candidates never appear as expected rows — they surface only in
data-quality diagnostics.
Each obligation is classified by display state:
- On time — a certified obligation settled by the stored next-day 4:00 a.m. local deadline; Late when settled after it, in both cases backed by exact report-link and submission-timing evidence.
- Pending / In progress — with a valid future deadline, an unsettled obligation is Pending until any submission evidence is recorded, then In progress.
- Missing — a valid overdue deadline that passes without settled evidence; a filed or late row whose evidence cannot be verified also counts as missing rather than completed. Obligations with a missing or invalid deadline are malformed, fail closed as Missing, and surface in data-quality diagnostics rather than waiting on a deadline that never arrives.
- Excused — shown separately and excluded from the expected population rather than counted as missing.
- Managers see their assigned locations only — an empty assignment sees no compliance data; admins see the whole team.
The compatibility Compliance Ledger still backs its remaining consumers,
such as schedule/lineup projection writers, account-link propagation, and the
reminder crons (/cron/check-compliance, /cron/report-reminder). No
compatibility-ledger retirement date is claimed until an approved migration
plan covers those remaining readers, writers, reminders, and historical
rollout evidence.