ReviewsTable

table

Breakdex::DataStores::ReviewsTable

Immutable log of every flashcard review rating event

Each row is a single review action — the breakdancer saw a card and rated it. Reviews are append-only and never edited. They feed analytics, progress tracking, and FSRS state transitions. The entity snapshot fields (v9+) preserve context even if the original entity is later deleted.

Relationships

Depends On 1

reviews_dao

Reads From 3

moves_tablecombos_tablefsrs_cards_table

Breaks If 2

review_type_enum_changesrating_enum_changes

Data Access

\u2190 Reads 3

moves_tablecombos_tablefsrs_cards_table

Answers

States

StateBehavior
combo Deleted
message: combo_id set to NULL via on_delete:set_null, but entity snapshot fields preserve context
shows: orphaned_review_with_snapshot
move Deleted
message: move_id set to NULL via on_delete:set_null, but entity_id_snapshot preserves the original reference
shows: orphaned_review_with_snapshot
no Fsrs State
message: fsrs_pre_state and fsrs_post_state are NULL — review was manual, not algorithm-driven
shows: manual_review

Columns

NameTypeConstraints
idtextNOT NULL
ratingtextNOT NULL ENUM: AGAIN, HARD, GOOD, EASY
review_typetextNOT NULL ENUM: MOVE, COMBO, MANUAL
reviewed_atdatetimeNOT NULL DEFAULT: now
move_idtext
combo_idtext
entity_id_snapshottext
entity_typetext
entity_display_nametext
entity_categorytext
fsrs_pre_stateint
fsrs_post_stateint

Primary Key

id

Foreign Keys

move_id \u2192 moves
combo_id \u2192 combos