Skip to content

fix: preserve session edits after reset and on page leave - #5

Closed
hvab wants to merge 11 commits into
mainfrom
fix/session-persistence-r05
Closed

hvab wants to merge 11 commits into
mainfrom
fix/session-persistence-r05

Conversation

@hvab

@hvab hvab commented Oct 3, 2026 •

Copy link
Copy Markdown
Owner

Preserve pending edits after Reset and on page leave, without allowing an untouched older tab to overwrite another tab's newer saved theme.

The original R05 shared flush remains debounced during editing and synchronous on pagehide, hidden visibility and before unmount. Each App now compares its current session with its restored or last successfully written snapshot. Idle flushes do not write; comparison happens synchronously so an edit before the async watcher is still saved. Explicit Reset invalidates the snapshot before writing defaults; valid URL imports retain save intent. saveSession reports success/failure, so a failed write is retried rather than marked saved. Session format, key and existing last-writer behavior for actual concurrent edits are retained.

R02 954f71d and main baseline 8662ce5 are already incorporated. Current shell, radio groups, Reka overlays, Share feedback, separate locale preference and concrete light/dark session policy stay intact. No old UI/system mode returns.

Ubuntu/Node 22 CI passed on exact head e785be0, including clean dependency installation and all existing quality commands. The branch is mergeable against main. Local quality commands and production build pass. The temporary two-tab reproduction failed before the correction and passes now; it also verifies immediate exit before the watcher, repeated idle flush, repeated default Reset, quota retry and explicit default-state URL import. No repository test infrastructure was added.

The actual resolved R03/R05/hvab-blocks 0.3 integration is published separately as PR #6, with its own successful exact-head CI. That PR retains measured panel sizing, container/Field adaptation, body font and a single AppLayers owner. This focused R05 branch retains the original 0.2 library pin.

Limits: local npm Git-package restrictions were not changed; local checks used matching installed dependencies and the exact pinned library source, while CI confirmed a fresh install. No new Safari/BFCache, Windows/forced-colors, screen-reader or OS-crash durability coverage is claimed. No theme/export/preview contract, main/develop push, PR merge or deployment change is included.

@hvab
hvab marked this pull request as ready for review October 18, 2026 19:00
@hvab hvab closed this Oct 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant