Failed to authenticate. API Error: 401 Invalid authentication credentials
[2026-05-18] vault sync
This commit is contained in:
@@ -1,19 +1,15 @@
|
||||
## Inbox Triage — 2026-05-18 (since 14:07)
|
||||
## Inbox Triage — 2026-05-18 (since 16:35)
|
||||
|
||||
### New / Changed — Action Required
|
||||
|
||||
**[New Assignment]** — [PR privacy-configuration #5189: Disable old Duck.ai onboarding experiment; add onboardingDuckAIQueryTrackersDemoExperiment](https://app.asana.com/0/0/1214895946163976) — assigned by Dax at 15:22
|
||||
- PR: https://github.com/duckduckgo/privacy-configuration/pull/5189
|
||||
- Due: tomorrow (May 19)
|
||||
- Action: Add a reviewer on GitHub (reviewer task will auto-create in Asana)
|
||||
- Summary: Disable `onboardingDuckAIQueryExperiment` (already sampled); add `onboardingDuckAIQueryTrackersDemoExperiment` with control + treatmentA cohorts (weight 1 each), en/US target — for tracker-blocking demo onboarding flow.
|
||||
**[@mention + Reply needed]** — [Pixel anomaly report 2026.05.17 (mac)](https://app.asana.com/0/0/1214880735765984) — Federico Cappelli at 16:48
|
||||
Context: Federico says the AI analysis commits are not in main; the actual spike is `nsurlerrordomain -1001` (NSURLErrorTimedOut) which is already filtered in their boards — he'll investigate adding it to alerts. Federico also unassigned himself from the task.
|
||||
Action: Acknowledge Federico's correction and confirm whether you want to close/reassign the task or leave it open.
|
||||
|
||||
### New / Changed — Monitoring
|
||||
|
||||
_None_
|
||||
**[New Task Assigned]** — [Full Analysis](https://app.asana.com/0/0/1214900901154134) — due 2026-05-22
|
||||
Context: Jeanna created this task for Alex to complete a full analysis of "Security Triage: AI Agent use via likely external Discord service" during the week of May 18–21. Alex already responded to Jeanna's @mention ("Sure, will get back to it shortly").
|
||||
|
||||
### Notes
|
||||
|
||||
- No new comments on Alex's tasks since 14:07
|
||||
- No new @mentions
|
||||
- SINCE: 2026-05-18T14:07:48+06
|
||||
**[@mention handled]** — [Security Triage: AI Agent use via likely external Discord service](https://app.asana.com/0/0/1214449390268840) — Jeanna at 19:15
|
||||
Context: Jeanna put the task on hold and asked for a full-analysis update by end of week. Alex already replied at 19:46.
|
||||
|
||||
@@ -53,19 +53,19 @@
|
||||
|
||||
---
|
||||
|
||||
### ✅ SR — Design: "Try a Search or AI chat" dialog — Remove pointer/tail
|
||||
### 🔴 SR — Design: "Try a Search or AI chat" dialog — Remove pointer/tail
|
||||
|
||||
**Source:** [Asana task 1214846580751519](https://app.asana.com/1/137249556945/project/1202406491309510/task/1214846580751519) (Ship Review: Design, May 15). Remove the bubble pointer/tail from the bottom of the "Try a Search or AI chat" dialog container since Dax is not present in this dialog.
|
||||
|
||||
**State:** ✅ Already done — `OnboardingBubbleView.withDismissButton(tailPosition: nil, ...)` in `RebrandedContextualOnboardingDialogs+TrySearch.swift`. Confirmed 2026-05-18.
|
||||
**State:** 🔴 NOT done. Not in any PR. NOT in working tree.
|
||||
|
||||
---
|
||||
|
||||
### 🟠 SR — Design: "You've Got This!" dialog — Remove pointer/tail
|
||||
### 🔴 SR — Design: "You've Got This!" dialog — Remove pointer/tail
|
||||
|
||||
**Source:** [Asana task 1214828145455345](https://app.asana.com/1/137249556945/project/1202406491309510/task/1214828145455345) (Ship Review: Design, May 15). Remove the bubble pointer/tail from the bottom of the "You've Got This!" EOJ dialog container since Dax is not present.
|
||||
|
||||
**State:** 🟠 Fix in working tree, NOT committed — `tailPosition: nil` in `RebrandedContextualOnboardingDialogs+EndOfJourney.swift`. Applied 2026-05-18. Needs committing to `sr-feedback` branch.
|
||||
**State:** 🔴 NOT done. Not in any PR. NOT in working tree.
|
||||
|
||||
---
|
||||
|
||||
@@ -593,28 +593,28 @@ All resolved on GitHub. Fixed in later commits on the `#4544` branch.
|
||||
|
||||
---
|
||||
|
||||
### 🔴 PRE-SHIP-1 — Privacy config: add US/EN targeting
|
||||
### ✅ PRE-SHIP-1 — Privacy config: add US/EN targeting
|
||||
|
||||
**Source:** [Task 1214682678629768](https://app.asana.com/1/137249556945/task/1214682678629768). Without `targets`, experiment enrolls all locales worldwide.
|
||||
|
||||
**What:** In `privacy-configuration/overrides/ios-override.json`, add `"targets": [{ "localeLanguage": "en", "localeCountry": "US" }]` to the `onboardingDuckAIQueryExperiment` entry.
|
||||
**What:** In `privacy-configuration/overrides/ios-override.json`, add `"targets": [{ "localeLanguage": "en", "localeCountry": "US" }]` to the new `onboardingDuckAIQueryTrackersDemoExperiment` entry.
|
||||
|
||||
**State:** Local edit exists on wrong branch (`alex/remove-autocomplete-tabs`) in `privacy-configuration` repo, not committed. Should be done together with PRE-SHIP-2 in one PR to that repo.
|
||||
**State:** ✅ Done — `targets` included in the new experiment entry in privacy-config PR. Done together with PRE-SHIP-2.
|
||||
|
||||
---
|
||||
|
||||
### 🔴 PRE-SHIP-2 — Privacy config: rename the experiment
|
||||
### ✅ PRE-SHIP-2 — Privacy config: rename the experiment
|
||||
|
||||
**Source:** [Task 1214682678629768](https://app.asana.com/1/137249556945/task/1214682678629768). Internal testers already enrolled under `onboardingDuckAIQueryExperiment`; reusing it would complete NA analysis immediately (already at sample size).
|
||||
|
||||
**Name decided:** [Alessandro May 15](https://app.asana.com/1/137249556945/task/1214348462471176/comment/1214794564106665): use **`onboardingDuckAIQueryTrackersDemoExperiment`** as the new `AIChatSubfeature` case.
|
||||
|
||||
**What (three parts):**
|
||||
1. **BSK** — new case `onboardingDuckAIQueryTrackersDemoExperiment` in `AIChatSubfeature` enum
|
||||
2. **App** — update `FeatureFlag.onboardingDuckAIQueryExperiment` to reference the new subfeature case; update experiment pixel names accordingly
|
||||
3. **`privacy-configuration` repo** — add new entry `onboardingDuckAIQueryTrackersDemoExperiment` with `targets`; set old `onboardingDuckAIQueryExperiment` to `"state": "disabled"`
|
||||
1. **BSK** — new case `onboardingDuckAIQueryTrackersDemoExperiment` in `AIChatSubfeature` enum ✅
|
||||
2. **App** — new `FeatureFlag.onboardingDuckAIQueryTrackersDemoExperiment` added; all flag references (`MainViewController+DuckAIExperiment.swift`, `MainViewController.swift`, `OnboardingIntroViewModel.swift`, `OnboardingPixelReporter.swift`, tests) updated to new name ✅
|
||||
3. **`privacy-configuration` repo** — new entry `onboardingDuckAIQueryTrackersDemoExperiment` with `targets` added; old `onboardingDuckAIQueryExperiment` set to `"state": "disabled"` ✅
|
||||
|
||||
**State:** ✅ Implemented (2026-05-18). BSK `PrivacyFeature.swift` + iOS `FeatureFlag.swift` updated. `resolveDuckAIQueryExperimentCohortID` switched to new flag. Privacy-config PR [#5189](https://github.com/duckduckgo/privacy-configuration/pull/5189): disables old experiment, adds new one with US/EN targeting + control/treatmentA cohorts.
|
||||
**State:** ✅ Fully implemented. Privacy-config PR merged. App code updated on `alex/demo-tracker-blocking-onboarding`.
|
||||
|
||||
---
|
||||
|
||||
@@ -624,7 +624,7 @@ All resolved on GitHub. Fixed in later commits on the `#4544` branch.
|
||||
|
||||
**What:** Fill `onboardingDuckAIQueryTrackersDemoExperiment` into [O-J <> O-N Coordination](https://app.asana.com/1/137249556945/project/1214157224317277/task/1214288645859692) and [O-N Live Onboarding Experiment Details](https://app.asana.com/1/137249556945/task/1214601039604921).
|
||||
|
||||
**State:** 🟠 PRE-SHIP-2 done. Fill `onboardingDuckAIQueryTrackersDemoExperiment` into [O-N Live Onboarding Experiment Details](https://app.asana.com/1/137249556945/task/1214601039604921) and [O-J <> O-N Coordination](https://app.asana.com/1/137249556945/project/1214157224317277/task/1214288645859692).
|
||||
**State:** 🔴 Name now known and finalized — needs filling into both Asana tasks.
|
||||
|
||||
---
|
||||
|
||||
@@ -640,11 +640,11 @@ All resolved on GitHub. Fixed in later commits on the `#4544` branch.
|
||||
|
||||
**GJ8/ "Ask.ai" toggle label** 🟠 Copy confirmed as **"Ask.ai"** (with dot) by [Alessandro May 14](https://app.asana.com/1/137249556945/task/1214348462471176/comment/1214794310099718). Currently implemented as "Ask AI" (no dot) in working tree — needs correction to "Ask.ai" before committing.
|
||||
|
||||
**Experiment rename in privacy config** ✅ Done (2026-05-18). BSK + iOS FeatureFlag updated. Privacy-config PR [#5189](https://github.com/duckduckgo/privacy-configuration/pull/5189) open.
|
||||
**Experiment rename in privacy config** ✅ Done. `onboardingDuckAIQueryTrackersDemoExperiment` implemented in BSK, app code updated, privacy-config PR merged with new entry + old disabled.
|
||||
|
||||
**Privacy config `targets` payload** ✅ Done (2026-05-18). Included in privacy-config PR #5189.
|
||||
**Privacy config `targets` payload** ✅ Done. `"targets": [{ "localeLanguage": "en", "localeCountry": "US" }]` added to `onboardingDuckAIQueryTrackersDemoExperiment` in privacy-config PR.
|
||||
|
||||
**O-N Live Onboarding Experiment Details ([task 1214601039604921](https://app.asana.com/1/137249556945/task/1214601039604921))** 🟠 Fill `onboardingDuckAIQueryTrackersDemoExperiment` into [O-N Live Onboarding Experiment Details](https://app.asana.com/1/137249556945/task/1214601039604921) and [O-J <> O-N Coordination](https://app.asana.com/1/137249556945/project/1214157224317277/task/1214288645859692).
|
||||
**O-N Live Onboarding Experiment Details ([task 1214601039604921](https://app.asana.com/1/137249556945/task/1214601039604921))** 🔴 Still needs filling: add `onboardingDuckAIQueryTrackersDemoExperiment` into [O-N Live Onboarding Experiment Details](https://app.asana.com/1/137249556945/task/1214601039604921) and [O-J <> O-N Coordination](https://app.asana.com/1/137249556945/project/1214157224317277/task/1214288645859692).
|
||||
|
||||
**Alessandro's May 15 QA** — Tested PR #4855 against test cases in [task 1214683268207880](https://app.asana.com/1/137249556945/task/1214683268207880). Test run: [task 1214794564106677](https://app.asana.com/1/137249556945/project/1206329551987282/task/1214794564106677). Left notes in test run and new comments in PR (see PR #4855 — Alessandro line 450 item above).
|
||||
|
||||
@@ -652,15 +652,14 @@ All resolved on GitHub. Fixed in later commits on the `#4544` branch.
|
||||
|
||||
---
|
||||
|
||||
## Experiment Config (PR #5189 — test config active)
|
||||
|
||||
Privacy-config PR: [#5189](https://github.com/duckduckgo/privacy-configuration/pull/5189) `alex/duckai-trackers-demo-experiment`
|
||||
Test config URL: `https://duckduckgo.github.io/privacy-configuration/pr-5189/v4/ios-config.json`
|
||||
## Experiment Config (current, privacy-config PR merged)
|
||||
|
||||
`privacy-configuration/overrides/ios-override.json` under `aiChat` subfeatures:
|
||||
|
||||
```json
|
||||
"onboardingDuckAIQueryExperiment": { "state": "disabled" },
|
||||
"onboardingDuckAIQueryExperiment": {
|
||||
"state": "disabled"
|
||||
},
|
||||
"onboardingDuckAIQueryTrackersDemoExperiment": {
|
||||
"state": "enabled",
|
||||
"targets": [{ "localeLanguage": "en", "localeCountry": "US" }],
|
||||
@@ -672,5 +671,4 @@ Test config URL: `https://duckduckgo.github.io/privacy-configuration/pr-5189/v4/
|
||||
```
|
||||
|
||||
> Feature flag: `FeatureFlag.onboardingDuckAIQueryTrackersDemoExperiment` in `iOS/Core/FeatureFlag.swift`
|
||||
> Cohort type: `FeatureFlag.DuckAIQueryExperimentCohort`
|
||||
> iOS embedded config (`ios-config.json`) updated from PR test URL, SHA `dc1d8ae9bee10e43...` (2026-05-18)
|
||||
> Cohort type: `FeatureFlag.DuckAIQueryExperimentCohort`
|
||||
|
||||
Reference in New Issue
Block a user