Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added FXIOS-10710 default browser telemetry #23426

Merged
merged 18 commits into from
Dec 6, 2024

Conversation

OrlaM
Copy link
Contributor

@OrlaM OrlaM commented Nov 26, 2024

📜 Tickets

Jira ticket
Github issue

💡 Description

Marking as do not merge for now as this cannot be merged until Apple release the RC of 18.2.

📝 Checklist

You have to check all boxes before merging

  • Filled in the above information (tickets numbers and description of your work)
  • Updated the PR name to follow our PR naming guidelines
  • Wrote unit tests and/or ensured the tests suite is passing
  • When working on UI, I checked and implemented accessibility (minimum Dynamic Text and VoiceOver)
  • If needed, I updated documentation / comments for complex code and public methods
  • If needed, added a backport comment (example @Mergifyio backport release/v120)

@OrlaM OrlaM added the Do Not Merge ⛔️ This issue is a work in progress and is not ready to land label Nov 26, 2024
@OrlaM OrlaM requested review from a team as code owners November 26, 2024 21:54
@OrlaM OrlaM requested a review from isabelrios November 26, 2024 21:54
Copy link
Contributor

mergify bot commented Nov 26, 2024

This pull request has conflicts when rebasing. Could you fix it @OrlaM? 🙏

@OrlaM OrlaM force-pushed the om/FXIOS-10710-default-browser-telemetry branch from 5b55f44 to da2f042 Compare November 26, 2024 21:55
@OrlaM OrlaM requested review from clarmso and Cramsden and removed request for isabelrios November 26, 2024 21:57
Copy link
Contributor

@Cramsden Cramsden left a comment

Choose a reason for hiding this comment

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

One question about test class name but looks good to me!

@OrlaM OrlaM force-pushed the om/FXIOS-10710-default-browser-telemetry branch from da2f042 to 8fe0f21 Compare November 28, 2024 14:47
@OrlaM OrlaM closed this Nov 28, 2024
@OrlaM OrlaM reopened this Nov 28, 2024
Copy link
Contributor

mergify bot commented Nov 28, 2024

This pull request has conflicts when rebasing. Could you fix it @OrlaM? 🙏

@OrlaM OrlaM force-pushed the om/FXIOS-10710-default-browser-telemetry branch from f70bd33 to 4908dfe Compare December 2, 2024 16:23
@nbhasin2
Copy link
Contributor

nbhasin2 commented Dec 3, 2024

@OrlaM considering we are in v133.1 dot release phase, should this be going into v133.1 or next week for v133.2

Copy link
Contributor

mergify bot commented Dec 3, 2024

This pull request has conflicts when rebasing. Could you fix it @OrlaM? 🙏

@OrlaM OrlaM force-pushed the om/FXIOS-10710-default-browser-telemetry branch from 350d293 to 8b69ba5 Compare December 6, 2024 18:25
@mobiletest-ci-bot
Copy link

Messages
📖 Project coverage: 33.05%
📖 Edited 12 files
📖 Created 6 files

Client.app: Coverage: 31.75

File Coverage
DefaultBrowserUtil.swift 100.0%
AppLaunchUtil.swift 0.0% ⚠️
TelemetryWrapper.swift 67.8%
LocaleInterface.swift 0.0% ⚠️

libStorage.a: Coverage: 56.44

File Coverage
RustFirefoxSuggest.swift 0.0% ⚠️

Generated by 🚫 Danger Swift against b732196

@OrlaM
Copy link
Contributor Author

OrlaM commented Dec 6, 2024

@Mergifyio backport release/v133 release/v134

Copy link
Contributor

mergify bot commented Dec 6, 2024

backport release/v133 release/v134

✅ Backports have been created

Copy link
Collaborator

@clarmso clarmso left a comment

Choose a reason for hiding this comment

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

I will update test scripts to Xcode 18.2 in a separate PR. Let me approve this for now.

