I ran Calibre in debug mode and was able to replicate the sync-and-no-eject thing. I have full log available but I notice this happened:
(note: eject at the very end was a manual one)
Code:
DEBUG: 67.7 KoboTouch:get_content_type_from_extension - start
DEBUG: 67.7 KoboTouch:update_device_database_collections - end for category='Fanfiction'
DEBUG: 67.7 KoboTouch:update_device_database_collections - managing bookshelves and series.
DEBUG: 67.7 KoboTouch:update_device_database_collections - Number of series set=0 Number of books=51
DEBUG: 67.7 KoboTouch:update_device_database_collections - Number of core metadata set=0 Number of books=51
DEBUG: 67.8 KoboTouch:update_device_database_collections - Finished
DEBUG: 67.8 USBMS: starting sync_booklists
DEBUG: 67.9 USBMS: finished sync_booklists
DEBUG: 67.9 KOBO:sync_booklists - end
DeviceJob: 11 Send metadata to device done, calling callback
DeviceJob: 11 Send metadata to device callback returned
Job: 11 Send metadata to device finished
No details available.
DEBUG: 87.7 KoboUtilities:_on_device_connection_changed - self.plugin_device_connection_changed.__class__: <class 'PyQt5.QtCore.pyqtBoundSignal'>
DEBUG: 87.7 Methods for self.plugin_device_connection_changed: ['__call__', '__class__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'connect', 'disconnect', 'emit', 'signal']
DEBUG: 87.7 KoboUtilites:_on_device_connection_changed - Device disconnected
DEBUG: 87.7 Have a Kobo device connected connected
DEBUG: 87.7 BEGIN Get Device Path
DEBUG: 87.7 No device appears to be connected
DEBUG: 87.7 END Get Device Path
DEBUG: 87.7 KoboUtilities:get_device - self.device_path=""
DEBUG: 87.7 rebuild_menus - self.supports_ratings=None, self.supports_tiles=None
DEBUG: 87.7 KoboUtilities:set_toolbar_button_tooltip - start: text='None'
DEBUG: 87.7 KoboUtilities:set_toolbar_button_tooltip - setting to text='Utilities to use with Kobo ereaders
Driver: KoboTouchExtended'
DEBUG: 87.8 KoboUtilities:set_toolbar_button_tooltip - start: text='None'
DEBUG: 87.8 KoboUtilities:set_toolbar_button_tooltip - setting to text='Utilities to use with Kobo ereaders
Driver: KoboTouchExtended'
READING LIST: Device disconnected
I don't know if that means anything though