Mail sidebar needs a retry action for folder failures #875

Open
opened 2026-10-02 17:28:23 +00:00 by kayg · 0 comments
Owner

Evidence

  • apps/web/src/lib/mail/MailSidebar.svelte:50-60 loads accounts, folders and sync status once in an effect. Its catch block sets loadState to error and stores no retry action.
  • MailSidebar.svelte:105-106 renders only “Mail folders are unavailable.” The sidebar has no Retry control. apps/web/src/lib/components/app-sidebar.svelte:632-634 mounts this component for Mail navigation, so moving between Mail routes does not provide a way to rerun this load.

Rule

Issue #869 asks for a real error state with a way forward for every list and panel.

Expected behaviour

Show a Retry action in the Mail folder sidebar error state. Keep the current folder rows if a later refresh fails.

Test idea

Fail the account or folder request, check for a readable error and Retry, then return the folders on retry. Check that a failed refresh does not remove already loaded folders.

## Evidence - `apps/web/src/lib/mail/MailSidebar.svelte:50-60` loads accounts, folders and sync status once in an effect. Its catch block sets `loadState` to `error` and stores no retry action. - `MailSidebar.svelte:105-106` renders only “Mail folders are unavailable.” The sidebar has no Retry control. `apps/web/src/lib/components/app-sidebar.svelte:632-634` mounts this component for Mail navigation, so moving between Mail routes does not provide a way to rerun this load. ## Rule Issue #869 asks for a real error state with a way forward for every list and panel. ## Expected behaviour Show a Retry action in the Mail folder sidebar error state. Keep the current folder rows if a later refresh fails. ## Test idea Fail the account or folder request, check for a readable error and Retry, then return the folders on retry. Check that a failed refresh does not remove already loaded folders.
Sign in to join this conversation.
No labels
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
kayg/calternal#875
No description provided.