diff --git a/Dev/apple-browsers/address-ios-onboarding-issues-merge-fix.md b/Dev/apple-browsers/address-ios-onboarding-issues-merge-fix.md new file mode 100644 index 00000000..4a94aa41 --- /dev/null +++ b/Dev/apple-browsers/address-ios-onboarding-issues-merge-fix.md @@ -0,0 +1,65 @@ +# Merge Fix: address-ios-onboarding-issues ← origin/main + +**Date:** 2026-06-04 +**Branch:** `alex/address-ios-onboarding-issues` +**Commit:** `4acf1c9737` + +## Context + +After merging `origin/main` into the feature branch, the iOS target failed to build due to a combination of upstream enum renames and code that was accidentally dropped during manual conflict resolution. + +--- + +## Root causes + +### 1. Upstream enum renames + +`origin/main` renamed two enums (removing the `Experiment` infix): + +| Old name | New name | +|---|---| +| `DuckAIQueryExperimentMode` | `DuckAIQueryMode` | +| `DuckAIQueryExperimentPromptSource` | `DuckAIQueryPromptSource` | + +The old source file `DuckAIQueryExperimentMode.swift` was deleted upstream but its Xcode project reference was not removed during the merge, causing a `project.pbxproj` orphan. + +### 2. Code dropped during conflict resolution in `MainViewController.swift` + +When resolving conflicts, several blocks of code that existed only on the feature branch were incorrectly discarded in favour of the incoming `main` version: + +- `bindAIChatChromeChipToCurrentTab()` and its call site. +- `loadUrlRespectingAIBoundary` call sites (URL loading that respects the AI query boundary). +- AI chat history delegate wiring. + +### 3. Upstream API additions without corresponding branch updates + +- `TabSwitcherStaticButton` gained a required `showMenuOnLongPress:` constructor argument. +- Two new protocol methods were added to `TabDelegate` and `TabSwitcherButtonDelegate`. +- `OnboardingPixelReporter` gained a new `measureDuckAIFireDialogImpression()` requirement. + +### 4. Deleted upstream API still referenced on branch + +- `DuckAIQueryExperimentCohort` enum (used in `UnifiedToggleInputFeature`) was removed on `main`; the branch code was updated to remove that dependency. + +--- + +## Files changed + +| File | What was fixed | +|---|---| +| `OnboardingIntroViewModel.swift` | Renamed enum references | +| `OnboardingView.swift` | Renamed enum references | +| `OnboardingPixelReporter.swift` | Renamed enum refs + added `measureDuckAIFireDialogImpression()` | +| `ContextualDaxDialogsFactory.swift` | Updated pixel-firing call to new method name | +| `RebrandedContextualDaxDialogFactory.swift` | Same as above | +| `UnifiedToggleInputFeature.swift` | Restored `isToggleHiddenOnDuckAITab` without deleted cohort enum | +| `OnboardingPixelReporterMock.swift` | Enum renames + added missing mock method | +| `MainViewController.swift` | Restored dropped AI-chat binding, URL boundary logic, new protocol stubs, updated constructor calls, removed deleted API calls | +| `project.pbxproj` | Removed orphan reference to deleted `DuckAIQueryExperimentMode.swift` | +| `Package.resolved` (×3) | Accepted upstream SPM dependency version bumps | + +--- + +## Possible follow-up + +The merge resolution was done by patching the already-merged working tree rather than by redoing the merge from scratch. If a cleaner history is desired, the merge commit could be reset and the merge re-done with these fixes applied interactively. The complete list of changes above serves as a reference for what conflicts to resolve in that scenario. diff --git a/work/briefs/inbox/2026-06-04.md b/work/briefs/inbox/2026-06-04.md index 196794c6..a122809b 100644 --- a/work/briefs/inbox/2026-06-04.md +++ b/work/briefs/inbox/2026-06-04.md @@ -1,7 +1,25 @@ -## Inbox Triage — 2026-06-04 (since 2026-06-04T10:01) +## Inbox Triage — 2026-06-04 (since 2026-06-04T12:00:57) ### Nothing new Inbox quiet — nothing new. -_Checked: @mentions, new comments on my tasks, new assignments. Snapshot generated 04:31 UTC (10:31 local). No activity in the window._ +**Note:** @mention query skipped — `/etc/ddg/dbenv` not available on Eagle Mac (DB is on production host). Snapshot from 06:31 UTC predates SINCE. All comments in snapshot are from Jun 3 or earlier. GitHub "Needs Attention" items are persistent state, not new since SINCE. + +--- + +## Inbox Triage — 2026-06-04 (since 2026-06-04T14:00:24) + +### Nothing new + +Inbox quiet — nothing new. + +Snapshot generated at 08:30 UTC (covers since SINCE = 08:00 UTC). No new human comments, @mentions, or task assignments found. Most recent comment in snapshot: Jun 4 05:13 UTC (Dax the Duck bot, excluded). AOR flash/metrics comments are follower-channel noise, excluded per scope filter. + +--- + +## Inbox Triage — 2026-06-04 (since 2026-06-04T16:30:57) + +### Nothing new + +Inbox quiet — no new human signals since 16:30 local (11:30 UTC). Snapshot synced at 11:46 UTC. Only new item after SINCE: automated Dax CI notification at 11:41 UTC (alpha build ready for Ship Review: iOS Address onboarding) — excluded as bot event.