Commit graph

6 commits

Author SHA1 Message Date
David 7e9c825af3 F1: Same-user re-import skips existing execution logs
Logs whose id already exists locally were re-inserted as-is, producing a
PRIMARY KEY violation per log that surfaced as errors in the import
report. They are now counted as skipped (execution logs are immutable
history — skip is always the right resolution). Adds the missing
regression test: re-import a full export without deleting anything.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-09 15:09:19 +02:00
David cd8636546a F2: Streak no longer counts aborted sessions
getDistinctSessionDays() now filters on status = 'completed' like every
other stat query, so starting and immediately exiting a session does not
extend the streak. Adds a regression test (completed today + aborted
yesterday => streak 1).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-09 15:04:24 +02:00
David 1424029eae Step 26 to announce exercise
Some checks are pending
CI / Lint & Format (push) Waiting to run
CI / Build (push) Waiting to run
CI / Tests (${{ matrix.browser }}) (chromium) (push) Waiting to run
CI / Tests (${{ matrix.browser }}) (firefox) (push) Waiting to run
2026-07-06 15:33:33 +02:00
David 49aaa0cd31 Add udpate modal (step 24) and control by audio cask (step 25)
Some checks are pending
CI / Lint & Format (push) Waiting to run
CI / Build (push) Waiting to run
CI / Tests (${{ matrix.browser }}) (chromium) (push) Waiting to run
CI / Tests (${{ matrix.browser }}) (firefox) (push) Waiting to run
2026-07-05 21:26:21 +02:00
David b69fae1edc Add installation modal dialog
Some checks are pending
CI / Lint & Format (push) Waiting to run
CI / Build (push) Waiting to run
CI / Tests (${{ matrix.browser }}) (chromium) (push) Waiting to run
CI / Tests (${{ matrix.browser }}) (firefox) (push) Waiting to run
2026-07-04 15:06:03 +02:00
David 352a3d5e88 Initial commit
Some checks are pending
CI / Lint & Format (push) Waiting to run
CI / Build (push) Waiting to run
CI / Tests (${{ matrix.browser }}) (chromium) (push) Waiting to run
CI / Tests (${{ matrix.browser }}) (firefox) (push) Waiting to run
2026-06-18 13:06:57 +02:00