Skipping a card is not a mistake

Scrolling through a deck without answering recorded a 0% attempt and listed
every card under "Missed items" with its answer revealed. Only answered cards
count now: the score is correct/answered, the attempt stores the answered
count, an empty run records nothing, and the cards scrolled past wait under
"Not answered (n)" - listed as prompts with "not counted as mistakes" - and
"Answer the rest (n)" starts a catch-up run of just those cards (same restart
path as retry-missed, so history and the SRS still see the answers). "Aced
all" requires nothing left waiting too.

phase2 pins the flow: all-skipped records no attempt and no mistake list;
one-of-two reads "You got 1 of 1 right" + "Not answered (1)" with attempts:1,
bestScore:100; the catch-up run records the remaining answer. Exam mode keeps
its own rule: in a timed exam an unanswered question is a miss.

Version 0.6.5, SW v87.
This commit is contained in:
Martin Dvořák 2026-10-15 13:59:55 +00:00
commit 98537cee64
7 changed files with 161 additions and 20 deletions

View file

@ -1434,6 +1434,20 @@ Things I chose while building, with the reasoning:
(measured: 268..1280 at a 1280 window) — a flat pane floating 40px inside the scene read as
"cut off next to the sidebar".
96. **Skipping a card is not a mistake.** "You can just scroll all the way down and it counts
everything as incorrect even if you technically just skip it to do it later." The study feed's
results treated *every* card without a result as missed: swiping to the end recorded a 0%
attempt against the deck and listed all twelve cards under "Missed items" with their answers.
Now only answered cards count: the score line is `correct / answered`, the attempt records the
answered count, an empty run records nothing at all, and the cards you scrolled past appear
under **Not answered (n)** — listed as prompts, labelled "not counted as mistakes", with
**Answer the rest (n)** starting a catch-up run of exactly those cards (the same `restart`
path as retry-missed, so history and the SRS see the answers as usual). "Aced all" now also
requires that nothing was left waiting. Phase 2 pins the whole flow: all-skipped → no attempt,
no mistake list, no score line; one-of-two → "You got 1 of 1 right", "Not answered (1)",
`attempts: 1, bestScore: 100`; the catch-up run records the remaining answer. Exam mode keeps
its own rule — in a timed exam an unanswered question *is* a miss.
95. **Aero, second pass: a heavier shared blur, and a field that reads as a field.** Two follow-ups
on 94. The composer's input was still a flat 60% white bar (the "clean, even tile" from 91) on
a panel that had — rightly — become translucent, so it read as a white slab: "especially the