Chrome Version: M54
OS: all
Currently GMSCore (Android) or the GCMClient (desktop) immediately acks receipt of GMS messages and those acks are used to send delivery receipts to webapps that the client has received a message.
However, there are many errors that can happen to a message after it is received on the client but before any events triggered by the message have been successfully resolved.
Instead, there should be a mechanism to allow GCMDriver level components and GCMAppHandler implementations to provide post-delivery receipts that reflect the eventual outcome of a message, whether it was successful or failed.
This will allow those receipts to be aggregated by GCM and problems in the service identified much more quickly.