So, the first point is here:
Are regular pushes working? What about standard pushes to your app (instead of PTT pushes)? Regular pushes have the same problem.
If regulare pushes are failing to reach the device, then this is no longer an app level issue. It could be an issue with the network, an issue with the push side itself, or a mix of both, but it isn't something your app will have be able to do anything about. More to the point, most of these issues aren't really "fixable" in any meaningful sense, particularly on WWAN.
In any case, looking at your sysdiagnose:
Have you collected a sysdiagnose of the failure? Yes I have collected a sysdiagnose and have attached it to the feedback assistant issue.
From the log data, I see two issues. The "indirect" cause is that your cell connection was not good:
2025-02-03 15:32:40.350567+1300 <PCInterfaceUsabilityMonitor: 0x5542de300> Interface Manager: WWAN(pdp_ip0) LinkQuality changed from unknown to good (100)
2025-02-03 15:33:41.628638+1300 <PCInterfaceUsabilityMonitor: 0x5542de300> Interface Manager: WWAN(pdp_ip0) LinkQuality changed from good to poor (50)
2025-02-03 15:34:13.641619+1300 <PCInterfaceUsabilityMonitor: 0x5542de300> Interface Manager: WWAN(pdp_ip0) LinkQuality changed from poor to good (100)
2025-02-03 15:34:41.136569+1300 <PCInterfaceUsabilityMonitor: 0x5542de300> Interface Manager: WWAN(pdp_ip0) LinkQuality changed from good to poor (50)
2025-02-03 15:35:32.247051+1300 <PCInterfaceUsabilityMonitor: 0x5542de300> Interface Manager: WWAN(pdp_ip0) LinkQuality changed from poor to good (100)
Your test occurred during a "good" window, however, keep in mind that these notifications have significant lag and transitions like this generally indicate significant connection problems.
However,the direct cause was that the development push link came up ~2 minutes after the production link:
-Both links down:
2025-02-03 15:32:35.222678+1300 APSUserCourier <APSCourierConnectionManager: 0x104bb9920; production> adjusting connection. Connected on 1 interfaces. Current link quality: wwan is off; wifi is off
2025-02-03 15:32:35.223001+1300 APSUserCourier <APSCourierConnectionManager: 0x104bb89a0; development> adjusting connection. Connected on 2 interfaces. Current link quality: wwan is off; wifi is off
-Production link up:
2025-02-03 15:32:40.356696+1300 APSUserCourier <APSCourierConnectionManager: 0x104bb9920; production> adjusting connection. Connected on 1 interfaces. Current link quality: wwan is good; wifi is off
-Development link up:
2025-02-03 15:34:25.509916+1300 APSUserCourier <APSCourierConnectionManager: 0x104bb89a0; development> adjusting connection. Connected on 2 interfaces. Current link quality: wwan is good; wifi is off
WHY that occurred is not a question I can answer. It's possible it was a side effect of the poor connection or there may be another factor I've overlooked. I'm looking into that cause, however, I don't think the answer will be actionable within your app.
Finally, on this point:
Not sure why this one actually got stored and delivered but 2 1/2 minutes late: 15:35:48
This is actually a VERY long standing disconnect between how the apns server processes messages and how callservicesd/PushKit deal with them. Basically, if the push server "queues" a message for delivery but is unable to deliver it, that push may end up being delivered well after it's expiration. Historically, that hasn't really been an issue but the relatively recent CallKit/PTT requirements make it much more problematic.
In any case, please file a separate bug about voip/PTT being delivered "well" after expiration and post that number back here. This is the first time it's come up with the PTT framework and that makes it a good time to revisit this issue.
__
Kevin Elliott
DTS Engineer, CoreOS/Hardware