Switching timezones to go back in time past the deadline

Yes, this is something of an edge case, but I just ran into it. It turns out that if the deadline passes, then you arrive in an earlier timezone in which the deadline hasn’t passed yet and adjust the timezone in your Beeminder settings, things look screwy.

Specifically, the graphs that got redrawn after the deadline hit don’t get redrawn again now that they’ve gone back in time, so they still show their post-deadline state (one day less buffer.) The colors on the list of goals are that of the next day (that you just rolled back) are also in that state. The color on the goal page for any specific goal is correctly rolled back, it’s just the list of goals that has the wrong colors. (Also the API, which gives the post-deadline safebuf and safesum values.)

Maybe this is too much of a corner case to be worth fixing, but it’s more than theoretical. I just arrived in Europe/Budapest at quarter to midnight, and changed Beeminder timezone from Asia/Jerusalem (in which the time was 00:45.) Most of my goals have a 00:30 deadline, meaning they were affected by this bug. Hopefully it’s just cosmetic, and when the deadline hits again (three quarters of an hour later), everything will be back as expected.


Nice catch! Does forcing a regeneration of the graph (like by making a dummy edit to a datapoint) fix it?

(Also, DM me for your bug bounty – generally stickers, but we sometimes do honey money)


Good point, it seems likely that would work, though I didn’t think to check it at the time, and the deadline has long since been re-passed. Now everything seems OK—only in that intermediate period was there a problem, it seems.