My organisation has an experience cloud site for partners. We used to only have 1 partner per country, so we managed sharing as 1 ctriteria-based sharing rule per country/partner. However, we now increasingly have multiple partners per country, as well as sub-partners and zones (sub-sub-partners).
I've recently discovered that there is a feature that can be enabled called External Account Hierarchy. This seems perfect for managing a role hierarchy for the Partners and their subordinates. HOWEVER, I see in this documentation that there is a very important limitation to it:
"Note: Sharing rules can work along with external account hierarchies. Data shared by sharing sets doesn’t roll up in role hierarchies."
This is hugely problematic. Sharing Rules are not dynamic enough to share data (across multiple levels of parent-child custom objects) with hundreds of partners and subordinates. Using sharing rules would require us to write (and maintain) 1 sharing rule, and Public Group, for every partner-country combination. Furthermore, there is a limit of 300 sharing rules in a system, so we would hit this limit very quickly. Sharing Rules were created for the purpose of doing more dynamic and high-volume sharing in experience sites, so this really makes no sense to me.
How do other organisations using an External Account Hierarchy solve for this? Is there another (non-programmatic) option besides Sharing Rules? Am I crazy for thinking that this limitation is counter-ituitive and defeats the purpose of sharing sets for high-volume sharing in experience sites?
Side Note: We are using a managed package + custom objects for most of our data model. I realise that this might not be an issue if we were just using a smaller standard Salesforce objects.