Thanks for signing up! You've raised more questions than I can answer but it gives things to think about.
I've thought about the milestone system (it was the first thing that came to my mind) but do consensus based software have unchanging requirements? More importantly how is consensus reached? I think that for smaller scope like libraries or plug-ins it makes sense where there is one clear purpose. ex) write a scraper plugin that returns data.
Community driven requests would most likely be function or feature requests. It's exactly how you've described where you can put up a bounty for specific features where a developer will come along and implement it. If it's not worth their time (amount of work is far more than the money raised) than a few things could happen:
- another developer could do it for the purpose of building a portfolio or gathering resumes etc.
- the requester/backer can advertise it to his peers or companies, if it gets enough backing it would entice more developers to work on it.
Finally, the Patreon model where a lone dev or a team will work on maintaining an open source project on an ongoing basis.
It gets me super excited just thinking about the possibilities but I'm grossly overlooking the pitfalls and challenges of bringing people together in the first place.
I'm going to do some brainstorming and maybe lay it out in a blog post this weekend.