The new date filter for the shift occurrence page would change the dates you're
looking at if you added a filter. By default it shows almost 7 days; From the
current day at midnight, to just before 8 days from now. That lets us have a 7
day window without displaying events at midnight on the 8th day.
However, this gets weird for two reasons. The new date filter only gives you a
date selector like 03/02/2026. When this is converted to a day, it creates it at
midnight, which effectively cuts off a day.
- Start 2026年03月01日 00:00 - End 2026年03月07日 23:59 ✅
- Start 2026年03月01日 00:00 - End 2026年03月07日 00:00 🚫
Setting up any filter passes that date through to the filter, which changes the
range.
Also, when you skip through to the next time period, if you base it off a time
slightly before 7 days, it will slowly shift by that difference. That's
because it's using the current ends at at the new starts at (when going
forward). So first it will start at midnight, then it will start 1 microsecond
before, and then 2 microseconds before, etc.
To fix these, I changed the ShiftOccurrenceFilter class to always set the
starts_at to the beginning of whatever day and then end_at to the end of the
day, no matter what's passed in. But when calculating the next time period, it
rounds to the nearest integer in seconds, which keeps the time shift stable.