[bug] filtered cards go to original deck after failing it

Im still tracking down this bug to make it reproducible, but its happened at least 3 non consecutive days (thats the reason im having problems tracking it down)

I have a filtered deck that i do at the end of the day with following search -deck:filtered::random (rated:1:2 OR rated:1:1) and i have reschedule cards based on my answers disabled

Some times after failing the card on the filtered deck, the card goes back to his original deck instead of the filtered one

The problem is that i dont notice them going back to the original deck after the following day. One day i noticed it during the same day, but i just thought it was that i forgot to review everything. But its happened a few times after that already

Ive try to force this bug by failing every card and by failing them randomly, but i was not able to reproduce it yet

This has happened both reviewing on desktop (2.1.54) and on ankidroid (2.15.6)

Would you care to guess why is this happening so maybe it helps me track it down and so i can try to reproduce it to create a better bug report?

Okay, yesterday it happened again, but i think it was after pressing good, not fail on the cards. They went to their original deck but in a failed state

How should i proceed after noticing them?

Are you able to reproduce the issue after enabling the v3 scheduler?

I dont want to go to v3 just yet. Im very comfortable with how v2 works and i have adapted at how to answer based on how it currently works. Also its not in ankidroid and to be honest, i dont want different scheduling based on where i do the reviews. Ill transition when i have the time :slight_smile:

Not sure if you want to get rid of v2 eventually or when, but the bug is still there regardless :slight_smile:
Yesteday it happened again. But the day before it didnt

It works okay on the normal case in the normal case, but its something i do that triggers it. It happens on v2

It is available in the recent alpha builds: Add support for the V3 scheduler; drop support for V1 by dae · Pull Request #11808 · ankidroid/Anki-Android · GitHub

v2 will be deprecated soon, so it’s hard to justify spending time hunting down bugs in it if they don’t exist in v3.

There is no bug after all

I was rebuilding the filtered deck early to check the number of cards in it since i stop for the day when i reach 50 and the filtered deck was sucking cards in a failed state for a normal deck i have in the mix

Ive been using this for a long time and never had this happened. Usually i finish reviewing these cards before rebuilding this filtered deck and had never noticed i was sucking cards without finishing reviewing them

I just happened to started doing this early and triggered this behavior

This scares me a little. Ankidroid has been in beta for a very long time and most people havent test the changes in the last 2 years. People like me that has been around for a while, tend to do lots of weird non standard things :sweat_smile:

After reading v3 scheduling it is not clear to me

For example, it says that

this will not cause scheduling problems

But it doesnt say what has changed. All the changes listed are external facing changes. Has nothing related to “how the actual scheduling is done” changed?

The new scheduler passes most of the tests used to test the previous schedulers (the ones where behaviour is the same)

The wording is strange. Does this means that cards using v3 will not change the day the were already scheduled to be reviewed in v2? And that cards reviewed in v3 will be scheduled to the same day (more or less due to slight fuzz changes) that it would be scheduled with v2?

1 Like

Correct - assuming you’re not reaching the daily limits, cards that are due in v2 will be due in v3 and vice versa, and the next interval a review card is given when you press a particular button will be basically identical on v2 and v3 (aside from fuzzing changes). That’s why it’s safe to switch between them.

1 Like

Yesterday the “bug” came again

i was super super sure i had no extra cards around in learning when i rebuild the filtered deck and after reviewing it, the “bug” happened again

But this time on ankidroid. Its very hard to tell on ankidroid because it has a bug where the phone doesnt show up card in learning in the main screen, so who knows. Its had this bug for at least 3 years now

Ill keep an eye on this

Ill make the switch soon then

Ive read the v3 wiki info a few times and i always got the vibe that it was safe from a “program error” perspective, not from the “my intervals are safe” perspective. Calling it v3 also made me think it was a big change like v1->v2

This feels now like a v2.1 now to me. Just improvements over v2. Even if every line of code and the internal format changed

After switching to v3 on desktop i have in ankidroid i have 4d (hard), 5d (good), 6d (easy) and on the desktop i have 5d (hard), 7d (good), 9d (easy) on the same card

What the hell? This particular card i would rate as easy in v2, but not so sure in v3

For me 3 days difference in a card with an ivl of 3 is pretty huge difference

Ive disabled v3 again

I cant use any of the advantages of v3 when mixed with ankidroid, because i still have to use my filtered decks in ankidroid. I use both clients mixed during the day

Not to mention, i dont want this big difference in days depending on where i do my review

When i have to switch, ill do it all at once and get used to it once

You can’t easily compare the two, because v2 fuzzes intervals as well, but does not reflect that on the answer buttons, and the actual assigned interval when a card is answered will change each time.

Still, dont you think 3d fuzz for a card with 3d interval is a little too much?

A little out of my ass, but for my own decks, when i have time at the end of the day, i consider reviewing ahead cards with rescheduling enabled using the following criteria:

If the interval is over 100d, i allow myself to review it 1d ahead
If the interval is over 160d, i allow myself to review it 4d ahead
If the interval is over 200d, i allow myself to review it 7d ahead
If the interval is over 250d, i allow myself to review it 10d ahead

This criteria is just a gut feeling, but i feel it wont affect my retention in anyway to move a single day if the card already have 100d of interval

Seeing that fuzz move cards with 3d interval 3 whole days, i might as well review ahead cards with 250d interval 3 months ahead

I mean, i feel these numbers are fucked up for v3. And if v2 is doing the same under the hood, it feels fucked up too

Please avoid using language some people may find offensive.

Yes, but it’s not a 3d interval - the fuzz is applied to the new interval, not the old one. I’m guessing that the base value of Good in this case was about 5.7 days. IIRC v2 truncated instead of rounding, hence the 5d figure. v3 does not truncate, so the base value is 6d, and with fuzz it will work out to be a number between 4-7d. The base value of Easy would be about 7.4, with a maximum fuzz of 9 days.

Sorry, english is not my main language. Out of my ass was my way of saying i dont have any data to back up why i picked these ranges. I didnt know it sounded offensive in some countries. Might i ask where are you from?

Saying the equivalent in spanish would just sound funny

Anyway, so a card with intervals of 5.7 can get a 3d fuzz? Dont you think this is too much?

Im glad you decided to show the real value now, but what is this fuzzer designed to achieve?

I could understand if it was there was some kind of purpose. Like maybe use the fuzzer to move the cards to the day with less reviews cards scheduled or something useful

Still, i dont think is a good idea to move cards that are not matured yet. 21d is probably another random value picked by you, but it doesnt feel too off to me

I would like to have an option to deactivate such a random behavior if possible

If you find the card easy, I don’t think it’s particularly aggressive that a card that was just on the cusp of being given a 8 day interval instead gets a 9 day interval. And with Good, the maximum extra wait is one day, with a bias towards reducing the interval instead of increasing it.

Fuzzing helps to avoid cards clumping together - if they tend to show up on the same day each time you review them, it makes it easier to guess the answer. It also tends to reduce peaks when not studying consistently.