Skip to content

fix: recover interrupted settings saves - #42

Merged
EdwardChamberlain merged 4 commits into
mainfrom
fix/issue-38-config-save-recovery
Sep 24, 2026
Merged

EdwardChamberlain merged 4 commits into
mainfrom
fix/issue-38-config-save-recovery

Conversation

@EdwardChamberlain

@EdwardChamberlain EdwardChamberlain commented Sep 24, 2026 •

Copy link
Copy Markdown
Owner

Closes #38. Save settings through a verified temporary file, retain the previous config until replacement is confirmed, and recover from the backup at boot after an interrupted save. Invalid or incomplete settings boot into setup AP mode without printer API traffic.

Validation: 32 focused config, startup, and web-config tests passed; touched-file compilation, flake8, and git diff --check passed. The startup regression covers the incomplete-settings boot path.

@EdwardChamberlain

EdwardChamberlain commented Sep 24, 2026 •

Copy link
Copy Markdown
Owner Author

Code issues fixed in fd66177 and follow-up commits 2c37a8c. Settings recovery validates the active file, restores from a verified backup, and leaves the printer ID unset for incomplete settings. The app now stays in setup AP mode without printer API traffic; a startup regression covers that path, and the web-config import passes the new lint gate.

Validation: 32 focused config/startup/web-config tests pass. The combined candidate passes 125 tests excluding the two GUI modules that need the unavailable local FreeSimpleGUI dependency; full flake8 and compilation pass. PR #45 CI is green, but its required checks will apply to main after #45 lands.

Still needs hardware evidence: interrupt power during settings save on ESP32-C3 and record boot/recovery result.

@EdwardChamberlain
EdwardChamberlain merged commit 0c31259 into main Sep 24, 2026
3 checks passed
@EdwardChamberlain
EdwardChamberlain deleted the fix/issue-38-config-save-recovery branch September 24, 2026 22:32
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.

[BUG] Recover safely from interrupted web configuration saves

1 participant