Skip to content

Roster

Publish, posted edits, and predictability pay

Publish posts the week. Editing a posted shift warns before save if the change owes a premium. Premiums are recorded on an append-only ledger so a later publish cannot erase them.

ManagersAdmins Open in the app

Publish posts the week to the people on it. Until you publish, the grid is a draft. After you publish, edits are posted changes, and posted changes are what fair-workweek ordinances care about.

Publish the week

  1. Finish the week — hand-assign or Auto-Fill.
  2. Click Publish.
  3. Read the preview. If fair-workweek is on, the preview flags shifts inside the advance-notice window.
  4. Confirm.

Staff then see the week on My shifts. Notifications deep-link to the shift.

Editing a posted shift

Changing a posted shift (time, person, cancel, add) can owe predictability pay. The editor warns before save: this change owes about $X.

The amount is an estimate from your location's rule pack (flat dollars or hours of pay, cancellation percent, clopening). It is not legal advice and not a payslip.

The change ledger

Premiums are written to an append-only scheduleChanges ledger the moment a posted shift is changed, added, or cancelled. Re-publishing cannot erase what is owed. That is the point of a ledger instead of a snapshot.

If you undo a draft Auto-Fill before publish, there is no premium. If you move a posted person, there is.

Approving a pickup after posting

When a worker claims an open shift that is already posted, approving the claim assigns them and records an added premium on the same ledger. Self-service does not get a free pass around predictability pay.

What the preview is for

The publish preview is the last cheap moment to see:

  • Short-notice posts (inside the advance-notice window)
  • Clopening pairs
  • Labor vs the sales target for the week

Fix the week, then publish. After that, every click is a ledger row.

Export

Managers can export an audit-ready record of the premiums. Use it with payroll CSV; Sofia does not push pay items into Xero or MYOB.