-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Auto-assign workflow: load-balanced issue/PR routing (CODEOWNERS + custom Action) #3102
The problemOver the last 2 weeks we've had 150+ new issues and PRs — roughly 10 per day. Current state of the repo:
We have no Goal: load-balance humans. Not just "something is assigned" — but the right person, with the least current load. Proposed design: two layersIssues and PRs need different rules. One tool can't do both well. Layer 1 — PRs:
|
| Label | Pool |
|---|---|
comp/daemon |
@harshitsinghbhandari @neversettle17-101 |
comp/desktop |
@codebanditssss @JAYATIAHUJA @Vaibhaav-Tiwari |
comp/mobile |
@Vaibhaav-Tiwari |
comp/cli |
@harshitsinghbhandari @whoisasx |
comp/docs-site |
@codebanditssss @JAYATIAHUJA |
| unlabeled (triage) | rotation of all engineers |
Why not just use kentaro-m/auto-assign-action?
It's round-robin. Cycles through people regardless of current load. At 10/day the drift kills you — one person ends up with 30 open issues, another with 5. The custom script is ~60 lines and actually checks who's drowning.
Confirmed team roster
Handles below are API-verified as real GitHub accounts.
| Name | Handle | Area |
|---|---|---|
| Harshit | @harshitsinghbhandari | backend + releases |
| Khushi | @codebanditssss | frontend + landing |
| Jayati | @JAYATIAHUJA | frontend |
| Vaibhav Tiwari | @Vaibhaav-Tiwari | mobile (major), some FE/BE |
| Dhruv | @illegalcall | all-round reviewer |
| Aditi | @neversettle17-101 | core-backend |
| Adil | @whoisasx | SCM, notifications |
| Maaz | @somewherelostt | content |
| Pulkit | @Pulkit7070 | reviews |
Input needed from the team
- Component → owner mapping — is the table above right? Anything missing or misplaced?
- CODEOWNERS paths — are the path globs correct? What's missing? (e.g., where do
packages/,scripts/,test/,.github/route?) - Dhruv (@illegalcall) in the issue triage rotation, or reviewer-only? He's the all-round reviewer — adding triage noise might not be wanted.
- Should
needs-triageunlabeled issues auto-assign at all, or wait for a human to label them first? (Auto-assign reduces 0-assignee issues but may misroute.) - PTO / load caps — should we skip someone if they have >N open issues? What's N?
- Anyone I missed? If someone should be in a pool and isn't listed, call it out.
Drop your thoughts below. Once we agree on the mapping, we'll wire up the CODEOWNERS + Action in one PR.