Skip to content

Triage the open PR backlog #4877

Open
Open

Description

@cliffhall

Part of the triage tracker #4875. Blocked by #4857 (2026-07-28 Spec Refactor) and #4858 (agentic software factory). The shared conventions (close labels, close notes, throttling) are in #4875.

Goal

Triage every open PR: about 317 as of 2026-09-26. Each one ends up either carried forward (ported to the refactored code, or used as the reference for a tracked issue) or closed with a labelled note. Modeled on inspector#1819.

Why this comes after the refactor

Almost every open PR targets main and the pre-refactor code: SDK v1 APIs and the 2025-era protocol. Once #4857 lands, most of them no longer apply cleanly. Triage then asks "is the idea still wanted on the new code?", not "does this diff merge?".

Buckets

  1. Server submissions and README listing PRs: close as out of scope and point to the MCP Registry.
  2. PRs against archived servers: close and point to servers-archived.
  3. Superseded by the refactor: the change is already covered by Tracker: 2026-07-28 Spec Refactor #4857 (e.g. SDK bumps, v2 ports such as fix(fetch): port to mcp SDK v2 #4565 and feat: MCP v2 (draft) #4452), or the code no longer exists. Close with thanks. Where a PR was used as a reference, credit it.
  4. Still valuable: a real bug fix or an in-scope enhancement. Don't merge the stale diff. Open or link a v2 issue on the board that references the PR as the reference implementation, and credit the author. Then close the PR with a note pointing to that issue, or ask the author to rebase onto v2/main, depending on the contribution policy set in Tracker: Agentic software factory (AGENTS.md, skills, quality gates, v2/main release flow) #4858.
  5. Dependency and automation PRs (e.g. Dependabot): close if superseded by the refactor's dependency set or the factory's dependency sweeps.
  6. Security-weakening proposals: close with the security-declined label, in addition to the main close label, using the Inspector's three-condition test adapted to these servers. Never apply it to a PR that fixes a vulnerability; those get handled as security fixes.

Tasks

  • Take a full snapshot of open PRs (gh pr list --state open --limit 1000 --json …) and record the counts per bucket in a comment here before closing anything.
  • Create the shared close labels, if the issue pass hasn't already.
  • Finalize the close notes, one per bucket. Each one references Tracker: Triage the open issue and PR backlog #4875 in the original comment.
  • Hand-review buckets 4 and 6 before closing anything in bulk.
  • Run the scripted, throttled closes. Don't lock threads, so authors can reply.
  • Post a final summary here: counts per label, and the list of PRs carried forward as issues.

Acceptance criteria

Activity

  1. added this to the v2.0.0 milestone on Sep 27, 2026
  2. self-assigned this
    on Sep 27, 2026
  3. modified the milestones: v1.0.0, v2.0.0, v2.1.0 on Oct 8, 2026
  4. added
    choreMaintenance: deps, build tooling, CI, cleanup — no user-facing behavior change
    on Oct 19, 2026
  5. cliffhall commented on Oct 20, 2026

    @cliffhall
    MemberAuthor

    Snapshot and bucket counts (2026-10-20)

    Snapshot taken at origin/v2/main f18beb7: 272 open PRs, matching the repository's total. 7 are maintainer-authored and are left to their authors: #3163, #3175, #3353, #4497, #4498 and #4528 still target main, and #4551 targets v2/main. No Dependabot PRs remain open, and #3260 (decided under #4860) is no longer open.

    The other 265 outside PRs were each read, with their diffs, linked issues and discussion, and checked against the current code by static reading. A few bug claims were also reproduced against v2/main's own code with local fixtures. No PR's code was run.

    Bucket Count Action
    1. Server listings and new server implementations 29 Close, closed-out-of-scope, Registry pointer
    2. Archived servers 1 Close, closed-archived-server
    3. Superseded: already fixed in v2, or the code is gone 87 Close, closed-superseded-v2
    4. Still valuable (60 fixes or enhancements + 35 racing duplicates) 95 Harvest, then close, closed-superseded-v2, naming the tracking issue
    Out-of-scope features and no-ops 37 Close, closed-out-of-scope
    5. Dependency and automation PRs 0 None open; dependency bumps from outside authors are counted in bucket 3
    6. Security-weakening proposals 4 Also closed-security-declined, alongside their main label (#3179, #3218, #3616, #3678)
    Security fixes 16 Held for the maintainers; never closed by this pass

    Bucket 4 is carried forward through issues, not by merging the stale diffs:

    • 55 PRs go to 25 existing open issues, each of which gets a comment naming the PRs as prototypes and crediting their authors.
    • 40 PRs go to 31 new issues, labelled v2 + type + scope and boarded Incoming with no milestone and a posted score. Pass 2 (milestoning) stays with a maintainer.

    Every close comment references #4875 in the original comment. Closes are paced at 8 seconds per write and stop on the first failure.

  6. cliffhall commented on Oct 20, 2026

    @cliffhall
    MemberAuthor

    Final summary (2026-10-20)

    The PR backlog pass is complete. Of the 265 outside PRs in the snapshot, 249 are closed and 16 are held open for the maintainers. Every closed PR was checked afterwards: each is closed, carries at least one close label, and has exactly one close note that references #4875. No thread was locked.

    Closes per label

    Label PRs
    closed-superseded-v2 182 (87 already fixed in v2 or whose code is gone, plus 95 harvested into issues)
    closed-out-of-scope 66 (29 server listings and new servers, 37 out-of-scope features and no-ops)
    closed-archived-server 1
    closed-security-declined 4, each alongside its main label: #3179, #3218, #3616, #3678
    Total closed 249

    Carried forward as issues (95 PRs)

    Correction to the snapshot comment above: the 55 PRs in the first group went to 32 existing open issues, not 25.

    55 PRs credited on 32 existing issues. Each issue got a comment naming its PRs as prototypes and crediting their authors:

    40 PRs harvested into 31 new issues. Each is labelled v2 + type + scope and boarded Incoming with no milestone, a Priority and a posted score comment. Each body has a "Prior work" section crediting the PRs' authors.

    Still open, deliberately kept

    Left for a maintainer

    This issue stays open until the security PRs are decided, as the acceptance criteria require each kept PR's reason to be recorded here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

choreMaintenance: deps, build tooling, CI, cleanup — no user-facing behavior changev2

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions