duckduckgo / duckduckgo/Android

[repo-status] Daily Repo Status — March 31, 2026

Open
#8,162 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

daily-status report
Dominant language
Kotlin
Stars
4.8k
Forks
1.4k
Avg merge
2d 17h
Merged PRs (30d)
170

Description

Latest Release

Field Details
Version 5.274.1 (hotfix)
Released 2026-03-30
Target develop branch
APK size 122 MB (play-release)
Downloads 2,663
Notes "Various bug fixes and improvements" — hotfix on top of 5.274.0 (released 2026-03-27)

Two releases in four days signals a fast hotfix cycle.


Recent Commits on main (last 20)

Date Author Commit
2026-03-30 @CDRussell Merge branch 'hotfix/5.274.1'
2026-03-30 @GerardPaligot Add kill switch for SERP logo in browser menu header (#8148)
2026-03-30 @CDRussell Updated release notes and version number — 5.274.1
2026-03-27 @github-actions Merge branch 'release/5.274.0'
2026-03-27 @github-actions Updated version number — 5.274.0
2026-03-26 @malmstein Rollback First Screen until rolling out (#8120)
2026-03-26 @GerardPaligot Menu item polish: copy, icons, and color consistency (#8110)
2026-03-26 @landomen PIR: Download brokers when scan starts (#8118)
2026-03-26 @nalcalag Update subscription onboarding & modal origins (#8099)
2026-03-26 @nalcalag VPN menu item: Show 'Try for Free' pill only for eligible users (#8111)
2026-03-26 @karlenDimla PIR: Add additional params for foreground pixel (#8113)
2026-03-26 @GerardPaligot Dismiss menu when a new page loads from external app (#8108)
2026-03-26 @CrisBarreiro Reduce risk for key_already_existing and race conditions (#8085)
2026-03-26 @0nko Single tab burn: Fixed updated translations (#8114)
2026-03-26 @GerardPaligot Fire original popup menu pixels from the bottom sheet menu (#8109)
2026-03-26 @0nko Fix: String mismatch that broke the build (#8112)
2026-03-26 @nalcalag New browser menu: Update VPN menu item yellow pill padding (#8107)
2026-03-26 @0nko Single tab burn: Updated string translations (#8096)
2026-03-26 @LukasPaczos Enable SyncFeature#sendSyncSetupWideEvent feature flag by default (#8104)
2026-03-26 @CDRussell Add ability to easily query translation branch status (#8103)

Pattern: Most recent main activity is the hotfix merge (5.274.1). Prior commits show heavy browser menu work, PIR improvements, subscription updates, and translation fixes all landing on the same day before the 5.274.0 release cut.


Open Pull Requests (20 most recently updated)

# Title Author Labels Updated
#8160 Implement unfocused native input state for Duck.ai @joshliebe 2026-03-31
#8116 Make L2 Key writes atomic @CrisBarreiro QA-Optional 2026-03-31
#8141 Hatch: Make idle timeout a user setting @malmstein 2026-03-31
#8159 Fix m_aichat_settings_auto_context pixel definition @malmstein 2026-03-31
#8161 Onboarding Brand Design Update: Add browser comparison screen @mikescamell 2026-03-31
#8154 Enforce allowed domains check for Duck Player @CrisBarreiro 2026-03-31
#8087 Fixes for autofill service (multi-process) @CrisBarreiro 2026-03-31
#8157 Add model picker to native input @joshliebe 2026-03-31
#8135 Update copy for sync screen in recovery code flow @CDRussell Pending Translations 2026-03-31
#8158 Update autoconsent to v14.67.0 @daxmobile 2026-03-31
#8152 Agentic: Maintenance Worker @malmstein 2026-03-30
#8081 Differentiate Duck.ai tabs in tab switcher @malmstein 2026-03-30
#8156 Check cache to skip network requests when fetching from url and tab @marcosholgado 2026-03-30
#8083 Remove duplicated JS subscription handler @cmonfortep 2026-03-30
#8100 feat: add KSP processor for ContentScopePrivacyFeature boilerplate @aibrahim- 2026-03-30
#8149 Add fire button to contextual Duck.ai sheet @aitorvs 2026-03-30
#8133 Instrument WebView errors with raw error code pixel @malmstein 2026-03-30
#8090 Rename safe ppro references to subscriptions @cmonfortep 2026-03-30
#8128 Data clearing plugin: New modules and API @0nko QA-Optional 2026-03-29
#8086 Add DRM enabled status to broken site feedback reports @jonathanKingston 2026-03-29

Recently Closed / Merged Pull Requests (last 20)

# Title Author Labels Merged Status
#8123 Update origin and pixels for new subscription modal @nalcalag QA-Optional 2026-03-31 Merged
#8139 Control animation on search and chat selection @YoussefKeyrouz 2026-03-31 Merged
#8121 Add pixels for tracking default toggle position @YoussefKeyrouz privacy review required 2026-03-31 Merged
#8119 Upgrade progress bar @aibrahim- 2026-03-30 Merged
#8155 Display back history with a long press on back button @GerardPaligot 2026-03-30 Merged
#8115 Add default toggle position for new and existing users @YoussefKeyrouz 2026-03-30 Merged
#8124 Update Default Browser settings icon @LukasPaczos 2026-03-30 Merged
#8150 Update custom header tests to use UTC @CDRussell QA-Optional 2026-03-30 Merged
#8147 Hatch: Fix for empty tab titles @malmstein 2026-03-30 Merged
#8131 Android: Remove postCtaExperience and onboardingHomeScreenWidget feature flags @anikiki 2026-03-30 Merged
#8148 Add kill switch for SERP logo in browser menu header @GerardPaligot 2026-03-30 Merged
#8102 Prevent Asana tasks from being created by strings-changed E2E workflow @malmstein 2026-03-30 Merged
#8145 Make adding labels a separate step @landomen 2026-03-30 Merged
#8143 Update PIR broker bundle - 2026-03-30 @daxmobile automated pr, pir 2026-03-30 Merged
#8093 Wire Default Toggle Setting to New Tab Page behaviour @YoussefKeyrouz 2026-03-27 Merged
#8072 Add setting to select toggle position (input screen) @YoussefKeyrouz 2026-03-26 Merged
#8117 Sanitize intent fallback URLs to prevent JavaScript execution @not-a-rootkit 2026-03-28 Merged
#8134 [Android Maintenance] Remove unused DuckChatWebViewFragment @malmstein Closed (not merged)
#8070 Translations for sync "recovery" section in sync settings @CDRussell QA-Optional 2026-03-27 Merged
#8008 Update sync settings screen with new recovery section @CDRussell 2026-03-27 Merged

Open Issues (15 most recently updated)

# Title Author Labels Updated
#7725 [Bug] DDG browser is DoS-ing my site (excessive favicon requests) @Kangaroux bug, needs triage 2026-03-30
#8144 [Bug] Crash when switching tabs (ViewPager2 LayoutTransition conflict) @JeffHuang04 bug, needs triage 2026-03-30
#8153 [repo-status] Daily Repo Status — March 30, 2026 @github-actions report, daily-status 2026-03-30
#7844 [Bug] DDG refuses to download files from directories secured with basic auth @frie bug, needs triage 2026-03-13
#7805 [Bug] Authorize.net AcceptUI.js payment form broken by privacy protections @whitinger bug, needs triage 2026-02-24
#5383 [Bug] DDG bookmarks disappeared @slade-cj bug, needs triage 2026-02-21
#4854 [Request/Bug] Disable pull-down-to-refresh @gothgirlwife bug, needs triage 2026-02-20
#6062 [Bug] Searching bookmarks after deleting a folder returns no results @seabornlee bug, needs triage 2026-02-20
#2799 [Bug] Can't specify protocol in "Unprotected Sites" exceptions @Mugurell bug, needs triage 2026-02-20
#4912 [Bug] Search Widget doesn't escape single quote @rkglover bug, needs triage 2026-02-08
#7431 [Bug] App returns to start page after rotation @ImDiM bug, needs triage 2026-01-13
#6374 [Bug] Site icons keep disappearing @person12675 bug, needs triage 2025-11-07
#6996 Disabled AI features suggested in widget creation prompt @Ricky-Tigg bug, needs triage 2025-11-05
#6793 [Request] Add option to name pages before adding to home screen @nilsjor bug, needs triage 2025-10-08
#2798 [Bug] Strange background behind contextual menu in "Unprotected sites" @Mugurell bug, needs triage 2025-10-02

Total open issues in repository: 63


Recently Closed Issues (last 15)

# Title Author Labels Updated
#8151 [Bug] Back button long press (back history regression) @VIMVa bug, needs triage 2026-03-30
#8146 [repo-status] Daily Repo Status — March 30, 2026 @github-actions report, daily-status 2026-03-30
#8142 [Bug] (empty title) @norbertwe21-afk bug, needs triage 2026-03-30
#8140 [repo-status] Daily Repo Status — March 29, 2026 @github-actions report, daily-status 2026-03-30
#8137 [repo-status] Daily Repo Status — March 28, 2026 @github-actions report, daily-status 2026-03-29
#8138 Título da Questão (spam/invalid) @Roger39476 2026-03-28
#8122 [repo-status] Daily Repo Status — March 27, 2026 @github-actions report, daily-status 2026-03-28
#8095 [repo-status] Daily Repo Status — March 26, 2026 @github-actions report, daily-status 2026-03-27
#8073 [repo-status] Daily Repo Status — March 25, 2026 @github-actions report, daily-status 2026-03-26
#8062 [repo-status] Daily Repo Status — March 24, 2026 @github-actions report, daily-status 2026-03-25
#8054 [repo-status] Daily Repo Status — March 23, 2026 @github-actions report, daily-status 2026-03-24
#8052 [repo-status] Daily Repo Status — March 22, 2026 @github-actions report, daily-status 2026-03-23
#8051 [repo-status] Daily Repo Status — March 21, 2026 @github-actions report, daily-status 2026-03-22
#8035 [repo-status] Daily Repo Status — March 20, 2026 @github-actions report, daily-status 2026-03-21
#8038 Audio streaming stops after ~2 minutes when app is in background @stitam bug, needs triage 2026-03-20

Note: Nearly all recently closed issues are automated daily status reports. The only genuine user-reported bugs closed in this period are #8151 (back-button long-press, closed likely as duplicate/resolved by #8155) and #8038 (audio streaming — status unclear).


Themes and Patterns

1. Duck.ai / Hatch Feature Blitz

The single largest area of active development. Open PRs include native input states (#8160), model picker (#8157), idle timeout settings (#8141), fire button in contextual sheet (#8149), tab differentiation (#8081), and agentic maintenance worker (#8152). Merges this week include empty tab title fix (#8147) and animation controls (#8139). This feature is clearly in heavy pre-release build-up.

2. New Tab Page Toggle / Input Screen UI

A coordinated multi-PR effort from @YoussefKeyrouz: default toggle position wired to NTP (#8093, merged), toggle position for input screen (#8072, merged), pixels for tracking (#8121, merged with privacy review), and animation control (#8139, merged). This looks like a phased rollout of the toggle/input-screen feature with full pixel coverage.

3. Browser Menu Overhaul

Several recently merged PRs polish the browser menu: copy and icon consistency (#8110), dismissal behavior on external navigation (#8108), pixel firing (#8109), VPN pill padding (#8107), SERP logo kill switch (#8148), and settings icon update (#8124). The menu rewrite appears to be stabilizing post-launch.

4. Sync Recovery Flow

@CDRussell landed a complete sync recovery flow: settings screen update (#8008), translations (#8070), copy update (#8135 still pending translations). #8135 is currently blocked on translations — a common workflow dependency.

5. Security Hardening

Two security fixes this week: intent fallback URL sanitization to block JavaScript execution (#8117, @not-a-rootkit), and L2 key atomicity (#8116, still open). Duck Player domain enforcement (#8154) also adds defense-in-depth.

6. PIR (Privacy Protection / Personal Information Removal)

Automated daily broker bundle updates continue (#8143). Active work includes broker download-on-scan-start (#8118, merged), foreground pixels (#8113, merged), and data clearing plugin new API (#8128, open).

7. Subscriptions / ppro Rename

A module-level rename from ppro to subscriptions is in progress (#8090, open). Modal origin/pixel updates (#8123, merged) accompany this refactor.

8. Code Quality and Architecture
  • KSP processor for ContentScopePrivacyFeature boilerplate (#8100, open) — reduces annotation boilerplate
  • Removal of stale feature flags postCtaExperience and onboardingHomeScreenWidget (#8131, merged)
  • Duplicate JS subscription handler removal (#8083, open)
  • Data clearing plugin: new modules and API (#8128)
9. Triage Backlog

All 63 open issues carry bug + needs triage. No issues appear to have been actively triaged recently. Longer-standing bugs (some from 2023) continue to accumulate. Two new bugs filed in the last 48 hours:

  • #8144 — ViewPager2 / LayoutTransition crash when switching tabs (reproducible, fresh)
  • #8151 — Back-button long-press regression (now closed, likely resolved by #8155 which adds back-history on long-press)

High-priority untriaged bugs worth attention:

  • #7725 — Excessive favicon polling generating ~10–20 req/s per user, impacting external server operators
  • #7844 — Downloads fail for basic-auth-protected directories
  • #7805 — Authorize.net AcceptUI.js silently broken by privacy protections

Key Contributors (last 7 days)

Author Activity
@malmstein Hatch/agentic PRs, hotfix pipeline, maintenance cleanups
@YoussefKeyrouz Toggle/NTP feature — 4 PRs merged this week
@GerardPaligot Browser menu polish, back-history feature, pixel work
@CDRussell Sync recovery end-to-end, hotfix merge, translation tooling
@CrisBarreiro Security/autofill: L2 atomicity, Duck Player, autofill multi-process
@joshliebe Duck.ai native input: model picker, unfocused state
@not-a-rootkit Security: intent URL sanitization
@nalcalag Subscriptions/VPN menu updates
@0nko Data clearing, single tab burn, translation fixes
@landomen PIR broker download, CI label tooling

Generated 2026-03-31 — covers open PRs, closed PRs, issues, commits, and release data from the duckduckgo/Android repository.

Generated by Daily Repo Status · gh-aw-workflow-call-id: duckduckgo/Android/Daily Repo Status

Generated by Daily Repo Status ·

To install this agentic workflow, run

gh aw add githubnext/agentics/workflows/daily-repo-status.md@b466f28f0f65b68d6f2b10b15b44f51d787b93be

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

This issue is an automated daily repository-status report covering releases, commits, pull requests, and issues. It names no source files, tests, or requested change, so there is no implementation target or completion criterion for a contributor.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, github, kotlin
Domain
release
Issue type
Documentation
Difficulty
1/5
Estimated time
Under an hour
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
10/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.