Fifty-six turns of twenty
A Daily Challenge that can never exceed twenty words showed a game log toggle claiming fifty-six turns. Fruit events were counting as turns.
A screenshot of a finished Daily Challenge showed a “View game log (56 turns)” toggle on a mode that caps out at twenty words. The count came from gameLog.length on the merged GameRecap component, but a game log entry isn’t always a turn: the same array carries word entries alongside fruit-eat and fruit-spawn entries for every piece of fruit picked up along the way, and every one of those had been counting toward the total.
The fix is a derived count filtered down to entry.type === 'word', feeding the toggle label instead of the raw array length:
const turnCount = $derived(gameLog.filter((entry) => entry.type === 'word').length);
A component test pins the distinction directly: five log entries, two of them words, and the toggle now reads “View game log (2 turns)”. The bug had shipped invisibly the day before, in the same pass that unified two separate screens into GameRecap, since neither of the old screens had exposed a full mixed-entry log for a player to notice the count was wrong.