Skip to content

ADFA-5155 feat(clone): wait for services before Home on receive success - #417

Merged
luisguzman-adfa merged 2 commits into
mainfrom
fix/ADFA-5155-clone-receive-wait-for-services
Aug 15, 2026
Merged

ADFA-5155 feat(clone): wait for services before Home on receive success#417
luisguzman-adfa merged 2 commits into
mainfrom
fix/ADFA-5155-clone-receive-wait-for-services

Conversation

@luisguzman-adfa

Copy link
Copy Markdown
Collaborator

Replace the fixed-3s redirect after a successful receive with a readiness wait, so a slow boot never lands on a dead Home and a timer never condemns a good transfer.

On success, releaseCloneEnv boots the environment and a background apiReady poll starts (the SetupProgressActivity pattern). A "Copy complete" pop-up confirms; OK does not navigate — it lands on receive step 2, where a status band shows the phase: "Starting services…" → (if slow, ~30s) a non-destructive "Rescan from the other phone" / "Keep waiting" offer → once apiReady answers, an "Opening your library in 3s…" countdown → the library. Redirect fires only once services are truly up (acknowledged AND ready); no timeout ever routes to recovery. Poll and countdown are torn down in onDestroyView, on rescan, and on manual exit.

Adds four exit-status strings (base + 33 locales); reuses the existing starting-service and copy-complete strings. Drops the old receiveExiting fixed-timer redirect.

@luisguzman-adfa
luisguzman-adfa merged commit ecb2912 into main Aug 15, 2026
3 checks passed
@luisguzman-adfa
luisguzman-adfa deleted the fix/ADFA-5155-clone-receive-wait-for-services branch August 15, 2026 18:37
Replace the fixed-3s redirect after a successful receive with a readiness
wait, so a slow boot never lands on a dead Home and a timer never condemns a
good transfer.

On success, releaseCloneEnv boots the environment and a background apiReady
poll starts (the SetupProgressActivity pattern). A "Copy complete" pop-up
confirms; OK does not navigate — it lands on receive step 2, where a status
band shows the phase: "Starting services…" → (if slow, ~30s) a non-destructive
"Rescan from the other phone" / "Keep waiting" offer → once apiReady answers,
an "Opening your library in 3s…" countdown → the library. Redirect fires only
once services are truly up (acknowledged AND ready); no timeout ever routes to
recovery. Poll and countdown are torn down in onDestroyView, on rescan, and on
manual exit.

Adds four exit-status strings (base + 33 locales); reuses the existing
starting-service and copy-complete strings. Drops the old receiveExiting
fixed-timer redirect.
Replace the fixed-3s redirect after a successful receive with a readiness
wait, so a slow boot never lands on a dead Home and a timer never condemns a
good transfer.

On success, releaseCloneEnv boots the environment and a background apiReady
poll starts (the SetupProgressActivity pattern). A "Copy complete" pop-up
confirms; OK does not navigate — it lands on receive step 2, where a status
band shows the phase: "Starting services…" → (if slow, ~30s) a non-destructive
"Rescan from the other phone" / "Keep waiting" offer → once apiReady answers,
an "Opening your library in 3s…" countdown → the library. Redirect fires only
once services are truly up (acknowledged AND ready); no timeout ever routes to
recovery. Poll and countdown are torn down in onDestroyView, on rescan, and on
manual exit.

Adds four exit-status strings (base + 33 locales); reuses the existing
starting-service and copy-complete strings. Drops the old receiveExiting
fixed-timer redirect.

Also removes a design-leftover subcaption on the Send/Copy page ("The copy
begins when they scan this one.") and its now-unused string in every locale.
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