GitHub 账户的声誉评分
Reputation Scores for GitHub Accounts

原始链接: https://shkspr.mobi/blog/2026/02/reputation-scores-for-github-accounts/

开源维护者们正日益被低质量的贡献淹没,而AI助手等工具生成大量无用的拉取请求更是加剧了这一问题。虽然删除PRs是一种选择,但它非常耗时。作者提出了一种“声誉评分”系统来帮助过滤贡献,灵感来自Hacktoberfest的“垃圾信息”标签,该标签有效地阻止了低质量的提交。 目前,很难评估贡献者的历史——合并的PR、有用的错误报告或过去的“垃圾信息”标签都难以查看。作者探讨了潜在的“贡献者控制”措施,例如账户年龄限制、要求分配问题或实施声誉评分,但承认存在被滥用和剥夺参与权的风险。 诸如财务押金之类的想法也被考虑过,但引发了公平性问题。尽管存在缺陷,作者认为可选的控制措施对于对抗不断涌现的无用贡献是必要的,并将之与Airbnb和Uber等平台使用的声誉系统进行类比,并建议所有代码铸造平台都应考虑类似的措施。

Hacker News 新闻 | 过去 | 评论 | 提问 | 展示 | 招聘 | 提交 登录 声誉评分,GitHub 账户 (shkspr.mobi) 6 分,作者 edent 3 小时前 | 隐藏 | 过去 | 收藏 | 1 条评论 eleventyseven 4 分钟前 [–] 叹息。对我来说,这篇文章和它批判的 PR 一样,都是低质量的垃圾信息。所以这篇文章在没有任何评论的情况下登上了 HN 的首页,标题是“GitHub 账户的声誉评分”。文章并没有展示声誉评分,甚至连声誉评分的想法都只是简单地勾勒了一下。它应该被命名为“我们需要 GitHub 账户的声誉评分”,以便人们知道这只是一个低质量的功能请求。回复 指南 | 常见问题 | 列表 | API | 安全 | 法律 | 申请 YC | 联系 搜索:
相关文章

原文

The folks at GitHub know that Open Source maintainers are drowning in a sea of low-effort contributions. Even before Microsoft forced the unwanted Copilot assistant on millions of repos, it was always a gamble whether a new contributor would be helpful or just some witless jerk. Now it feels a million times worse.

There are some discussions about what tools repository owners should have to help them. Disabling AI on repos is popular - but ignored by Microsoft. Being able to delete PRs is helpful - but still makes work for maintainers. Adding more AI to review new PRs and issues is undoubtedly popular with those who like seeing number-go-up - but of dubious use for everyone else.

I'd like to discuss something else - reputation scores.

During Hacktoberfest, developers are encouraged to contribute to repositories in order to win a t-shirt. Naturally, this leads to some very low-effort contributions. If a contribution is crap, maintainers can apply a "Spam" label to it.

Any user with two or more spammy PR/MRs will be disqualified.

This works surprisingly well as a disincentive! Since that option was added, I had far fewer low-effort contributions. When I did apply the spam label, I got a few people asking how they could improve their contribution so the label could be removed.

However, there is no easy way to see how many times a user has been labelled as a spammer. Looking at a user account, it isn't immediately obvious how trustworthy a user is. I can't see how many PRs they've sent, how many have been merged or closed as useless, nor how many bug reports were helpful or closed as irrelevant.

There are some badges, but I don't think they go far enough.

A collection of little badges showing a GitHub user's achievements.

I think it could be useful if maintainers were able to set "contributor controls" on their repositories. An entirely optional way to tone down the amount of unhelpful contributions.

Here are some example restrictions (and some reasons why they may not help):

  • Age of account. Only accounts older than X days, weeks, or years can contribute.
    • This disenfranchises new users who may have specifically signed up to report a bug or fix an issue.
  • Restrict PRs to people who have been assigned to an issue.
    • May be a disincentive to those wishing to contribute simple fixes.
  • Social labelling. Have other maintainers marked this user as a spammer?
    • Could be abused or used for bullying.
  • Synthetic Reputation Score. Restrict contributions to people with a "score" above a certain level.
    • How easy will it be to boost your score? What if you get accidentally penalised?
  • Escrow. Want to open a PR / Issue, put a quid in the jar. You'll forfeit it if you're out of line.
    • Not great for people with limited funds, or who face an unfavourable exchange rate. Rich arseholes won't care.

Obviously, all of these are gameable to some extent. It also incentivises the theft or sale of "high reputation" accounts. Malicious admins could threaten to sanction a legitimate account.

But apps like Telegram show me when someone has changed their name or photo (a good sign of a scammer). AirBnB & Uber attempt to provide a rating for users. My telephone warns me if an unknown caller has been marked as spam.

I don't know which controls, if any, GitHub will settle on. There is a risk that systems like this could prohibit certain people from contributing - but the alternative is maintainers drowning in a sea of slop.

I think all code-forges should adopt optional controls like this.

联系我们 contact @ memedata.com