Had Claude analyze the sysdiagnose report. Here are the findings:
Main observation: sysdiagnose analysis reveals sysextd never consults syspolicyd during activation
$ sudo sysdiagnose -f ~/Desktop/
This tool generates files that allow Apple to investigate issues with your
computer and help improve Apple products. The files might contain personal
information found on your device or associated with your Apple Account(s),
including but not limited to your name, serial numbers of your device,
your device name, your attached peripheral devices, your user name, your
email address and email settings, file paths, file names, Siri suggestions,
your computer's IP addresses, network connection information, and profiles
installed to your device.
This information is used by Apple in accordance with its privacy policy
(www.apple.com/privacy) and is not shared with any other company. By using
this tool and sending the results to Apple, you consent to Apple using the
contents of these files to improve Apple products.
Press 'Enter' to continue. Ctrl+\ to cancel.
Progress:
[|||||||||||||||||||||||||||||||||||||||100%|||||||||||||||||||||||||||||||||||]
Output available at '~/Desktop/sysdiagnose_2026.02.26_12-50-09-0800_macOS_Mac_25D125.tar.gz'.
The complete timeline (Feb 26, 12:49 PST):
Time
Process
Event
12:49:00.624
syspolicyd
GK performScan — team: R65679C4F3
12:49:00.821
syspolicyd
GK evaluateScanResult: 3 — id: dev.indrasvat.chakshu (scan passed)
12:49:01.184
syspolicyd
XProtect: "Forwarding detection succeeded!"
12:49:14.583
Chakshu
Connects to com.apple.sysextd via XPC
12:49:14.587–592
sysextd
Verifies host app signing — SecKeyVerifySignature × 2, SecTrustEvaluateIfNecessary × 2 (pass)
12:49:14.594
sysextd → CodeSigningHelper
Host app check
12:49:14.598
sysextd
"attempting to realize extension with identifier dev.indrasvat.chakshu.filter"
12:49:14.598–601
sysextd
Verifies extension signing — same checks (pass)
12:49:14.601
sysextd → CodeSigningHelper
Extension check
12:49:14.602
sysextd
"no policy, cannot allow apps outside /Applications"
12:49:14.605
Chakshu
Receives OSSystemExtensionError code 4
Three things stand out:
syspolicyd is never consulted during extension activation. There are zero syspolicyd log entries between 12:49:14 and 12:49:15. The syspolicyd scan at 12:49:00 was the Gatekeeper first-run assessment on app launch — not the extension activation. Gatekeeper gave us result 3 (same as Zoom on this machine), so it's happy with us.
No user approval dialog is triggered. Zero entries from UserNotificationCenter, System Settings, or any UI prompting process. On a non-MDM machine with empty extensionPolicies, sysextd should present the "allow in System Settings" dialog. Instead it goes straight to rejection.
All signature verification passes. Both sysextd and trustd complete SecKeyVerifySignature and SecTrustEvaluateIfNecessary without error for both the host app and the extension. CodeSigningHelper is consulted twice and completes normally.
The failure appears to be in sysextd's internal policy lookup: it checks for an MDM/configuration profile policy (none found — extensionPolicies is empty), then fails to fall through to the user approval flow. The 1ms gap between CodeSigningHelper completing (12:49:14.601) and the "no policy" decision (12:49:14.602) suggests a simple boolean check, not a failed network call or timeout.
For comparison, Tailscale's NE on this machine (activated pre-Tahoe) only shows list/cdhash queries — never an activation flow — confirming it's grandfathered in the sysext DB as activated_enabled.
Topic:
App & System Services
SubTopic:
Networking
Tags: