Closed soner-yuksel closed 8 months ago
[puLL-Merge] - brave/brave-ios@8591
This PR makes adjustments across AppDelegate, SceneDelegate, and various BrowserViewController extension files in the brave-ios repository. The motivation is to handle daily user pings awaiting user consent (for onboarding) and reworking the app delegates and scene delegate's handling and initialization of UserReferralProgram
and install attribution.
No explicit security hotspots are identified within the PR changes. However, since these changes involve handling sensitive user data and network requests, careful review of the handling of tokens, user consent flags, and network communications should be done to ensure user privacy is maintained.
App/iOS/Delegates/SceneDelegate.swift
and Sources/Growth/URP/AttributionManager.swift
: Ensure that all user consent and P3A handling do not send user data without consent.Sources/Growth/URP/UrpService.swift
: Validation around network response handling should ensure no leaking of sensitive data.Sources/BraveShared/Extensions/URLSessionExtensions.swift
: Review of the network timeout logic to ensure robustness of network communications without unintended denial of service.
Summary of Changes
This pull request fixes #8521
Check the issue and details on goole doc about the desired feature behaviour.
Privacy Security Issue
https://github.com/brave/reviews/issues/1459
But what is done can be stated as
Submitter Checklist:
NSLocalizableString()
Test Plan - Screenshots:
All Scenarios have same plan
Scenario 1: Error at the first step
adCampaignLookup
Scenario 2: User disabled p3a on onboarding
Loading should appear and onboarding should be dismissed and NTP popup should be shown for url bar also URP Logs should show a ping with BRV001
Video for Scenario 1 -2
https://github.com/brave/brave-ios/assets/6643505/fb7ec4c7-fc39-429f-b6ac-262e68976c3b
Scenario 3:
adCampaignLookup
succeedsAnd if success scenario happens and the campaignID can match with of the features (vpn/playlist), the presentation logic should be executed.
Reviewer Checklist:
QA/(Yes|No)
bug
/enhancement