Skip to content

fix: Workaround org teams perm issue for approval purposes#2816

Merged
aleozlx merged 3 commits intoflashinfer-ai:mainfrom
aleozlx:owners2
Mar 19, 2026
Merged

fix: Workaround org teams perm issue for approval purposes#2816
aleozlx merged 3 commits intoflashinfer-ai:mainfrom
aleozlx:owners2

Conversation

@aleozlx
Copy link
Collaborator

@aleozlx aleozlx commented Mar 19, 2026

📌 Description

Workaround org teams perm issue for approval purposes

🔍 Related Issues

#2815

🚀 Pull Request Checklist

Thank you for contributing to FlashInfer! Before we review your pull request, please make sure the following items are complete.

✅ Pre-commit Checks

  • I have installed pre-commit by running pip install pre-commit (or used your preferred method).
  • I have installed the hooks with pre-commit install.
  • I have run the hooks manually with pre-commit run --all-files and fixed any reported issues.

If you are unsure about how to set up pre-commit, see the pre-commit documentation.

🧪 Tests

  • Tests have been added or updated as needed.
  • All tests are passing (unittest, etc.).

Reviewer Notes

Summary by CodeRabbit

  • Chores
    • Reworked code ownership: replaced auto-generated header with a maintained guide, added resolution rules (last-match-wins, team preference, alphabetical ordering) and a global catch-all; reorganized ownership into focused categorized blocks and reduced per-file entries.
    • CI tweak: updated workflow to skip CI when the code ownership file changes.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Mar 19, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 106fb304-6991-431c-820c-792e94110bf6

📥 Commits

Reviewing files that changed from the base of the PR and between e70edc3 and e469969.

📒 Files selected for processing (1)
  • .github/CODEOWNERS
🚧 Files skipped from review as they are similar to previous changes (1)
  • .github/CODEOWNERS

📝 Walkthrough

Walkthrough

Replaces the auto-generated .github/CODEOWNERS with a manually maintained, rule-driven file that groups ownership into categorized sections (Attention, GEMM, MOE, Communication, Norm, GDN) and adds a global catch-all; also updates CI to skip runs when only .github/CODEOWNERS changes. (47 words)

Changes

Cohort / File(s) Summary
Ownership Configuration
​.github/CODEOWNERS
Replaces auto-generated header with manual maintenance notes and explicit resolution rules; collapses many per-path entries into categorized blocks (Attention, GEMM, MOE, Communication, Norm, GDN) and adds a global * catch-all for core maintainers.
Workflow Configuration
​.github/workflows/pr-test.yml
Adds ^\.github/CODEOWNERS$ to SKIP_CI_PATTERNS so CI is skipped when only the CODEOWNERS file changes.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~15 minutes

Possibly related PRs

Suggested labels

maintenance

Suggested reviewers

  • yzh119
  • kahyunnam

Poem

🐰 I hopped through lines of owners, neat and spry,

Sections formed beneath the repository sky,
GEMM and GDN and Attention in a row,
A catch-all guard to keep the prance in tow,
CI winks and skips while bunnies tie the bow.

🚥 Pre-merge checks | ✅ 1 | ❌ 2

❌ Failed checks (2 warnings)

