Darkmatter · agent stage: prod
preview@internal.darkmatter
Events received
122269
Ignored
122114
Jobs dispatched
161

Event cbcc6430…

← All events

Event

Delivery
cbcc6430-5c8d-11f1-8b03-c1ab971a627d
Event
pull_request_review_thread
Action
resolved
Received
2026-05-31T01:12:31.528Z
Signature
valid
Parsed
yes
Sender
scottmcmaster
Repo
darkmatter/nixmac
Status
ignored — unsupported_event

Headers

{
  "accept": "*/*",
  "accept-encoding": "gzip, br",
  "cf-connecting-ip": "140.82.115.44",
  "cf-ipcountry": "US",
  "cf-ray": "a0421c5d0e53b506",
  "cf-visitor": "{\"scheme\":\"https\"}",
  "connection": "Keep-Alive",
  "content-length": "42293",
  "content-type": "application/json",
  "host": "github-bot.darkmatter.io",
  "user-agent": "GitHub-Hookshot/c97f169",
  "x-forwarded-proto": "https",
  "x-github-delivery": "cbcc6430-5c8d-11f1-8b03-c1ab971a627d",
  "x-github-event": "pull_request_review_thread",
  "x-github-hook-id": "628737947",
  "x-github-hook-installation-target-id": "3663660",
  "x-github-hook-installation-target-type": "integration",
  "x-real-ip": "140.82.115.44"
}

Payload

