Beeminder Forum

Another retroratchet bug: daily total resets


#1

I have a goal where I need to log 2 units/day. If I’ve logged 1/2 and then retrorachet to today, it resets the daily total, incorrectly making it so I still have 2/2 to do today.


Help me understand (the details of) retroratcheting
#2

You’re sure that’s not the more natural behavior? Ratcheting to zero safe days means you should have the full daily amount due that day. Maybe?

(General idea that would help us a lot with bug reports: Including (1) numbered steps to follow to reproduce the behavior, (2) what you expected to happen, and (3) what actually happened. Often it seems like overkill to include all 3 of those, especially when “what I expected” goes without saying, but it’s surprisingly helpful to have all 3 anyway.

PS: Don’t worry about all that every time, but if there’s uncertainty about whether something is a bug or confusion about what it is, it can be super helpful to edit the original bug report to include those 3 parts.)


#3

Steps to reproduce:

  1. Set up a goal requiring 2 units/day, due in 3 days
  2. Log 1 of the 2 units today
  3. Retrorachet to 0 days

Expected outcome:
As I’ve logged one out of two today, then noticed the number of safe days was too high, I would expect that correcting the problem preserves the number I need to do today.

Actual outcome:
Retroracheting resets to the full daily amount due today, ignoring how many I’ve actually done.

I’m very sure that’s not the more natural behavior. It’s surprising and unexpected to have the full daily amount reset, and to fix it, I have to add incorrect data with a note like “fixing retrorachet bug.”

If there’s something you have to do every morning and night, and you did it in the morning, you should have 1 out of 2 left that day, plus 2 for each day until the deadline. Reducing the extra time should reduce the amount due by 2 for each day you retrorachet Since I’ve already done the task in the morning, fixing the goal to make today an eep day should leave me with 1 left to do, not 2.


#4

Looks like this bug has been fixed! Yay! Thank you!


#5

Just was pointed to this thread by @zedmango in a thread I made because I had the same problem: Help me understand (the details of) retroratcheting

I’m not sure if Beeminder’s behavior is incorrect but it was unexpected for me, too. I think that the phrasing “retroratchet to x days” might be a bit confusing. It seems to imply that the goal gets reset to a state exactly x+1 days from derailing, but if retroratcheting happens in the middle of the day it can be less than that.

Looks like this bug has been fixed! Yay! Thank you!

Perfect. I’ll keep the link for reference.


#6

@howtodowtle The number indicates the number of daily deadlines that will pass before derailing. So 0 means derail at the next deadline, 1 means not today but tomorrow, and so on.

Note that this has nothing to do with the partial-day data points entered. If I have 0/2 data points entered 24 hours before my deadline, I am exactly 1 day from derailing, and the same is true if I have 1/2 entered. I’m still exactly 1 day from derailing, even though I only have 1 more data point that needs to be entered.