Skip to content

Clean up sync code before integrating pixels - #9386

Open
MiSikora wants to merge 11 commits into
feature/mehow/simple-sync/rename-race-conditionfrom
feature/msikora/simple-sync/pixels-cleanup
Open

Clean up sync code before integrating pixels#9386
MiSikora wants to merge 11 commits into
feature/mehow/simple-sync/rename-race-conditionfrom
feature/msikora/simple-sync/pixels-cleanup

Conversation

@MiSikora

@MiSikora MiSikora commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Task/Issue URL: https://app.asana.com/1/137249556945/project/1216103556496795/task/1217108453800380?focus=true
Tech Design URL (if applicable): N/A
API Proposals URL(s) (if applicable): N/A

Description

Pure refactor of the simplified Sync v2 setup flows. It renames types, parameters, and activity launchers so their names describe what they actually represent, and tidies up input creation. There are no behavior changes.

Sync entry point:

  • The OriginalFlow enum is renamed to SyncEntryPoint and moved to its own file, because it identifies which entry point the setup started from rather than an "original flow".
  • Its values now describe the account action: SYNC_THIS_DEVICE becomes SYNC_NEW_ACCOUNT (create and back up a new account) and SYNC_WITH_ANOTHER becomes ADD_DEVICE (add a device to an existing account). RECOVER_SYNCED_DATA is unchanged.

Process sync code screen:

  • ExchangeSyncCodeActivity and its contract, view model, layout, and animation are renamed to ProcessSyncCode*. "Exchange" was confusing since Sync also has exchange codes, whereas this part of the flow is about processing an input code, so "Process" is clearer.

Parameters and launchers:

  • syncUrl is renamed to syncCode, because the value is not always a URL.
  • source is renamed to launchSource to disambiguate it from other "source" concepts.
  • The activity launchers in SyncActivity are renamed to match what they launch, for example syncThisDeviceLauncher becomes backUpNewAccountLauncher and exchangeSyncCodeLauncher becomes processSyncCodeLauncher.
  • Contract input parameters are reordered so syncCode sits next to syncEntryPoint and launchSource comes last, launcher input creation is written consistently, and an unused import is removed.

Steps to test this PR

N/A

UI changes

N/A


Note

Low Risk
Naming and structural refactor across sync UI with tests updated; no auth or sync protocol logic changes described beyond renames.

Overview
Refactors simplified Sync v2 setup naming so entry points, parameters, and screens read clearly before pixel work—no intended behavior changes.

Entry point model: OriginalFlow becomes SyncEntryPoint in its own file, with values SYNC_NEW_ACCOUNT, ADD_DEVICE, and RECOVER_SYNCED_DATA. Auto-restore pixel source mapping moves to SyncEntryPoint.toAutoRestorePixelSource() (replacing duplicated helpers).

Process sync code screen: ExchangeSyncCodeActivity / contract / VM / layout / animation are renamed to ProcessSyncCode*, and intent extras use syncCode instead of syncUrl.

Parameters & launchers: sourcelaunchSource, originalFlowsyncEntryPoint across v2 activities and contracts; v2 SyncActivity renames launchers (e.g. backUpNewAccountLauncher, processSyncCodeLauncher) and aligns contract Input field order.

Reviewed by Cursor Bugbot for commit b109e98. Bugbot is set up for automated code reviews on this repo. Configure here.

@cursor cursor Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 364877f. Configure here.

MiSikora and others added 9 commits August 4, 2026 16:50
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The screen and its collaborators handle any sync code type and drive
the sync protocol to completion, so "Exchange" was misleading (it also
collided with the exchange-code concept). Renames the activity, view
model, contract, layout, animation and their references.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@MiSikora
MiSikora force-pushed the feature/mehow/simple-sync/rename-race-condition branch from 288957a to e789f61 Compare August 4, 2026 15:15
@MiSikora
MiSikora force-pushed the feature/msikora/simple-sync/pixels-cleanup branch from 364877f to 86731db Compare August 4, 2026 15:15
@MiSikora
MiSikora force-pushed the feature/msikora/simple-sync/pixels-cleanup branch from 86731db to 6869120 Compare August 4, 2026 15:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants