Skip to content

super deadline and workflow target not reset when scheduling an update (ScheduledInstallUserChoice) #331

@Tuttu

Description

@Tuttu

super-logs_issue-331.zip

Hey!

There seems to be an issue with the use of ScheduledInstallUserChoice. Full logs are attached to this issue.

A user told me he scheduled an update to Thursday the 30th at 2AM. It is visible in that part of the logs.

Wed Oct 29 12:46:01 ComputerName super[6933]: Status: User chose to schedule the installation.
Wed Oct 29 12:46:01 ComputerName super[6933]: IBM Notifier: User scheduled install selection dialog with a 300 second timeout.
Wed Oct 29 12:46:01 ComputerName super[6933]: IBM Notifier: Scheduled install selection starts at 2025/10/29 12:47:48 with a maximum end date of 2025/11/08 00:00:01.
Wed Oct 29 12:46:20 ComputerName super[6933]: Status: User chose to schedule installation for THU 2025-10-30:02:00.
Wed Oct 29 12:46:20 ComputerName super[6933]: Status: Scheduled installation on THU 2025-10-30:02:00, with a warning notification 120 minutes prior, deferring for 674 minutes from now.
Wed Oct 29 12:46:20 ComputerName super[6933]: IBM Notifier: Scheduled installation warning dialog (this dialog has no timeout).
Wed Oct 29 12:46:20 ComputerName super[6933]: Exit: super is scheduled to automatically relaunch at: 2025-10-30:00:00:00
Wed Oct 29 12:46:20 ComputerName super[6933]: **** S.U.P.E.R.M.A.N. 5.1.0-rc1 - EXIT CLEAN ****

The log also says that super will launch at noon which is normal because I have set a reminder at the 2 hours/1 hour/5 minutes marks before a scheduled update.
After that, though, it starting to look weird. super did not ran at noon but at 1AM instead.
Then, there's a big 20+ minutes gap. That can be explained by macOS being really long to produce the list of available updates for some reasons. It's not a super issue.

Thu Oct 30 00:58:25 SerialNumber super[18593]: mdmclient: Waiting for available updates listing...
Thu Oct 30 02:22:03 SerialNumber super[18593]: Status: Some updates may be deferred due to a deferral restrictions configuration profile.

However, does that explain why super did not ran at 2AM like planned and couldn't be on time to install the update at the scheduled time? I think so.
Then, it looks like the update happened at 03:10AM as seen here. This is also confirmed by sudo super --config-status which indicates that the 15.7.1 update has been installed at 3:12AM.

Thu Oct 30 03:10:53 SerialNumber super[18593]: Status: MDM service is currently available at: https://companyname.jamfcloud.com/
Thu Oct 30 03:10:54 SerialNumber super[18593]: Status: Bootstrap token escrowed and validated with MDM service.
Thu Oct 30 03:10:55 SerialNumber super[18593]: Status: Validated saved credentials for the --auth-jamf-client option.
Thu Oct 30 03:10:55 SerialNumber super[18593]: IBM Notifier: Preparing update/upgrade scheduled installation notification showing a 5 minute estimate.
Thu Oct 30 03:10:55 SerialNumber super[18593]: MDM: Starting macOS 15.7.1 update/upgrade workflow with user authenticated failover.
Thu Oct 30 03:10:55 SerialNumber super[18593]: MDM: check /Library/Management/super/logs/mdm-command.log and /Library/Management/super/logs/mdm-workflow.log for more detail.
Thu Oct 30 03:10:55 SerialNumber super[18593]: MDM: Successful install macOS update/upgrade command request.
Thu Oct 30 03:11:19 SerialNumber super[18593]: MDM: Received push command "ScheduleOSUpdateScan", checking back after Jamf Pro's mandatory 5 minute delay...

After that, the Mac has rebooted and no user is logged in. We can see that super is launching a few more times, doing nothing as no user is logged in (I have set WorkflowRequireActiveUser to true).
The user has logged in a bit after 10AM. So starting at 11AM, super finds a user and does his work. However, some of super information have not been reset correctly and the tool still thinks that it should apply an update.

ScheduleZeroDateAutomaticStart = "2025-10-29:11:09"
SuperStatus = "Thu Oct 30 15:17:52: Pending: macOS update/upgrade workflow failed, trying again in 60 minutes."
SuperVersion = "5.1.0-rc1"
WorkflowScheduledInstall = "2025-10-30:02:00"
WorkflowTarget = "macOS Sequoia 15.7.1-24G231"

So in the end, the user was presented with a notification telling him an update is being installed (which is wrong as there's no other update to install) and then with the reboot notification. Obviously, no reboot happened at all and instead, the user was presented a window asking for his credentials (despite our use of the API) and he couldn't fill his credential in as the window never got the focus.
I know that I now need to reset super on his computer to get him out of this loop or it will happen once a day because that will clean the plist of the wrong information (WorkflowScheduledInstall or WorkflowTarget for example).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions