I think I've mentioned the calibrated sleep library before.
Not worthwhile for most people, but I wanted to provide a link somewhere here just in case.
https://github.com/n0m1/Sleep_n0m1
It has the normal power saving modes (like the rocketscream library currently used by MySensors), but also includes:
Function: setCalibrationInterval
Description: the WDT needs to be calibrated against timer 0
periodically to keep the sleep time accurate. Default calibration
occurs every 100 wake/sleep cycles. recalibrate too often will
waste power and too rarely will make the sleep time inaccurate.
Parameters: (int) set the # of wake/sleep cycles between calibrations
Since the WDT uses a less accurate (and independent) RC oscillator, while Timer 0 is based on a crystal (UNO) or ceramic resonator (Arduino Pro Micro).
Hopefully this will show up on a search if anybody's looking for it. Just in case.
It would be interesting to see how close one could come to maintaining a timestamp for sensor events, with occassional correction from the gateway.