I’ve been thinking about the Contributor License Agreement angle and realized that beyond my initial reply, there’s a deeper problem here:
The BOSL world, as envisioned by ECC, is inherently fragmented into separate silios that cannot easily share code, even if they all use BOSL.
That’s because the purpose of BOSL is to incentivize external users to:
ask for an exception from ECC — where we can ask them to contribute something valuable back to the ZEC holders in order to get that exception
But ECC can only grant this exception if it has the requisite relicensing rights to all the pertinent code.
Crucially, these relicensing rights do not follow from BOSL! They follow only from having written the code in the first place, or having explicitly received them via a separate ad-hoc agreement:
Thus, effectively, ECC cannot incorporate BOSL code written by others unless it gets explicit permission from those others.
For example, if some competing coin forks Orchard and (therefore) chooses to license their improvements under BOSL, that’s OK because at least they’re giving back their improvements to the Zcash community, right? Wrong. ECC can’t merge those improvements into its own code, because that would break ECC’s ability to relicense the merged work (and thereby extract “value for ZEC holders” in the future).
Or, suppose someone publishes a cool BOSL-licensed Rust crate, and ECC wants to use it in its own BOSL-licensed code. Nope! That, too, would break ECC’s ability to relicense the merged work.
Well, ECC can politely ask those other parties to DocuSign a contributor agreement that grants relicensing rights to ECC, right? Maybe those parties happen to like ZEC, and have the money to pay lawyers to review that agreement. But if those other parties also buy into the narrative of value-extraction-from-public-goods-by-relicensing-rights, then they would be fools to give away their relicensing rights. If they do, ECC could eat their lunch, neutralizing their ability to extract value for their positive feedback loop.
So, anyone who believes BOSL’s narrative would be strongly disincentivized to intermingle BOSL code with anyone else who believes BOSL’s narrative — unless they are already strongly incentive-aligned and mutually-trusting (in which case what’s the point of convoluted licenses).
Consequentially, taken to its logical conclusion: the BOSL ecosystem becomes fragmented into separate incentive-locked BOSL licensing silos, that cannot share code, and each is controlled by a centralized legal entity that holds the relicensing rights and mandates a contributor agreement within that silo.
None of that is a problem with MIT, or with GPL as normally used, because neither relies on relicensing to work. Notably, in the past there have been attempts to use GPL-plus-offer-to-relicene to extract value via proprietary relicensing, in a similar spirit to BOSL’s motivation; but to my knowledge the vast majority of those attempts have failed, and either died off or found a different business model.
Am I missing something?