The log shows how first the help.keyman.com#2588 entry is removed from the cache (verified by next debug line showing -1 when trying to find it in the cache). Then shortly after that, we see a message refreshGitHubPullRequestData: Adding help.keyman.com#2588 to cache and announcing refresh.
I think this is happening because the PR close event does not incur an async step, and there is a previous async lookup for the PR still running, so the close event finishes first.
{
"action": "closed",
"number": 2588,
"pull_request": {
"url": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls/2588",
"id": 3913354174,
"node_id": "PR_kwDOChepRM7pQQu-",
"html_url": "https://github.com/keymanapp/help.keyman.com/pull/2588",
"diff_url": "https://github.com/keymanapp/help.keyman.com/pull/2588.diff",
"patch_url": "https://github.com/keymanapp/help.keyman.com/pull/2588.patch",
"issue_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues/2588",
"number": 2588,
"state": "closed",
"locked": false,
"title": "auto: A19S32 merge master into staging",
"user": {
"login": "keyman-server",
"id": 7018967,
"node_id": "MDQ6VXNlcjcwMTg5Njc=",
"avatar_url": "https://avatars.githubusercontent.com/u/7018967?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/keyman-server",
"html_url": "https://github.com/keyman-server",
"followers_url": "https://api.github.com/users/keyman-server/followers",
"following_url": "https://api.github.com/users/keyman-server/following{/other_user}",
"gists_url": "https://api.github.com/users/keyman-server/gists{/gist_id}",
"starred_url": "https://api.github.com/users/keyman-server/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/keyman-server/subscriptions",
"organizations_url": "https://api.github.com/users/keyman-server/orgs",
"repos_url": "https://api.github.com/users/keyman-server/repos",
"events_url": "https://api.github.com/users/keyman-server/events{/privacy}",
"received_events_url": "https://api.github.com/users/keyman-server/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"body": "Test-bot: skip",
"created_at": "2026-06-22T15:49:45Z",
"updated_at": "2026-06-22T16:51:32Z",
"closed_at": "2026-06-22T16:51:32Z",
"merged_at": "2026-06-22T16:51:32Z",
"merge_commit_sha": "f274c9c9745d49d464c99803bd180feafd9e823d",
"assignees": [
],
"requested_reviewers": [
],
"requested_teams": [
],
"labels": [
{
"id": 2562189524,
"node_id": "MDU6TGFiZWwyNTYyMTg5NTI0",
"url": "https://api.github.com/repos/keymanapp/help.keyman.com/labels/auto",
"name": "auto",
"color": "ededed",
"default": false,
"description": "For PRs only: automatically-opened PRs, e.g. opened by CI"
}
],
"milestone": null,
"draft": false,
"commits_url": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls/2588/commits",
"review_comments_url": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls/2588/comments",
"review_comment_url": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls/comments{/number}",
"comments_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues/2588/comments",
"statuses_url": "https://api.github.com/repos/keymanapp/help.keyman.com/statuses/7ffb0477f4240521be68fff2de0eb7e561a85ec8",
"head": {
"label": "keymanapp:auto/A19S32-merge-master-into-staging",
"ref": "auto/A19S32-merge-master-into-staging",
"sha": "7ffb0477f4240521be68fff2de0eb7e561a85ec8",
"user": {
"login": "keymanapp",
"id": 12402926,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjEyNDAyOTI2",
"avatar_url": "https://avatars.githubusercontent.com/u/12402926?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/keymanapp",
"html_url": "https://github.com/keymanapp",
"followers_url": "https://api.github.com/users/keymanapp/followers",
"following_url": "https://api.github.com/users/keymanapp/following{/other_user}",
"gists_url": "https://api.github.com/users/keymanapp/gists{/gist_id}",
"starred_url": "https://api.github.com/users/keymanapp/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/keymanapp/subscriptions",
"organizations_url": "https://api.github.com/users/keymanapp/orgs",
"repos_url": "https://api.github.com/users/keymanapp/repos",
"events_url": "https://api.github.com/users/keymanapp/events{/privacy}",
"received_events_url": "https://api.github.com/users/keymanapp/received_events",
"type": "Organization",
"user_view_type": "public",
"site_admin": false
},
"repo": {
"id": 169322820,
"node_id": "MDEwOlJlcG9zaXRvcnkxNjkzMjI4MjA=",
"name": "help.keyman.com",
"full_name": "keymanapp/help.keyman.com",
"private": false,
"owner": {
"login": "keymanapp",
"id": 12402926,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjEyNDAyOTI2",
"avatar_url": "https://avatars.githubusercontent.com/u/12402926?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/keymanapp",
"html_url": "https://github.com/keymanapp",
"followers_url": "https://api.github.com/users/keymanapp/followers",
"following_url": "https://api.github.com/users/keymanapp/following{/other_user}",
"gists_url": "https://api.github.com/users/keymanapp/gists{/gist_id}",
"starred_url": "https://api.github.com/users/keymanapp/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/keymanapp/subscriptions",
"organizations_url": "https://api.github.com/users/keymanapp/orgs",
"repos_url": "https://api.github.com/users/keymanapp/repos",
"events_url": "https://api.github.com/users/keymanapp/events{/privacy}",
"received_events_url": "https://api.github.com/users/keymanapp/received_events",
"type": "Organization",
"user_view_type": "public",
"site_admin": false
},
"html_url": "https://github.com/keymanapp/help.keyman.com",
"description": "https://help.keyman.com/ source",
"fork": false,
"url": "https://api.github.com/repos/keymanapp/help.keyman.com",
"forks_url": "https://api.github.com/repos/keymanapp/help.keyman.com/forks",
"keys_url": "https://api.github.com/repos/keymanapp/help.keyman.com/keys{/key_id}",
"collaborators_url": "https://api.github.com/repos/keymanapp/help.keyman.com/collaborators{/collaborator}",
"teams_url": "https://api.github.com/repos/keymanapp/help.keyman.com/teams",
"hooks_url": "https://api.github.com/repos/keymanapp/help.keyman.com/hooks",
"issue_events_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues/events{/number}",
"events_url": "https://api.github.com/repos/keymanapp/help.keyman.com/events",
"assignees_url": "https://api.github.com/repos/keymanapp/help.keyman.com/assignees{/user}",
"branches_url": "https://api.github.com/repos/keymanapp/help.keyman.com/branches{/branch}",
"tags_url": "https://api.github.com/repos/keymanapp/help.keyman.com/tags",
"blobs_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/blobs{/sha}",
"git_tags_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/tags{/sha}",
"git_refs_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/refs{/sha}",
"trees_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/trees{/sha}",
"statuses_url": "https://api.github.com/repos/keymanapp/help.keyman.com/statuses/{sha}",
"languages_url": "https://api.github.com/repos/keymanapp/help.keyman.com/languages",
"stargazers_url": "https://api.github.com/repos/keymanapp/help.keyman.com/stargazers",
"contributors_url": "https://api.github.com/repos/keymanapp/help.keyman.com/contributors",
"subscribers_url": "https://api.github.com/repos/keymanapp/help.keyman.com/subscribers",
"subscription_url": "https://api.github.com/repos/keymanapp/help.keyman.com/subscription",
"commits_url": "https://api.github.com/repos/keymanapp/help.keyman.com/commits{/sha}",
"git_commits_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/commits{/sha}",
"comments_url": "https://api.github.com/repos/keymanapp/help.keyman.com/comments{/number}",
"issue_comment_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues/comments{/number}",
"contents_url": "https://api.github.com/repos/keymanapp/help.keyman.com/contents/{+path}",
"compare_url": "https://api.github.com/repos/keymanapp/help.keyman.com/compare/{base}...{head}",
"merges_url": "https://api.github.com/repos/keymanapp/help.keyman.com/merges",
"archive_url": "https://api.github.com/repos/keymanapp/help.keyman.com/{archive_format}{/ref}",
"downloads_url": "https://api.github.com/repos/keymanapp/help.keyman.com/downloads",
"issues_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues{/number}",
"pulls_url": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls{/number}",
"milestones_url": "https://api.github.com/repos/keymanapp/help.keyman.com/milestones{/number}",
"notifications_url": "https://api.github.com/repos/keymanapp/help.keyman.com/notifications{?since,all,participating}",
"labels_url": "https://api.github.com/repos/keymanapp/help.keyman.com/labels{/name}",
"releases_url": "https://api.github.com/repos/keymanapp/help.keyman.com/releases{/id}",
"deployments_url": "https://api.github.com/repos/keymanapp/help.keyman.com/deployments",
"created_at": "2019-02-05T22:24:52Z",
"updated_at": "2026-06-22T15:40:45Z",
"pushed_at": "2026-06-22T16:51:32Z",
"git_url": "git://github.com/keymanapp/help.keyman.com.git",
"ssh_url": "git@github.com:keymanapp/help.keyman.com.git",
"clone_url": "https://github.com/keymanapp/help.keyman.com.git",
"svn_url": "https://github.com/keymanapp/help.keyman.com",
"homepage": null,
"size": 301695,
"stargazers_count": 9,
"watchers_count": 9,
"language": "PHP",
"has_issues": true,
"has_projects": true,
"has_downloads": true,
"has_wiki": false,
"has_pages": false,
"has_discussions": false,
"forks_count": 44,
"mirror_url": null,
"archived": false,
"disabled": false,
"open_issues_count": 41,
"license": null,
"allow_forking": true,
"is_template": false,
"web_commit_signoff_required": false,
"has_pull_requests": true,
"pull_request_creation_policy": "all",
"topics": [
],
"visibility": "public",
"forks": 44,
"open_issues": 41,
"watchers": 9,
"default_branch": "master",
"allow_squash_merge": true,
"allow_merge_commit": true,
"allow_rebase_merge": true,
"allow_auto_merge": true,
"delete_branch_on_merge": true,
"allow_update_branch": true,
"use_squash_pr_title_as_default": false,
"squash_merge_commit_message": "COMMIT_MESSAGES",
"squash_merge_commit_title": "COMMIT_OR_PR_TITLE",
"merge_commit_message": "PR_TITLE",
"merge_commit_title": "MERGE_MESSAGE"
}
},
"base": {
"label": "keymanapp:staging",
"ref": "staging",
"sha": "003ef9111d2e42c60b3c01c89543c6f0b9a62eef",
"user": {
"login": "keymanapp",
"id": 12402926,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjEyNDAyOTI2",
"avatar_url": "https://avatars.githubusercontent.com/u/12402926?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/keymanapp",
"html_url": "https://github.com/keymanapp",
"followers_url": "https://api.github.com/users/keymanapp/followers",
"following_url": "https://api.github.com/users/keymanapp/following{/other_user}",
"gists_url": "https://api.github.com/users/keymanapp/gists{/gist_id}",
"starred_url": "https://api.github.com/users/keymanapp/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/keymanapp/subscriptions",
"organizations_url": "https://api.github.com/users/keymanapp/orgs",
"repos_url": "https://api.github.com/users/keymanapp/repos",
"events_url": "https://api.github.com/users/keymanapp/events{/privacy}",
"received_events_url": "https://api.github.com/users/keymanapp/received_events",
"type": "Organization",
"user_view_type": "public",
"site_admin": false
},
"repo": {
"id": 169322820,
"node_id": "MDEwOlJlcG9zaXRvcnkxNjkzMjI4MjA=",
"name": "help.keyman.com",
"full_name": "keymanapp/help.keyman.com",
"private": false,
"owner": {
"login": "keymanapp",
"id": 12402926,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjEyNDAyOTI2",
"avatar_url": "https://avatars.githubusercontent.com/u/12402926?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/keymanapp",
"html_url": "https://github.com/keymanapp",
"followers_url": "https://api.github.com/users/keymanapp/followers",
"following_url": "https://api.github.com/users/keymanapp/following{/other_user}",
"gists_url": "https://api.github.com/users/keymanapp/gists{/gist_id}",
"starred_url": "https://api.github.com/users/keymanapp/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/keymanapp/subscriptions",
"organizations_url": "https://api.github.com/users/keymanapp/orgs",
"repos_url": "https://api.github.com/users/keymanapp/repos",
"events_url": "https://api.github.com/users/keymanapp/events{/privacy}",
"received_events_url": "https://api.github.com/users/keymanapp/received_events",
"type": "Organization",
"user_view_type": "public",
"site_admin": false
},
"html_url": "https://github.com/keymanapp/help.keyman.com",
"description": "https://help.keyman.com/ source",
"fork": false,
"url": "https://api.github.com/repos/keymanapp/help.keyman.com",
"forks_url": "https://api.github.com/repos/keymanapp/help.keyman.com/forks",
"keys_url": "https://api.github.com/repos/keymanapp/help.keyman.com/keys{/key_id}",
"collaborators_url": "https://api.github.com/repos/keymanapp/help.keyman.com/collaborators{/collaborator}",
"teams_url": "https://api.github.com/repos/keymanapp/help.keyman.com/teams",
"hooks_url": "https://api.github.com/repos/keymanapp/help.keyman.com/hooks",
"issue_events_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues/events{/number}",
"events_url": "https://api.github.com/repos/keymanapp/help.keyman.com/events",
"assignees_url": "https://api.github.com/repos/keymanapp/help.keyman.com/assignees{/user}",
"branches_url": "https://api.github.com/repos/keymanapp/help.keyman.com/branches{/branch}",
"tags_url": "https://api.github.com/repos/keymanapp/help.keyman.com/tags",
"blobs_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/blobs{/sha}",
"git_tags_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/tags{/sha}",
"git_refs_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/refs{/sha}",
"trees_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/trees{/sha}",
"statuses_url": "https://api.github.com/repos/keymanapp/help.keyman.com/statuses/{sha}",
"languages_url": "https://api.github.com/repos/keymanapp/help.keyman.com/languages",
"stargazers_url": "https://api.github.com/repos/keymanapp/help.keyman.com/stargazers",
"contributors_url": "https://api.github.com/repos/keymanapp/help.keyman.com/contributors",
"subscribers_url": "https://api.github.com/repos/keymanapp/help.keyman.com/subscribers",
"subscription_url": "https://api.github.com/repos/keymanapp/help.keyman.com/subscription",
"commits_url": "https://api.github.com/repos/keymanapp/help.keyman.com/commits{/sha}",
"git_commits_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/commits{/sha}",
"comments_url": "https://api.github.com/repos/keymanapp/help.keyman.com/comments{/number}",
"issue_comment_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues/comments{/number}",
"contents_url": "https://api.github.com/repos/keymanapp/help.keyman.com/contents/{+path}",
"compare_url": "https://api.github.com/repos/keymanapp/help.keyman.com/compare/{base}...{head}",
"merges_url": "https://api.github.com/repos/keymanapp/help.keyman.com/merges",
"archive_url": "https://api.github.com/repos/keymanapp/help.keyman.com/{archive_format}{/ref}",
"downloads_url": "https://api.github.com/repos/keymanapp/help.keyman.com/downloads",
"issues_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues{/number}",
"pulls_url": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls{/number}",
"milestones_url": "https://api.github.com/repos/keymanapp/help.keyman.com/milestones{/number}",
"notifications_url": "https://api.github.com/repos/keymanapp/help.keyman.com/notifications{?since,all,participating}",
"labels_url": "https://api.github.com/repos/keymanapp/help.keyman.com/labels{/name}",
"releases_url": "https://api.github.com/repos/keymanapp/help.keyman.com/releases{/id}",
"deployments_url": "https://api.github.com/repos/keymanapp/help.keyman.com/deployments",
"created_at": "2019-02-05T22:24:52Z",
"updated_at": "2026-06-22T15:40:45Z",
"pushed_at": "2026-06-22T16:51:32Z",
"git_url": "git://github.com/keymanapp/help.keyman.com.git",
"ssh_url": "git@github.com:keymanapp/help.keyman.com.git",
"clone_url": "https://github.com/keymanapp/help.keyman.com.git",
"svn_url": "https://github.com/keymanapp/help.keyman.com",
"homepage": null,
"size": 301695,
"stargazers_count": 9,
"watchers_count": 9,
"language": "PHP",
"has_issues": true,
"has_projects": true,
"has_downloads": true,
"has_wiki": false,
"has_pages": false,
"has_discussions": false,
"forks_count": 44,
"mirror_url": null,
"archived": false,
"disabled": false,
"open_issues_count": 41,
"license": null,
"allow_forking": true,
"is_template": false,
"web_commit_signoff_required": false,
"has_pull_requests": true,
"pull_request_creation_policy": "all",
"topics": [
],
"visibility": "public",
"forks": 44,
"open_issues": 41,
"watchers": 9,
"default_branch": "master",
"allow_squash_merge": true,
"allow_merge_commit": true,
"allow_rebase_merge": true,
"allow_auto_merge": true,
"delete_branch_on_merge": true,
"allow_update_branch": true,
"use_squash_pr_title_as_default": false,
"squash_merge_commit_message": "COMMIT_MESSAGES",
"squash_merge_commit_title": "COMMIT_OR_PR_TITLE",
"merge_commit_message": "PR_TITLE",
"merge_commit_title": "MERGE_MESSAGE"
}
},
"_links": {
"self": {
"href": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls/2588"
},
"html": {
"href": "https://github.com/keymanapp/help.keyman.com/pull/2588"
},
"issue": {
"href": "https://api.github.com/repos/keymanapp/help.keyman.com/issues/2588"
},
"comments": {
"href": "https://api.github.com/repos/keymanapp/help.keyman.com/issues/2588/comments"
},
"review_comments": {
"href": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls/2588/comments"
},
"review_comment": {
"href": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls/comments{/number}"
},
"commits": {
"href": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls/2588/commits"
},
"statuses": {
"href": "https://api.github.com/repos/keymanapp/help.keyman.com/statuses/7ffb0477f4240521be68fff2de0eb7e561a85ec8"
}
},
"author_association": "CONTRIBUTOR",
"auto_merge": {
"enabled_by": {
"login": "keyman-status",
"id": 75399505,
"node_id": "MDQ6VXNlcjc1Mzk5NTA1",
"avatar_url": "https://avatars.githubusercontent.com/u/75399505?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/keyman-status",
"html_url": "https://github.com/keyman-status",
"followers_url": "https://api.github.com/users/keyman-status/followers",
"following_url": "https://api.github.com/users/keyman-status/following{/other_user}",
"gists_url": "https://api.github.com/users/keyman-status/gists{/gist_id}",
"starred_url": "https://api.github.com/users/keyman-status/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/keyman-status/subscriptions",
"organizations_url": "https://api.github.com/users/keyman-status/orgs",
"repos_url": "https://api.github.com/users/keyman-status/repos",
"events_url": "https://api.github.com/users/keyman-status/events{/privacy}",
"received_events_url": "https://api.github.com/users/keyman-status/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"merge_method": "merge",
"commit_title": null,
"commit_message": null
},
"assignee": null,
"active_lock_reason": null,
"merged": true,
"mergeable": null,
"rebaseable": null,
"mergeable_state": "unknown",
"merged_by": {
"login": "keyman-status",
"id": 75399505,
"node_id": "MDQ6VXNlcjc1Mzk5NTA1",
"avatar_url": "https://avatars.githubusercontent.com/u/75399505?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/keyman-status",
"html_url": "https://github.com/keyman-status",
"followers_url": "https://api.github.com/users/keyman-status/followers",
"following_url": "https://api.github.com/users/keyman-status/following{/other_user}",
"gists_url": "https://api.github.com/users/keyman-status/gists{/gist_id}",
"starred_url": "https://api.github.com/users/keyman-status/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/keyman-status/subscriptions",
"organizations_url": "https://api.github.com/users/keyman-status/orgs",
"repos_url": "https://api.github.com/users/keyman-status/repos",
"events_url": "https://api.github.com/users/keyman-status/events{/privacy}",
"received_events_url": "https://api.github.com/users/keyman-status/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"comments": 0,
"review_comments": 0,
"maintainer_can_modify": false,
"commits": 102,
"additions": 20004,
"deletions": 611,
"changed_files": 228
},
"repository": {
"id": 169322820,
"node_id": "MDEwOlJlcG9zaXRvcnkxNjkzMjI4MjA=",
"name": "help.keyman.com",
"full_name": "keymanapp/help.keyman.com",
"private": false,
"owner": {
"login": "keymanapp",
"id": 12402926,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjEyNDAyOTI2",
"avatar_url": "https://avatars.githubusercontent.com/u/12402926?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/keymanapp",
"html_url": "https://github.com/keymanapp",
"followers_url": "https://api.github.com/users/keymanapp/followers",
"following_url": "https://api.github.com/users/keymanapp/following{/other_user}",
"gists_url": "https://api.github.com/users/keymanapp/gists{/gist_id}",
"starred_url": "https://api.github.com/users/keymanapp/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/keymanapp/subscriptions",
"organizations_url": "https://api.github.com/users/keymanapp/orgs",
"repos_url": "https://api.github.com/users/keymanapp/repos",
"events_url": "https://api.github.com/users/keymanapp/events{/privacy}",
"received_events_url": "https://api.github.com/users/keymanapp/received_events",
"type": "Organization",
"user_view_type": "public",
"site_admin": false
},
"html_url": "https://github.com/keymanapp/help.keyman.com",
"description": "https://help.keyman.com/ source",
"fork": false,
"url": "https://api.github.com/repos/keymanapp/help.keyman.com",
"forks_url": "https://api.github.com/repos/keymanapp/help.keyman.com/forks",
"keys_url": "https://api.github.com/repos/keymanapp/help.keyman.com/keys{/key_id}",
"collaborators_url": "https://api.github.com/repos/keymanapp/help.keyman.com/collaborators{/collaborator}",
"teams_url": "https://api.github.com/repos/keymanapp/help.keyman.com/teams",
"hooks_url": "https://api.github.com/repos/keymanapp/help.keyman.com/hooks",
"issue_events_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues/events{/number}",
"events_url": "https://api.github.com/repos/keymanapp/help.keyman.com/events",
"assignees_url": "https://api.github.com/repos/keymanapp/help.keyman.com/assignees{/user}",
"branches_url": "https://api.github.com/repos/keymanapp/help.keyman.com/branches{/branch}",
"tags_url": "https://api.github.com/repos/keymanapp/help.keyman.com/tags",
"blobs_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/blobs{/sha}",
"git_tags_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/tags{/sha}",
"git_refs_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/refs{/sha}",
"trees_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/trees{/sha}",
"statuses_url": "https://api.github.com/repos/keymanapp/help.keyman.com/statuses/{sha}",
"languages_url": "https://api.github.com/repos/keymanapp/help.keyman.com/languages",
"stargazers_url": "https://api.github.com/repos/keymanapp/help.keyman.com/stargazers",
"contributors_url": "https://api.github.com/repos/keymanapp/help.keyman.com/contributors",
"subscribers_url": "https://api.github.com/repos/keymanapp/help.keyman.com/subscribers",
"subscription_url": "https://api.github.com/repos/keymanapp/help.keyman.com/subscription",
"commits_url": "https://api.github.com/repos/keymanapp/help.keyman.com/commits{/sha}",
"git_commits_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/commits{/sha}",
"comments_url": "https://api.github.com/repos/keymanapp/help.keyman.com/comments{/number}",
"issue_comment_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues/comments{/number}",
"contents_url": "https://api.github.com/repos/keymanapp/help.keyman.com/contents/{+path}",
"compare_url": "https://api.github.com/repos/keymanapp/help.keyman.com/compare/{base}...{head}",
"merges_url": "https://api.github.com/repos/keymanapp/help.keyman.com/merges",
"archive_url": "https://api.github.com/repos/keymanapp/help.keyman.com/{archive_format}{/ref}",
"downloads_url": "https://api.github.com/repos/keymanapp/help.keyman.com/downloads",
"issues_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues{/number}",
"pulls_url": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls{/number}",
"milestones_url": "https://api.github.com/repos/keymanapp/help.keyman.com/milestones{/number}",
"notifications_url": "https://api.github.com/repos/keymanapp/help.keyman.com/notifications{?since,all,participating}",
"labels_url": "https://api.github.com/repos/keymanapp/help.keyman.com/labels{/name}",
"releases_url": "https://api.github.com/repos/keymanapp/help.keyman.com/releases{/id}",
"deployments_url": "https://api.github.com/repos/keymanapp/help.keyman.com/deployments",
"created_at": "2019-02-05T22:24:52Z",
"updated_at": "2026-06-22T15:40:45Z",
"pushed_at": "2026-06-22T16:51:32Z",
"git_url": "git://github.com/keymanapp/help.keyman.com.git",
"ssh_url": "git@github.com:keymanapp/help.keyman.com.git",
"clone_url": "https://github.com/keymanapp/help.keyman.com.git",
"svn_url": "https://github.com/keymanapp/help.keyman.com",
"homepage": null,
"size": 301695,
"stargazers_count": 9,
"watchers_count": 9,
"language": "PHP",
"has_issues": true,
"has_projects": true,
"has_downloads": true,
"has_wiki": false,
"has_pages": false,
"has_discussions": false,
"forks_count": 44,
"mirror_url": null,
"archived": false,
"disabled": false,
"open_issues_count": 41,
"license": null,
"allow_forking": true,
"is_template": false,
"web_commit_signoff_required": false,
"has_pull_requests": true,
"pull_request_creation_policy": "all",
"topics": [
],
"visibility": "public",
"forks": 44,
"open_issues": 41,
"watchers": 9,
"default_branch": "master",
"custom_properties": {
}
},
"organization": {
"login": "keymanapp",
"id": 12402926,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjEyNDAyOTI2",
"url": "https://api.github.com/orgs/keymanapp",
"repos_url": "https://api.github.com/orgs/keymanapp/repos",
"events_url": "https://api.github.com/orgs/keymanapp/events",
"hooks_url": "https://api.github.com/orgs/keymanapp/hooks",
"issues_url": "https://api.github.com/orgs/keymanapp/issues",
"members_url": "https://api.github.com/orgs/keymanapp/members{/member}",
"public_members_url": "https://api.github.com/orgs/keymanapp/public_members{/member}",
"avatar_url": "https://avatars.githubusercontent.com/u/12402926?v=4",
"description": "Home of the Keyman open source keyboarding system"
},
"sender": {
"login": "keyman-status",
"id": 75399505,
"node_id": "MDQ6VXNlcjc1Mzk5NTA1",
"avatar_url": "https://avatars.githubusercontent.com/u/75399505?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/keyman-status",
"html_url": "https://github.com/keyman-status",
"followers_url": "https://api.github.com/users/keyman-status/followers",
"following_url": "https://api.github.com/users/keyman-status/following{/other_user}",
"gists_url": "https://api.github.com/users/keyman-status/gists{/gist_id}",
"starred_url": "https://api.github.com/users/keyman-status/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/keyman-status/subscriptions",
"organizations_url": "https://api.github.com/users/keyman-status/orgs",
"repos_url": "https://api.github.com/users/keyman-status/repos",
"events_url": "https://api.github.com/users/keyman-status/events{/privacy}",
"received_events_url": "https://api.github.com/users/keyman-status/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
}
}
The log shows how first the help.keyman.com#2588 entry is removed from the cache (verified by next debug line showing -1 when trying to find it in the cache). Then shortly after that, we see a message
refreshGitHubPullRequestData: Adding help.keyman.com#2588 to cache and announcing refresh.I think this is happening because the PR close event does not incur an async step, and there is a previous async lookup for the PR still running, so the close event finishes first.
From the Webhook looks, I can see only one event:
{ "action": "closed", "number": 2588, "pull_request": { "url": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls/2588", "id": 3913354174, "node_id": "PR_kwDOChepRM7pQQu-", "html_url": "https://github.com/keymanapp/help.keyman.com/pull/2588", "diff_url": "https://github.com/keymanapp/help.keyman.com/pull/2588.diff", "patch_url": "https://github.com/keymanapp/help.keyman.com/pull/2588.patch", "issue_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues/2588", "number": 2588, "state": "closed", "locked": false, "title": "auto: A19S32 merge master into staging", "user": { "login": "keyman-server", "id": 7018967, "node_id": "MDQ6VXNlcjcwMTg5Njc=", "avatar_url": "https://avatars.githubusercontent.com/u/7018967?v=4", "gravatar_id": "", "url": "https://api.github.com/users/keyman-server", "html_url": "https://github.com/keyman-server", "followers_url": "https://api.github.com/users/keyman-server/followers", "following_url": "https://api.github.com/users/keyman-server/following{/other_user}", "gists_url": "https://api.github.com/users/keyman-server/gists{/gist_id}", "starred_url": "https://api.github.com/users/keyman-server/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/keyman-server/subscriptions", "organizations_url": "https://api.github.com/users/keyman-server/orgs", "repos_url": "https://api.github.com/users/keyman-server/repos", "events_url": "https://api.github.com/users/keyman-server/events{/privacy}", "received_events_url": "https://api.github.com/users/keyman-server/received_events", "type": "User", "user_view_type": "public", "site_admin": false }, "body": "Test-bot: skip", "created_at": "2026-06-22T15:49:45Z", "updated_at": "2026-06-22T16:51:32Z", "closed_at": "2026-06-22T16:51:32Z", "merged_at": "2026-06-22T16:51:32Z", "merge_commit_sha": "f274c9c9745d49d464c99803bd180feafd9e823d", "assignees": [ ], "requested_reviewers": [ ], "requested_teams": [ ], "labels": [ { "id": 2562189524, "node_id": "MDU6TGFiZWwyNTYyMTg5NTI0", "url": "https://api.github.com/repos/keymanapp/help.keyman.com/labels/auto", "name": "auto", "color": "ededed", "default": false, "description": "For PRs only: automatically-opened PRs, e.g. opened by CI" } ], "milestone": null, "draft": false, "commits_url": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls/2588/commits", "review_comments_url": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls/2588/comments", "review_comment_url": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls/comments{/number}", "comments_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues/2588/comments", "statuses_url": "https://api.github.com/repos/keymanapp/help.keyman.com/statuses/7ffb0477f4240521be68fff2de0eb7e561a85ec8", "head": { "label": "keymanapp:auto/A19S32-merge-master-into-staging", "ref": "auto/A19S32-merge-master-into-staging", "sha": "7ffb0477f4240521be68fff2de0eb7e561a85ec8", "user": { "login": "keymanapp", "id": 12402926, "node_id": "MDEyOk9yZ2FuaXphdGlvbjEyNDAyOTI2", "avatar_url": "https://avatars.githubusercontent.com/u/12402926?v=4", "gravatar_id": "", "url": "https://api.github.com/users/keymanapp", "html_url": "https://github.com/keymanapp", "followers_url": "https://api.github.com/users/keymanapp/followers", "following_url": "https://api.github.com/users/keymanapp/following{/other_user}", "gists_url": "https://api.github.com/users/keymanapp/gists{/gist_id}", "starred_url": "https://api.github.com/users/keymanapp/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/keymanapp/subscriptions", "organizations_url": "https://api.github.com/users/keymanapp/orgs", "repos_url": "https://api.github.com/users/keymanapp/repos", "events_url": "https://api.github.com/users/keymanapp/events{/privacy}", "received_events_url": "https://api.github.com/users/keymanapp/received_events", "type": "Organization", "user_view_type": "public", "site_admin": false }, "repo": { "id": 169322820, "node_id": "MDEwOlJlcG9zaXRvcnkxNjkzMjI4MjA=", "name": "help.keyman.com", "full_name": "keymanapp/help.keyman.com", "private": false, "owner": { "login": "keymanapp", "id": 12402926, "node_id": "MDEyOk9yZ2FuaXphdGlvbjEyNDAyOTI2", "avatar_url": "https://avatars.githubusercontent.com/u/12402926?v=4", "gravatar_id": "", "url": "https://api.github.com/users/keymanapp", "html_url": "https://github.com/keymanapp", "followers_url": "https://api.github.com/users/keymanapp/followers", "following_url": "https://api.github.com/users/keymanapp/following{/other_user}", "gists_url": "https://api.github.com/users/keymanapp/gists{/gist_id}", "starred_url": "https://api.github.com/users/keymanapp/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/keymanapp/subscriptions", "organizations_url": "https://api.github.com/users/keymanapp/orgs", "repos_url": "https://api.github.com/users/keymanapp/repos", "events_url": "https://api.github.com/users/keymanapp/events{/privacy}", "received_events_url": "https://api.github.com/users/keymanapp/received_events", "type": "Organization", "user_view_type": "public", "site_admin": false }, "html_url": "https://github.com/keymanapp/help.keyman.com", "description": "https://help.keyman.com/ source", "fork": false, "url": "https://api.github.com/repos/keymanapp/help.keyman.com", "forks_url": "https://api.github.com/repos/keymanapp/help.keyman.com/forks", "keys_url": "https://api.github.com/repos/keymanapp/help.keyman.com/keys{/key_id}", "collaborators_url": "https://api.github.com/repos/keymanapp/help.keyman.com/collaborators{/collaborator}", "teams_url": "https://api.github.com/repos/keymanapp/help.keyman.com/teams", "hooks_url": "https://api.github.com/repos/keymanapp/help.keyman.com/hooks", "issue_events_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues/events{/number}", "events_url": "https://api.github.com/repos/keymanapp/help.keyman.com/events", "assignees_url": "https://api.github.com/repos/keymanapp/help.keyman.com/assignees{/user}", "branches_url": "https://api.github.com/repos/keymanapp/help.keyman.com/branches{/branch}", "tags_url": "https://api.github.com/repos/keymanapp/help.keyman.com/tags", "blobs_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/blobs{/sha}", "git_tags_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/tags{/sha}", "git_refs_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/refs{/sha}", "trees_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/trees{/sha}", "statuses_url": "https://api.github.com/repos/keymanapp/help.keyman.com/statuses/{sha}", "languages_url": "https://api.github.com/repos/keymanapp/help.keyman.com/languages", "stargazers_url": "https://api.github.com/repos/keymanapp/help.keyman.com/stargazers", "contributors_url": "https://api.github.com/repos/keymanapp/help.keyman.com/contributors", "subscribers_url": "https://api.github.com/repos/keymanapp/help.keyman.com/subscribers", "subscription_url": "https://api.github.com/repos/keymanapp/help.keyman.com/subscription", "commits_url": "https://api.github.com/repos/keymanapp/help.keyman.com/commits{/sha}", "git_commits_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/commits{/sha}", "comments_url": "https://api.github.com/repos/keymanapp/help.keyman.com/comments{/number}", "issue_comment_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues/comments{/number}", "contents_url": "https://api.github.com/repos/keymanapp/help.keyman.com/contents/{+path}", "compare_url": "https://api.github.com/repos/keymanapp/help.keyman.com/compare/{base}...{head}", "merges_url": "https://api.github.com/repos/keymanapp/help.keyman.com/merges", "archive_url": "https://api.github.com/repos/keymanapp/help.keyman.com/{archive_format}{/ref}", "downloads_url": "https://api.github.com/repos/keymanapp/help.keyman.com/downloads", "issues_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues{/number}", "pulls_url": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls{/number}", "milestones_url": "https://api.github.com/repos/keymanapp/help.keyman.com/milestones{/number}", "notifications_url": "https://api.github.com/repos/keymanapp/help.keyman.com/notifications{?since,all,participating}", "labels_url": "https://api.github.com/repos/keymanapp/help.keyman.com/labels{/name}", "releases_url": "https://api.github.com/repos/keymanapp/help.keyman.com/releases{/id}", "deployments_url": "https://api.github.com/repos/keymanapp/help.keyman.com/deployments", "created_at": "2019-02-05T22:24:52Z", "updated_at": "2026-06-22T15:40:45Z", "pushed_at": "2026-06-22T16:51:32Z", "git_url": "git://github.com/keymanapp/help.keyman.com.git", "ssh_url": "git@github.com:keymanapp/help.keyman.com.git", "clone_url": "https://github.com/keymanapp/help.keyman.com.git", "svn_url": "https://github.com/keymanapp/help.keyman.com", "homepage": null, "size": 301695, "stargazers_count": 9, "watchers_count": 9, "language": "PHP", "has_issues": true, "has_projects": true, "has_downloads": true, "has_wiki": false, "has_pages": false, "has_discussions": false, "forks_count": 44, "mirror_url": null, "archived": false, "disabled": false, "open_issues_count": 41, "license": null, "allow_forking": true, "is_template": false, "web_commit_signoff_required": false, "has_pull_requests": true, "pull_request_creation_policy": "all", "topics": [ ], "visibility": "public", "forks": 44, "open_issues": 41, "watchers": 9, "default_branch": "master", "allow_squash_merge": true, "allow_merge_commit": true, "allow_rebase_merge": true, "allow_auto_merge": true, "delete_branch_on_merge": true, "allow_update_branch": true, "use_squash_pr_title_as_default": false, "squash_merge_commit_message": "COMMIT_MESSAGES", "squash_merge_commit_title": "COMMIT_OR_PR_TITLE", "merge_commit_message": "PR_TITLE", "merge_commit_title": "MERGE_MESSAGE" } }, "base": { "label": "keymanapp:staging", "ref": "staging", "sha": "003ef9111d2e42c60b3c01c89543c6f0b9a62eef", "user": { "login": "keymanapp", "id": 12402926, "node_id": "MDEyOk9yZ2FuaXphdGlvbjEyNDAyOTI2", "avatar_url": "https://avatars.githubusercontent.com/u/12402926?v=4", "gravatar_id": "", "url": "https://api.github.com/users/keymanapp", "html_url": "https://github.com/keymanapp", "followers_url": "https://api.github.com/users/keymanapp/followers", "following_url": "https://api.github.com/users/keymanapp/following{/other_user}", "gists_url": "https://api.github.com/users/keymanapp/gists{/gist_id}", "starred_url": "https://api.github.com/users/keymanapp/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/keymanapp/subscriptions", "organizations_url": "https://api.github.com/users/keymanapp/orgs", "repos_url": "https://api.github.com/users/keymanapp/repos", "events_url": "https://api.github.com/users/keymanapp/events{/privacy}", "received_events_url": "https://api.github.com/users/keymanapp/received_events", "type": "Organization", "user_view_type": "public", "site_admin": false }, "repo": { "id": 169322820, "node_id": "MDEwOlJlcG9zaXRvcnkxNjkzMjI4MjA=", "name": "help.keyman.com", "full_name": "keymanapp/help.keyman.com", "private": false, "owner": { "login": "keymanapp", "id": 12402926, "node_id": "MDEyOk9yZ2FuaXphdGlvbjEyNDAyOTI2", "avatar_url": "https://avatars.githubusercontent.com/u/12402926?v=4", "gravatar_id": "", "url": "https://api.github.com/users/keymanapp", "html_url": "https://github.com/keymanapp", "followers_url": "https://api.github.com/users/keymanapp/followers", "following_url": "https://api.github.com/users/keymanapp/following{/other_user}", "gists_url": "https://api.github.com/users/keymanapp/gists{/gist_id}", "starred_url": "https://api.github.com/users/keymanapp/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/keymanapp/subscriptions", "organizations_url": "https://api.github.com/users/keymanapp/orgs", "repos_url": "https://api.github.com/users/keymanapp/repos", "events_url": "https://api.github.com/users/keymanapp/events{/privacy}", "received_events_url": "https://api.github.com/users/keymanapp/received_events", "type": "Organization", "user_view_type": "public", "site_admin": false }, "html_url": "https://github.com/keymanapp/help.keyman.com", "description": "https://help.keyman.com/ source", "fork": false, "url": "https://api.github.com/repos/keymanapp/help.keyman.com", "forks_url": "https://api.github.com/repos/keymanapp/help.keyman.com/forks", "keys_url": "https://api.github.com/repos/keymanapp/help.keyman.com/keys{/key_id}", "collaborators_url": "https://api.github.com/repos/keymanapp/help.keyman.com/collaborators{/collaborator}", "teams_url": "https://api.github.com/repos/keymanapp/help.keyman.com/teams", "hooks_url": "https://api.github.com/repos/keymanapp/help.keyman.com/hooks", "issue_events_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues/events{/number}", "events_url": "https://api.github.com/repos/keymanapp/help.keyman.com/events", "assignees_url": "https://api.github.com/repos/keymanapp/help.keyman.com/assignees{/user}", "branches_url": "https://api.github.com/repos/keymanapp/help.keyman.com/branches{/branch}", "tags_url": "https://api.github.com/repos/keymanapp/help.keyman.com/tags", "blobs_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/blobs{/sha}", "git_tags_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/tags{/sha}", "git_refs_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/refs{/sha}", "trees_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/trees{/sha}", "statuses_url": "https://api.github.com/repos/keymanapp/help.keyman.com/statuses/{sha}", "languages_url": "https://api.github.com/repos/keymanapp/help.keyman.com/languages", "stargazers_url": "https://api.github.com/repos/keymanapp/help.keyman.com/stargazers", "contributors_url": "https://api.github.com/repos/keymanapp/help.keyman.com/contributors", "subscribers_url": "https://api.github.com/repos/keymanapp/help.keyman.com/subscribers", "subscription_url": "https://api.github.com/repos/keymanapp/help.keyman.com/subscription", "commits_url": "https://api.github.com/repos/keymanapp/help.keyman.com/commits{/sha}", "git_commits_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/commits{/sha}", "comments_url": "https://api.github.com/repos/keymanapp/help.keyman.com/comments{/number}", "issue_comment_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues/comments{/number}", "contents_url": "https://api.github.com/repos/keymanapp/help.keyman.com/contents/{+path}", "compare_url": "https://api.github.com/repos/keymanapp/help.keyman.com/compare/{base}...{head}", "merges_url": "https://api.github.com/repos/keymanapp/help.keyman.com/merges", "archive_url": "https://api.github.com/repos/keymanapp/help.keyman.com/{archive_format}{/ref}", "downloads_url": "https://api.github.com/repos/keymanapp/help.keyman.com/downloads", "issues_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues{/number}", "pulls_url": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls{/number}", "milestones_url": "https://api.github.com/repos/keymanapp/help.keyman.com/milestones{/number}", "notifications_url": "https://api.github.com/repos/keymanapp/help.keyman.com/notifications{?since,all,participating}", "labels_url": "https://api.github.com/repos/keymanapp/help.keyman.com/labels{/name}", "releases_url": "https://api.github.com/repos/keymanapp/help.keyman.com/releases{/id}", "deployments_url": "https://api.github.com/repos/keymanapp/help.keyman.com/deployments", "created_at": "2019-02-05T22:24:52Z", "updated_at": "2026-06-22T15:40:45Z", "pushed_at": "2026-06-22T16:51:32Z", "git_url": "git://github.com/keymanapp/help.keyman.com.git", "ssh_url": "git@github.com:keymanapp/help.keyman.com.git", "clone_url": "https://github.com/keymanapp/help.keyman.com.git", "svn_url": "https://github.com/keymanapp/help.keyman.com", "homepage": null, "size": 301695, "stargazers_count": 9, "watchers_count": 9, "language": "PHP", "has_issues": true, "has_projects": true, "has_downloads": true, "has_wiki": false, "has_pages": false, "has_discussions": false, "forks_count": 44, "mirror_url": null, "archived": false, "disabled": false, "open_issues_count": 41, "license": null, "allow_forking": true, "is_template": false, "web_commit_signoff_required": false, "has_pull_requests": true, "pull_request_creation_policy": "all", "topics": [ ], "visibility": "public", "forks": 44, "open_issues": 41, "watchers": 9, "default_branch": "master", "allow_squash_merge": true, "allow_merge_commit": true, "allow_rebase_merge": true, "allow_auto_merge": true, "delete_branch_on_merge": true, "allow_update_branch": true, "use_squash_pr_title_as_default": false, "squash_merge_commit_message": "COMMIT_MESSAGES", "squash_merge_commit_title": "COMMIT_OR_PR_TITLE", "merge_commit_message": "PR_TITLE", "merge_commit_title": "MERGE_MESSAGE" } }, "_links": { "self": { "href": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls/2588" }, "html": { "href": "https://github.com/keymanapp/help.keyman.com/pull/2588" }, "issue": { "href": "https://api.github.com/repos/keymanapp/help.keyman.com/issues/2588" }, "comments": { "href": "https://api.github.com/repos/keymanapp/help.keyman.com/issues/2588/comments" }, "review_comments": { "href": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls/2588/comments" }, "review_comment": { "href": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls/comments{/number}" }, "commits": { "href": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls/2588/commits" }, "statuses": { "href": "https://api.github.com/repos/keymanapp/help.keyman.com/statuses/7ffb0477f4240521be68fff2de0eb7e561a85ec8" } }, "author_association": "CONTRIBUTOR", "auto_merge": { "enabled_by": { "login": "keyman-status", "id": 75399505, "node_id": "MDQ6VXNlcjc1Mzk5NTA1", "avatar_url": "https://avatars.githubusercontent.com/u/75399505?v=4", "gravatar_id": "", "url": "https://api.github.com/users/keyman-status", "html_url": "https://github.com/keyman-status", "followers_url": "https://api.github.com/users/keyman-status/followers", "following_url": "https://api.github.com/users/keyman-status/following{/other_user}", "gists_url": "https://api.github.com/users/keyman-status/gists{/gist_id}", "starred_url": "https://api.github.com/users/keyman-status/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/keyman-status/subscriptions", "organizations_url": "https://api.github.com/users/keyman-status/orgs", "repos_url": "https://api.github.com/users/keyman-status/repos", "events_url": "https://api.github.com/users/keyman-status/events{/privacy}", "received_events_url": "https://api.github.com/users/keyman-status/received_events", "type": "User", "user_view_type": "public", "site_admin": false }, "merge_method": "merge", "commit_title": null, "commit_message": null }, "assignee": null, "active_lock_reason": null, "merged": true, "mergeable": null, "rebaseable": null, "mergeable_state": "unknown", "merged_by": { "login": "keyman-status", "id": 75399505, "node_id": "MDQ6VXNlcjc1Mzk5NTA1", "avatar_url": "https://avatars.githubusercontent.com/u/75399505?v=4", "gravatar_id": "", "url": "https://api.github.com/users/keyman-status", "html_url": "https://github.com/keyman-status", "followers_url": "https://api.github.com/users/keyman-status/followers", "following_url": "https://api.github.com/users/keyman-status/following{/other_user}", "gists_url": "https://api.github.com/users/keyman-status/gists{/gist_id}", "starred_url": "https://api.github.com/users/keyman-status/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/keyman-status/subscriptions", "organizations_url": "https://api.github.com/users/keyman-status/orgs", "repos_url": "https://api.github.com/users/keyman-status/repos", "events_url": "https://api.github.com/users/keyman-status/events{/privacy}", "received_events_url": "https://api.github.com/users/keyman-status/received_events", "type": "User", "user_view_type": "public", "site_admin": false }, "comments": 0, "review_comments": 0, "maintainer_can_modify": false, "commits": 102, "additions": 20004, "deletions": 611, "changed_files": 228 }, "repository": { "id": 169322820, "node_id": "MDEwOlJlcG9zaXRvcnkxNjkzMjI4MjA=", "name": "help.keyman.com", "full_name": "keymanapp/help.keyman.com", "private": false, "owner": { "login": "keymanapp", "id": 12402926, "node_id": "MDEyOk9yZ2FuaXphdGlvbjEyNDAyOTI2", "avatar_url": "https://avatars.githubusercontent.com/u/12402926?v=4", "gravatar_id": "", "url": "https://api.github.com/users/keymanapp", "html_url": "https://github.com/keymanapp", "followers_url": "https://api.github.com/users/keymanapp/followers", "following_url": "https://api.github.com/users/keymanapp/following{/other_user}", "gists_url": "https://api.github.com/users/keymanapp/gists{/gist_id}", "starred_url": "https://api.github.com/users/keymanapp/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/keymanapp/subscriptions", "organizations_url": "https://api.github.com/users/keymanapp/orgs", "repos_url": "https://api.github.com/users/keymanapp/repos", "events_url": "https://api.github.com/users/keymanapp/events{/privacy}", "received_events_url": "https://api.github.com/users/keymanapp/received_events", "type": "Organization", "user_view_type": "public", "site_admin": false }, "html_url": "https://github.com/keymanapp/help.keyman.com", "description": "https://help.keyman.com/ source", "fork": false, "url": "https://api.github.com/repos/keymanapp/help.keyman.com", "forks_url": "https://api.github.com/repos/keymanapp/help.keyman.com/forks", "keys_url": "https://api.github.com/repos/keymanapp/help.keyman.com/keys{/key_id}", "collaborators_url": "https://api.github.com/repos/keymanapp/help.keyman.com/collaborators{/collaborator}", "teams_url": "https://api.github.com/repos/keymanapp/help.keyman.com/teams", "hooks_url": "https://api.github.com/repos/keymanapp/help.keyman.com/hooks", "issue_events_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues/events{/number}", "events_url": "https://api.github.com/repos/keymanapp/help.keyman.com/events", "assignees_url": "https://api.github.com/repos/keymanapp/help.keyman.com/assignees{/user}", "branches_url": "https://api.github.com/repos/keymanapp/help.keyman.com/branches{/branch}", "tags_url": "https://api.github.com/repos/keymanapp/help.keyman.com/tags", "blobs_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/blobs{/sha}", "git_tags_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/tags{/sha}", "git_refs_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/refs{/sha}", "trees_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/trees{/sha}", "statuses_url": "https://api.github.com/repos/keymanapp/help.keyman.com/statuses/{sha}", "languages_url": "https://api.github.com/repos/keymanapp/help.keyman.com/languages", "stargazers_url": "https://api.github.com/repos/keymanapp/help.keyman.com/stargazers", "contributors_url": "https://api.github.com/repos/keymanapp/help.keyman.com/contributors", "subscribers_url": "https://api.github.com/repos/keymanapp/help.keyman.com/subscribers", "subscription_url": "https://api.github.com/repos/keymanapp/help.keyman.com/subscription", "commits_url": "https://api.github.com/repos/keymanapp/help.keyman.com/commits{/sha}", "git_commits_url": "https://api.github.com/repos/keymanapp/help.keyman.com/git/commits{/sha}", "comments_url": "https://api.github.com/repos/keymanapp/help.keyman.com/comments{/number}", "issue_comment_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues/comments{/number}", "contents_url": "https://api.github.com/repos/keymanapp/help.keyman.com/contents/{+path}", "compare_url": "https://api.github.com/repos/keymanapp/help.keyman.com/compare/{base}...{head}", "merges_url": "https://api.github.com/repos/keymanapp/help.keyman.com/merges", "archive_url": "https://api.github.com/repos/keymanapp/help.keyman.com/{archive_format}{/ref}", "downloads_url": "https://api.github.com/repos/keymanapp/help.keyman.com/downloads", "issues_url": "https://api.github.com/repos/keymanapp/help.keyman.com/issues{/number}", "pulls_url": "https://api.github.com/repos/keymanapp/help.keyman.com/pulls{/number}", "milestones_url": "https://api.github.com/repos/keymanapp/help.keyman.com/milestones{/number}", "notifications_url": "https://api.github.com/repos/keymanapp/help.keyman.com/notifications{?since,all,participating}", "labels_url": "https://api.github.com/repos/keymanapp/help.keyman.com/labels{/name}", "releases_url": "https://api.github.com/repos/keymanapp/help.keyman.com/releases{/id}", "deployments_url": "https://api.github.com/repos/keymanapp/help.keyman.com/deployments", "created_at": "2019-02-05T22:24:52Z", "updated_at": "2026-06-22T15:40:45Z", "pushed_at": "2026-06-22T16:51:32Z", "git_url": "git://github.com/keymanapp/help.keyman.com.git", "ssh_url": "git@github.com:keymanapp/help.keyman.com.git", "clone_url": "https://github.com/keymanapp/help.keyman.com.git", "svn_url": "https://github.com/keymanapp/help.keyman.com", "homepage": null, "size": 301695, "stargazers_count": 9, "watchers_count": 9, "language": "PHP", "has_issues": true, "has_projects": true, "has_downloads": true, "has_wiki": false, "has_pages": false, "has_discussions": false, "forks_count": 44, "mirror_url": null, "archived": false, "disabled": false, "open_issues_count": 41, "license": null, "allow_forking": true, "is_template": false, "web_commit_signoff_required": false, "has_pull_requests": true, "pull_request_creation_policy": "all", "topics": [ ], "visibility": "public", "forks": 44, "open_issues": 41, "watchers": 9, "default_branch": "master", "custom_properties": { } }, "organization": { "login": "keymanapp", "id": 12402926, "node_id": "MDEyOk9yZ2FuaXphdGlvbjEyNDAyOTI2", "url": "https://api.github.com/orgs/keymanapp", "repos_url": "https://api.github.com/orgs/keymanapp/repos", "events_url": "https://api.github.com/orgs/keymanapp/events", "hooks_url": "https://api.github.com/orgs/keymanapp/hooks", "issues_url": "https://api.github.com/orgs/keymanapp/issues", "members_url": "https://api.github.com/orgs/keymanapp/members{/member}", "public_members_url": "https://api.github.com/orgs/keymanapp/public_members{/member}", "avatar_url": "https://avatars.githubusercontent.com/u/12402926?v=4", "description": "Home of the Keyman open source keyboarding system" }, "sender": { "login": "keyman-status", "id": 75399505, "node_id": "MDQ6VXNlcjc1Mzk5NTA1", "avatar_url": "https://avatars.githubusercontent.com/u/75399505?v=4", "gravatar_id": "", "url": "https://api.github.com/users/keyman-status", "html_url": "https://github.com/keyman-status", "followers_url": "https://api.github.com/users/keyman-status/followers", "following_url": "https://api.github.com/users/keyman-status/following{/other_user}", "gists_url": "https://api.github.com/users/keyman-status/gists{/gist_id}", "starred_url": "https://api.github.com/users/keyman-status/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/keyman-status/subscriptions", "organizations_url": "https://api.github.com/users/keyman-status/orgs", "repos_url": "https://api.github.com/users/keyman-status/repos", "events_url": "https://api.github.com/users/keyman-status/events{/privacy}", "received_events_url": "https://api.github.com/users/keyman-status/received_events", "type": "User", "user_view_type": "public", "site_admin": false } }