I had close to 200 roles. All of them were stored in a single repo. Worked just fine. I didn't automatically pick up the new roles when running the playbooks. I made sure the directory was up to date manually, but it was just me and one other. So, we didn't have to worry a lot about not knowing when there were updates