-
Notifications
You must be signed in to change notification settings - Fork 1k
Add duck.ai categories to feedback #6217
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
Add duck.ai categories to feedback #6217
Conversation
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
This stack of pull requests is managed by Graphite. Learn more about stacking. |
64d6881
to
b8b75f2
Compare
1a116b0
to
51200d7
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds new duck.ai feedback categories and subcategories to the subscription feedback flow along with the corresponding UI and BE integrations.
- Updates test cases and view models to support duck.ai category selection.
- Introduces new strings and UI elements to handle duck.ai feedback, including changes in pixel event reporting.
Reviewed Changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated no comments.
Show a summary per file
File | Description |
---|---|
subscriptions/subscriptions-impl/src/test/java/com/duckduckgo/subscriptions/impl/feedback/SubscriptionFeedbackViewModelTest.kt | Updates test functions for subscriptions flows; adds duck.ai specific tests and renames several functions. |
subscriptions/subscriptions-impl/src/main/res/values/donottranslate.xml | Adds new string resources for duck.ai feedback categories and subcategories. |
subscriptions/subscriptions-impl/src/main/res/layout/content_feedback_category.xml | Adds a new UI element for the duck.ai category. |
subscriptions/subscriptions-impl/src/main/java/com/duckduckgo/subscriptions/impl/feedback/SubscriptionFeedbackViewModel.kt | Integrates duck.ai category processing in the view model and associated feedback logic. |
subscriptions/subscriptions-impl/src/main/java/com/duckduckgo/subscriptions/impl/feedback/SubscriptionFeedbackParams.kt | Adds new enum and parameter conversion for duck.ai, ensuring consistent API naming. |
subscriptions/subscriptions-impl/src/main/java/com/duckduckgo/subscriptions/impl/feedback/SubscriptionFeedbackCategoryFragment.kt | Injects duck.ai availability logic to control visibility in the feedback category fragment. |
subscriptions/subscriptions-impl/src/main/java/com/duckduckgo/subscriptions/impl/feedback/FeedbackSubCategoryProvider.kt | Includes duck.ai subcategories in the feedback subcategory provider. |
Comments suppressed due to low confidence (2)
subscriptions/subscriptions-impl/src/test/java/com/duckduckgo/subscriptions/impl/feedback/SubscriptionFeedbackViewModelTest.kt:516
- [nitpick] The test function name 'whenCategorySelectedIsDuckAithenShowDuckAiSubcategoriesScreenAndImpression' contains a typo ('DuckAithen') which should be corrected to 'DuckAiThen' to enhance clarity.
fun whenCategorySelectedIsDuckAithenShowDuckAiSubcategoriesScreenAndImpression() = runTest {
subscriptions/subscriptions-impl/src/test/java/com/duckduckgo/subscriptions/impl/feedback/SubscriptionFeedbackViewModelTest.kt:537
- The pixel event parameter here uses 'Duck.ai', which is inconsistent with DUCK_AI.asParams() returning 'duckAi'. Consider aligning the naming for consistent reporting.
"category" to "Duck.ai",
b8b75f2
to
d412f95
Compare
51200d7
to
3d70b4e
Compare
1a42fd5
to
9a53001
Compare
9a53001
to
7026706
Compare
3d70b4e
to
9b5b254
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, only one nit.
...main/java/com/duckduckgo/subscriptions/impl/feedback/SubscriptionFeedbackCategoryFragment.kt
Show resolved
Hide resolved
f3f9d77
to
2c15ec1
Compare
9b5b254
to
f8bc564
Compare
841aa71
into
feature/cristian/subscriptions/show_duck_ai_pro_settings
Task/Issue URL: https://app.asana.com/1/137249556945/task/1210461583262423?focus=true ### Description We are adding new categories and subcategories to feedback flows to subscribers. From settings -> feedback / settings -> subscriptions -> feedback: user is able to select new duck.ai category and subcategories. Pixels and BE request are triggered at the end of the flow. ### Steps to test this PR First apply subscription staging patch. _No subscription_ - [x] Go to settings -> send feedback - [x] Ensure no subscription categories are shown _Settings feedback with Subscription_ - [x] Purchase a subscription - [x] Go to settings -> send feedback - [x] Select privacy pro - [x] Select Report a problem - [x] Ensure duck.ai appears as category, select it (ensure pixel triggers with category duck.ai) - [x] Ensure 3 sub-categories appear - [x] Select any (and ensure pixel triggers with subcategory selected) - [x] Ensure feedback form screen appears - [x] Fill the form and send feedback - [x] Ensure pixel triggers - [x] Ensure BE triggers (and Toast message success) _Subscription Settings feedback with Subscription_ - [x] Purchase a subscription (if you don't have it) - [x] Go to settings -> Subscription Settings -> send feedback - [x] Select Report a problem - [x] Ensure duck.ai appears as category, select it (ensure pixel triggers with category duck.ai) - [x] Ensure 3 sub-categories appear - [x] Select any (and ensure pixel triggers with subcategory selected) - [x] Ensure feedback form screen appears - [x] Fill the form and send feedback - [x] Ensure pixel triggers - [x] Ensure BE triggers (and Toast message success) _Feedback with Subscription (feature flag disabled)_ - [x] Go to FF inventory, disable "Privacy Pro -> duckAiPlus" - [x] Purchase a subscription (if you don't have it) - [x] Go to settings -> send feedback - [x] Select Report a problem - [x] Ensure duck.ai DOES NOT appear as category - [x] Go to settings -> send feedback - [x] Select privacy pro - [x] Select Report a problem - [x] Ensure duck.ai DOES NOT appear as category ### UI changes | Before | After | | ------ | ----- | !(Upload before screenshot)|(Upload after screenshot)|
Task/Issue URL: https://app.asana.com/1/137249556945/task/1210461583262423?focus=true ### Description We are adding new categories and subcategories to feedback flows to subscribers. From settings -> feedback / settings -> subscriptions -> feedback: user is able to select new duck.ai category and subcategories. Pixels and BE request are triggered at the end of the flow. ### Steps to test this PR First apply subscription staging patch. _No subscription_ - [x] Go to settings -> send feedback - [x] Ensure no subscription categories are shown _Settings feedback with Subscription_ - [x] Purchase a subscription - [x] Go to settings -> send feedback - [x] Select privacy pro - [x] Select Report a problem - [x] Ensure duck.ai appears as category, select it (ensure pixel triggers with category duck.ai) - [x] Ensure 3 sub-categories appear - [x] Select any (and ensure pixel triggers with subcategory selected) - [x] Ensure feedback form screen appears - [x] Fill the form and send feedback - [x] Ensure pixel triggers - [x] Ensure BE triggers (and Toast message success) _Subscription Settings feedback with Subscription_ - [x] Purchase a subscription (if you don't have it) - [x] Go to settings -> Subscription Settings -> send feedback - [x] Select Report a problem - [x] Ensure duck.ai appears as category, select it (ensure pixel triggers with category duck.ai) - [x] Ensure 3 sub-categories appear - [x] Select any (and ensure pixel triggers with subcategory selected) - [x] Ensure feedback form screen appears - [x] Fill the form and send feedback - [x] Ensure pixel triggers - [x] Ensure BE triggers (and Toast message success) _Feedback with Subscription (feature flag disabled)_ - [x] Go to FF inventory, disable "Privacy Pro -> duckAiPlus" - [x] Purchase a subscription (if you don't have it) - [x] Go to settings -> send feedback - [x] Select Report a problem - [x] Ensure duck.ai DOES NOT appear as category - [x] Go to settings -> send feedback - [x] Select privacy pro - [x] Select Report a problem - [x] Ensure duck.ai DOES NOT appear as category ### UI changes | Before | After | | ------ | ----- | !(Upload before screenshot)|(Upload after screenshot)|
Task/Issue URL: https://app.asana.com/1/137249556945/task/1210461583262423?focus=true ### Description We are adding new categories and subcategories to feedback flows to subscribers. From settings -> feedback / settings -> subscriptions -> feedback: user is able to select new duck.ai category and subcategories. Pixels and BE request are triggered at the end of the flow. ### Steps to test this PR First apply subscription staging patch. _No subscription_ - [x] Go to settings -> send feedback - [x] Ensure no subscription categories are shown _Settings feedback with Subscription_ - [x] Purchase a subscription - [x] Go to settings -> send feedback - [x] Select privacy pro - [x] Select Report a problem - [x] Ensure duck.ai appears as category, select it (ensure pixel triggers with category duck.ai) - [x] Ensure 3 sub-categories appear - [x] Select any (and ensure pixel triggers with subcategory selected) - [x] Ensure feedback form screen appears - [x] Fill the form and send feedback - [x] Ensure pixel triggers - [x] Ensure BE triggers (and Toast message success) _Subscription Settings feedback with Subscription_ - [x] Purchase a subscription (if you don't have it) - [x] Go to settings -> Subscription Settings -> send feedback - [x] Select Report a problem - [x] Ensure duck.ai appears as category, select it (ensure pixel triggers with category duck.ai) - [x] Ensure 3 sub-categories appear - [x] Select any (and ensure pixel triggers with subcategory selected) - [x] Ensure feedback form screen appears - [x] Fill the form and send feedback - [x] Ensure pixel triggers - [x] Ensure BE triggers (and Toast message success) _Feedback with Subscription (feature flag disabled)_ - [x] Go to FF inventory, disable "Privacy Pro -> duckAiPlus" - [x] Purchase a subscription (if you don't have it) - [x] Go to settings -> send feedback - [x] Select Report a problem - [x] Ensure duck.ai DOES NOT appear as category - [x] Go to settings -> send feedback - [x] Select privacy pro - [x] Select Report a problem - [x] Ensure duck.ai DOES NOT appear as category ### UI changes | Before | After | | ------ | ----- | !(Upload before screenshot)|(Upload after screenshot)|
Task/Issue URL: https://app.asana.com/1/137249556945/task/1210461583262423?focus=true ### Description We are adding new categories and subcategories to feedback flows to subscribers. From settings -> feedback / settings -> subscriptions -> feedback: user is able to select new duck.ai category and subcategories. Pixels and BE request are triggered at the end of the flow. ### Steps to test this PR First apply subscription staging patch. _No subscription_ - [x] Go to settings -> send feedback - [x] Ensure no subscription categories are shown _Settings feedback with Subscription_ - [x] Purchase a subscription - [x] Go to settings -> send feedback - [x] Select privacy pro - [x] Select Report a problem - [x] Ensure duck.ai appears as category, select it (ensure pixel triggers with category duck.ai) - [x] Ensure 3 sub-categories appear - [x] Select any (and ensure pixel triggers with subcategory selected) - [x] Ensure feedback form screen appears - [x] Fill the form and send feedback - [x] Ensure pixel triggers - [x] Ensure BE triggers (and Toast message success) _Subscription Settings feedback with Subscription_ - [x] Purchase a subscription (if you don't have it) - [x] Go to settings -> Subscription Settings -> send feedback - [x] Select Report a problem - [x] Ensure duck.ai appears as category, select it (ensure pixel triggers with category duck.ai) - [x] Ensure 3 sub-categories appear - [x] Select any (and ensure pixel triggers with subcategory selected) - [x] Ensure feedback form screen appears - [x] Fill the form and send feedback - [x] Ensure pixel triggers - [x] Ensure BE triggers (and Toast message success) _Feedback with Subscription (feature flag disabled)_ - [x] Go to FF inventory, disable "Privacy Pro -> duckAiPlus" - [x] Purchase a subscription (if you don't have it) - [x] Go to settings -> send feedback - [x] Select Report a problem - [x] Ensure duck.ai DOES NOT appear as category - [x] Go to settings -> send feedback - [x] Select privacy pro - [x] Select Report a problem - [x] Ensure duck.ai DOES NOT appear as category ### UI changes | Before | After | | ------ | ----- | !(Upload before screenshot)|(Upload after screenshot)|
Task/Issue URL: https://app.asana.com/1/137249556945/task/1210461583262423?focus=true ### Description We are adding new categories and subcategories to feedback flows to subscribers. From settings -> feedback / settings -> subscriptions -> feedback: user is able to select new duck.ai category and subcategories. Pixels and BE request are triggered at the end of the flow. ### Steps to test this PR First apply subscription staging patch. _No subscription_ - [x] Go to settings -> send feedback - [x] Ensure no subscription categories are shown _Settings feedback with Subscription_ - [x] Purchase a subscription - [x] Go to settings -> send feedback - [x] Select privacy pro - [x] Select Report a problem - [x] Ensure duck.ai appears as category, select it (ensure pixel triggers with category duck.ai) - [x] Ensure 3 sub-categories appear - [x] Select any (and ensure pixel triggers with subcategory selected) - [x] Ensure feedback form screen appears - [x] Fill the form and send feedback - [x] Ensure pixel triggers - [x] Ensure BE triggers (and Toast message success) _Subscription Settings feedback with Subscription_ - [x] Purchase a subscription (if you don't have it) - [x] Go to settings -> Subscription Settings -> send feedback - [x] Select Report a problem - [x] Ensure duck.ai appears as category, select it (ensure pixel triggers with category duck.ai) - [x] Ensure 3 sub-categories appear - [x] Select any (and ensure pixel triggers with subcategory selected) - [x] Ensure feedback form screen appears - [x] Fill the form and send feedback - [x] Ensure pixel triggers - [x] Ensure BE triggers (and Toast message success) _Feedback with Subscription (feature flag disabled)_ - [x] Go to FF inventory, disable "Privacy Pro -> duckAiPlus" - [x] Purchase a subscription (if you don't have it) - [x] Go to settings -> send feedback - [x] Select Report a problem - [x] Ensure duck.ai DOES NOT appear as category - [x] Go to settings -> send feedback - [x] Select privacy pro - [x] Select Report a problem - [x] Ensure duck.ai DOES NOT appear as category ### UI changes | Before | After | | ------ | ----- | !(Upload before screenshot)|(Upload after screenshot)|
Task/Issue URL: https://app.asana.com/1/137249556945/task/1210461583262423?focus=true
Description
We are adding new categories and subcategories to feedback flows to subscribers.
From settings -> feedback / settings -> subscriptions -> feedback: user is able to select new duck.ai category and subcategories.
Pixels and BE request are triggered at the end of the flow.
Steps to test this PR
First apply subscription staging patch.
No subscription
Settings feedback with Subscription
Subscription Settings feedback with Subscription
Feedback with Subscription (feature flag disabled)
UI changes