Private Terraform providers are only visible to stacks in the provider’s space and inheriting children. Modules already have space_shares and SPACE_SHARE_MODULE (including share-by-label) so we can grant download without inherit_entities from root.
spacelift_terraform_provider has no equivalent, only type, space, labels, and public. Type is unique per account, so we cannot publish one copy per space.
We need the same sharing model for providers: Terraform + GraphQL + UI, and the run-token registry download must honour it. A share should allow downloading that provider only, not Space Read on the rest of the owner space. This is not another public/private toggle.