@OrlaM OrlaM merged commit 475c70f into main Dec 6, 2024
12 of 13 checks passed
@OrlaM OrlaM deleted the om/FXIOS-10710-default-browser-telemetry branch December 6, 2024 20:05
mergify bot pushed a commit that referenced this pull request Dec 6, 2024
* Add default browser utility

* Add telemetry

* Telemetry tests

* Add tests

* Fix tests

* Update bitrise to use 18.2

* Fix linting

* Fix typo

* Disable warnings as errors

* Up the number of warnings

* Revert "Update bitrise to use 18.2"

This reverts commit 2e03e5a.

* Update bitrise

* Fix bitrise

* Fix bitrise

* Fix concurrency errors

* Update api

* Update sim versions

* Fix test

(cherry picked from commit 475c70f)

# Conflicts:
#	bitrise.yml
#	firefox-ios/Client.xcodeproj/project.pbxproj
#	firefox-ios/Client.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
mergify bot pushed a commit that referenced this pull request Dec 6, 2024
* Add default browser utility

* Add telemetry

* Telemetry tests

* Add tests

* Fix tests

* Update bitrise to use 18.2

* Fix linting

* Fix typo

* Disable warnings as errors

* Up the number of warnings

* Revert "Update bitrise to use 18.2"

This reverts commit 2e03e5a.

* Update bitrise

* Fix bitrise

* Fix bitrise

* Fix concurrency errors

* Update api

* Update sim versions

* Fix test

(cherry picked from commit 475c70f)

