Watchdog timer - two questions

First one, is there a way to detect in setup() whether the power on follows a watchdog time out or otherwise normal usage - power on or reboot triggered by serial monitor.
It would be nice to alert the user "hey something went wrong tell developer to check this"

Second question is whether disabling interrupts also prevents watchdog timer doing its job.
PS second one is easy yes, noInterrupts() in setup() prevents watchdog reset.

First one, is there a way to detect in setup() whether the power on follows a watchdog time out or otherwise normal usage - power on or reboot triggered by serial monitor.

Yes, if you don't use a bootloader or write your own. After the bootloader (optiboot) ran a previous watchdog reset is guaranteed.

If you write your own bootloader, you find the needed value in the MCUSR register at startup.

Second question is whether disabling interrupts also prevents watchdog timer doing its job.

Yes and no. It prevents a watchdog interrupt to happen but it doesn't prevent a system reset if that's configured.

PS second one is easy yes, noInterrupts() in setup() prevents watchdog reset.

If that's true, it contradicts the datasheet. It prevents the interrupt but the system reset should always happen.