{
  "action": "resolved",
  "pull_request": {
    "url": "https://api.github.com/repos/darkmatter/nixmac/pulls/238",
    "id": 3767847827,
    "node_id": "PR_kwDOSB6EzM7glMuT",
    "html_url": "https://github.com/darkmatter/nixmac/pull/238",
    "diff_url": "https://github.com/darkmatter/nixmac/pull/238.diff",
    "patch_url": "https://github.com/darkmatter/nixmac/pull/238.patch",
    "issue_url": "https://api.github.com/repos/darkmatter/nixmac/issues/238",
    "number": 238,
    "state": "open",
    "locked": false,
    "title": "feat: introduce git2 for faster read-only Git operations; add profiling support",
    "user": {
      "login": "scottmcmaster",
      "id": 3137688,
      "node_id": "MDQ6VXNlcjMxMzc2ODg=",
      "avatar_url": "https://avatars.githubusercontent.com/u/3137688?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/scottmcmaster",
      "html_url": "https://github.com/scottmcmaster",
      "followers_url": "https://api.github.com/users/scottmcmaster/followers",
      "following_url": "https://api.github.com/users/scottmcmaster/following{/other_user}",
      "gists_url": "https://api.github.com/users/scottmcmaster/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/scottmcmaster/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/scottmcmaster/subscriptions",
      "organizations_url": "https://api.github.com/users/scottmcmaster/orgs",
      "repos_url": "https://api.github.com/users/scottmcmaster/repos",
      "events_url": "https://api.github.com/users/scottmcmaster/events{/privacy}",
      "received_events_url": "https://api.github.com/users/scottmcmaster/received_events",
      "type": "User",
      "user_view_type": "public",
      "site_admin": false
    },
    "body": "## Summary\r\n\r\nIntroduces a git2 dependency and moves the most-clearly-safe git utilities from exec.rs into a new file query.rs with clear comments at the top of each file as to what should go where and why. I also introduced profiling support and docs.\r\n\r\nThe reason is this profile, which demonstrates that of the things we can actually control (without major architectural changes) during evolution, the git operations are pretty much the most expensive:\r\n\r\n<img width=\"816\" height=\"155\" alt=\"before\" src=\"https://github.com/user-attachments/assets/c889d9ea-c172-4ba4-aee4-0f127f22ea09\" />\r\n\r\nAfterwards it looks more like:\r\n\r\n<img width=\"1049\" height=\"125\" alt=\"after\" src=\"https://github.com/user-attachments/assets/cd61ece3-5b89-47c4-acad-7619f72368b4\" />\r\n\r\nwhere the individual functions migrated to git2 show up elsewhere but generally are more like:\r\n\r\n<img width=\"655\" height=\"136\" alt=\"Screenshot 2026-05-29 at 4 44 04 PM\" src=\"https://github.com/user-attachments/assets/a4b661ed-165c-4949-a072-63fbff5145e3\" />\r\n\r\nThere are a couple of reasons why it's not immediately clear that it's possible to just blanket-migrate everything in exec.rs to git2, and I won't go into all that here (although I added some clues in comments in the code)...but I will continue looking at opportunities.\r\n\r\n## Test Plan\r\n\r\nManual testing, profiling, added a bunch of new unit tests for the migrated functions.\r\n\r\n## Docs\r\n\r\n- [x] Docs updated\r\n- [ ] No docs update needed\r\n",
    "created_at": "2026-05-29T09:11:30Z",
    "updated_at": "2026-05-31T01:12:26Z",
    "closed_at": null,
    "merged_at": null,
    "merge_commit_sha": "e888d2ebc347f6ddf0f9ef5dcfe9127689df3cf1",
    "assignees": [
      {
        "login": "scottmcmaster",
        "id": 3137688,
        "node_id": "MDQ6VXNlcjMxMzc2ODg=",
        "avatar_url": "https://avatars.githubusercontent.com/u/3137688?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/scottmcmaster",
        "html_url": "https://github.com/scottmcmaster",
        "followers_url": "https://api.github.com/users/scottmcmaster/followers",
        "following_url": "https://api.github.com/users/scottmcmaster/following{/other_user}",
        "gists_url": "https://api.github.com/users/scottmcmaster/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/scottmcmaster/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/scottmcmaster/subscriptions",
        "organizations_url": "https://api.github.com/users/scottmcmaster/orgs",
        "repos_url": "https://api.github.com/users/scottmcmaster/repos",
        "events_url": "https://api.github.com/users/scottmcmaster/events{/privacy}",
        "received_events_url": "https://api.github.com/users/scottmcmaster/received_events",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      }
    ],
    "requested_reviewers": [
      {
        "login": "CasLinden",
        "id": 83954807,
        "node_id": "MDQ6VXNlcjgzOTU0ODA3",
        "avatar_url": "https://avatars.githubusercontent.com/u/83954807?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/CasLinden",
        "html_url": "https://github.com/CasLinden",
        "followers_url": "https://api.github.com/users/CasLinden/followers",
        "following_url": "https://api.github.com/users/CasLinden/following{/other_user}",
        "gists_url": "https://api.github.com/users/CasLinden/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/CasLinden/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/CasLinden/subscriptions",
        "organizations_url": "https://api.github.com/users/CasLinden/orgs",
        "repos_url": "https://api.github.com/users/CasLinden/repos",
        "events_url": "https://api.github.com/users/CasLinden/events{/privacy}",
        "received_events_url": "https://api.github.com/users/CasLinden/received_events",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      },
      {
        "login": "fkb032",
        "id": 249513614,
        "node_id": "U_kgDODt9Gjg",
        "avatar_url": "https://avatars.githubusercontent.com/u/249513614?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/fkb032",
        "html_url": "https://github.com/fkb032",
        "followers_url": "https://api.github.com/users/fkb032/followers",
        "following_url": "https://api.github.com/users/fkb032/following{/other_user}",
        "gists_url": "https://api.github.com/users/fkb032/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/fkb032/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/fkb032/subscriptions",
        "organizations_url": "https://api.github.com/users/fkb032/orgs",
        "repos_url": "https://api.github.com/users/fkb032/repos",
        "events_url": "https://api.github.com/users/fkb032/events{/privacy}",
        "received_events_url": "https://api.github.com/users/fkb032/received_events",
        "type": "User",
        "user_view_type": "public",
        "site_admin": false
      }
    ],
    "requested_teams": [],
    "labels": [],
    "milestone": null,
    "draft": false,
    "commits_url": "https://api.github.com/repos/darkmatter/nixmac/pulls/238/commits",
    "review_comments_url": "https://api.github.com/repos/darkmatter/nixmac/pulls/238/comments",
    "review_comment_url": "https://api.github.com/repos/darkmatter/nixmac/pulls/comments{/number}",
    "comments_url": "https://api.github.com/repos/darkmatter/nixmac/issues/238/comments",
    "statuses_url": "https://api.github.com/repos/darkmatter/nixmac/statuses/5a9cb31f51577b70028e335c6436bccad3d1a127",
    "head": {
      "label": "darkmatter:scott/introduce-git2",
      "ref": "scott/introduce-git2",
      "sha": "5a9cb31f51577b70028e335c6436bccad3d1a127",
      "user": {
        "login": "darkmatter",
        "id": 17834193,
        "node_id": "MDEyOk9yZ2FuaXphdGlvbjE3ODM0MTkz",
        "avatar_url": "https://avatars.githubusercontent.com/u/17834193?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/darkmatter",
        "html_url": "https://github.com/darkmatter",
        "followers_url": "https://api.github.com/users/darkmatter/followers",
        "following_url": "https://api.github.com/users/darkmatter/following{/other_user}",
        "gists_url": "https://api.github.com/users/darkmatter/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/darkmatter/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/darkmatter/subscriptions",
        "organizations_url": "https://api.github.com/users/darkmatter/orgs",
        "repos_url": "https://api.github.com/users/darkmatter/repos",
        "events_url": "https://api.github.com/users/darkmatter/events{/privacy}",
        "received_events_url": "https://api.github.com/users/darkmatter/received_events",
        "type": "Organization",
        "user_view_type": "public",
        "site_admin": false
      },
      "repo": {
        "id": 1209959628,
        "node_id": "R_kgDOSB6EzA",
        "name": "nixmac",
        "full_name": "darkmatter/nixmac",
        "private": false,
        "owner": {
          "login": "darkmatter",
          "id": 17834193,
          "node_id": "MDEyOk9yZ2FuaXphdGlvbjE3ODM0MTkz",
          "avatar_url": "https://avatars.githubusercontent.com/u/17834193?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/darkmatter",
          "html_url": "https://github.com/darkmatter",
          "followers_url": "https://api.github.com/users/darkmatter/followers",
          "following_url": "https://api.github.com/users/darkmatter/following{/other_user}",
          "gists_url": "https://api.github.com/users/darkmatter/gists{/gist_id}",
          "starred_url": "https://api.github.com/users/darkmatter/starred{/owner}{/repo}",
          "subscriptions_url": "https://api.github.com/users/darkmatter/subscriptions",
          "organizations_url": "https://api.github.com/users/darkmatter/orgs",
          "repos_url": "https://api.github.com/users/darkmatter/repos",
          "events_url": "https://api.github.com/users/darkmatter/events{/privacy}",
          "received_events_url": "https://api.github.com/users/darkmatter/received_events",
          "type": "Organization",
          "user_view_type": "public",
          "site_admin": false
        },
        "html_url": "https://github.com/darkmatter/nixmac",
        "description": "Home manager and nix-darwin that understands plain English",
        "fork": false,
        "url": "https://api.github.com/repos/darkmatter/nixmac",
        "forks_url": "https://api.github.com/repos/darkmatter/nixmac/forks",
        "keys_url": "https://api.github.com/repos/darkmatter/nixmac/keys{/key_id}",
        "collaborators_url": "https://api.github.com/repos/darkmatter/nixmac/collaborators{/collaborator}",
        "teams_url": "https://api.github.com/repos/darkmatter/nixmac/teams",
        "hooks_url": "https://api.github.com/repos/darkmatter/nixmac/hooks",
        "issue_events_url": "https://api.github.com/repos/darkmatter/nixmac/issues/events{/number}",
        "events_url": "https://api.github.com/repos/darkmatter/nixmac/events",
        "assignees_url": "https://api.github.com/repos/darkmatter/nixmac/assignees{/user}",
        "branches_url": "https://api.github.com/repos/darkmatter/nixmac/branches{/branch}",
        "tags_url": "https://api.github.com/repos/darkmatter/nixmac/tags",
        "blobs_url": "https://api.github.com/repos/darkmatter/nixmac/git/blobs{/sha}",
        "git_tags_url": "https://api.github.com/repos/darkmatter/nixmac/git/tags{/sha}",
        "git_refs_url": "https://api.github.com/repos/darkmatter/nixmac/git/refs{/sha}",
        "trees_url": "https://api.github.com/repos/darkmatter/nixmac/git/trees{/sha}",
        "statuses_url": "https://api.github.com/repos/darkmatter/nixmac/statuses/{sha}",
        "languages_url": "https://api.github.com/repos/darkmatter/nixmac/languages",
        "stargazers_url": "https://api.github.com/repos/darkmatter/nixmac/stargazers",
        "contributors_url": "https://api.github.com/repos/darkmatter/nixmac/contributors",
        "subscribers_url": "https://api.github.com/repos/darkmatter/nixmac/subscribers",
        "subscription_url": "https://api.github.com/repos/darkmatter/nixmac/subscription",
        "commits_url": "https://api.github.com/repos/darkmatter/nixmac/commits{/sha}",
        "git_commits_url": "https://api.github.com/repos/darkmatter/nixmac/git/commits{/sha}",
        "comments_url": "https://api.github.com/repos/darkmatter/nixmac/comments{/number}",
        "issue_comment_url": "https://api.github.com/repos/darkmatter/nixmac/issues/comments{/number}",
        "contents_url": "https://api.github.com/repos/darkmatter/nixmac/contents/{+path}",
        "compare_url": "https://api.github.com/repos/darkmatter/nixmac/compare/{base}...{head}",
        "merges_url": "https://api.github.com/repos/darkmatter/nixmac/merges",
        "archive_url": "https://api.github.com/repos/darkmatter/nixmac/{archive_format}{/ref}",
        "downloads_url": "https://api.github.com/repos/darkmatter/nixmac/downloads",
        "issues_url": "https://api.github.com/repos/darkmatter/nixmac/issues{/number}",
        "pulls_url": "https://api.github.com/repos/darkmatter/nixmac/pulls{/number}",
        "milestones_url": "https://api.github.com/repos/darkmatter/nixmac/milestones{/number}",
        "notifications_url": "https://api.github.com/repos/darkmatter/nixmac/notifications{?since,all,participating}",
        "labels_url": "https://api.github.com/repos/darkmatter/nixmac/labels{/name}",
        "releases_url": "https://api.github.com/repos/darkmatter/nixmac/releases{/id}",
        "deployments_url": "https://api.github.com/repos/darkmatter/nixmac/deployments",
        "created_at": "2026-04-14T00:37:13Z",
        "updated_at": "2026-05-29T02:08:22Z",
        "pushed_at": "2026-05-31T01:08:51Z",
        "git_url": "git://github.com/darkmatter/nixmac.git",
        "ssh_url": "git@github.com:darkmatter/nixmac.git",
        "clone_url": "https://github.com/darkmatter/nixmac.git",
        "svn_url": "https://github.com/darkmatter/nixmac",
        "homepage": "https://nixmac.com",
        "size": 678710,
        "stargazers_count": 5,
        "watchers_count": 5,
        "language": "Rust",
        "has_issues": true,
        "has_projects": true,
        "has_downloads": true,
        "has_wiki": true,
        "has_pages": false,
        "has_discussions": false,
        "forks_count": 1,
        "mirror_url": null,
        "archived": false,
        "disabled": false,
        "open_issues_count": 84,
        "license": {
          "key": "mit",
          "name": "MIT License",
          "spdx_id": "MIT",
          "url": "https://api.github.com/licenses/mit",
          "node_id": "MDc6TGljZW5zZTEz"
        },
        "allow_forking": true,
        "is_template": false,
        "web_commit_signoff_required": false,
        "has_pull_requests": true,
        "pull_request_creation_policy": "all",
        "topics": [
          "home-manager",
          "nix",
          "nix-darwin",
          "nix-flake",
          "opencode"
        ],
        "visibility": "public",
        "forks": 1,
        "open_issues": 84,
        "watchers": 5,
        "default_branch": "develop"
      }
    },
    "base": {
      "label": "darkmatter:develop",
      "ref": "develop",
      "sha": "76ad8805cbd9f455e6ffa30b13329a9fbfb9e207",
      "user": {
        "login": "darkmatter",
        "id": 17834193,
        "node_id": "MDEyOk9yZ2FuaXphdGlvbjE3ODM0MTkz",
        "avatar_url": "https://avatars.githubusercontent.com/u/17834193?v=4",
        "gravatar_id": "",
        "url": "https://api.github.com/users/darkmatter",
        "html_url": "https://github.com/darkmatter",
        "followers_url": "https://api.github.com/users/darkmatter/followers",
        "following_url": "https://api.github.com/users/darkmatter/following{/other_user}",
        "gists_url": "https://api.github.com/users/darkmatter/gists{/gist_id}",
        "starred_url": "https://api.github.com/users/darkmatter/starred{/owner}{/repo}",
        "subscriptions_url": "https://api.github.com/users/darkmatter/subscriptions",
        "organizations_url": "https://api.github.com/users/darkmatter/orgs",
        "repos_url": "https://api.github.com/users/darkmatter/repos",
        "events_url": "https://api.github.com/users/darkmatter/events{/privacy}",
        "received_events_url": "https://api.github.com/users/darkmatter/received_events",
        "type": "Organization",
        "user_view_type": "public",
        "site_admin": false
      },
      "repo": {
        "id": 1209959628,
        "node_id": "R_kgDOSB6EzA",
        "name": "nixmac",
        "full_name": "darkmatter/nixmac",
        "private": false,
        "owner": {
          "login": "darkmatter",
          "id": 17834193,
          "node_id": "MDEyOk9yZ2FuaXphdGlvbjE3ODM0MTkz",
          "avatar_url": "https://avatars.githubusercontent.com/u/17834193?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/darkmatter",
          "html_url": "https://github.com/darkmatter",
          "followers_url": "https://api.github.com/users/darkmatter/followers",
          "following_url": "https://api.github.com/users/darkmatter/following{/other_user}",
          "gists_url": "https://api.github.com/users/darkmatter/gists{/gist_id}",
          "starred_url": "https://api.github.com/users/darkmatter/starred{/owner}{/repo}",
          "subscriptions_url": "https://api.github.com/users/darkmatter/subscriptions",
          "organizations_url": "https://api.github.com/users/darkmatter/orgs",
          "repos_url": "https://api.github.com/users/darkmatter/repos",
          "events_url": "https://api.github.com/users/darkmatter/events{/privacy}",
          "received_events_url": "https://api.github.com/users/darkmatter/received_events",
          "type": "Organization",
          "user_view_type": "public",
          "site_admin": false
        },
        "html_url": "https://github.com/darkmatter/nixmac",
        "description": "Home manager and nix-darwin that understands plain English",
        "fork": false,
        "url": "https://api.github.com/repos/darkmatter/nixmac",
        "forks_url": "https://api.github.com/repos/darkmatter/nixmac/forks",
        "keys_url": "https://api.github.com/repos/darkmatter/nixmac/keys{/key_id}",
        "collaborators_url": "https://api.github.com/repos/darkmatter/nixmac/collaborators{/collaborator}",
        "teams_url": "https://api.github.com/repos/darkmatter/nixmac/teams",
        "hooks_url": "https://api.github.com/repos/darkmatter/nixmac/hooks",
        "issue_events_url": "https://api.github.com/repos/darkmatter/nixmac/issues/events{/number}",
        "events_url": "https://api.github.com/repos/darkmatter/nixmac/events",
        "assignees_url": "https://api.github.com/repos/darkmatter/nixmac/assignees{/user}",
        "branches_url": "https://api.github.com/repos/darkmatter/nixmac/branches{/branch}",
        "tags_url": "https://api.github.com/repos/darkmatter/nixmac/tags",
        "blobs_url": "https://api.github.com/repos/darkmatter/nixmac/git/blobs{/sha}",
        "git_tags_url": "https://api.github.com/repos/darkmatter/nixmac/git/tags{/sha}",
        "git_refs_url": "https://api.github.com/repos/darkmatter/nixmac/git/refs{/sha}",
        "trees_url": "https://api.github.com/repos/darkmatter/nixmac/git/trees{/sha}",
        "statuses_url": "https://api.github.com/repos/darkmatter/nixmac/statuses/{sha}",
        "languages_url": "https://api.github.com/repos/darkmatter/nixmac/languages",
        "stargazers_url": "https://api.github.com/repos/darkmatter/nixmac/stargazers",
        "contributors_url": "https://api.github.com/repos/darkmatter/nixmac/contributors",
        "subscribers_url": "https://api.github.com/repos/darkmatter/nixmac/subscribers",
        "subscription_url": "https://api.github.com/repos/darkmatter/nixmac/subscription",
        "commits_url": "https://api.github.com/repos/darkmatter/nixmac/commits{/sha}",
        "git_commits_url": "https://api.github.com/repos/darkmatter/nixmac/git/commits{/sha}",
        "comments_url": "https://api.github.com/repos/darkmatter/nixmac/comments{/number}",
        "issue_comment_url": "https://api.github.com/repos/darkmatter/nixmac/issues/comments{/number}",
        "contents_url": "https://api.github.com/repos/darkmatter/nixmac/contents/{+path}",
        "compare_url": "https://api.github.com/repos/darkmatter/nixmac/compare/{base}...{head}",
        "merges_url": "https://api.github.com/repos/darkmatter/nixmac/merges",
        "archive_url": "https://api.github.com/repos/darkmatter/nixmac/{archive_format}{/ref}",
        "downloads_url": "https://api.github.com/repos/darkmatter/nixmac/downloads",
        "issues_url": "https://api.github.com/repos/darkmatter/nixmac/issues{/number}",
        "pulls_url": "https://api.github.com/repos/darkmatter/nixmac/pulls{/number}",
        "milestones_url": "https://api.github.com/repos/darkmatter/nixmac/milestones{/number}",
        "notifications_url": "https://api.github.com/repos/darkmatter/nixmac/notifications{?since,all,participating}",
        "labels_url": "https://api.github.com/repos/darkmatter/nixmac/labels{/name}",
        "releases_url": "https://api.github.com/repos/darkmatter/nixmac/releases{/id}",
        "deployments_url": "https://api.github.com/repos/darkmatter/nixmac/deployments",
        "created_at": "2026-04-14T00:37:13Z",
        "updated_at": "2026-05-29T02:08:22Z",
        "pushed_at": "2026-05-31T01:08:51Z",
        "git_url": "git://github.com/darkmatter/nixmac.git",
        "ssh_url": "git@github.com:darkmatter/nixmac.git",
        "clone_url": "https://github.com/darkmatter/nixmac.git",
        "svn_url": "https://github.com/darkmatter/nixmac",
        "homepage": "https://nixmac.com",
        "size": 678710,
        "stargazers_count": 5,
        "watchers_count": 5,
        "language": "Rust",
        "has_issues": true,
        "has_projects": true,
        "has_downloads": true,
        "has_wiki": true,
        "has_pages": false,
        "has_discussions": false,
        "forks_count": 1,
        "mirror_url": null,
        "archived": false,
        "disabled": false,
        "open_issues_count": 84,
        "license": {
          "key": "mit",
          "name": "MIT License",
          "spdx_id": "MIT",
          "url": "https://api.github.com/licenses/mit",
          "node_id": "MDc6TGljZW5zZTEz"
        },
        "allow_forking": true,
        "is_template": false,
        "web_commit_signoff_required": false,
        "has_pull_requests": true,
        "pull_request_creation_policy": "all",
        "topics": [
          "home-manager",
          "nix",
          "nix-darwin",
          "nix-flake",
          "opencode"
        ],
        "visibility": "public",
        "forks": 1,
        "open_issues": 84,
        "watchers": 5,
        "default_branch": "develop"
      }
    },
    "_links": {
      "self": {
        "href": "https://api.github.com/repos/darkmatter/nixmac/pulls/238"
      },
      "html": {
        "href": "https://github.com/darkmatter/nixmac/pull/238"
      },
      "issue": {
        "href": "https://api.github.com/repos/darkmatter/nixmac/issues/238"
      },
      "comments": {
        "href": "https://api.github.com/repos/darkmatter/nixmac/issues/238/comments"
      },
      "review_comments": {
        "href": "https://api.github.com/repos/darkmatter/nixmac/pulls/238/comments"
      },
      "review_comment": {
        "href": "https://api.github.com/repos/darkmatter/nixmac/pulls/comments{/number}"
      },
      "commits": {
        "href": "https://api.github.com/repos/darkmatter/nixmac/pulls/238/commits"
      },
      "statuses": {
        "href": "https://api.github.com/repos/darkmatter/nixmac/statuses/5a9cb31f51577b70028e335c6436bccad3d1a127"
      }
    },
    "author_association": "CONTRIBUTOR",
    "auto_merge": null,
    "assignee": {
      "login": "scottmcmaster",
      "id": 3137688,
      "node_id": "MDQ6VXNlcjMxMzc2ODg=",
      "avatar_url": "https://avatars.githubusercontent.com/u/3137688?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/scottmcmaster",
      "html_url": "https://github.com/scottmcmaster",
      "followers_url": "https://api.github.com/users/scottmcmaster/followers",
      "following_url": "https://api.github.com/users/scottmcmaster/following{/other_user}",
      "gists_url": "https://api.github.com/users/scottmcmaster/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/scottmcmaster/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/scottmcmaster/subscriptions",
      "organizations_url": "https://api.github.com/users/scottmcmaster/orgs",
      "repos_url": "https://api.github.com/users/scottmcmaster/repos",
      "events_url": "https://api.github.com/users/scottmcmaster/events{/privacy}",
      "received_events_url": "https://api.github.com/users/scottmcmaster/received_events",
      "type": "User",
      "user_view_type": "public",
      "site_admin": false
    },
    "active_lock_reason": null
  },
  "thread": {
    "node_id": "PRRT_kwDOSB6EzM6FouA2",
    "comments": [
      {
        "url": "https://api.github.com/repos/darkmatter/nixmac/pulls/comments/3323350144",
        "pull_request_review_id": 4388247448,
        "id": 3323350144,
        "node_id": "PRRC_kwDOSB6EzM7GFkyA",
        "diff_hunk": "@@ -0,0 +1,385 @@\n+/// Git query layer (SAFE)\n+///\n+/// This module uses git2 exclusively.\n+///\n+/// Rules:\n+/// - NO filesystem modification\n+/// - NO index mutation\n+/// - NO working tree changes\n+/// - ONLY Git object graph inspection\n+///\n+/// Basically, only things that don't depend on git porcelain output and/or\n+/// git CLI semantics.\n+use std::path::PathBuf;\n+\n+/// Gets the git repository root directory for `dir`, or `dir` if not in a repo.\n+/// Used for resolving file paths for the benefit of tools and git operations.\n+pub fn repo_root(dir: &str) -> PathBuf {\n+    match git2::Repository::discover(dir) {\n+        Ok(repo) => {\n+            // workdir() is the equivalent of \"show-toplevel\"\n+            // but returns None for bare repositories\n+            repo.workdir()\n+                .map(|p| p.to_path_buf())\n+                .unwrap_or_else(|| PathBuf::from(dir))\n+        }\n+        Err(_) => PathBuf::from(dir),\n+    }\n+}\n+\n+/// Returns true if `dir` is inside a non-bare Git working tree.\n+/// This behaves similarly to:\n+///     git rev-parse --is-inside-work-tree\n+///\n+/// The key point is that a bare repository does not have a working tree.\n+pub fn is_repo(dir: &str) -> bool {\n+    git2::Repository::discover(dir)\n+        .map(|repo| repo.workdir().is_some())\n+        .unwrap_or(false)\n+}\n+\n+/// Returns the current branch name (None if detached HEAD or not a repo).\n+///\n+/// This is equivalent to:\n+///     git rev-parse --abbrev-ref HEAD\n+pub fn current_branch(dir: &str) -> Option<String> {\n+    let repo = git2::Repository::discover(dir).ok()?;\n+\n+    let head = repo.head().ok()?;\n+\n+    let name = head.shorthand().ok()?;\n+\n+    match name {\n+        \"HEAD\" => None,\n+        other => Some(other.to_string()),\n+    }\n+}\n+\n+/// Resolves a Git reference (branch, tag, HEAD, or full ref name) to its commit SHA.\n+///\n+/// This is the git2 equivalent of:\n+///     git rev-parse <ref_name>\n+///\n+/// Behavior:\n+/// - Returns `Some(sha)` if the reference resolves successfully\n+/// - Returns `None` if:\n+///   - the directory is not a Git repository\n+///   - the reference does not exist\n+///   - the reference cannot be resolved to an object\n+pub fn get_ref_sha(dir: &str, ref_name: &str) -> Option<String> {\n+    let repo = git2::Repository::discover(dir).ok()?;\n+\n+    let obj = repo.revparse_single(ref_name).ok()?;\n+\n+    // id is the sha that we want.\n+    Some(obj.id().to_string())\n+}\n+\n+/// Gets the SHA of the current HEAD commit.\n+pub fn get_head_sha(dir: &str) -> Option<String> {\n+    get_ref_sha(dir, \"HEAD\")\n+}\n+\n+/// Returns true if HEAD can be resolved to a commit object.\n+///\n+/// This is stricter than \"HEAD exists\":\n+/// it ensures HEAD ultimately points to a commit that can be diffed.\n+/// Therefore it fixes a bug in the old version that used GitCommand.\n+///\n+/// Equivalent intent:\n+///     git rev-parse --verify HEAD\n+/// but with explicit commit resolution instead of string-level validation.\n+pub fn has_head_commit(dir: &str) -> bool {\n+    match git2::Repository::discover(dir) {\n+        Ok(repo) => repo\n+            .head()\n+            .ok()\n+            .and_then(|h| h.peel_to_commit().ok())\n+            .is_some(),\n+        Err(_) => false,\n+    }\n+}\n+\n+/// Returns all tags pointing at `hash`.\n+///\n+/// Replaces:\n+///   git tag --points-at <hash>\n+///\n+/// Semantics:\n+/// - Returns tag names whose resolved object matches the given commit/object hash\n+/// - Includes both lightweight and annotated tags (annotated tags are peeled)\n+///\n+/// QUERY LAYER (git2, read-only)\n+pub fn read_tags(dir: &str, hash: &str) -> Vec<String> {\n+    let Ok(repo) = git2::Repository::discover(dir) else {\n+        return vec![];\n+    };\n+\n+    let Ok(oid) = git2::Oid::from_str(hash) else {\n+        return vec![];\n+    };\n+\n+    let Ok(target_obj) = repo.find_object(oid, None) else {\n+        return vec![];\n+    };\n+\n+    let Ok(references) = repo.references() else {\n+        return vec![];\n+    };\n+\n+    let mut tags = Vec::new();\n+\n+    for reference in references.flatten() {\n+        let Ok(name) = reference.name() else {\n+            continue;\n+        };\n+\n+        if !name.starts_with(\"refs/tags/\") {\n+            continue;\n+        }\n+\n+        let Ok(resolved) = reference.peel(git2::ObjectType::Any) else {\n+            continue;\n+        };\n+\n+        if resolved.id() == target_obj.id() {\n+            if let Ok(name) = reference.shorthand() {",
        "path": "apps/native/src-tauri/src/git/query.rs",
        "commit_id": "5a9cb31f51577b70028e335c6436bccad3d1a127",
        "original_commit_id": "e34840011cc4299335a160e2af22edafcaf0716d",
        "user": {
          "login": "Copilot",
          "id": 175728472,
          "node_id": "BOT_kgDOCnlnWA",
          "avatar_url": "https://avatars.githubusercontent.com/in/946600?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/Copilot",
          "html_url": "https://github.com/apps/copilot-pull-request-reviewer",
          "followers_url": "https://api.github.com/users/Copilot/followers",
          "following_url": "https://api.github.com/users/Copilot/following{/other_user}",
          "gists_url": "https://api.github.com/users/Copilot/gists{/gist_id}",
          "starred_url": "https://api.github.com/users/Copilot/starred{/owner}{/repo}",
          "subscriptions_url": "https://api.github.com/users/Copilot/subscriptions",
          "organizations_url": "https://api.github.com/users/Copilot/orgs",
          "repos_url": "https://api.github.com/users/Copilot/repos",
          "events_url": "https://api.github.com/users/Copilot/events{/privacy}",
          "received_events_url": "https://api.github.com/users/Copilot/received_events",
          "type": "Bot",
          "user_view_type": "public",
          "site_admin": false
        },
        "body": "`Reference::shorthand()` returns an `Option<&str>` in git2, so this `Ok(...)` pattern is a type mismatch and will not compile.",
        "created_at": "2026-05-29T09:14:10Z",
        "updated_at": "2026-05-29T09:14:10Z",
        "html_url": "https://github.com/darkmatter/nixmac/pull/238#discussion_r3323350144",
        "pull_request_url": "https://api.github.com/repos/darkmatter/nixmac/pulls/238",
        "_links": {
          "self": {
            "href": "https://api.github.com/repos/darkmatter/nixmac/pulls/comments/3323350144"
          },
          "html": {
            "href": "https://github.com/darkmatter/nixmac/pull/238#discussion_r3323350144"
          },
          "pull_request": {
            "href": "https://api.github.com/repos/darkmatter/nixmac/pulls/238"
          }
        },
        "reactions": {
          "url": "https://api.github.com/repos/darkmatter/nixmac/pulls/comments/3323350144/reactions",
          "total_count": 0,
          "+1": 0,
          "-1": 0,
          "laugh": 0,
          "hooray": 0,
          "confused": 0,
          "heart": 0,
          "rocket": 0,
          "eyes": 0
        },
        "start_line": null,
        "original_start_line": null,
        "start_side": null,
        "line": 146,
        "original_line": 146,
        "side": "RIGHT",
        "author_association": "CONTRIBUTOR",
        "original_position": 146,
        "position": 146,
        "subject_type": "line"
      },
      {
        "url": "https://api.github.com/repos/darkmatter/nixmac/pulls/comments/3329548956",
        "pull_request_review_id": 4396224832,
        "id": 3329548956,
        "node_id": "PRRC_kwDOSB6EzM7GdOKc",
        "diff_hunk": "@@ -0,0 +1,385 @@\n+/// Git query layer (SAFE)\n+///\n+/// This module uses git2 exclusively.\n+///\n+/// Rules:\n+/// - NO filesystem modification\n+/// - NO index mutation\n+/// - NO working tree changes\n+/// - ONLY Git object graph inspection\n+///\n+/// Basically, only things that don't depend on git porcelain output and/or\n+/// git CLI semantics.\n+use std::path::PathBuf;\n+\n+/// Gets the git repository root directory for `dir`, or `dir` if not in a repo.\n+/// Used for resolving file paths for the benefit of tools and git operations.\n+pub fn repo_root(dir: &str) -> PathBuf {\n+    match git2::Repository::discover(dir) {\n+        Ok(repo) => {\n+            // workdir() is the equivalent of \"show-toplevel\"\n+            // but returns None for bare repositories\n+            repo.workdir()\n+                .map(|p| p.to_path_buf())\n+                .unwrap_or_else(|| PathBuf::from(dir))\n+        }\n+        Err(_) => PathBuf::from(dir),\n+    }\n+}\n+\n+/// Returns true if `dir` is inside a non-bare Git working tree.\n+/// This behaves similarly to:\n+///     git rev-parse --is-inside-work-tree\n+///\n+/// The key point is that a bare repository does not have a working tree.\n+pub fn is_repo(dir: &str) -> bool {\n+    git2::Repository::discover(dir)\n+        .map(|repo| repo.workdir().is_some())\n+        .unwrap_or(false)\n+}\n+\n+/// Returns the current branch name (None if detached HEAD or not a repo).\n+///\n+/// This is equivalent to:\n+///     git rev-parse --abbrev-ref HEAD\n+pub fn current_branch(dir: &str) -> Option<String> {\n+    let repo = git2::Repository::discover(dir).ok()?;\n+\n+    let head = repo.head().ok()?;\n+\n+    let name = head.shorthand().ok()?;\n+\n+    match name {\n+        \"HEAD\" => None,\n+        other => Some(other.to_string()),\n+    }\n+}\n+\n+/// Resolves a Git reference (branch, tag, HEAD, or full ref name) to its commit SHA.\n+///\n+/// This is the git2 equivalent of:\n+///     git rev-parse <ref_name>\n+///\n+/// Behavior:\n+/// - Returns `Some(sha)` if the reference resolves successfully\n+/// - Returns `None` if:\n+///   - the directory is not a Git repository\n+///   - the reference does not exist\n+///   - the reference cannot be resolved to an object\n+pub fn get_ref_sha(dir: &str, ref_name: &str) -> Option<String> {\n+    let repo = git2::Repository::discover(dir).ok()?;\n+\n+    let obj = repo.revparse_single(ref_name).ok()?;\n+\n+    // id is the sha that we want.\n+    Some(obj.id().to_string())\n+}\n+\n+/// Gets the SHA of the current HEAD commit.\n+pub fn get_head_sha(dir: &str) -> Option<String> {\n+    get_ref_sha(dir, \"HEAD\")\n+}\n+\n+/// Returns true if HEAD can be resolved to a commit object.\n+///\n+/// This is stricter than \"HEAD exists\":\n+/// it ensures HEAD ultimately points to a commit that can be diffed.\n+/// Therefore it fixes a bug in the old version that used GitCommand.\n+///\n+/// Equivalent intent:\n+///     git rev-parse --verify HEAD\n+/// but with explicit commit resolution instead of string-level validation.\n+pub fn has_head_commit(dir: &str) -> bool {\n+    match git2::Repository::discover(dir) {\n+        Ok(repo) => repo\n+            .head()\n+            .ok()\n+            .and_then(|h| h.peel_to_commit().ok())\n+            .is_some(),\n+        Err(_) => false,\n+    }\n+}\n+\n+/// Returns all tags pointing at `hash`.\n+///\n+/// Replaces:\n+///   git tag --points-at <hash>\n+///\n+/// Semantics:\n+/// - Returns tag names whose resolved object matches the given commit/object hash\n+/// - Includes both lightweight and annotated tags (annotated tags are peeled)\n+///\n+/// QUERY LAYER (git2, read-only)\n+pub fn read_tags(dir: &str, hash: &str) -> Vec<String> {\n+    let Ok(repo) = git2::Repository::discover(dir) else {\n+        return vec![];\n+    };\n+\n+    let Ok(oid) = git2::Oid::from_str(hash) else {\n+        return vec![];\n+    };\n+\n+    let Ok(target_obj) = repo.find_object(oid, None) else {\n+        return vec![];\n+    };\n+\n+    let Ok(references) = repo.references() else {\n+        return vec![];\n+    };\n+\n+    let mut tags = Vec::new();\n+\n+    for reference in references.flatten() {\n+        let Ok(name) = reference.name() else {\n+            continue;\n+        };\n+\n+        if !name.starts_with(\"refs/tags/\") {\n+            continue;\n+        }\n+\n+        let Ok(resolved) = reference.peel(git2::ObjectType::Any) else {\n+            continue;\n+        };\n+\n+        if resolved.id() == target_obj.id() {\n+            if let Ok(name) = reference.shorthand() {",
        "path": "apps/native/src-tauri/src/git/query.rs",
        "commit_id": "5a9cb31f51577b70028e335c6436bccad3d1a127",
        "original_commit_id": "e34840011cc4299335a160e2af22edafcaf0716d",
        "user": {
          "login": "scottmcmaster",
          "id": 3137688,
          "node_id": "MDQ6VXNlcjMxMzc2ODg=",
          "avatar_url": "https://avatars.githubusercontent.com/u/3137688?v=4",
          "gravatar_id": "",
          "url": "https://api.github.com/users/scottmcmaster",
          "html_url": "https://github.com/scottmcmaster",
          "followers_url": "https://api.github.com/users/scottmcmaster/followers",
          "following_url": "https://api.github.com/users/scottmcmaster/following{/other_user}",
          "gists_url": "https://api.github.com/users/scottmcmaster/gists{/gist_id}",
          "starred_url": "https://api.github.com/users/scottmcmaster/starred{/owner}{/repo}",
          "subscriptions_url": "https://api.github.com/users/scottmcmaster/subscriptions",
          "organizations_url": "https://api.github.com/users/scottmcmaster/orgs",
          "repos_url": "https://api.github.com/users/scottmcmaster/repos",
          "events_url": "https://api.github.com/users/scottmcmaster/events{/privacy}",
          "received_events_url": "https://api.github.com/users/scottmcmaster/received_events",
          "type": "User",
          "user_view_type": "public",
          "site_admin": false
        },
        "body": "And wrong.",
        "created_at": "2026-05-31T01:12:26Z",
        "updated_at": "2026-05-31T01:12:26Z",
        "html_url": "https://github.com/darkmatter/nixmac/pull/238#discussion_r3329548956",
        "pull_request_url": "https://api.github.com/repos/darkmatter/nixmac/pulls/238",
        "_links": {
          "self": {
            "href": "https://api.github.com/repos/darkmatter/nixmac/pulls/comments/3329548956"
          },
          "html": {
            "href": "https://github.com/darkmatter/nixmac/pull/238#discussion_r3329548956"
          },
          "pull_request": {
            "href": "https://api.github.com/repos/darkmatter/nixmac/pulls/238"
          }
        },
        "reactions": {
          "url": "https://api.github.com/repos/darkmatter/nixmac/pulls/comments/3329548956/reactions",
          "total_count": 0,
          "+1": 0,
          "-1": 0,
          "laugh": 0,
          "hooray": 0,
          "confused": 0,
          "heart": 0,
          "rocket": 0,
          "eyes": 0
        },
        "start_line": null,
        "original_start_line": null,
        "start_side": null,
        "line": 146,
        "original_line": 146,
        "side": "RIGHT",
        "in_reply_to_id": 3323350144,
        "author_association": "CONTRIBUTOR",
        "original_position": 146,
        "position": 146,
        "subject_type": "line"
      }
    ]
  },
  "updated_at": "2026-05-31T09:12:30+08:00",
  "repository": {
    "id": 1209959628,
    "node_id": "R_kgDOSB6EzA",
    "name": "nixmac",
    "full_name": "darkmatter/nixmac",
    "private": false,
    "owner": {
      "login": "darkmatter",
      "id": 17834193,
      "node_id": "MDEyOk9yZ2FuaXphdGlvbjE3ODM0MTkz",
      "avatar_url": "https://avatars.githubusercontent.com/u/17834193?v=4",
      "gravatar_id": "",
      "url": "https://api.github.com/users/darkmatter",
      "html_url": "https://github.com/darkmatter",
      "followers_url": "https://api.github.com/users/darkmatter/followers",
      "following_url": "https://api.github.com/users/darkmatter/following{/other_user}",
      "gists_url": "https://api.github.com/users/darkmatter/gists{/gist_id}",
      "starred_url": "https://api.github.com/users/darkmatter/starred{/owner}{/repo}",
      "subscriptions_url": "https://api.github.com/users/darkmatter/subscriptions",
      "organizations_url": "https://api.github.com/users/darkmatter/orgs",
      "repos_url": "https://api.github.com/users/darkmatter/repos",
      "events_url": "https://api.github.com/users/darkmatter/events{/privacy}",
      "received_events_url": "https://api.github.com/users/darkmatter/received_events",
      "type": "Organization",
      "user_view_type": "public",
      "site_admin": false
    },
    "html_url": "https://github.com/darkmatter/nixmac",
    "description": "Home manager and nix-darwin that understands plain English",
    "fork": false,
    "url": "https://api.github.com/repos/darkmatter/nixmac",
    "forks_url": "https://api.github.com/repos/darkmatter/nixmac/forks",
    "keys_url": "https://api.github.com/repos/darkmatter/nixmac/keys{/key_id}",
    "collaborators_url": "https://api.github.com/repos/darkmatter/nixmac/collaborators{/collaborator}",
    "teams_url": "https://api.github.com/repos/darkmatter/nixmac/teams",
    "hooks_url": "https://api.github.com/repos/darkmatter/nixmac/hooks",
    "issue_events_url": "https://api.github.com/repos/darkmatter/nixmac/issues/events{/number}",
    "events_url": "https://api.github.com/repos/darkmatter/nixmac/events",
    "assignees_url": "https://api.github.com/repos/darkmatter/nixmac/assignees{/user}",
    "branches_url": "https://api.github.com/repos/darkmatter/nixmac/branches{/branch}",
    "tags_url": "https://api.github.com/repos/darkmatter/nixmac/tags",
    "blobs_url": "https://api.github.com/repos/darkmatter/nixmac/git/blobs{/sha}",
    "git_tags_url": "https://api.github.com/repos/darkmatter/nixmac/git/tags{/sha}",
    "git_refs_url": "https://api.github.com/repos/darkmatter/nixmac/git/refs{/sha}",
    "trees_url": "https://api.github.com/repos/darkmatter/nixmac/git/trees{/sha}",
    "statuses_url": "https://api.github.com/repos/darkmatter/nixmac/statuses/{sha}",
    "languages_url": "https://api.github.com/repos/darkmatter/nixmac/languages",
    "stargazers_url": "https://api.github.com/repos/darkmatter/nixmac/stargazers",
    "contributors_url": "https://api.github.com/repos/darkmatter/nixmac/contributors",
    "subscribers_url": "https://api.github.com/repos/darkmatter/nixmac/subscribers",
    "subscription_url": "https://api.github.com/repos/darkmatter/nixmac/subscription",
    "commits_url": "https://api.github.com/repos/darkmatter/nixmac/commits{/sha}",
    "git_commits_url": "https://api.github.com/repos/darkmatter/nixmac/git/commits{/sha}",
    "comments_url": "https://api.github.com/repos/darkmatter/nixmac/comments{/number}",
    "issue_comment_url": "https://api.github.com/repos/darkmatter/nixmac/issues/comments{/number}",
    "contents_url": "https://api.github.com/repos/darkmatter/nixmac/contents/{+path}",
    "compare_url": "https://api.github.com/repos/darkmatter/nixmac/compare/{base}...{head}",
    "merges_url": "https://api.github.com/repos/darkmatter/nixmac/merges",
    "archive_url": "https://api.github.com/repos/darkmatter/nixmac/{archive_format}{/ref}",
    "downloads_url": "https://api.github.com/repos/darkmatter/nixmac/downloads",
    "issues_url": "https://api.github.com/repos/darkmatter/nixmac/issues{/number}",
    "pulls_url": "https://api.github.com/repos/darkmatter/nixmac/pulls{/number}",
    "milestones_url": "https://api.github.com/repos/darkmatter/nixmac/milestones{/number}",
    "notifications_url": "https://api.github.com/repos/darkmatter/nixmac/notifications{?since,all,participating}",
    "labels_url": "https://api.github.com/repos/darkmatter/nixmac/labels{/name}",
    "releases_url": "https://api.github.com/repos/darkmatter/nixmac/releases{/id}",
    "deployments_url": "https://api.github.com/repos/darkmatter/nixmac/deployments",
    "created_at": "2026-04-14T00:37:13Z",
    "updated_at": "2026-05-29T02:08:22Z",
    "pushed_at": "2026-05-31T01:08:51Z",
    "git_url": "git://github.com/darkmatter/nixmac.git",
    "ssh_url": "git@github.com:darkmatter/nixmac.git",
    "clone_url": "https://github.com/darkmatter/nixmac.git",
    "svn_url": "https://github.com/darkmatter/nixmac",
    "homepage": "https://nixmac.com",
    "size": 678710,
    "stargazers_count": 5,
    "watchers_count": 5,
    "language": "Rust",
    "has_issues": true,
    "has_projects": true,
    "has_downloads": true,
    "has_wiki": true,
    "has_pages": false,
    "has_discussions": false,
    "forks_count": 1,
    "mirror_url": null,
    "archived": false,
    "disabled": false,
    "open_issues_count": 84,
    "license": {
      "key": "mit",
      "name": "MIT License",
      "spdx_id": "MIT",
      "url": "https://api.github.com/licenses/mit",
      "node_id": "MDc6TGljZW5zZTEz"
    },
    "allow_forking": true,
    "is_template": false,
    "web_commit_signoff_required": false,
    "has_pull_requests": true,
    "pull_request_creation_policy": "all",
    "topics": [
      "home-manager",
      "nix",
      "nix-darwin",
      "nix-flake",
      "opencode"
    ],
    "visibility": "public",
    "forks": 1,
    "open_issues": 84,
    "watchers": 5,
    "default_branch": "develop",
    "custom_properties": {}
  },
  "organization": {
    "login": "darkmatter",
    "id": 17834193,
    "node_id": "MDEyOk9yZ2FuaXphdGlvbjE3ODM0MTkz",
    "url": "https://api.github.com/orgs/darkmatter",
    "repos_url": "https://api.github.com/orgs/darkmatter/repos",
    "events_url": "https://api.github.com/orgs/darkmatter/events",
    "hooks_url": "https://api.github.com/orgs/darkmatter/hooks",
    "issues_url": "https://api.github.com/orgs/darkmatter/issues",
    "members_url": "https://api.github.com/orgs/darkmatter/members{/member}",
    "public_members_url": "https://api.github.com/orgs/darkmatter/public_members{/member}",
    "avatar_url": "https://avatars.githubusercontent.com/u/17834193?v=4",
    "description": ""
  },
  "enterprise": {
    "id": 469843,
    "slug": "darkmatter",
    "name": "darkmatter",
    "node_id": "E_kgDOAAcrUw",
    "avatar_url": "https://avatars.githubusercontent.com/b/469843?v=4",
    "description": "",
    "website_url": "darkmatter.io",
    "html_url": "https://github.com/enterprises/darkmatter",
    "created_at": "2025-09-07T16:01:00Z",
    "updated_at": "2026-05-09T15:34:55Z"
  },
  "sender": {
    "login": "scottmcmaster",
    "id": 3137688,
    "node_id": "MDQ6VXNlcjMxMzc2ODg=",
    "avatar_url": "https://avatars.githubusercontent.com/u/3137688?v=4",
    "gravatar_id": "",
    "url": "https://api.github.com/users/scottmcmaster",
    "html_url": "https://github.com/scottmcmaster",
    "followers_url": "https://api.github.com/users/scottmcmaster/followers",
    "following_url": "https://api.github.com/users/scottmcmaster/following{/other_user}",
    "gists_url": "https://api.github.com/users/scottmcmaster/gists{/gist_id}",
    "starred_url": "https://api.github.com/users/scottmcmaster/starred{/owner}{/repo}",
    "subscriptions_url": "https://api.github.com/users/scottmcmaster/subscriptions",
    "organizations_url": "https://api.github.com/users/scottmcmaster/orgs",
    "repos_url": "https://api.github.com/users/scottmcmaster/repos",
    "events_url": "https://api.github.com/users/scottmcmaster/events{/privacy}",
    "received_events_url": "https://api.github.com/users/scottmcmaster/received_events",
    "type": "User",
    "user_view_type": "public",
    "site_admin": false
  },
  "installation": {
    "id": 131074261,
    "node_id": "MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMTMxMDc0MjYx"
  }
}