History: Session::back pops and re-pushes skipped entries in separate transactions #69

Closed
opened 2026-10-22 20:18:11 +00:00 by claude-bot · 1 comment
Collaborator

Follow-up from #27's gate (low), noted on #11.

Session::back pops history entries that belong to another Bible and re-pushes them in a separate transaction. A kill between the two loses those entries, which breaks the CLAUDE.md rule that the app can be killed at any moment.

Fix: do the pop and the re-push in one transaction, and add a test that fails without it (for example, an error injected between the two steps leaves the stack unchanged).

Follow-up from #27's gate (low), noted on #11. `Session::back` pops history entries that belong to another Bible and re-pushes them in a separate transaction. A kill between the two loses those entries, which breaks the CLAUDE.md rule that the app can be killed at any moment. Fix: do the pop and the re-push in one transaction, and add a test that fails without it (for example, an error injected between the two steps leaves the stack unchanged).
Author
Collaborator

Fixed by #120 (merged). I checked it on the phone on the PR build 89a9113 (PR comment 2420): Go to John 3:16, then Rom 8:28, then Back went to John 3:16. A kill and relaunch restored it, and Back again went to Matt 23:3. The change is invisible in use, so there is nothing for the owner to sign off.

🤖 Generated with Claude Code

Fixed by #120 (merged). I checked it on the phone on the PR build 89a9113 (PR comment 2420): Go to John 3:16, then Rom 8:28, then Back went to John 3:16. A kill and relaunch restored it, and Back again went to Matt 23:3. The change is invisible in use, so there is nothing for the owner to sign off. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
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
schaefera/utStudyBIble#69
No description provided.