I use an external SSD for Time Machine. The SATA SSD sits in a dock which is connected via USB3. The SSD mounts correctly and is used by Time Machine correctly. If I eject the SSD from Finder (by clicking the eject icon) the Logical Volume is unmounted (and so disappears from Finder). However, looking in Disk Utility, I can see that the SSD ("Physical Disk") itself has not been ejected (see images, below). If I now physically remove the SSD from the dock, the status remains unchanged in Disk Utility. I also cannot mount any other disk until I have disconnected the dock from power (at which point the "Physical Disk" disappears from Disk Utility) and reconnected to power, and restarted my Mac; simply clicking the eject icon next to the SSD in Disk Utility does nothing. The same dock, iMac, macOS worked fine when I was using an HDD rather than an SDD.
I have observed similar behaviour using a sparsebundle. I use a sparsebundle containing several databases. The sparsebundle is mounted automatically when I try to access one of the databases using DEVONthink (3.0, beta 1). The software unmounts the sparsebundle when I close the database. Again, whilst the volume is unmounted, the disk image is not (see images, below). This causes a security issue, because when the sparsebundle is re-mounted, macOS does not request a password. Only once I have ejected the sparsebundle Disk Image from Disk Utility is it fully closed and macOS requests a password on re-opening. I have had contact with the Devs at DEVONtech who reckon this is a bug in macOS. Other users have described the same problems.
Seeing as the problems arise quite independently of one another (i.e. sparsebundle with DEVONthink, SDD with Time Machine) this does rather look like a macOS bug.
Can anybody help me or guide to towards reporting this to Apple?