Right, the window tool debounces the events, IMO the battery attach/disconnnect messages are a poor mans heartbeat signal on the protocol. That ACPI/Windows didn't "sleep" the USB port, or that the controller in the UPS (chinese junk) didn't crash.
The development environment does not work anywhere except Mac OS. This is not FOSS, just a startup that Apple is going to buy really soon and make it there cloud computing platform.