Probably one of: - [Contracts.ruby](https://egonschiele.github.io/contracts.ruby/) - [Sorbet](https://sorbet.org/) RBS actively causes problems, because the types information is separated from the actual code and has to be manually checked.