Thanks man!
I agree with you on white/blacklisting and your approach in general. Every action on Steemit should be taken with deliberation and an understanding of the consequences. Thanks for the explanation of your perspective, I can understand it a great deal better now.
I'm still trying to understand (from your conversation above with @andybets) whether the bot is triggered by the overall amount earned from self-votes or too high a percentage of self-votes, the latter of which we closely monitor through Steem Reports. We're very careful not to take too much of our own pie relative to the whole (we assumed ~10% would be reasonable) but to be honest, I don't think we can reduce the overall amount earned since that funding goes into real-world projects and many other expenses that sustain the program.
Anyway, really appreciate the candor and we'll put out some milk for @sadkitten as she hangs out with us for a few days.
@andybets is right to defend steemreports from my critique, it's a wonderful tool that has gone a long way to increasing understanding of the Steem blockchain, exposes statistics and even patterns in activity behaviors, and works really well, displayed nicely.
However he admitted that it is perhaps not the best tool for determining abuse, and he's pointed the various caveats and "fit for purpose" implications of the service. I'm in agreement, though I think the particular shortcoming of assuming static SP needs to be addressed. In the first version of the rebooted @sadkitten code I also had static SP but I saw it has the potential to hugely skew data.
Data is just data, and statistics just statistics. Asking a question of the data and stats is what we do every time we look at it, whether we know or not, so from a human perspective there's no such thing as "raw" data. The facts are there but our interpretation is important. Because of this I always try to make explicit, what is the question we are asking here? For you it appears to be, are we self voting too much? You have defined your own level of "too much", so a simple comparison is in order.
However if we assume static SP over time (the current SP has been the current SP forever backwards) then if there actually was a significant change in SP over that time the percentages will be off. In the case of @sndbox, @misterdelegation delegated an amount to @sndbox which increased SP by about 21% on the 27th, and you increased it further by about 68% on the 29th. This is a lot.
The steemreport graphs in the initial replywould have had a greater percentage made on 1st May that @sndbox captured assumed about 59k SP, whereas before 27th April it was half that. So only votes made in the preceding 4 days would have been accurate, all before . This means that looking back from 1st May for one week, and two weeks, the true self-voting percentage is somewhat higher. @sadkitten is aware of this and makes the necessary adjustments.
In sum, your question has not been answered correctly by steemreports, the percentage of self voting it reported to you was incorrect, and the true self voting percentage is higher. Put simply, when delegation is received by an account, steemreports will skew to lower than true self voting percentages from votes made before the delegation as the comparison is between an inflated SP and the lower possible self votes from before the delegation.