- sentry-provider-db is confusingly named (db refers to database-backed, but it's confusing when there is also a database model). Rename it to something service related?
- sentry-provider-db implies it is provider related (i.e. will be used by external services), but it has code that an external service would never use (e.g. shells). Perhaps break it up so that sentry-client is a separate top level module which sentry-provider-db pulls in and contains the shell code, or just move out the shell code to a sentry-shell top level module.
- External services have code scattered through the modules. For example, for solr there is a the sentry-binding-solr, the solr-sentry code, and the shell code (as well as test code, but that's probably okay) all in separate modules. It would be ideal if all the external service specific code was in a single place.