Skip to content

feat(github): improve collaboration API parity - #265

Open
SamyPesse wants to merge 9 commits into
vercel-labs:mainfrom
SamyPesse:codex/github-collaboration-api-parity
Open

SamyPesse wants to merge 9 commits into
vercel-labs:mainfrom
SamyPesse:codex/github-collaboration-api-parity

Conversation

@SamyPesse

@SamyPesse SamyPesse commented Sep 21, 2026 •

Copy link
Copy Markdown

GitHub-backed integration tests need collaboration and CI-status APIs, plus the same review-comment validation GitHub applies before changes are pushed.

  • Add paginated user and installation-token repository discovery, stored reactions, and correct PR comment metadata. Installation-token listing intersects token selection with current grants and rejects removed or suspended installations.
  • Validate review-comment diff locations, preserve reply locations, and emit pull_request.synchronize when PR heads advance.
  • Return stored merge-base file diffs with actual paths, text patches, statistics, pagination, and GitHub's 3,000-file limit. Share merge-base resolution with commit comparisons; unchanged files and unrelated base-branch changes stay out of the result.
  • Support pending reviews with incremental GraphQL comments, submission/discard, author-only review and draft-comment reads, and submitted-summary edits. Filter repository-wide comments before pagination and keep that route reachable alongside pull-request reads.
  • Add a GraphQL collaboration subset for paginated inline threads, resolve/unresolve, and draft/ready transitions, sharing REST state and emitting the corresponding public webhooks.
  • Emit pull_request.edited with the updated base ref and SHA when a pull request is retargeted without other edits.
  • Retain commit-status history with creation, newest-first paginated reads by SHA or ref, repository authorization, and signed status webhooks. Combined-status summaries remain outside this subset.
  • Complete requested-reviewer lifecycle behavior: resolve users by durable ID, expose canonical user/team request lists, reject requesting the PR author, emit removal events only for stored requests, and clear a user's request on submitted reviews while drafts and team requests retain theirs.

Includes regression tests and documentation in the README, service skill, docs site, and CLI help. Draft edits and reaction changes do not invent public webhooks. Webhook receiver tests wait for delivery rather than dispatch admission.

Rebased onto upstream main 1566b8e (v0.13.0). The CLI coverage text now lives in the extracted command program, preserving the upstream MCP entry point.

Validation: all 144 GitHub tests pass against both the source implementation and the actual patched published v0.13.0 bundle used by OKC. Core, GitHub, and full CLI builds pass. GitHub typecheck, lint (existing warnings only), and formatting checks for all changed source files pass. The published bundle reuses its existing GraphQL runtime.

@vercel

vercel Bot commented Sep 21, 2026

Copy link
Copy Markdown
Contributor

@SamyPesse is attempting to deploy a commit to the Vercel Labs Team on Vercel.

A member of the Team first needs to authorize it.

@SamyPesse SamyPesse changed the title feat(github): support reactions and user installation discovery feat(github): improve collaboration API parity Sep 22, 2026
@vercel-internal-security-reviewer

Copy link
Copy Markdown

Security review details

@SamyPesse
SamyPesse force-pushed the codex/github-collaboration-api-parity branch from 2f63f21 to 98c9441 Compare October 6, 2026 12:20
@SamyPesse
SamyPesse force-pushed the codex/github-collaboration-api-parity branch 2 times, most recently from 4136e9d to a43293e Compare October 14, 2026 21:15
@SamyPesse
SamyPesse force-pushed the codex/github-collaboration-api-parity branch from a43293e to ee08f53 Compare October 28, 2026 18:55
@SamyPesse
SamyPesse force-pushed the codex/github-collaboration-api-parity branch from 76a8c91 to ab824d1 Compare October 29, 2026 22:23

This branch has not been deployed

No deployments
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.

1 participant