Skip to content

[Bug] AAService disables protection after DarkWake filter update failure (HttpClientNetworkError) #1709

Description

@peppolone

Please answer the following questions for yourself before submitting an issue

  • Filters were updated before reproducing an issue
  • I checked the knowledge base and found no answer
  • I checked to make sure that this issue has not already been filed

AdGuard version

2.19.0.2234 beta (also reproduced on 2.18.0.2089)

Browser version

No response

OS version

macOS 15.7.8 (24G806) Sequoia

Ad Blocking

AdGuard Base filter, EasyList

Privacy

No response

Social

No response

Annoyances

No response

Security

No response

Other

No response

Language-specific

No response

Which DNS server do you use?

Cloudflare DNS

DNS protocol

DNS-over-TLS

Custom DNS

No response

What Stealth Mode options do you have enabled?

Block trackers

Support ticket ID

No response

Issue Details

  1. Use AdGuard with Network Extension (System Extension) mode
  2. Let the Mac sleep overnight connected to AC power
  3. macOS performs a scheduled DarkWake maintenance event (~06:00–07:00)
  4. AdGuard attempts automatic filter update during DarkWake
  5. Filter update fails with HttpClientNetworkError (network not available during DarkWake)
  6. Mac fully wakes up ~28 minutes later
  7. Check AdGuard menu bar toggle → protection is OFF

Expected Behavior

A transient HttpClientNetworkError during a DarkWake filter update
should be retried silently at next opportunity with no effect on the
protection state. Protection should remain enabled after wake.

Actual Behavior

After every overnight sleep, AdGuard protection is disabled on wake.
The toggle in the menu bar app is OFF. Confirmed via:
defaults read com.adguard.mac.adguard NetworkFilterEnabled → 0
Requires manual re-enable every morning. Reproduced every night for
several weeks on both v2.18 and v2.19 beta.

Screenshots

Screenshot 1

Additional Information

Exact sequence from Adguard-group.log (June 6 — identical every day):

06:29:41 (Filters) agflm_standard.db: Begin differential update
06:29:41 [NE] AdguardCore DnsChange: DNS servers changed: (null)
^ DarkWake, network offline

06:29:41 ERROR (FiltersService: didUpdateFilters(:)):
AGOuterError: "HttpClientNetworkError: error sending request
for url https://filters.adtidy.org/mac

AdGuard_BugReport.zip

v3/filters.js"

06:29:41 (DnsChangingMonitor) Change DNS fired with: []

--- 28 minutes of silence ---

06:58:02 (DnsChangingMonitor) Change DNS fired with: ["1.1.1.1", ...]
^ Full wake, network restored

06:59:01 (AAService) Setting protection enabled to "NO" ← BUG
06:59:01 (AAService) filteringModuleTouch disabling filtration.
06:59:02 [NE] VPN service emergency stop: XPC connection interrupted
06:59:02 (CoreLibServiceHandler) Service stopped.

KEY OBSERVATION: "Setting protection enabled to NO" fires 30 minutes
after the HttpClientNetworkError, triggered at full wake — not when
the error occurred. This is a deferred state reconciliation bug in
AAService.

SECOND TRIGGER (active use): Same bug triggers during active use.
On June 6 at 18:24, protection turned off 24 seconds after closing
the Preferences window — Mac fully awake. Same AAService →
filteringModuleTouch sequence, triggered by a reconfigFiltering loop
in the NE followed by an XPC connection drop.

What I tried:

  • Upgraded v2.18 → v2.19 beta: no effect
  • Disabled PowerNap on AC: no effect
  • Disabled activateFiltersAutomaticEnabled: no effect

macOS Diagnostic Reports attached.
Reddit thread: https://www.reddit.com/r/Adguard/comments/1tz9jf0

Metadata

Metadata

Assignees

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions