CrowdAnki icon indicating copy to clipboard operation
CrowdAnki copied to clipboard

It exports fsrsParams, but shouldn't

Open Mart-Bogdan opened this issue 2 months ago • 1 comments

I think it should not export this field as it would be individual for each user. Would be creating metge conflicts.

What I've got after exporting deck:

See example JSON...
          "desiredRetention": 0.9,
          "dyn": false,
          "easyDaysPercentages": [
              1.0,
              1.0,
              1.0,
              1.0,
              1.0,
              1.0,
              1.0
          ],
          "fsrsParams5": [
              0.39882606,
              0.50113124,
              0.50113124,
              42.144405,
              7.255938,
              0.33688444,
              1.4619677,
              0.0010282171,
              1.3356702,
              0.13555303,
              0.81524825,
              1.9121269,
              0.096556626,
              0.19023876,
              2.2522087,
              0.34552544,
              2.766293,
              0.37993068,
              0.61565745
          ],
          "fsrsParams6": [
              1.8608,
              11.3499,
              20.2448,
              72.8128,
              6.4133,
              0.8334,
              3.0194,
              0.001,
              1.8663,
              0.1726,
              0.7901,
              1.4835,
              0.0614,
              0.2629,
              1.6483,
              0.5953,
              1.8729,
              0.5368,
              0.0852,
              0.0716,
              0.2168
          ],
          "fsrsWeights": [],
          "ignoreRevlogsBeforeDate": "1970-01-01",
          "interdayLearningMix": 0,
          "lapse": {
              "delays": [
                  10.0
              ],
              "leechAction": 1,
              "leechFails": 8,
              "minInt": 1,
              "mult": 0.0
          },

Perhaps don't include deck_configurations at all.

Mart-Bogdan avatar Oct 14 '25 01:10 Mart-Bogdan

Thanks for bringing this up!

Yeah, you're right, though we should probably rethink deck_configurations altogether. See also: #31.


Some considerations (brain-dumping them here, for now, for convenience — they're not directly related to your issue, and I'm not really asking you, in particular (unless you have some thoughts :)) ) :

  1. People snapshotting their decks probably want as complete a data dump as possible. (However, we already don't include the fsrsWeights — see #208 — maybe we should reconsider that for that usecase??)
  2. In some cases, of weird decks, it makes sense to include, say, the new intervals in the CrowdAnki json, at least as a default. (e.g. the deck contains maths problems as notes, and the creator might want to suggest more sparse initial repetitions.) However, even in this case we probably don't want to overwrite the deck configuration on re-import. (We probably need a checkbox analogous to the ~"don't move existing cards" one ("don't overwrite deck config").) We also probably don't want to include the fsrsParams, even in this case (? OTOH for weird decks, where the creator has good information about card difficulty, having the fsrsParams might make sense?)
  3. For most decks, we probably don't want the deck configuration at all. (i.e. neither exported nor imported).
    • Where should we place the option to decide whether to export the deck config or not? There probably should be a global option (easy!), but it should also be controllable per-deck (harder — we'd likely need to adjust Anki's own "deck options" screen or add an export config screen, like our already existing import config screen (but we don't want an excessive config screen overload)).
    • For import of decks without deck configuration, what do we use as the deck configuration? (There usually is a deck configuration named "default", but without checking, I think it can be renamed.) (What does Anki do with APKG imports?)

aplaice avatar Oct 16 '25 19:10 aplaice