fix(ui): always open to the grid workbench on launch (#139) #145

Merged
ValleyGeek merged 2 commits from 0.3.4/issue-139-no-last-workbench into main 2026-06-25 19:28:15 +00:00
Member

Summary

  • Removes the "workbench" field from the persisted session-state payload — the active workbench is no longer written to the database on app close.
  • _restore_session_state() now unconditionally activates the Grid workbench on launch, regardless of any stale value left in an older session DB.
  • All other session-state fields (window geometry, sort order, tag/search filters) are unaffected.

Test plan

  • test_main_window_restore_always_defaults_to_grid_workbench — asserts restore defaults to "grid" even when a stale {"workbench": "help"} payload exists in the DB
  • test_main_window_persist_session_state_omits_workbench — asserts _persist_session_state() no longer writes a "workbench" key
  • Full suite: 630 passed, 1 skipped — no regressions
  • ruff check / ruff format --check clean

Closes #139

🤖 Generated with Claude Code

## Summary - Removes the `"workbench"` field from the persisted session-state payload — the active workbench is no longer written to the database on app close. - `_restore_session_state()` now unconditionally activates the Grid workbench on launch, regardless of any stale value left in an older session DB. - All other session-state fields (window geometry, sort order, tag/search filters) are unaffected. ## Test plan - [x] `test_main_window_restore_always_defaults_to_grid_workbench` — asserts restore defaults to `"grid"` even when a stale `{"workbench": "help"}` payload exists in the DB - [x] `test_main_window_persist_session_state_omits_workbench` — asserts `_persist_session_state()` no longer writes a `"workbench"` key - [x] Full suite: 630 passed, 1 skipped — no regressions - [x] `ruff check` / `ruff format --check` clean Closes #139 🤖 Generated with [Claude Code](https://claude.com/claude-code)
fix(ui): always open to the grid workbench on launch (#139)
All checks were successful
CI / lint (push) Successful in 8s
CI / test (push) Successful in 2m2s
CI / appimage (push) Successful in 7m59s
CI / build-appimage (push) Successful in 0s
CI / windows-exe (push) Successful in 10m53s
CI / build-windows-exe (push) Successful in 0s
379b6a1839
Session-state restore previously re-activated whichever workbench was
open when the app last closed. Drop the "workbench" field from the
persisted session payload and always activate the grid workbench on
restore, regardless of any stale value left over from an older
session-state DB.

Threading notes: no worker changes; this only touches main-thread
QMainWindow startup/shutdown logic (_restore_session_state /
_persist_session_state), which already runs exclusively on the main
thread.
docs: PR-prep for issue #139 — bump to 0.3.5, update docs
All checks were successful
CI / lint (push) Successful in 16s
CI / test (push) Successful in 2m28s
CI / windows-exe (push) Successful in 11m1s
CI / build-windows-exe (push) Successful in 0s
CI / appimage (push) Successful in 14m9s
CI / build-appimage (push) Successful in 0s
15c019ca78
- Bump VERSION to 0.3.5 (compiled input changed: main_window.py)
- Add [0.3.5] CHANGELOG entry for always-grid-on-launch change
- Update TECHNICAL_OUTLINE.md session-persistence list to remove
  workbench (no longer remembered across sessions)
- Add opening sentence to USER_GUIDE Workbenches section noting the
  app always opens to Grid on launch

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
ValleyGeek deleted branch 0.3.4/issue-139-no-last-workbench 2026-06-25 19:28:16 +00:00
Sign in to join this conversation.
No reviewers
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
ai-collab/bulk-image-organizer!145
No description provided.