full diff

space.opendeck.progress

opendeck.space +5 −0
From
bafyreieg75hwmmp4ucbw3w6ivu63b33ad6yqam3x3k4i6a346f6rxhfzpi indexed 2026-09-23 21:36 UTC View this version
To
bafyreie6g52a3fdgl2e6f5pwibo44qcjlhh3tnwbfdlstoceo6xww5cy6y indexed 2026-10-08 13:09 UTC View this version

Compatibility

backward compatible Backward compatible. 2 non-breaking changes.

Non-breaking changes (2)
  • AddedVertex AddedVertex { vertex_id: "space.opendeck.progress:body.firstReviewedAt" }
  • AddedEdge AddedEdge { src: "space.opendeck.progress:body", tgt: "space.opendeck.progress:body.firstReviewedAt", kind: "prop", name: Some("firstReviewedAt") }

Migration guidance

Added

  • AddedVertex { vertex_id: "space.opendeck.progress:body.firstReviewedAt" }

Notes

  • Non-breaking: AddedEdge { src: "space.opendeck.progress:body", tgt: "space.opendeck.progress:body.firstReviewedAt", kind: "prop", name: Some("firstReviewedAt") }

Changes

11{
22 "$type": "com.atproto.lexicon.schema",
33 "defs": {
44 "main": {
55 "description": "FSRS scheduling state for a single card.",
66 "key": "tid",
77 "record": {
88 "properties": {
99 "card": {
1010 "description": "AT-URI of the card this tracks.",
1111 "format": "at-uri",
1212 "maxGraphemes": 1000,
1313 "maxLength": 10000,
1414 "type": "string"
1515 },
1616 "deck": {
1717 "description": "Record key (rkey) of the owning deck.",
1818 "maxGraphemes": 64,
1919 "maxLength": 640,
2020 "type": "string"
2121 },
2222 "difficulty": {
2323 "description": "FSRS difficulty (float stored as string).",
2424 "maxGraphemes": 1000,
2525 "maxLength": 10000,
2626 "type": "string"
2727 },
2828 "direction": {
2929 "description": "Study direction this schedule tracks; absent means forward (front to back).",
3030 "enum": [
3131 "forward",
3232 "reverse"
3333 ],
3434 "type": "string"
3535 },
3636 "dueAt": {
3737 "description": "When the card should be shown next.",
3838 "format": "datetime",
3939 "type": "string"
4040 },
41 "firstReviewedAt": {
42 "description": "When the card was first rated; absent for cards studied before this was recorded.",
43 "format": "datetime",
44 "type": "string"
45 },
4146 "lapses": {
4247 "description": "Number of times a learned card was forgotten.",
4348 "type": "integer"
4449 },
4550 "lastRating": {
4651 "enum": [
4752 "again",
4853 "hard",
4954 "good",
5055 "easy"
5156 ],
5257 "type": "string"
5358 },
5459 "lastReviewedAt": {
5560 "format": "datetime",
5661 "type": "string"
5762 },
5863 "repetitions": {
5964 "description": "Number of times the card was rated.",
6065 "type": "integer"
6166 },
6267 "shortTermStep": {
6368 "description": "Index into the short-term intervals while learning or relearning; absent otherwise.",
6469 "type": "integer"
6570 },
6671 "stability": {
6772 "description": "FSRS stability (float stored as string).",
6873 "maxGraphemes": 1000,
6974 "maxLength": 10000,
7075 "type": "string"
7176 },
7277 "state": {
7378 "enum": [
7479 "new",
7580 "learning",
7681 "review",
7782 "relearning"
7883 ],
7984 "type": "string"
8085 }
8186 },
8287 "required": [
8388 "card",
8489 "dueAt",
8590 "stability",
8691 "difficulty",
8792 "repetitions",
8893 "lapses",
8994 "state",
9095 "lastReviewedAt"
9196 ],
9297 "type": "object"
9398 },
9499 "type": "record"
95100 }
96101 },
97102 "id": "space.opendeck.progress",
98103 "lexicon": 1
99104}

Compare other versions