Is there a way to create a new sharing reason via APEX? Or this is only possible via the Metadata api?
And if not -- is it possible to specify the 'Reason' when creating a new manual share via an sObject__share insert?? Even if that rule doesn't explicitly exist in the org?
Update
We have discovered that we can package sharing rules and successfully install into a Group Test Org without an issue, so it's possible we can package our sharing rule and not touch it unless sharing is available and turned on! We'll see.