Skip to content

Future-dated schedule changes can't be viewed, moved, or cancelled before they land #17

Description

@devboylin

What's wrong: a schedule change saved with a FUTURE effective date (owner ruling 2026-08-01: effective_from/effective_until on employee_schedules) is invisible and immutable once saved — no way to see it, move its date, or cancel it before it takes effect. The only workaround is re-saving the whole grid and reasoning about window arithmetic by hand.

Change (UI plan approved by owner 2026-08-03): a "Pending schedule changes" card on the per-employee schedule page listing every future-dated facet:

  • pending addition ("starts Aug 10") -> inline date change (tomorrow or later) or cancel (deletes the row, never took effect)
  • pending removal ("stops from Aug 10") -> inline date change or cancel (clears effective_until, shift keeps running)

After any edit: future scheduled-upcoming assignments outside the new window are removed, then generate_instances backfills anything newly in-window. Both audit-logged. No migration.

Blast radius: per-employee schedule page + one new POST route. Generation logic untouched.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions