No, and tbh it feels like a monkey patch rather than a well thought-out solution.
If there are other issues then yes. If this is the only problem, then I see it as a valid solution.
sum(log(S)*R) or sum(R*(S)^x); 0<x<1.
It would make S less aggressive.
Yeah, but then it lacks a clear interpretation. sum(S*R) can be interpreted as âsum of stabilities of your memories, adjusted for the fact that you wonât recall 100% of cardsâ.
Is this a branch / fork of Anki that I can build, so that youâve got another data source?
Right now, nope. You can ask @A_Blokee, but I think itâs better to wait for Daeâs approval
Agreed. Once you decide to create a branch, feel free to ping me (or send a private message).
Here:
I still think a cap is cleaner solution than using logs and stuff. Itâs also easy to interpret, e.g. if 1 year is the max for S, we basically assume every card with more than a year stability to be equal.
Ok, but then we still need to test average R over 365 days. If we want a significant number of people to try all 3 options, a dropdown menu in Anki itself is the only option.
I never said donât do that. I thought they just wanted the S*R branch?
I thought Expertium and you needed some more beta testers for some fsrs related features.
Do I understand this correctly that this branch isnât the thing you two need more data on?
I want to test 3 things outlined here: Anki 25.06 Beta - #39 by Expertium
This branch doesnât have all 3, and also, if we want more people to participate, we need something convenient, aka a direct integration into Anki.
Letâs just wait for Dae.
I only thought you wanted the S*R branch to test on your personal decks. If you want the branch for
sum(average R over the next 365 days). This is better because it takes into account how slowly R decays
You can find it here: (For 50 years).
On an unrelated note could this be somehow split into a âSave CMRRâ thread I think its cluttering the beta.
I have no objections to you shipping experimental code in a beta or even a stable release, as long as itâs clearly indicated as such, and sufficiently hidden away that it wonât cause confusion for the average user, or generate a bunch of questions.
Considering dae gave his okay regarding that feature, Iâm going to wait until thereâs a PR an give you the values once I built and ran said PR.
That would make it a bit easier for me.
Hi, this version of Anki breaks AnkiConnectâs deck selection when adding new cards.
The aqt.mw.requireReset()
function causes the deck id of un-added notes to be reset.
Example code for an addonâs __init__.py
to replicate this issue (load up Anki and click the Run the bug
menu button):
import aqt
from aqt.qt import (QAction)
import anki
def setup():
def the_bug():
collection = aqt.mw.col
model = collection.models.by_name("Basic")
deck = collection.decks.by_name("Default")
ankiNote = anki.notes.Note(collection, model)
ankiNote.note_type()['did'] = deck['id']
print("Input Deckid: ", deck['id'])
print("Note Deckid: ", ankiNote.note_type()['did'])
aqt.mw.requireReset()
print("Note Deckid after reset: ", ankiNote.note_type()['did'])
menuAction = QAction("Run the bug", aqt.mw, triggered=the_bug)
aqt.mw.form.menuTools.addSeparator()
aqt.mw.form.menuTools.addAction(menuAction)
if __name__ != "__main__":
setup()
Example output (sometimes it resets to an existing deck instead of None
):
Input Deckid: 1749758880110
Note Deckid: 1749758880110
...
requireReset() is obsolete; please use CollectionOp()
Note Deckid after reset: None
See Clear notetypes cache on import by abdnh ¡ Pull Request #3969 ¡ ankitects/anki ¡ GitHub
The notetype cache is cleared and the deck id is set to None
as it was refetched from the backend after the call to requireReset
Perhaps an easy fix would be to move ankiconnectâs call to startEditing
to the top of addNote
?
Perhaps an easy fix would be to move ankiconnectâs call to
startEditing
to the top ofaddNote
?
This seems to work fine. Iâll send a patch with this change to foosoft.
- I noticed the stability of the card is low. So itâs intended because the
Retrievability
in the Card Info box uses the elapsed seconds to calculate R, which is more accurate. - I will try to reproduce it.
- The 1.4 months interval is the gap between
2025-04-24
and2025-06-07
. Itâs correct and irrelevant to the interval above the answer button card which is the next interval when you press the button.
Edit: I cannot reproduce the second problem. Could you send me a backup file and the steps to reproduce this problem?
My guess: the due of your learning card in filtered deck is a large negative number, but I donât know why.
Edit: Fine, I find more bugsđ
This one I can fix:
But this one I cannot: