OWASP / OWASP/Nest

Feature: Automated Contributor Skill-Discovery via GitHub PR Labels

Open
#3,911 1 comment 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Python
Stars
451
Forks
707
Avg merge
22h 59m
Merged PRs (30d)
91

Description

**Is your feature request related to a problem? Please describe.**
Currently, member profiles (as seen in the `Member Profile Page`) show contribution frequency but lack a clear representation of technical expertise. It is difficult for Project Leaders or Chapter Leads to identify specialized talent (e.g., Backend, CI/CD, Frontend) without manually auditing individual PR histories.

**Describe the solution you'd like**
I propose an automated **Skill-Discovery Engine** that leverages our existing GitHub integration to map PR labels to contributor profiles.

**Technical Implementation Plan:**
1. **Data Extraction:** Develop a service to parse merged PR labels (e.g., `backend`, `tests`, `frontend`, `documentation`) from the data already being synced via the `github` app.
2. **Optimized Storage:** Implement a `JSONField` in the `User` or `EntityMember` profile metadata. This avoids complex JOINs and prevents N+1 query issues during profile rendering.
3. **Algolia Integration:** Ensure these tags are indexed in Algolia to make "Skill-based Search" possible across the platform.
4. **UI Enhancement:** Add a "Verified Skills" badge section to the member profile page using existing components.

**Describe alternatives you've considered**
I considered manual user tagging, but automated extraction from merged PRs is more "Community First" because it provides objective, verified recognition of a developer's actual contributions.

**Are you going to work on implementing this?**
- [x] Yes (I've analyzed the current `github` sync patterns and the `JSONField` approach for metadata and am confident in this implementation).

**Additional context**
This bypasses the data gaps left by external platform retirements (like Meetup) by utilizing the GitHub metadata we already control. It turns the profile page from a simple activity log into a powerful community discovery tool.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.