{
  "slug": "github-graphql-adds-issue-comment-pinning-and-pin-status-f0e8a66d80c5",
  "title": "GitHub GraphQL adds issue comment pinning and pin status",
  "tools": [
    "github-graphql-api"
  ],
  "tags": [
    "agent"
  ],
  "introduced_at": "2026-03-12T00:00:00.000Z",
  "announced_at": "2026-03-12T00:00:00.000Z",
  "effective_at": null,
  "date_basis": "source-publication",
  "status": "unknown",
  "how": {
    "incantation": "When pinning a comment on an issue, call `pinIssueComment` with the comment’s node ID; use `IssueComment`’s `Pinnable` fields and the issue’s `pinnedIssueComment` to inspect pin status and details. Comment pinning is not supported on pull requests.",
    "examples": [
      "mutation { pinIssueComment(input: { issueCommentId: \"<ISSUE_COMMENT_NODE_ID>\" }) { issueComment { id isPinned pinnedAt pinnedBy { login } viewerCanPin viewerCanUnpin } } }",
      "query { node(id: \"<ISSUE_NODE_ID>\") { ... on Issue { pinnedIssueComment { issue { id } issueComment { id } pinnedAt pinnedBy { login } } } } }"
    ],
    "gotchas": [
      "PinIssueCommentInput.issueCommentId (required): ID of the issue comment to pin; comment pinning is unsupported on pull requests.",
      "PinIssueCommentInput.clientMutationId: Unique identifier for the client performing the mutation.",
      "Pinnable.isPinned: Whether the entity is currently pinned.",
      "Pinnable.pinnedAt: When the entity was pinned.",
      "Pinnable.pinnedBy: User who pinned the entity.",
      "Pinnable.viewerCanPin: Whether the current viewer can pin the entity.",
      "Pinnable.viewerCanUnpin: Whether the current viewer can unpin the entity.",
      "PinnedIssueComment.issue: Issue the pinned comment belongs to.",
      "PinnedIssueComment.issueComment: Comment that was pinned.",
      "PinnedIssueComment.pinnedAt: When the comment was pinned.",
      "PinnedIssueComment.pinnedBy: Actor who pinned the comment.",
      "Prerequisite: The target must be an issue comment; GitHub documents that comment pinning is not supported on pull requests.",
      "The `PinIssueComment` input requires `issueCommentId`."
    ]
  },
  "why_it_matters": "Pin or inspect pinned issue comments through the GitHub GraphQL API.",
  "sources": [
    "https://docs.github.com/en/graphql/overview/changelog#schema-changes-for-2026-03-12",
    "https://docs.github.com/en/graphql/reference/issues"
  ],
  "rank": 0.99021,
  "judge": {
    "publish": true,
    "judge_model": "codex-cli/gpt-6-luna+typesafe/jev-1.13.0",
    "prompt_version": "extract-v7+enrich-v2+judge-v2x3+jev-publish-v1"
  },
  "review_state": "approved",
  "provenance": {
    "run_id": "wave1b-tools-20261017",
    "verdict_id": "wave1b-tools-20261017:wave1b-tools-20261017-57d8d410ebef9cd9-9:gate",
    "evidence_hash": "912193d6318cbbe9e6d9a29d83bbd5a8d46afc4c93c8479aad9a6a524b60351c"
  },
  "review": {
    "draft_hash": "2e7a6768f877ac127cdcac14c49efa74f470894f197a7e0da6d149b017098823",
    "reviewer": "publication-gate",
    "reviewed_at": "2026-10-07T00:00:00.000Z",
    "decision": "wave1b-tools-20261017:gate",
    "reason": "3 of 3 judge runs approved with p_yes >= 0.9 (mean 0.99 >= 0.9; 2 needed) and Jev gave 0.75 (>= 0.6 needed)."
  }
}
