Federated Governance

What sort of governance i suitable for a software project that is in many ways about decentralised architecture? How should we govern and sustain the federation?

The question here poses itself with regard to how the software is designed at several levels. How should search be structured, how should plugins me listed and developed - and these questions point to the fact that in software projects governance and code are interalated - code is political.

Let's look at search. How should we structure it? With a centralised server that indexes the federation and allows any plugin to call its methods (Google for the Federation)? Or a Decentralised Search where every server in incentivised to curate its own part of the puzzle. Is the appropriate answer to this question technical, or social?