Skip to content

fix(ui): explain why a folder waits and align the summary state - #167

Merged
gnacho merged 3 commits into
mainfrom
fix/165-waiting-state
Aug 23, 2026
Merged

gnacho merged 3 commits into
mainfrom
fix/165-waiting-state

Conversation

@gnacho

@gnacho gnacho commented Aug 23, 2026

Copy link
Copy Markdown
Owner

Fixes #165 and the follow-up feedback.

Problem

  • A folder row queued behind the shared permit only showed the generic 'Waiting to synchronize' label, hiding why it was stuck.
  • A run that ended with conflicted copies re-queued the local feedback, bouncing a folder with unresolved conflicts (a large tree) into a sync loop while smaller folders waited.
  • The account summary could read 'Connected' next to a red light, because the text only distinguished Offline while the light used a severity map.

Changes

  • Surface the blocking reason on the queued row: 'Waiting for to finish…' (falls back to 'another folder').
  • A conflicted run no longer re-queues the local feedback; the folder stays in 'review the log' until the user addresses it.
  • Align the summary text with the light (error / credentials rejected / keyring locked / delete review / not connected), and use the same severity mapping for the initial icon so it does not flip globes.
  • i18n: 'deletions' → 'borrados masivos' for the deletion-guard wording; catalog regenerated from the .po.

Tests

  • queued_row_surfaces_the_blocking_reason
  • conflicted_run_does_not_requeue_local_feedback
  • summary_connection_text_matches_the_light

Gate: 664 passed + 1 ignored, clippy/fmt clean.

gnacho added 3 commits August 23, 2026 11:26
A folder row queued behind the shared permit showed only the generic
'Waiting to synchronize' label, hiding why it was stuck (the scheduler does
attach a specific reason like 'Waiting for another account to finish').
Surface that message on the row (issue #165).

A run that ends with conflicted copies also re-queued the local feedback,
bouncing a folder with unresolved conflicts (a large tree reconciling tens of
thousands of files) into a sync loop while smaller folders waited. On a
conflicted run, drop the local feedback and leave the message that the user
must review the log, letting only the cadence of interval/remote triggers
retry.

Tests for both, gate 663 passed + 1 ignored.

Closes #165
The queued message said 'another account' and was generic (issue #165
follow-up). Name the folder that holds the shared permit instead, so the row
reads 'Waiting for <folder> to finish…' (falls back to 'another folder').

The account summary card could read 'Connected' next to a red light: the
connection text only distinguished Offline while the light used a severity
map. Align the text with the severity so problem states (error, credentials
rejected, keyring locked, delete review) say what the light conveys. Also
use the same severity mapping for the initial icon render so it does not flip
between globes and status icons.

w/ #165
The deletion-guard strings translated 'deletions' as 'eliminaciones', but the
flow is about reviewing a mass local deletion. Use 'borrados masivos' across
the guard strings for clearer Spanish (Review deletions, approve once, none
pending).
@gnacho
gnacho merged commit 1be1649 into main Aug 23, 2026
1 check passed
@gnacho
gnacho deleted the fix/165-waiting-state branch August 23, 2026 09:44
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.

A folder row does not explain why it is waiting to synchronize

1 participant