When we clean shims we do not consider Sorbet's payload RBIs.
This means that when a definition in our shims becomes useless because it's been upstreamed, we never clean it.
We should use Sorbet's symbol table to bootstrap the index and remove the outdated definitions.
Problem: how to know if the symbol in the table is actually attached to a signature? Maybe we should add an option to Sorbet so it can dump its internal RBIs?
When we clean shims we do not consider Sorbet's payload RBIs.
This means that when a definition in our shims becomes useless because it's been upstreamed, we never clean it.
We should use Sorbet's symbol table to bootstrap the index and remove the outdated definitions.
Problem: how to know if the symbol in the table is actually attached to a signature? Maybe we should add an option to Sorbet so it can dump its internal RBIs?