Repository navigation
EXC-2098 Read a PR's code owners and reviewers - #67
Merged
macintacos merged 5 commits intoOct 29, 2026
Conversation
- Read page_data/codeowners and page_data/merge_box, same-origin, resolving undefined for a commit or on any failed or odd read - Link @user and @org/team owners; match reviewers ignoring case - Export pr-ref's at() for the shape checks - Add scrubbed sandbox and nodejs/node payloads as fixtures
onVisit reads a pull request's code owners and reviewers once per Files changed visit and hands the promise to every page's showVisit. Nothing awaits it yet; a commit or header tab reads nothing.
- ARCHITECTURE: how the content script reads page_data, and what the result holds - github-rules: the endpoints' header, shapes, gaps, and re-check - README: github.com now also serves code owners and reviewers
- Link and keep Enterprise Managed User logins, which carry `_` - Count an onBehalfOf team only in its org/slug form - Name the endpoint whose shape broke; document never-rejects - Test an array ownershipByPath and missing reviews - Coin code owner and PR reviewer in CONTEXT; record the merge_box fixture scrub; fix the stale architecture overview
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Part of: EXC-2098
Change Kind: new feature
What changed
On a pull request's Files changed tab, gh-prism now reads each changed file's code owners (in CODEOWNERS order, linked when the token is a valid
@useror@org/team, with whether you own the file) and the PR's reviewers, from the same twopage_dataendpoints GitHub's own page reads, so it needs no CODEOWNERS parser. The content script fetches them once per visit, same-origin with your session, and hands the promise to every page of the visit; either read failing or answering an unexpected shape leaves no owners and no reviewers, and the rest of gh-prism works as before. Nothing draws the result yet: the sidebar shield, owner filter, and filter-menu section (EXC-2099, EXC-2100, EXC-2101) build on it.What to test
utils/github/code-owners.tsand its tests: the fixtures are captured, scrubbedcodeownersandmerge_boxpayloads from the code-owners sandbox's PR EXC-1663 Scaffold the WXT extension with mise and hk #1 and src: make crypto backend checks explicit nodejs/node#67056.page_data/codeownersand one extrapage_data/merge_boxrequest, each withX-Requested-With: XMLHttpRequest, and a commit page shows neither.## Code owners and reviewerssections indocs/ARCHITECTURE.mdanddocs/agents/github-rules.md, and the new### Code ownersgroup inCONTEXT.md.Findings the issue asked to record
page_data/codeownerscovers every changed path on the sandbox's large PR #3: 152 of 152, includingweb/src/catalog.tsbehind "Load Diff", with no paging or truncation field.page_data/merge_boxleaves comment-only reviews out: on src: fix build with--shared-brotlinodejs/node#66895, the two reviewers who only commented are missing fromlatestOpinionatedReviews, so gh-prism misses reviewers who only commented.onBehalfOfwas empty on every review checked (about 460 public PRs); gh-prism reads an element as a team by itslogin(org/slug), the shapependingReviewRequestsuses, and skips any other, unverified until a review on a team's behalf is captured.Reviewer checks
onBehalfOf's real shape. When a member of a requested team (on the sandbox, an account other than the PR's author inexcessive-dev/frontend) reviews on the team's behalf, fetch that PR'spage_data/merge_boxsigned in and confirm the element carrieslogin: "<org>/<slug>"; if not,reviewersFromreads the wrong field.docs/ARCHITECTURE.mdanddocs/agents/github-rules.mdsections.