Check name Status Explanation Resolution
Title check ⚠️ Warning The PR title mentions a 'workaround' for an 'org teams perm issue,' but the actual changes restructure the CODEOWNERS file organization and add a CI skip pattern. The title does not accurately reflect the primary changes made. Update the title to reflect the main changes, such as 'Restructure CODEOWNERS with categorized ownership sections and add CI skip for CODEOWNERS changes' or similar.
Description check ⚠️ Warning The description is minimal and vague, stating only 'Workaround org teams perm issue for approval purposes.' It does not explain what changes were made, why they address the issue, or how the CODEOWNERS and workflow modifications work together. Expand the description to detail the structural changes to CODEOWNERS (categorized sections, catch-all rule) and explain how these changes resolve the org teams permissions issue for approvals.
✅ Passed checks (1 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
📝 Coding Plan
  • Generate coding plan for human review comments

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request implements a significant change to the project's .github/CODEOWNERS file to resolve existing organizational team permission issues that were hindering the pull request approval process. By transitioning to a manually maintained and more explicit ownership structure, the changes ensure that pull requests are correctly routed for review and approval, improving workflow efficiency and reliability.

Highlights

  • CODEOWNERS Restructuring: The .github/CODEOWNERS file was completely rewritten to transition from an auto-generated system to a manually maintained one, providing more explicit control over code ownership.
  • Permission Workaround: This change directly addresses and works around organizational team permission issues that were previously preventing proper pull request approvals.
  • Individual Ownership: GitHub team-based ownership for specific code paths was replaced with explicit individual user assignments to ensure reliable and consistent review assignments.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@aleozlx aleozlx requested a review from yongwww March 19, 2026 00:08
@aleozlx aleozlx marked this pull request as ready for review March 19, 2026 00:08
Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request replaces the auto-generated CODEOWNERS file with a manually maintained version to address a permissions issue with GitHub organization teams. The change is a reasonable workaround. My review includes a couple of suggestions to improve the clarity and consistency of the new CODEOWNERS file, specifically regarding a confusing rule in the header and the sorting of owner lists.

# Rules:
# - Last matching pattern wins (GitHub semantics).
# - Catch-all ensures every PR gets at least one core-maintainer review.
# - Prefer @flashinfer-ai/<team> over individual users.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

This rule contradicts the changes in this file, which replace team-based ownership with individual users as a workaround. This can be confusing for future contributors. To avoid confusion, consider rephrasing this to reflect it's an aspirational goal (e.g., # - Aspirational: Prefer @flashinfer-ai/<team> over individual users.) or removing it if the current state is not expected to change soon.

tests/test_helpers/ @nvmbreughe @yzh119
tests/utils/ @yzh119 @bkryu @nvmbreughe @kahyunnam @cyx-6
# ── Catch-all: core maintainers review everything not covered below ──
* @yzh119 @sricketts @aleozlx @yongwww @cyx-6 @saltyminty @bkryu @yyihuang @kahyunnam @jimmyzho @nv-yunzheq
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The list of code owners is not sorted alphabetically, which violates the rule on line 8 (- Keep entries sorted alphabetically within each section.). This applies to all owner lists in this file. Please sort them to improve maintainability.

* @aleozlx @bkryu @cyx-6 @jimmyzho @kahyunnam @nv-yunzheq @saltyminty @sricketts @yongwww @yyihuang @yzh119

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (1)
.github/CODEOWNERS (1)

10-11: Large catch-all reviewer list may cause notification fatigue.

Having 11 individuals in the catch-all pattern means all 11 will be auto-requested for review on every PR touching uncovered paths. This can dilute ownership and create noise.

If intent is "any one of these can approve," consider:

  1. Creating a GitHub team for core maintainers once permissions are resolved
  2. Using CODEOWNERS purely for required reviewers and relying on branch protection for approval counts

This is a trade-off decision—flagging for awareness.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.github/CODEOWNERS around lines 10 - 11, The CODEOWNERS catch-all entry uses
a wildcard "*" with an explicit list of 11 usernames (e.g., `@yzh119` `@sricketts`
`@aleozlx` `@yongwww` `@cyx-6` `@saltyminty` `@bkryu` `@yyihuang` `@kahyunnam` `@jimmyzho`
`@nv-yunzheq`) which will request all of them on every uncovered PR; replace the
long user list with a single GitHub team or narrow the pattern to only required
files (or remove the wildcard and rely on branch protection) so that approvals
can be provided by any one core maintainer instead of notifying all
individuals—create/use a team (e.g., `@org/core-maintainers`) and update the "*"
entry to reference that team or prune the list to only required reviewers.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In @.github/CODEOWNERS:
- Around line 1-8: The header in CODEOWNERS references a non-existent
"CODEOWNER_MIGRATION_PLAN.md" and claims a preference for
"@flashinfer-ai/<team>" while the file actually lists individual usernames;
update the header comment to match the implementation or add the migration plan:
either create and commit a "CODEOWNER_MIGRATION_PLAN.md" that documents the
rationale and the preference for team handles, then ensure the header line
references it correctly, or edit the header text in CODEOWNERS to remove or
rephrase the migration-plan reference and change the sentence about preferring
team handles to accurately state that individual usernames are used (so the
header and the entries are consistent).

---

Nitpick comments:
In @.github/CODEOWNERS:
- Around line 10-11: The CODEOWNERS catch-all entry uses a wildcard "*" with an
explicit list of 11 usernames (e.g., `@yzh119` `@sricketts` `@aleozlx` `@yongwww` `@cyx-6`
`@saltyminty` `@bkryu` `@yyihuang` `@kahyunnam` `@jimmyzho` `@nv-yunzheq`) which will
request all of them on every uncovered PR; replace the long user list with a
single GitHub team or narrow the pattern to only required files (or remove the
wildcard and rely on branch protection) so that approvals can be provided by any
one core maintainer instead of notifying all individuals—create/use a team
(e.g., `@org/core-maintainers`) and update the "*" entry to reference that team or
prune the list to only required reviewers.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: a416116e-8610-4a08-9db4-d3fb51426fec

📥 Commits

Reviewing files that changed from the base of the PR and between a83ec99 and e70edc3.

📒 Files selected for processing (2)
  • .github/CODEOWNERS
  • .github/workflows/pr-test.yml

@aleozlx aleozlx requested review from bkryu and kahyunnam March 19, 2026 00:22
@aleozlx aleozlx enabled auto-merge (squash) March 19, 2026 00:48
# Minimum commits threshold: 1
# Manual overrides applied from overrides file
# CODEOWNERS — manually maintained, not auto-generated.
# See CODEOWNER_MIGRATION_PLAN.md for rationale.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

proabbly remove this, since the CODEOWNER_MIGRATION_PLAN.md is not public available

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ah yes. i did remove it locally but forgot to push. it is now removed in the latest

@aleozlx aleozlx merged commit 8632015 into flashinfer-ai:main Mar 19, 2026
55 of 57 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants