NEURLFilterManager.localizedDescription is ignored by System Settings -> Network -> Filters

macOS 26.6, 26.7, 27.0 and 27.2 beta 1/2. Reproduced with Apple's SimpleURLFilter sample ("Filtering traffic by URL", WWDC25 session 234), built and run as a macOS app.

The sample never sets localizedDescription, so I added one line to ConfigurationModel.save(configuration:) before saveToPreferences():

sharedFilterManager.localizedDescription = "Sentinel Filter Name"

The property holds the value in memory: after loadFromPreferences(), the logged LocalizedStringResource still has key: "Sentinel Filter Name". But the effective configuration the system starts the session with has no localizedDescription — the session is named after the app:

    name = SimpleURLFilter
    applicationName = SimpleURLFilter
    application = com.example.apple-samplecode.SimpleURLFilterTC3Q7MAJXF

(the rest of the nesessionmanager dump is the urlFilter dictionary, and it has no localizedDescription key).

System Settings > Network > Filters shows the filter as URLFilter, not "Sentinel Filter Name". The stored configuration (/Library/Preferences/com.apple.networkextension.plist) has no localizedDescription key either, and injecting one by hand does not survive a nesessionmanager restart.

Re-saving, removing and re-creating the configuration, and rebooting the Mac do not change the displayed name.

Expected: the docs describe localizedDescription as "A string containing a description of the URL filter", and WWDC25 session 234's code sample ("Configure and manage URL Filter") sets it this way (manager.localizedDescription = "Alice's URL Filter").

For comparison, a NETransparentProxyManager configuration on the same Mac persists localizedDescription as the configuration's Name in the same plist, while the URL filter configuration has no such field.

Filed as FB24987420.

NEURLFilterManager.localizedDescription is ignored by System Settings -> Network -> Filters
 
 
Q