fix: surface a failed import as a dialog and parse its message strictly #149
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/import-failure-dialog"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
A failed import's only feedback is a
notify-sendtoast. KDE suppresses notifications over fullscreen apps, so the first live SRP login failure (#146's CAPTCHA demand) played out with no visible feedback at all — the user only found it in the log. Separately,downloaded()'s parsing trusts the payload shape completely (#141): a two-field message passes the>= 2check and dies onsplit[2]inside a Qt slot, and any&-less string is opened as~/.aqomui/<msg>.json.Fix
messageBox(Critical) instead of a toast — a failed import answers a user action and must not vanish with the desktop's notification policy. Success keeps its toast.&is logged and dropped; a success result whose payload file is missing is logged instead of raisingFileNotFoundErrorfrom the slot. Closes #141.Verification
Three new stub-based tests: failure → dialog with the right fields and no toast; two-field message → logged, no crash;
&-less message without a payload file → logged, no crash. Full suite 331 passed, lint gate clean.🤖 Generated with Claude Code
3d60f53e88c9592d897a