Roles and capabilities are persistent. WordPress stores them in the database, so the only way they can be remove is a plugin deletes them. The only code in Connections that can remove capabilities can only be run on the Connections : Roles admin page, there’s an nonce validation in place to ensure that. Connections does have reset code, but that is the same is running the reset all capability option, it does remove them from the core WordPress roles, only custom roles. Connections, a couple years ago, would reset roles on updates but that has long since be removed. The only way that can happen is if the “flag” that is stored in the db that says, hey, the capabilities have been added don’t reset doesn’t exist or has been removed. There’s no code in Connection that can remove that flag. It is there forever…
With all that said and you having to do a “full” reset to fix duplicate data, that tells me something else is mucking with the role capabilities perhaps when they are updated. My suggestion, no elegant sorry, is after each plugin update you do (not just Connections, every plugin) check the roles settings. If we’re lucky, we can figure out what plugin is resetting capabilities.
Can you copy/paste a list of all your active plugins … maybe a few will jump out as possibilities and I can look at their code.