Kernel reverts on core

There was a report (unfortunately without a lot of detail) about kernel reverts on core devices not working reliable. I tried to reproduce this but it seems to be working ok for me:

root@localhost:~# snap list
Name              Version       Rev   Developer  Notes
core              16-2.28.1     3017  canonical  core
pc                16.04-0.9     20    canonical  gadget
pc-kernel         4.4.0.96.101  84    canonical  kernel
test-snapd-tools  1.0           6     canonical  -
root@localhost:~# uname -a
Linux localhost.localdomain 4.4.0-96-generic #119-Ubuntu SMP Tue Sep 12 14:59:54 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
root@localhost:~# cat /proc/version_signature 
Ubuntu 4.4.0-96.119-generic 4.4.83
root@localhost:~# snap revert pc-kernel

Broadcast message from root@localhost.localdomain (Thu 2017-10-19 16:18:48 UTC):

reboot scheduled to update the system - temporarily cancel with 'sudo shutdown -c'
The system is going down for reboot at Thu 2017-10-19 16:28:48 UTC!

pc-kernel reverted to 4.4.0.97.102
root@localhost:~# reboot
Connection to localhost closed by remote host.
Connection to localhost closed.
egon@top:~/devel/go/src/github.com/snapcore/snappy.mvo$ ssh mvo@localhost -p 59379
Welcome to Ubuntu Core 16 (GNU/Linux 4.4.0-97-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage
Welcome to Snappy Ubuntu Core, a transactionally updated Ubuntu.

 * See https://ubuntu.com/snappy

It's a brave new world here in Snappy Ubuntu Core! This machine
does not use apt-get or deb packages. Please see 'snap --help'
for app installation and transactional updates.

Last login: Thu Oct 19 15:54:12 2017 from 10.0.2.2
mvo@localhost:~$ snap list
Name              Version       Rev   Developer  Notes
core              16-2.28.1     3017  canonical  core
pc                16.04-0.9     20    canonical  gadget
pc-kernel         4.4.0.97.102  86    canonical  kernel
test-snapd-tools  1.0           6     canonical  -
mvo@localhost:~$ uname -a
Linux localhost.localdomain 4.4.0-97-generic #120-Ubuntu SMP Tue Sep 19 17:28:18 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
mvo@localhost:~$ cat /proc/version_signature 
Ubuntu 4.4.0-97.120-generic 4.4.87
mvo@localhost:~$ snap list --all
Name              Version                   Rev   Developer  Notes
core              16-2.28.1                 x1               core,disabled
core              16-2.28.1                 3017  canonical  core
core              16-2.28.5+git442.73d4990  3261  canonical  core,disabled
pc                16.04-0.9                 20    canonical  gadget
pc-kernel         4.4.0.97.102              86    canonical  kernel
pc-kernel         4.4.0.96.101              84    canonical  kernel,disabled
test-snapd-tools  1.0                       6     canonical  -

We should also add a spread test for spread-cron that does the above checks automatically.

This is being worked on in https://github.com/snapcore/snapd/pull/4063