A completed remain task unconditionally cleared its user stop block
after running its post script. Since it was still valid in the current
runlevel, it immediately started again, making initctl stop ineffective.
Keep explicit stops blocked, distinguish automatic and requested
restarts, and route initctl restart through teardown before rerunning the
task. Cover stop, start, restart, reload, and runlevel transitions with
a regression test.
Signed-off-by: zhangxiaohui <xiaohui.zhang@wbstar.com>