Okay, with the help of chocolatebar, palaxender, and myagui, these milestones are the current working set:
Primary Milestones:
1) Overall software architecture (1000-1500 XMR):
A) Open source software that is nice, clean, well written and documented code that will be easy to maintain and work on; a pleasure for others to jump in and contribute going forward.
B) Cross-platform compatible. e.g. works on apple, linux, microsoft. Binaries available for all platforms when code is released.
C) Parameters can be completely tuned. The software should be designed so that miners can change every value with a config file to tweak settings for their particular hardware. This will possible extend the useful life of the software.
D) Limited dependencies for compiling, and required dependencies must be available via package managers. 100 xmr will be deducted for each dependency required, max 500.
E) Works on as much available hardware as possible. All Maxwell architecture is a must.
F) Works as a solo miner - is able to communicate directly with the monero wallet software.
2) Mining performance (up to 3500 XMR)A) Hash rates reach the price point equivalent of Claymore's AMD GPU miner. Currently the highest reported hashrates are 745 h/s for the Sapphire R9 290X, which at the time of writing is a $350 GPU. The NVIDIA pricepoint equivalent is the GTX 970. Existing hashrate of a GTX 970 is ~400 h/s.
The exponential function would be payout = (hashrate increase)^(1/29.3) , which would produce an exponential curve to exactly 3587 XMR for 745 h/s. I don't think this curve is attractive, because a hashrate of +100 would only reward ~11 xmr. + 200 = 113, +300 = 1208,
Okay, I came up with a nice looking curve.
payout = ( 1.2 ^ ((hashrate increase) / 17.7) ) * 100
but hashrate increase >= 50.
so the minimum is 169 XMR
100 h/s, ~280 XMR
200, 784 XMR
250, 1313 XMR
etc. If you can come up with a better curve, please do! My excel skills got boring.
Secondary Milestones
(these will only be funded if the primary milestone funding levels are met)
3) GUI - 200 XMR
A GUI for all available platforms.
4) Longterm support - 1000 XMR (or however much is leftover after primary milestones)
20 XMR for a pull request that results in > 10 % increase in singular hardware (one card)
100 XMR for a pull request that results in > 10% increase in at least 5 cards
100 XMR for adding compatibility with new hardware (e.g., the code didn't work on newly release hardware at all, the pull request makes it work)
This still isn't set in stone. Please provide input.
The rationale for all this is over here:
https://forum.getmonero.org/7/open-tasks/323/open-source-gpu-mining-software-hashrate-increase-fund-bounty-hire-a-dev-whateverAlso, claymore never responded to my question re: how much it would cost to make his miner open source.
edit #1: include solo mining function in first milestone, reworded sentence using tunable so it doesn't get flagged by spellchecker, because apparently tunable isn't a word.