Skip to content

Conversation

@dbajpeyi
Copy link
Contributor

@dbajpeyi dbajpeyi commented Oct 21, 2025

Asana Task/Github Issue:

Description

PS: This code is not yet released to public.

The "manage-button-click" step expectation is not needed now, we're changing the approach because that button is not always present on takeout.google.com (e.g for first time users):
Screenshot 2025-10-24 at 15 36 54

  • Removes the check for manage-button-click as it's going to be not needed, we simply navigate to takeout.google.com/manage page instead (privacy-config also updated here). Look for download button on the page here, instead of navigating to the takeout/download URL directly.
  • No need to store export id, parse it -> navigate to with that in the URL -> get the export id from URL in downloadData
  • retryConfigFor uses Infinity retry now as all steps are mandatory by default
  • Moved a bunch of constants to the config, with fallbacks so that they can be configured later.

Testing Steps

This can be tested on develop Android branch, please use the remote config from here duckduckgo/privacy-configuration#3978

In settings go to "Autofill dev settings" -> "Launch bookmark import flow" to test out the flow!

Please tick all that apply:

  • I have tested this change locally
  • I have tested this change locally in all supported browsers
  • This change will be visible to users
  • I have added automated tests that cover this change
  • I have ensured the change is gated by config
  • This change was covered by a ship review
  • This change was covered by a tech design
  • Any dependent config has been merged

Note

Switches the import flow to parse the export ID, navigate to /manage/archive/<id>, and click a configurable download link with unified, configurable retry behavior.

  • Bookmark import flow:
    • Navigate to '/manage/archive/<exportId>' after parsing exportId from the page; stop relying on a "manage" button or constructing takeout/download URLs.
    • Remove stored #exportId; add getExportId() with retry and use URL-derived exportId in downloadData().
    • Click a configurable download link (selectors.downloadLink); reload the page if missing to recover from 404s.
  • Config and retries:
    • Add MANAGE_ARCHIVE_DEFAULT_BASE; remove TAKEOUT_DOWNLOAD_URL_BASE.
    • Make selectors configurable with fallbacks (e.g., selectors.dataArchiveId, selectors.downloadLink).
    • Introduce defaultRetrySettings and have retryConfigFor use downloadRetryLimit/downloadRetryInterval (supports Infinity).
  • Cleanup:
    • Drop the manage-button-click expectation and related export-id storage.

Written by Cursor Bugbot for commit 2064579. This will update automatically on new commits. Configure here.

@netlify
Copy link

netlify bot commented Oct 21, 2025

Deploy Preview for content-scope-scripts ready!

Name Link
🔨 Latest commit 2064579
🔍 Latest deploy log https://app.netlify.com/projects/content-scope-scripts/deploys/68fb53a3b653d90008b4d131
😎 Deploy Preview https://deploy-preview-2026--content-scope-scripts.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@github-actions
Copy link

github-actions bot commented Oct 21, 2025

Temporary Branch Update

The temporary branch has been updated with the latest changes. Below are the details:

Please use the above install command to update to the latest version.

@github-actions
Copy link

github-actions bot commented Oct 21, 2025

[Beta] Generated file diff

Time updated: Fri, 24 Oct 2025 10:24:29 GMT

Android
    - android/autofillImport.js

File has changed

Integration
    - integration/contentScope.js

File has changed

@dbajpeyi dbajpeyi force-pushed the dbajpeyi/fix/infinite-retry-export-id branch from 268d707 to 4bf35f5 Compare October 21, 2025 09:32
@dbajpeyi dbajpeyi force-pushed the dbajpeyi/fix/infinite-retry-export-id branch from 5f9bc23 to 6dcedb7 Compare October 22, 2025 08:15
…ckduckgo/content-scope-scripts into dbajpeyi/fix/infinite-retry-export-id
@dbajpeyi dbajpeyi force-pushed the dbajpeyi/fix/infinite-retry-export-id branch from 6dcedb7 to 30c1c89 Compare October 24, 2025 10:02
@dbajpeyi dbajpeyi requested a review from shakyShane October 24, 2025 10:03
@dbajpeyi dbajpeyi marked this pull request as ready for review October 24, 2025 10:03
@dbajpeyi dbajpeyi requested a review from a team as a code owner October 24, 2025 10:03
@dbajpeyi dbajpeyi changed the title [Autofill Import] Make retry configurable [Autofill Import] Navigate to manage page and retry download Oct 24, 2025
cursor[bot]

This comment was marked as outdated.

…ckduckgo/content-scope-scripts into dbajpeyi/fix/infinite-retry-export-id
@dbajpeyi dbajpeyi added this pull request to the merge queue Oct 24, 2025
Merged via the queue into main with commit c2ed781 Oct 24, 2025
17 checks passed
@dbajpeyi dbajpeyi deleted the dbajpeyi/fix/infinite-retry-export-id branch October 24, 2025 11:46
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.

2 participants