I haven’t checked but I’m guessing that it could really mess up the SM2 algorithm if it were the default.
Example
Imagine it is a mature card with with:
An interval of 90 days.
Is due in 7 days.
You then manually move the due date to tomorrow for some reason.
The next day you see the card and get it correct.
If the interval was left alone it is scheduled >90 days in the future as you would expect (exact amount depending on ease).
If the interval was changed to 1 it would probably be scheduled only a few days in the future and take several answers to recover to an interval of 90+ days.
Fair point. So I think the alternative solution is storing the last review date in the card table of Anki’s database, and then we don’t need to infer the last review date via due-ivl. To infer the last review date from review logs is accurate but too slow for sorting case.
@rossgb is correct about the reason. Adding the review date to the cards table would be fairly complicated, as it requires changes to the sync protocol if we make another column (packing into custom data would avoid this), and we’d need measures to deal with older clients that don’t know to write that info.
Spitballing here: would changing the behaviour of set due date when FSRS is enabled be a possible alternative?