Skip to content

fix(history): restore category mods without duplicating saved selections - #379

Open
Lng999 wants to merge 1 commit into
Alban1911:mainfrom
Lng999:fix/category-mod-history-20261020
Open

Lng999 wants to merge 1 commit into
Alban1911:mainfrom
Lng999:fix/category-mod-history-20261020

Conversation

@Lng999

@Lng999 Lng999 commented Oct 20, 2026

Copy link
Copy Markdown
Contributor

After restarting Rose, saved category mods (VFX, UI, voiceover and related categories) were not automatically restored unless the selector was opened. The history loader returns per-category keys, but injection checked for the removed legacy other key before reading those categories.

Handle category history before the single-mod lookup. Keep existing explicit selections ahead of saved choices. Correct the shared legacy other writer to replace the category lists with grouped, deduplicated paths, clear stale categories and avoid duplicating every path under others. Map/font/announcer history and direct category writes retain their behavior.

Validation: the restoration regression fails against 146f7986. With restoration enabled but before correcting the writer, three real-persistence roundtrip tests and three writer tests fail (stale entries and duplicate others paths). All ten focused tests now pass, including partial missing history followed by a second restore with exactly one overlay mod, mixed categories, all missing categories and explicit choice priority. Package suites with temporary LOCALAPPDATA: threads 52 tests, utils 56 tests pass. Ruff E9/F63/F7/F82 and git diff --check pass. Tests mock injection and use temporary mod folders and real temporary history files; they do not establish a fix for issue #374.

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