-
Notifications
You must be signed in to change notification settings - Fork 704
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Correcting case for GitHub usernames #4371
Correcting case for GitHub usernames #4371
Conversation
Signed-off-by: Bridget Kromhout <bridget@kromhout.org>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The usernames being updated in this PR are all legit and should have been in the correct case from the start.
/lgtm
/approve
/hold for another GitHub Admin to take a secondary look
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: bridgetkromhout, palnabarun The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/assign @kubernetes/owners |
/lgtm Thanks! |
/hold @bridgetkromhout I think this is a bug in elekto we should get fixed. We've colloquially called this the "BenTheElder" bug, and have introduced case normalization in all our tools. While merging this won't have any effect on peribolos, there is no programatic enforcement to ensure drift. If we want to fix this, it should be normalizing cases in elekto. |
@cblecker I agree that this small fix to the data files is not going to prevent future drift. I do think it has the possibility of reducing future harm and doesn't make anything worse, so I think we should get this specific data patch in. I look forward to a real fix that will make this sort of patch unnecessary. |
Ack. I left a comment elekto-io/elekto#84 (comment) to hopefully nudge us forward in that direction. I just don't want us to keep having to make what are effectively cosmetic changes to this data source going forward. For now, let's get this one in. /lgtm |
Summary:
While GitHub is not case-sensitive, the Elekto tool used for CNCF elections currently does need username case to match GitHub-official reality. This means that we should be consistent in how we store GitHub usernames, matching the official capitalization, so as to be able to correctly generate voter lists from devstats data.
What is currently wrong:
In the course of preparing for this year's steering election, I learned from the esteemed @mrbobbytables and subsequently documented that election eligibility pulls from several files. When generating the eligible voters list using those files as input, I noticed that my sample data had a discrepancy with the example output @mrbobbytables was showing, because his method was lowercasing all usernames. Presumably, for other uses of those files it's fine for GitHub handles to be all-lowercase. However, this leads to incorrect data for the purposes of Elekto, because a voter won't be listed as being eligible if their devstats data doesn't match a username in these files storing their participation status.
Scope of data fix:
These are the GitHub usernames that turned up as a discrepancy if case is ignored between devstats data and these files, scoped specifically to eligible voters for the 2023 steering elections. I am not attempting a comprehensive fix of all data or data generation (as I do think adding usernames to these files is manual), but I do want to make sure we can prevent "why can't I vote?!" for these specific people we can see will be affected if they try to vote in this or any future election that uses eligibility data generated from these files.