create and implement a policy for system suspend to RAM
Our goal in the kernel is to support suspend to RAM and incoming (cellular) phone calls and SMS waking up the system. Exactly that. Currently we can't sensibly wake up the system based on any data packets.
But the above could be enough to not only let users manually suspend the system, but implement a policy that does not change UX (much) and saves power.
Something like suspend on "no internet connection", "no activity (whatever that means)" AND "display off for X seconds" is what comes to my mind.