chore: add tshirt-size labels for worx effort estimation #1292
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Context
Depends on gnoverse/gh-labels#127
We are exploring the implementation of a label system for our automatic pull request bot (#1134) to go beyond merely incentivizing the creation of many small pull requests. This label system aims to align with the actual effort put into a pull request, which is influenced by both expertise (years of learning) and time.
For instance, if a junior developer requires 1 year to complete a task, while an expert can do it in 5 in 1 week, the assigned label should reflect the proportional effort. In practice, this could translate to an "XL" label. Alternatively, we might consider defining a standard effort level for an "average joe." Importantly, this effort isn't solely based on time; it's a combination of expertise ratio multiplied by time.
The objective is not to label everything, but rather to allow certain pull requests to benefit from this system.
By default, if a pull request receives a label from a team member, we should trust the reputation of the reviewer to determine the appropriate value, eliminating the need for additional voting or discussions. However, I still recommend that label assignment be primarily handled by recognized experts in the specific area of the change. Having a preliminary label assigned can still be valuable.
When a pull request fixes an issue that was previously qualified, we should inherit the issue's label if the PR doesn't already have a label.
Additionally, we should encourage contributors to provide their estimation of the work in plain English, making it easier for us to reach consensus or explore alternative assessments. We can update the pull-request template accordingly.
Example:
I think it is worth a L, I spent 2 days digging and 2h fixing + writing tests
.When conflicts or disagreements arise, we should aim to have constructive discussions in the comments section. Alternatively, we can defer to the leaders to have the final say by giving their reason. The amount of
worx
earned does not directly determine their revenue, but it contributes to building their portfolio. This portfolio is then used by humans to globally review profiles and promote and showcase the combination of their work.Ultimately, this system aims to resemble a freelancer or bug bounty system, where 8 hours of an expert's time equate to a certain amount of "work units" (e.g.,
^worx
) instead of monetary compensation.TODO
CONTRIBUTING.md
to provide guidance on how to use these labels effectively.Related to #995 (potentially blocking or dependent on)
Assigned to @gnolang/devrels