https://www.freedesktop.org/software/systemd/man/latest/systemd.service.html#Restart=
I just send manually sigterm to powerdevil and indeed it was not restarted. Is Sigterm a 'clean' signal?
But on the other __assert_fail() should also abort according to spec