Post

Replies

Boosts

Views

Activity

Reply to AssetPackManager.shared traps on macOS 27 seed 6
Development Mac only. The app was launched from the Xcode build-products folder, never from a single copy in /Applications, and my Mac has several registered copies of the app and its downloader extension across DerivedData and a worktree build folder. So I've not ruled out the "wrong appex" explanation. However, on the latest macOS 27.0 beta (26A5425a), same project, same entitlements, same BAAppGroupID, same automatically issued Mac profile, and the same development Mac, the trap no longer reproduces. Across three launches AssetPackManager.shared initialized cleanly, the team-prefixed group resolved, and with a pack served locally the full path completed with no fatalError, no crash report. I've added the 26A5425a observations and logs to FB24525451.
Topic: App & System Services SubTopic: Core OS Tags:
Sep ’26
Reply to What signal should drive fallback for PrivateCloudComputeLanguageModel?
Thanks for the replies. I filed FB24515295 with the measurement driver, timestamped logs from both runs, and Feedback Assistant’s system diagnostics. Ziqiao, you're right about the original rateLimited result, but to tighten up the recovery timing: It followed cumulative usage, not request speed. The run sustained 39.7 generations/minute, and two bursts of 16 concurrent requests served 32/32 at 5.0 and 5.2 requests/second. The count also carried across a process restart and a 4.9-hour idle gap. I didn’t actually observe it taking 20 hours to recover. Probes through +40 minutes all failed, and the next probe at +19.98 hours worked. So all I can really say is that recovery happened somewhere in the interval of (41 minutes, 19.98 hours]. After your reply, I deliberately ran the entitled app-tier driver to the wall again on the same macOS and Xcode builds. This time I got a pretty interesting contrast: The 1,000-attempt run averaged 64.8 requests/minute. The attempt right before the wall served in 840 ms. The final attempt threw PrivateCloudComputeLanguageModel.Error.quotaLimitReached in 67 ms, not LanguageModelError.rateLimited. Right before and after that error, quotaUsage still said belowLimit, not approaching, not reached, and resetDate = nil. Availability still said .available. So this exact build can produce the expected quotaLimitReached error, but the earlier cumulative wall came through as rateLimited. The faster run also didn’t produce rateLimited, so request speed by itself doesn’t seem to explain the earlier result, though server conditions could’ve been different. The sysdiagnose in FB24515295 was collected while this new quotaLimitReached block was active, so it captures the live quotaUsage and resetDate mismatch. I also attached the August 20 logs to the same Feedback report. Those cover the earlier rateLimited wall and recovery probes. On the request shape... The hundreds of short, unique prompts are for diagnostics and development, not how I’m planning to ship quiz generation. I agree that the product should use a bounded, paced, on-demand, or on-device approach instead of firing off 500+ short PCC requests as one batch. I included the full driver so the framework team can see exactly what I sent. If the team specifically needs a sysdiagnose from a wall that comes through as rateLimited, I can try again after the allowance refills. Since today’s same-build run returned quotaLimitReached instead, I can’t force which classification I’ll get. If there’s a logging profile or predicate I should enable first, let me know so the next run is as useful as possible. Thanks!
Aug ’26
Reply to Can't see os_log messages from DriverKit driver
Ok the gremlins are back. I'm not seeing logs anymore, and OSSystemExtensionRequestDelegate is reporting didFailWithError: Request failed. Error Domain=OSSystemExtensionErrorDomain Code=4 "(null)" I'm also seeing the extra zombie driver in System Extensions: $ systemextensionsctl list 2 extension(s) --- com.apple.system_extension.driver_extension enabled active teamID bundleID (version) name [state] UWX5KMH446 com.vocaro.TestApp.driver (1.0/1) com.vocaro.TestApp.driver [terminating for upgrade via delegate] *. * UWX5KMH446 com.vocaro.TestApp.driver (1.0/1) com.vocaro.TestApp.driver [activated enabled] I can get rid of the error if I do systemextensionsctl reset but that only works for two launches. After the second launch, the zombie driver appears, and on the third one, the error starts happening (due to the zombie driver failing to unload, I assume.) At no time do I see any logs. It is so weird... Searching through the Console logs reveals some additional errors that appear to be related to code signing: failed to fetch /Users/trevor/Library/Developer/Xcode/DerivedData/TestApp-feebyyqkhutjwcgetajghxeumarp/Build/Products/Debug/TestApp.app/Contents/Library/SystemExtensions/com.vocaro.TestApp.driver.dext/_CodeSignature/CodeRequirements-1 error=-10 and /Users/trevor/Library/Developer/Xcode/DerivedData/TestApp-feebyyqkhutjwcgetajghxeumarp/Build/Products/Debug/TestApp.app/Contents/Library/SystemExtensions/com.vocaro.TestApp.driver.dext: package type not `SYSX` This issue keeps happening even if I wipe out the Xcode build folder for my project and completely rebuild. It started happening when I switched from a bare-bones driver inheriting from IOService (nearly identical to the Xcode DriverKit template) to one inheriting from IOUserHIDEventService and specifying a ProductID and VendorID (like Apple's HID sample). Strangely, even if I revert to the original code, delete the build folder, clear the system extensions, and reboot, it keeps happening. And still.. no... logs...
Topic: App & System Services SubTopic: Core OS Tags:
Mar ’23
Reply to Can't see os_log messages from DriverKit driver
Aaaaand now I can see logs again. I have no idea why suddenly they're appearing in Console or why they weren't appearing before. Possibly a reboot of my laptop this afternoon (due to an unrelated issue) fixed everything? But I tried that before and it didn't help, so the mystery remains. Strangely, another DriverKit issue I experienced while testing has gone away. During the time when I could not see the log messages, I also noticed that the drivers were not being successfully unloaded and replaced when relaunching the host app (despite returning .replace in actionForReplacingExtension). I would see two entries for the driver in systemextensionsctl reset (one of them in some sort of zombie "waiting for app to terminate" mode, if I remember right). I had to run systemextensionsctl reset to clear them out, otherwise the second launch of the host app would get a didFailWithError with error code OSSystemExtensionErrorExtensionNotFound (4). But I'm not seeing that any more, no matter how many times I relaunch the host app. Gremlins...
Topic: App & System Services SubTopic: Core OS Tags:
Mar ’23
Reply to AssetPackManager.shared traps on macOS 27 seed 6
Development Mac only. The app was launched from the Xcode build-products folder, never from a single copy in /Applications, and my Mac has several registered copies of the app and its downloader extension across DerivedData and a worktree build folder. So I've not ruled out the "wrong appex" explanation. However, on the latest macOS 27.0 beta (26A5425a), same project, same entitlements, same BAAppGroupID, same automatically issued Mac profile, and the same development Mac, the trap no longer reproduces. Across three launches AssetPackManager.shared initialized cleanly, the team-prefixed group resolved, and with a pack served locally the full path completed with no fatalError, no crash report. I've added the 26A5425a observations and logs to FB24525451.
Topic: App & System Services SubTopic: Core OS Tags:
Replies
Boosts
Views
Activity
Sep ’26
Reply to What signal should drive fallback for PrivateCloudComputeLanguageModel?
Thanks for the replies. I filed FB24515295 with the measurement driver, timestamped logs from both runs, and Feedback Assistant’s system diagnostics. Ziqiao, you're right about the original rateLimited result, but to tighten up the recovery timing: It followed cumulative usage, not request speed. The run sustained 39.7 generations/minute, and two bursts of 16 concurrent requests served 32/32 at 5.0 and 5.2 requests/second. The count also carried across a process restart and a 4.9-hour idle gap. I didn’t actually observe it taking 20 hours to recover. Probes through +40 minutes all failed, and the next probe at +19.98 hours worked. So all I can really say is that recovery happened somewhere in the interval of (41 minutes, 19.98 hours]. After your reply, I deliberately ran the entitled app-tier driver to the wall again on the same macOS and Xcode builds. This time I got a pretty interesting contrast: The 1,000-attempt run averaged 64.8 requests/minute. The attempt right before the wall served in 840 ms. The final attempt threw PrivateCloudComputeLanguageModel.Error.quotaLimitReached in 67 ms, not LanguageModelError.rateLimited. Right before and after that error, quotaUsage still said belowLimit, not approaching, not reached, and resetDate = nil. Availability still said .available. So this exact build can produce the expected quotaLimitReached error, but the earlier cumulative wall came through as rateLimited. The faster run also didn’t produce rateLimited, so request speed by itself doesn’t seem to explain the earlier result, though server conditions could’ve been different. The sysdiagnose in FB24515295 was collected while this new quotaLimitReached block was active, so it captures the live quotaUsage and resetDate mismatch. I also attached the August 20 logs to the same Feedback report. Those cover the earlier rateLimited wall and recovery probes. On the request shape... The hundreds of short, unique prompts are for diagnostics and development, not how I’m planning to ship quiz generation. I agree that the product should use a bounded, paced, on-demand, or on-device approach instead of firing off 500+ short PCC requests as one batch. I included the full driver so the framework team can see exactly what I sent. If the team specifically needs a sysdiagnose from a wall that comes through as rateLimited, I can try again after the allowance refills. Since today’s same-build run returned quotaLimitReached instead, I can’t force which classification I’ll get. If there’s a logging profile or predicate I should enable first, let me know so the next run is as useful as possible. Thanks!
Replies
Boosts
Views
Activity
Aug ’26
Reply to Can't see os_log messages from DriverKit driver
Ok the gremlins are back. I'm not seeing logs anymore, and OSSystemExtensionRequestDelegate is reporting didFailWithError: Request failed. Error Domain=OSSystemExtensionErrorDomain Code=4 "(null)" I'm also seeing the extra zombie driver in System Extensions: $ systemextensionsctl list 2 extension(s) --- com.apple.system_extension.driver_extension enabled active teamID bundleID (version) name [state] UWX5KMH446 com.vocaro.TestApp.driver (1.0/1) com.vocaro.TestApp.driver [terminating for upgrade via delegate] *. * UWX5KMH446 com.vocaro.TestApp.driver (1.0/1) com.vocaro.TestApp.driver [activated enabled] I can get rid of the error if I do systemextensionsctl reset but that only works for two launches. After the second launch, the zombie driver appears, and on the third one, the error starts happening (due to the zombie driver failing to unload, I assume.) At no time do I see any logs. It is so weird... Searching through the Console logs reveals some additional errors that appear to be related to code signing: failed to fetch /Users/trevor/Library/Developer/Xcode/DerivedData/TestApp-feebyyqkhutjwcgetajghxeumarp/Build/Products/Debug/TestApp.app/Contents/Library/SystemExtensions/com.vocaro.TestApp.driver.dext/_CodeSignature/CodeRequirements-1 error=-10 and /Users/trevor/Library/Developer/Xcode/DerivedData/TestApp-feebyyqkhutjwcgetajghxeumarp/Build/Products/Debug/TestApp.app/Contents/Library/SystemExtensions/com.vocaro.TestApp.driver.dext: package type not `SYSX` This issue keeps happening even if I wipe out the Xcode build folder for my project and completely rebuild. It started happening when I switched from a bare-bones driver inheriting from IOService (nearly identical to the Xcode DriverKit template) to one inheriting from IOUserHIDEventService and specifying a ProductID and VendorID (like Apple's HID sample). Strangely, even if I revert to the original code, delete the build folder, clear the system extensions, and reboot, it keeps happening. And still.. no... logs...
Topic: App & System Services SubTopic: Core OS Tags:
Replies
Boosts
Views
Activity
Mar ’23
Reply to Can't see os_log messages from DriverKit driver
Aaaaand now I can see logs again. I have no idea why suddenly they're appearing in Console or why they weren't appearing before. Possibly a reboot of my laptop this afternoon (due to an unrelated issue) fixed everything? But I tried that before and it didn't help, so the mystery remains. Strangely, another DriverKit issue I experienced while testing has gone away. During the time when I could not see the log messages, I also noticed that the drivers were not being successfully unloaded and replaced when relaunching the host app (despite returning .replace in actionForReplacingExtension). I would see two entries for the driver in systemextensionsctl reset (one of them in some sort of zombie "waiting for app to terminate" mode, if I remember right). I had to run systemextensionsctl reset to clear them out, otherwise the second launch of the host app would get a didFailWithError with error code OSSystemExtensionErrorExtensionNotFound (4). But I'm not seeing that any more, no matter how many times I relaunch the host app. Gremlins...
Topic: App & System Services SubTopic: Core OS Tags:
Replies
Boosts
Views
Activity
Mar ’23