microsoft / microsoft/winget-pkgs

[New Feature]: The Needs-CLA condition check is misleading

Open
#427,888 1 comment 2 reactions 0 assignees View on GitHub
Issue-Feature Needs-Triage
Dominant language
No language data
Stars
11.1k
Forks
9.7k
PR merge metrics
PR metrics pending

Description

### Description of the new feature/enhancement

There are numerous PRs from newcomers that got confused with this https://github.com/microsoft/winget-pkgs/labels/Needs-CLA label keep getting assigned in their PR even though they have already signed it. My assumptions are because the check itself is quite unrelated:

https://github.com/microsoft/winget-pkgs/blob/6c998b0ceddf9ae3656c6943abf3e8657695549f/.github/policies/labelManagement.issueOpened.yml#L46-L57

Sure, it is related since it's correctly detecting newcomers (FIRST_TIME_CONTRIBUTOR) that needs to sign it the first time, but what if they opened other PRs after the first PR (where they signed it) while the first PR hasn't merged yet? Because that check only changed IF their first PR got merged, not whether they have signed or not.

### Proposed technical implementation details (optional)

The thing that's reliable here is actually the bot's native handling of CLA itself, it's the checks (not to be confused with previous label check) and the agreement comment post:

Image

Image

Maybe we can use that detection instead of FIRST_TIME_CONTRIBUTOR check?

Contributor guide

Open the contributing guide

Research direction

Start with .github/policies/labelManagement.issueOpened.yml at lines 46–57 and compare its FIRST_TIME_CONTRIBUTOR logic with the bot’s native CLA checks and agreement comment behavior shown in the issue. Done means the Needs-CLA label reflects whether the contributor still needs to sign, including for later PRs opened before an earlier PR merges.

Written by the indexing model from the issue text.

Assessment

Tech stack
github, yaml
Domain
ci-cd, tooling
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
65/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.