Repository navigation
ADR 0012 Revision Is Not Logged
Source of truth: this wiki page.
- Status: Accepted. Amended by ADR-0033: revisions from Today and by skill are recorded; a deck's Revise records too since 2026-10-23 (ADR-0033).
- Date: 2026-10-02
A deck's badge said Done whenever a session on it would drill nothing right now. New cards are held to one daily cap shared by every deck, so on the first day every deck read Done and none could be started again (#120). The fix shows Not done until every card is learned, and the learner asked that a finished deck can still be opened "for revision".
Revising means drilling cards before they are due. SM-2 as implemented in
Sm2.next sets the next interval from the day of the review, as the last
interval times the ease, without asking how early the review is. A card
learned yesterday with a six-day interval, revised today and rated Good,
would next be due in about fifteen days, as if it had been remembered for
the whole six.
A deck with every card learned and nothing due offers Revise. It drills
each learned card once, in its skill due soonest, through the ordinary drill
screens, and records nothing: no row in reviews, no change to card state.
SessionQueue.build(reviseAll: true) builds the queue; DrillSession runs it
with recorded: false, as number practice already does (ADR-0011).
- Revising never moves a card's schedule, so revision cannot make the schedule look better than the learner's memory is.
- Revision does not count towards the streak, the heatmap or any statistic, and the summary's numbers for it are not saved. A learner who only revises on a day keeps no streak for it.
- The drill shows no next-due intervals during revision, and ending a revision part-way says nothing is recorded.
-
Log revision as ordinary reviews. Stretches intervals as above, and
changing
Sm2.nextto account for early reviews replaces the scheduling rule, which needs its own decision (AGENTS.md). -
Log revision with a flag that replay ignores. Keeps the streak honest
about practice, but adds a column to the append-only
reviewstable, a coordinated migration, for a beta that does not need it yet.
See also: Contributing · ADR-Index · Home
1. Learner guides
- Learner Guide
- Getting Started
- Today and Daily Lessons
- Drills and Skills
- Courses and Paths
- Proficiency Levels
- Scripts and Readings
- Readings ISO 15919
- Speaking and Listening
- Progress and Stats
- Profiles and Settings
- Backup and Restore
- Reporting a Problem
2. Deck building guides
- Deck Building Guide
- Deck Format
- Romanising Indic Languages
- Deck Licences and Quoted Books
- Deck Tools
3. Review guides
4. Translation guide
5. Building on iOS
6. Roadmap
7. Sources and attributions
8. Contribution and agentic coding