# Conflicts:
#	firefox-ios/Client.xcodeproj/project.pbxproj
#	firefox-ios/Client.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
DonalMe pushed a commit that referenced this pull request Dec 6, 2024
* Added FXIOS-10710 default browser telemetry (#23426)

* Add default browser utility

* Add telemetry

* Telemetry tests

* Add tests

* Fix tests

* Update bitrise to use 18.2

* Fix linting

* Fix typo

* Disable warnings as errors

* Up the number of warnings

* Revert "Update bitrise to use 18.2"

This reverts commit 2e03e5a.

* Update bitrise

* Fix bitrise

* Fix bitrise

* Fix concurrency errors

* Update api

* Update sim versions

* Fix test

(cherry picked from commit 475c70f)

# Conflicts:
#	bitrise.yml
#	firefox-ios/Client.xcodeproj/project.pbxproj
#	firefox-ios/Client.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved

* Update Package.resolved

* Update bitrise.yml

* Fix conflicts

---------

Co-authored-by: OrlaM <omitchell@mozilla.com>
OrlaM added a commit that referenced this pull request Dec 6, 2024
* Added FXIOS-10710 default browser telemetry (#23426)

* Add default browser utility

* Add telemetry

* Telemetry tests

* Add tests

* Fix tests

* Update bitrise to use 18.2

* Fix linting

* Fix typo

* Disable warnings as errors

* Up the number of warnings

* Revert "Update bitrise to use 18.2"

This reverts commit 2e03e5a.

* Update bitrise

* Fix bitrise

* Fix bitrise

* Fix concurrency errors

* Update api

* Update sim versions

* Fix test

(cherry picked from commit 475c70f)

# Conflicts:
#	firefox-ios/Client.xcodeproj/project.pbxproj
#	firefox-ios/Client.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved

* Update Package.resolved

* fix conflicts

---------

Co-authored-by: OrlaM <omitchell@mozilla.com>
isabelrios pushed a commit that referenced this pull request Dec 9, 2024
* Added FXIOS-10710 default browser telemetry (#23426)

* Add default browser utility

* Add telemetry

* Telemetry tests

* Add tests

* Fix tests

* Update bitrise to use 18.2

* Fix linting

* Fix typo

* Disable warnings as errors

* Up the number of warnings

* Revert "Update bitrise to use 18.2"

This reverts commit 2e03e5a.

* Update bitrise

* Fix bitrise

* Fix bitrise

* Fix concurrency errors

* Update api

* Update sim versions

* Fix test

(cherry picked from commit 475c70f)

# Conflicts:
#	firefox-ios/Client.xcodeproj/project.pbxproj
#	firefox-ios/Client.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved

* Update Package.resolved

* fix conflicts

---------

Co-authored-by: OrlaM <omitchell@mozilla.com>
@adudenamedruby
Copy link
Contributor

We need a data review for this PR, friends, as it's adding telemetry, unless that has already happened.

Comment on lines +676 to +689
- https://github.com/mozilla-mobile/firefox-ios/issues/XXX
data_reviews:
- https://github.com/mozilla-mobile/firefox-ios/pull/XXX
notification_emails:
- fx-ios-data-stewards@mozilla.com
expires: "2026-01-01"
choice_screen_acquisition:
type: boolean
description: |
The user installed the app via the browser choice screen
bugs:
- https://github.com/mozilla-mobile/firefox-ios/issues/XXX
data_reviews:
- https://github.com/mozilla-mobile/firefox-ios/pull/XXX
Copy link
Contributor

Choose a reason for hiding this comment

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

👀 Adding on Roux's comment, it seems the links in here miss some info

@OrlaM OrlaM removed the Do Not Merge ⛔️ This issue is a work in progress and is not ready to land label Dec 11, 2024
@adudenamedruby
Copy link
Contributor

Heya; still looking for a data review for this PR.

@OrlaM
Copy link
Contributor Author

OrlaM commented Jan 29, 2025

@adudenamedruby

Request for data collection review form

  1. What questions will you answer with this data?
  • This will be used to measure if a user is already set to default on first run. The assumption being that if they are already set to default and that they are in the EU then they have likely come from the browser choice screen.
  1. Why does Mozilla need to answer these questions? Are there benefits for users? Do we need this information to address product or business requirements? Some example responses:
  • This will allow us to measure how important set to default is for new users with regards to user retention.
  1. What alternative methods did you consider to answer these questions? Why were they not sufficient?
  • There are no other methods
  1. Can current instrumentation answer these questions?
  • No
  1. List all proposed measurements and indicate the category of data collection for each measurement, using the Firefox data collection categories found on the Mozilla wiki.

Note that the data steward reviewing your request will characterize your data collection based on the highest (and most sensitive) category.

Measurement Description Data Collection Category Tracking Bug #
If the app is set to default Category 1 https://mozilla-hub.atlassian.net/browse/DMA-264
If the user has come from a browser choice screen Category 1 https://mozilla-hub.atlassian.net/browse/DMA-264
  1. Please provide a link to the documentation for this data collection which describes the ultimate data set in a public, complete, and accurate way.
  1. How long will this data be collected? Choose one of the following:
  • Forever, it will be used as a core business metric
  1. What populations will you measure?
  • Which release channels?
  • All
  • Which countries?
  • All
  • Which locales?
  • All
  1. If this data collection is default on, what is the opt-out mechanism for users?
  • The user can opt out
  1. Please provide a general description of how you will analyze this data.
  • Glean
  1. Where do you intend to share the results of your analysis?
  • The iOS team
  1. Is there a third-party tool (i.e. not Glean or Telemetry) that you are proposing to use for this data collection? If so:
  • No third party tools

@adudenamedruby
Copy link
Contributor

r+

Data Review Form

1) Is there or will there be documentation that describes the schema for the ultimate data set in a public, complete, and accurate way?

Yes, telemetry is documented at https://dictionary.telemetry.mozilla.org/apps/firefox_ios

2) Is there a control mechanism that allows the user to turn the data collection on and off?

Yes, Firefox iOS provides data controls in the app settings

3) If the request is for permanent data collection, is there someone who will monitor the data over time?

This will be reviewed by a data-steward on the Firefox iOS team (@adudenamedruby) every 6 months

4) Using the category system of data types on the Mozilla wiki, what collection type of data do the requested measurements fall under?

Cat 1

5) Is the data collection request for default-on or default-off?

Default on

6) Does the instrumentation include the addition of any new identifiers (whether anonymous or otherwise; e.g., username, random IDs, etc. See the appendix for more details)?

No

7) Is the data collection covered by the existing Firefox privacy notice?

Yes

8) Does the data collection use a third-party collection tool?

No

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.

7 participants