Keep the existing snapshot-based read path and retain both shutdown-reason diagnostics tests under distinct names. This resolves duplicate declarations introduced by the current master history.
The State and SecondsTillShutdown were only read outside of a shutdown. Check
both Variables, the ServerStatus structure and a MonitoredItem on the State
while the shutdown is pending.