Keep Today and Later reads available during planning writes #700

Merged
timmy merged 1 commits from timmy/699-readable-planning-stores into main 2026-08-13 02:24:46 +00:00
Owner

Closes #699

What changed

  • migrate Today and Later SQLite schemas once per database version instead of on every connection
  • keep ordinary connections free of WAL setup, DDL, migration backfills, and commits
  • prove initialized reads remain available during an independent planning write

Verification

  • RED: both new lock-contention tests failed with sqlite3.OperationalError: database is locked
  • focused: 21 passed
  • full suite: 1367 passed in 73.77s
  • contention probe: 100/100 reads succeeded for both stores while a writer held BEGIN IMMEDIATE
Closes #699 ## What changed - migrate Today and Later SQLite schemas once per database version instead of on every connection - keep ordinary connections free of WAL setup, DDL, migration backfills, and commits - prove initialized reads remain available during an independent planning write ## Verification - RED: both new lock-contention tests failed with `sqlite3.OperationalError: database is locked` - focused: `21 passed` - full suite: `1367 passed in 73.77s` - contention probe: 100/100 reads succeeded for both stores while a writer held `BEGIN IMMEDIATE`
timmy added 1 commit 2026-08-13 02:22:44 +00:00
perf: keep planning reads available during writes (Closes #699)
All checks were successful
CI / lint (pull_request) Successful in 1m28s
CI / build-release (pull_request) Successful in 5s
CI / release-candidate (pull_request) Has been skipped
1de6d73e75
timmy merged commit 71d06347fd into main 2026-08-13 02:24:46 +00:00
Sign in to join this conversation.
No reviewers
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: stackchain/stackchain-dashboard#700
No description provided.