Or at least more work required on the auditing side of things for Account-based voting....
Today I planned to have a look at @theycallmedan's current Poll in which one lucky community will receive 10,000 delegated Steem Power for a whole year.
I was thinking of pulling some alternative metrics, such as:
Of course, none of these findings were to in any way alter the final vote counts - it was more for personal interest than anything else.
And so I made my SQL query and gave it a whirl. Damn JSON, he can be a right pain:
select
IIF(isjson(json_metadata) = 1, IIF(CHARINDEX('/', json_value(json_metadata, '$.votes[0]')) > 0, SUBSTRING(json_value(json_metadata, '$.votes[0]'), 1, CHARINDEX('/', json_value(json_metadata, '$.votes[0]'))-1),json_value(json_metadata, '$.votes[0]')), null) as [Voted],
count(*)
from comments where parent_permlink = 'which-steem-project-should-i-delegate-10k-steempower-to-for-1-year' and depth = 1
and IIF(isjson(json_metadata) = 1, IIF(CHARINDEX('/', json_value(json_metadata, '$.app')) > 0, SUBSTRING(json_value(json_metadata, '$.app'), 1, CHARINDEX('/', json_value(json_metadata, '$.app'))-1),json_value(json_metadata, '$.app')), null) = 'dpoll'
group by
IIF(isjson(json_metadata) = 1, IIF(CHARINDEX('/', json_value(json_metadata, '$.votes[0]')) > 0, SUBSTRING(json_value(json_metadata, '$.votes[0]'), 1, CHARINDEX('/', json_value(json_metadata, '$.votes[0]'))-1),json_value(json_metadata, '$.votes[0]')), null)
order by count(*) desc
The above gave me the following output:
Scanning the numbers, something didn't look right. @votovzla, 3 out,
@steemitbloggers, 2 out, and
@team-cn, 58 out out when compared to the screenshot at the top of the post.
And so I simplified the query and ignored looking for the exact JSON. This included the rest of the comments on Dan's post, but the numbers were still way off.
And so I phoned a friend who can pull the same data directly from the chain. The screenshot below is an hour or so behind the ones above, but you get the idea - still a pretty sizable discrepancy:
So what could it be?
The number of entries on the chain, particularly for the @team-cn vote, do not match the count on
@dpoll.curation.
Deleted Comments.
The following accounts voted on Dan's Poll, and then deleted their comment on the post.
'public-advocate', 'prominent', 'ninedragons', 'vote4u', 'dragon-blade', 'al-amanah', 'mk111', 'worldclub', 'the-excavator', 'woodside', 'quarantine', 'dolphin-power9', 'sukhoi-su', 'simpanan', 'dolphin-power10', 'dolphinp', 'coonawarra', 'whalepower', 'storm-shadow', 'sky-bolt', 'l00', 'the-exocet', 'seawise-giant', 'ballarat', 'freeservice', 'whalepower-guide', 'balancepower', 'tenaga-satu', 'the-reef', 'sbd4vot', 'dolphin-power3', 'steem4vote', 'meko200', 'paul-gillbanks', 'pterosaur', 'bullionstackers', 'globalex', 'c-solstice', 'ppagoda', 'word-of-the-day', 'point-blank', 'v-1', 'dolphin-power6', 'helios', 'applex', 'shenyang-j', 'timeblock', 'bagger293', 'tanaman', 'surion', 'reservoir', 'dolphin-power7', 'cairns', 'author-fund', 'minuteman111', 'dolphin-power8', 'solidgold', 'global-pillar'
Why would you do that then?
And 58 you say? Where have I seen that number before......
I think it would be unwise for me to point fingers right now, particularly before @emrebeyler has done a full audit (which he undertaking at present), and so I'll leave my opinions for later.
Just to be clear. Nothing against @dpoll.curation here, and the great work Emre has been doing for Steem.
We saw the @steemalliance put their votes out to the public for review, likely after suspecting foul play. And the above doesn't look great, does it?
Stake-weighted voting back in the game?
Cheers
Asher