openhound-github 0.3.7__tar.gz → 0.5.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (389) hide show
  1. {openhound_github-0.3.7 → openhound_github-0.5.0}/PKG-INFO +10 -2
  2. {openhound_github-0.3.7 → openhound_github-0.5.0}/README.md +8 -0
  3. openhound_github-0.5.0/descriptions/edges/GH_AddMember.md +3 -0
  4. openhound_github-0.5.0/descriptions/edges/GH_AdminTo.md +3 -0
  5. openhound_github-0.5.0/descriptions/edges/GH_ApprovesDeploymentTo.md +7 -0
  6. openhound_github-0.5.0/descriptions/edges/GH_AssignedTo.md +5 -0
  7. openhound_github-0.5.0/descriptions/edges/GH_CanCreateEnvironment.md +5 -0
  8. openhound_github-0.5.0/descriptions/edges/GH_CanCreateRepositoryWithRunnerAccess.md +9 -0
  9. openhound_github-0.5.0/descriptions/edges/GH_CanDeployToEnvironment.md +7 -0
  10. openhound_github-0.5.0/descriptions/edges/GH_CanEditEnvironment.md +15 -0
  11. openhound_github-0.5.0/descriptions/edges/GH_CanUseRunner.md +5 -0
  12. openhound_github-0.5.0/descriptions/edges/GH_Contains.md +3 -0
  13. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_DeploysTo.md +1 -1
  14. openhound_github-0.5.0/descriptions/edges/GH_GrantsAccessTo.md +5 -0
  15. openhound_github-0.5.0/descriptions/edges/GH_HasBranch.md +3 -0
  16. openhound_github-0.5.0/descriptions/edges/GH_HasEnvironment.md +3 -0
  17. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_HasSecret.md +1 -1
  18. openhound_github-0.5.0/descriptions/edges/GH_HasVariable.md +3 -0
  19. openhound_github-0.5.0/descriptions/edges/GH_InheritedFrom.md +5 -0
  20. openhound_github-0.5.0/descriptions/edges/GH_MatchesEnvironmentPolicy.md +7 -0
  21. openhound_github-0.5.0/descriptions/edges/GH_UsesSecret.md +20 -0
  22. openhound_github-0.5.0/descriptions/edges/GH_UsesVariable.md +20 -0
  23. openhound_github-0.5.0/descriptions/nodes/GH_EnterpriseRunner.md +5 -0
  24. openhound_github-0.5.0/descriptions/nodes/GH_EnterpriseRunnerGroup.md +5 -0
  25. openhound_github-0.5.0/descriptions/nodes/GH_Environment.md +5 -0
  26. openhound_github-0.5.0/descriptions/nodes/GH_EnvironmentBranchPolicy.md +5 -0
  27. openhound_github-0.5.0/descriptions/nodes/GH_EnvironmentSecret.md +5 -0
  28. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_EnvironmentVariable.md +2 -0
  29. openhound_github-0.5.0/descriptions/nodes/GH_OrgRunner.md +5 -0
  30. openhound_github-0.5.0/descriptions/nodes/GH_OrgRunnerGroup.md +5 -0
  31. openhound_github-0.5.0/descriptions/nodes/GH_RepoRunner.md +5 -0
  32. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/environments-admin-bypass.json +1 -1
  33. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/repository-workflows.json +1 -1
  34. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/unprotected-branches.json +1 -1
  35. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/unprotected-default-branch-with-workflow.json +1 -1
  36. openhound_github-0.5.0/extension/saved_searches/unprotected-default-branches.json +5 -0
  37. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/schema.json +256 -40
  38. {openhound_github-0.3.7 → openhound_github-0.5.0}/pyproject.toml +1 -1
  39. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/graphql.py +36 -62
  40. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/helpers.py +2 -5
  41. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/kinds/edges.py +56 -3
  42. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/kinds/nodes.py +22 -1
  43. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/lookup.py +177 -4
  44. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/main.py +5 -0
  45. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/__init__.py +27 -7
  46. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/branch.py +6 -6
  47. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/enterprise_role.py +78 -0
  48. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/enterprise_team.py +14 -0
  49. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/enterprise_team_organization.py +1 -1
  50. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/enterprise_user.py +19 -0
  51. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/env_secret.py +14 -1
  52. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/env_variable.py +14 -1
  53. openhound_github-0.5.0/src/openhound_github/models/environment.py +494 -0
  54. openhound_github-0.5.0/src/openhound_github/models/environment_branch_policy.py +172 -0
  55. openhound_github-0.5.0/src/openhound_github/models/external_identity.py +367 -0
  56. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/org_role.py +71 -29
  57. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/org_secret.py +44 -7
  58. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/org_variable.py +47 -11
  59. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/repo_role_assignment.py +3 -0
  60. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/repository.py +16 -4
  61. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/repository_role.py +49 -1
  62. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/repository_variable.py +2 -2
  63. openhound_github-0.5.0/src/openhound_github/models/runner.py +879 -0
  64. openhound_github-0.5.0/src/openhound_github/models/saml_assertion_consumer_service.py +126 -0
  65. openhound_github-0.5.0/src/openhound_github/models/saml_helpers.py +332 -0
  66. openhound_github-0.5.0/src/openhound_github/models/saml_issuer.py +117 -0
  67. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/saml_provider.py +37 -16
  68. openhound_github-0.5.0/src/openhound_github/models/saml_service_provider.py +134 -0
  69. openhound_github-0.5.0/src/openhound_github/models/scim_user.py +337 -0
  70. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/secret_scanning_alert.py +4 -2
  71. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/team.py +3 -3
  72. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/user.py +2 -2
  73. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/workflow.py +24 -21
  74. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/workflow_job.py +14 -4
  75. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/workflow_step.py +71 -18
  76. openhound_github-0.5.0/src/openhound_github/resources/enterprise.py +835 -0
  77. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/resources/organization.py +167 -37
  78. openhound_github-0.5.0/src/openhound_github/runner_ids.py +10 -0
  79. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/source.py +70 -15
  80. openhound_github-0.5.0/src/openhound_github/transforms.py +250 -0
  81. openhound_github-0.5.0/tests/test_branch_collection_gate.py +103 -0
  82. openhound_github-0.5.0/tests/test_branch_protection_traversability.py +75 -0
  83. openhound_github-0.5.0/tests/test_enterprise_capabilities.py +135 -0
  84. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_enterprise_organization.py +26 -1
  85. openhound_github-0.5.0/tests/test_enterprise_resources.py +317 -0
  86. openhound_github-0.5.0/tests/test_environment_model.py +259 -0
  87. openhound_github-0.5.0/tests/test_external_identity_tenant_matching.py +242 -0
  88. openhound_github-0.5.0/tests/test_org_secret_models.py +112 -0
  89. openhound_github-0.5.0/tests/test_repository_rulesets.py +137 -0
  90. openhound_github-0.5.0/tests/test_runner_ids.py +18 -0
  91. openhound_github-0.5.0/tests/test_runner_models.py +518 -0
  92. openhound_github-0.5.0/tests/test_runner_resources.py +147 -0
  93. openhound_github-0.5.0/tests/test_saml_helpers.py +70 -0
  94. openhound_github-0.5.0/tests/test_saml_models.py +278 -0
  95. openhound_github-0.5.0/tests/test_scim_models.py +162 -0
  96. openhound_github-0.5.0/tests/test_variable_models.py +19 -0
  97. openhound_github-0.5.0/tests/test_workflow_model.py +147 -0
  98. openhound_github-0.3.7/descriptions/edges/GH_AddMember.md +0 -3
  99. openhound_github-0.3.7/descriptions/edges/GH_AdminTo.md +0 -3
  100. openhound_github-0.3.7/descriptions/edges/GH_Contains.md +0 -3
  101. openhound_github-0.3.7/descriptions/edges/GH_HasBranch.md +0 -3
  102. openhound_github-0.3.7/descriptions/edges/GH_HasEnvironment.md +0 -3
  103. openhound_github-0.3.7/descriptions/edges/GH_HasVariable.md +0 -3
  104. openhound_github-0.3.7/descriptions/edges/GH_UsesSecret.md +0 -19
  105. openhound_github-0.3.7/descriptions/edges/GH_UsesVariable.md +0 -19
  106. openhound_github-0.3.7/descriptions/nodes/GH_Environment.md +0 -3
  107. openhound_github-0.3.7/descriptions/nodes/GH_EnvironmentSecret.md +0 -3
  108. openhound_github-0.3.7/extension/saved_searches/unprotected-default-branches.json +0 -5
  109. openhound_github-0.3.7/src/openhound_github/models/enterprise_external_identity.py +0 -202
  110. openhound_github-0.3.7/src/openhound_github/models/enterprise_saml_provider.py +0 -122
  111. openhound_github-0.3.7/src/openhound_github/models/environment.py +0 -171
  112. openhound_github-0.3.7/src/openhound_github/models/environment_branch_policy.py +0 -56
  113. openhound_github-0.3.7/src/openhound_github/models/external_identity.py +0 -262
  114. openhound_github-0.3.7/src/openhound_github/models/runner.py +0 -393
  115. openhound_github-0.3.7/src/openhound_github/models/scim_user.py +0 -25
  116. openhound_github-0.3.7/src/openhound_github/resources/enterprise.py +0 -435
  117. openhound_github-0.3.7/src/openhound_github/transforms.py +0 -100
  118. {openhound_github-0.3.7 → openhound_github-0.5.0}/.github/CODE_OF_CONDUCT.md +0 -0
  119. {openhound_github-0.3.7 → openhound_github-0.5.0}/.github/CONTRIBUTING.md +0 -0
  120. {openhound_github-0.3.7 → openhound_github-0.5.0}/.github/GOVERNANCE.md +0 -0
  121. {openhound_github-0.3.7 → openhound_github-0.5.0}/.github/GitHub-COC-Header.png +0 -0
  122. {openhound_github-0.3.7 → openhound_github-0.5.0}/.github/GitHub-CONTRIB-Header.png +0 -0
  123. {openhound_github-0.3.7 → openhound_github-0.5.0}/.github/GitHub-GOV-Header.png +0 -0
  124. {openhound_github-0.3.7 → openhound_github-0.5.0}/.github/GitHub-Header.png +0 -0
  125. {openhound_github-0.3.7 → openhound_github-0.5.0}/.github/GitHub-LIC-Header.png +0 -0
  126. {openhound_github-0.3.7 → openhound_github-0.5.0}/.github/GitHub-SEC-Header.png +0 -0
  127. {openhound_github-0.3.7 → openhound_github-0.5.0}/.github/SECURITY.md +0 -0
  128. {openhound_github-0.3.7 → openhound_github-0.5.0}/.github/SO-Dark.svg +0 -0
  129. {openhound_github-0.3.7 → openhound_github-0.5.0}/.github/SO-FOSS-Dark.svg +0 -0
  130. {openhound_github-0.3.7 → openhound_github-0.5.0}/.github/SO-FOSS-Light.svg +0 -0
  131. {openhound_github-0.3.7 → openhound_github-0.5.0}/.github/SO-Light.svg +0 -0
  132. {openhound_github-0.3.7 → openhound_github-0.5.0}/.github/workflows/publish.yml +0 -0
  133. {openhound_github-0.3.7 → openhound_github-0.5.0}/.github/workflows/release-on-merge.yml +0 -0
  134. {openhound_github-0.3.7 → openhound_github-0.5.0}/.github/workflows/validate-branch.yml +0 -0
  135. {openhound_github-0.3.7 → openhound_github-0.5.0}/.gitignore +0 -0
  136. {openhound_github-0.3.7 → openhound_github-0.5.0}/.gitmodules +0 -0
  137. {openhound_github-0.3.7 → openhound_github-0.5.0}/.pre-commit-config.yaml +0 -0
  138. {openhound_github-0.3.7 → openhound_github-0.5.0}/LICENSE.md +0 -0
  139. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_AddAssignee.md +0 -0
  140. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_AddCollaborator.md +0 -0
  141. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_AddLabel.md +0 -0
  142. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_BypassBranchProtection.md +0 -0
  143. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_BypassPullRequestAllowances.md +0 -0
  144. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_CallsWorkflow.md +0 -0
  145. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_CanAccess.md +0 -0
  146. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_CanAssumeIdentity.md +0 -0
  147. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_CanCreateBranch.md +0 -0
  148. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_CanEditProtection.md +0 -0
  149. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_CanPwnRequest.md +0 -0
  150. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_CanReadSecretScanningAlert.md +0 -0
  151. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_CanWriteBranch.md +0 -0
  152. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_CloseDiscussion.md +0 -0
  153. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_CloseIssue.md +0 -0
  154. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ClosePullRequest.md +0 -0
  155. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ConvertIssuesToDiscussions.md +0 -0
  156. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_CreateDiscussionCategory.md +0 -0
  157. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_CreateRepository.md +0 -0
  158. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_CreateSoloMergeQueueEntry.md +0 -0
  159. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_CreateTag.md +0 -0
  160. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_CreateTeam.md +0 -0
  161. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_DeleteAlertsCodeScanning.md +0 -0
  162. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_DeleteDiscussion.md +0 -0
  163. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_DeleteDiscussionComment.md +0 -0
  164. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_DeleteIssue.md +0 -0
  165. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_DeleteTag.md +0 -0
  166. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_DependsOn.md +0 -0
  167. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_EditCategoryOnDiscussion.md +0 -0
  168. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_EditDiscussionCategory.md +0 -0
  169. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_EditDiscussionComment.md +0 -0
  170. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_EditRepoAnnouncementBanners.md +0 -0
  171. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_EditRepoCustomPropertiesValues.md +0 -0
  172. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_EditRepoMetadata.md +0 -0
  173. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_EditRepoProtections.md +0 -0
  174. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_HasBaseRole.md +0 -0
  175. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_HasExternalIdentity.md +0 -0
  176. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_HasJob.md +0 -0
  177. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_HasMember.md +0 -0
  178. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_HasPersonalAccessToken.md +0 -0
  179. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_HasPersonalAccessTokenRequest.md +0 -0
  180. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_HasRole.md +0 -0
  181. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_HasSamlIdentityProvider.md +0 -0
  182. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_HasStep.md +0 -0
  183. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_HasWorkflow.md +0 -0
  184. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_InstalledAs.md +0 -0
  185. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_InviteMember.md +0 -0
  186. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_JumpMergeQueue.md +0 -0
  187. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ManageDeployKeys.md +0 -0
  188. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ManageDiscussionBadges.md +0 -0
  189. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ManageOrganizationWebhooks.md +0 -0
  190. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ManageRepoSecurityProducts.md +0 -0
  191. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ManageSecurityProducts.md +0 -0
  192. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ManageSettingsMergeTypes.md +0 -0
  193. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ManageSettingsPages.md +0 -0
  194. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ManageSettingsProjects.md +0 -0
  195. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ManageSettingsWiki.md +0 -0
  196. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ManageTopics.md +0 -0
  197. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ManageWebhooks.md +0 -0
  198. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_MapsToUser.md +0 -0
  199. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_MarkAsDuplicate.md +0 -0
  200. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_MemberOf.md +0 -0
  201. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_OrgBypassCodeScanningDismissalRequests.md +0 -0
  202. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_OrgBypassSecretScanningClosureRequests.md +0 -0
  203. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_OrgReviewAndManageSecretScanningBypassRequests.md +0 -0
  204. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_OrgReviewAndManageSecretScanningClosureRequests.md +0 -0
  205. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_Owns.md +0 -0
  206. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ProtectedBy.md +0 -0
  207. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_PushProtectedBranch.md +0 -0
  208. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ReadCodeScanning.md +0 -0
  209. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ReadOrganizationActionsUsageMetrics.md +0 -0
  210. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ReadOrganizationCustomOrgRole.md +0 -0
  211. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ReadOrganizationCustomRepoRole.md +0 -0
  212. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ReadRepoContents.md +0 -0
  213. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_RemoveAssignee.md +0 -0
  214. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_RemoveLabel.md +0 -0
  215. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ReopenDiscussion.md +0 -0
  216. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ReopenIssue.md +0 -0
  217. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ReopenPullRequest.md +0 -0
  218. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_RequestPrReview.md +0 -0
  219. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ResolveDependabotAlerts.md +0 -0
  220. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ResolveSecretScanningAlerts.md +0 -0
  221. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_RestrictionsCanPush.md +0 -0
  222. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_RunOrgMigration.md +0 -0
  223. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_SetInteractionLimits.md +0 -0
  224. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_SetIssueType.md +0 -0
  225. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_SetMilestone.md +0 -0
  226. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_SetSocialPreview.md +0 -0
  227. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_SyncedTo.md +0 -0
  228. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ToggleDiscussionAnswer.md +0 -0
  229. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ToggleDiscussionCommentMinimize.md +0 -0
  230. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_TransferRepository.md +0 -0
  231. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ValidToken.md +0 -0
  232. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ViewDependabotAlerts.md +0 -0
  233. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_ViewSecretScanningAlerts.md +0 -0
  234. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_WriteCodeScanning.md +0 -0
  235. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_WriteOrganizationActionsSecrets.md +0 -0
  236. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_WriteOrganizationActionsSettings.md +0 -0
  237. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_WriteOrganizationActionsVariables.md +0 -0
  238. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_WriteOrganizationCustomOrgRole.md +0 -0
  239. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_WriteOrganizationCustomRepoRole.md +0 -0
  240. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_WriteOrganizationNetworkConfigurations.md +0 -0
  241. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_WriteRepoContents.md +0 -0
  242. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/edges/GH_WriteRepoPullRequests.md +0 -0
  243. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_App.md +0 -0
  244. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_AppInstallation.md +0 -0
  245. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_Branch.md +0 -0
  246. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_BranchProtectionRule.md +0 -0
  247. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_ExternalIdentity.md +0 -0
  248. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_OrgRole.md +0 -0
  249. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_OrgSecret.md +0 -0
  250. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_OrgVariable.md +0 -0
  251. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_Organization.md +0 -0
  252. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_PersonalAccessToken.md +0 -0
  253. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_PersonalAccessTokenRequest.md +0 -0
  254. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_RepoRole.md +0 -0
  255. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_RepoSecret.md +0 -0
  256. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_RepoVariable.md +0 -0
  257. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_Repository.md +0 -0
  258. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_SamlIdentityProvider.md +0 -0
  259. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_SecretScanningAlert.md +0 -0
  260. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_Team.md +0 -0
  261. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_TeamRole.md +0 -0
  262. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_User.md +0 -0
  263. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_Workflow.md +0 -0
  264. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_WorkflowJob.md +0 -0
  265. {openhound_github-0.3.7 → openhound_github-0.5.0}/descriptions/nodes/GH_WorkflowStep.md +0 -0
  266. {openhound_github-0.3.7 → openhound_github-0.5.0}/docs/og-docs.json +0 -0
  267. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/privilege_zone_rules/t0-all-repo-admin-role.json +0 -0
  268. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/privilege_zone_rules/t0-app-installations-all-repos.json +0 -0
  269. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/privilege_zone_rules/t0-apps-all-repos.json +0 -0
  270. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/privilege_zone_rules/t0-external-identities-owners.json +0 -0
  271. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/privilege_zone_rules/t0-organizations.json +0 -0
  272. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/privilege_zone_rules/t0-owner-users.json +0 -0
  273. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/privilege_zone_rules/t0-owners-role.json +0 -0
  274. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/privilege_zone_rules/t0-pats-all-repos.json +0 -0
  275. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/privilege_zone_rules/t0-privilege-escalation-roles.json +0 -0
  276. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/privilege_zone_rules/t0-privilege-escalation-users.json +0 -0
  277. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/privilege_zone_rules/t0-saml-identity-providers.json +0 -0
  278. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/README.md +0 -0
  279. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/actions-sha-pinning-not-required.json +0 -0
  280. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/active-leaked-secrets.json +0 -0
  281. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/advanced-security-disabled-new-repos.json +0 -0
  282. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/all-actions-allowed.json +0 -0
  283. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/app-installations-all-repos.json +0 -0
  284. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/branch-protection-admins-not-enforced.json +0 -0
  285. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/branch-protection-deletions-allowed.json +0 -0
  286. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/branch-protection-force-pushes.json +0 -0
  287. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/branch-protection-no-code-owner-reviews.json +0 -0
  288. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/branch-protection-no-pr-reviews.json +0 -0
  289. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/branch-protection-no-status-checks.json +0 -0
  290. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/branch-protection-self-approval.json +0 -0
  291. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/branch-protection-stale-reviews.json +0 -0
  292. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/bypass-pr-requirements.json +0 -0
  293. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/dangerous-branch-perms.json +0 -0
  294. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/default-repository-permissions.json +0 -0
  295. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/demo-sso-to-cloud-round-trip.json +0 -0
  296. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/dependabot-alerts-disabled-new-repos.json +0 -0
  297. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/dependabot-updates-disabled-new-repos.json +0 -0
  298. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/dependency-graph-disabled-new-repos.json +0 -0
  299. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/expired-pats.json +0 -0
  300. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/external-identities-without-scim.json +0 -0
  301. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/github-to-azure-identity.json +0 -0
  302. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/global-repo-perms.json +0 -0
  303. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/hybrid-identities.json +0 -0
  304. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/members-can-change-repo-visibility.json +0 -0
  305. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/members-can-create-pages.json +0 -0
  306. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/members-can-create-public-repos.json +0 -0
  307. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/members-can-delete-repos.json +0 -0
  308. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/members-can-fork-private-repos.json +0 -0
  309. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/members-can-invite-outside-collaborators.json +0 -0
  310. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/org-owners.json +0 -0
  311. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/orgs-without-2fa.json +0 -0
  312. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/pats-all-repo-access.json +0 -0
  313. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/pending-pat-requests.json +0 -0
  314. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/private-repos-forking-allowed.json +0 -0
  315. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/privileged-custom-org-roles.json +0 -0
  316. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/privileged-hybrid-identities.json +0 -0
  317. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/public-repos.json +0 -0
  318. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/push-protection-disabled-new-repos.json +0 -0
  319. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/push-to-protected-branches.json +0 -0
  320. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/repos-secret-scanning-disabled.json +0 -0
  321. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/repos-vulnerable-to-workflow-secret-exfil.json +0 -0
  322. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/saml-configuration.json +0 -0
  323. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/secret-scanning-alerts.json +0 -0
  324. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/secret-scanning-disabled-new-repos.json +0 -0
  325. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/secrets-reachable-by-user.json +0 -0
  326. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/team-membership-admin.json +0 -0
  327. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/team-structure.json +0 -0
  328. {openhound_github-0.3.7 → openhound_github-0.5.0}/extension/saved_searches/web-commit-signoff-not-required.json +0 -0
  329. {openhound_github-0.3.7 → openhound_github-0.5.0}/justfile +0 -0
  330. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/main.py +0 -0
  331. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/__init__.py +0 -0
  332. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/auth.py +0 -0
  333. {openhound_github-0.3.7 → openhound_github-0.5.0/src/openhound_github}/extension.yaml +0 -0
  334. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/graph.py +0 -0
  335. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/actions_permission.py +0 -0
  336. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/app_installation.py +0 -0
  337. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/branch_pr_bypass_allowance.py +0 -0
  338. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/branch_protection_rule.py +0 -0
  339. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/branch_push_allowance.py +0 -0
  340. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/enterprise.py +0 -0
  341. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/enterprise_admin.py +0 -0
  342. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/enterprise_helpers.py +0 -0
  343. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/enterprise_managed_user.py +0 -0
  344. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/enterprise_member.py +0 -0
  345. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/enterprise_organization.py +0 -0
  346. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/enterprise_role_team.py +0 -0
  347. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/enterprise_role_user.py +0 -0
  348. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/enterprise_team_member.py +0 -0
  349. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/enterprise_team_role.py +0 -0
  350. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/org.py +0 -0
  351. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/org_role_member.py +0 -0
  352. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/org_role_team.py +0 -0
  353. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/personal_access_token.py +0 -0
  354. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/personal_access_token_access.py +0 -0
  355. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/personal_access_token_request.py +0 -0
  356. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/projected_enterprise_team.py +0 -0
  357. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/repository_secret.py +0 -0
  358. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/team_member.py +0 -0
  359. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/models/team_role.py +0 -0
  360. {openhound_github-0.3.7 → openhound_github-0.5.0}/src/openhound_github/resources/__init__.py +0 -0
  361. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/actions-permissions.json +0 -0
  362. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/actionsecrets.json +0 -0
  363. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/app.json +0 -0
  364. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/appinstalls.json +0 -0
  365. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/branch-policies.json +0 -0
  366. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/branch-prot-rules.json +0 -0
  367. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/branches.json +0 -0
  368. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/custom-roles.json +0 -0
  369. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/environments.json +0 -0
  370. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/org-pat-request.json +0 -0
  371. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/org-pat.json +0 -0
  372. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/org-role-teams.json +0 -0
  373. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/org-role-users.json +0 -0
  374. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/org-roles.json +0 -0
  375. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/org.json +0 -0
  376. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/pat-repositories.json +0 -0
  377. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/repo-collaborators.json +0 -0
  378. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/repo-teams.json +0 -0
  379. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/repositories.json +0 -0
  380. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/scimusers.json +0 -0
  381. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/secrets.json +0 -0
  382. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/secretscanningalert.json +0 -0
  383. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/selected-org-secrets.json +0 -0
  384. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/variables.json +0 -0
  385. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_data/api/workflows.json +0 -0
  386. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_error_resilience.py +0 -0
  387. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_github_rest_client.py +0 -0
  388. {openhound_github-0.3.7 → openhound_github-0.5.0}/tests/test_github_retry.py +0 -0
  389. {openhound_github-0.3.7 → openhound_github-0.5.0}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.4
1
+ Metadata-Version: 2.5
2
2
  Name: openhound-github
3
- Version: 0.3.7
3
+ Version: 0.5.0
4
4
  Summary: Github collector for OpenHound
5
5
  Author-email: "jdreijer@specterops.io" <jdreijer@specterops.io>, Jared Atkinson <jatkinson@specterops.io>
6
6
  License-File: LICENSE.md
@@ -45,6 +45,14 @@ The openhound-github extension collects resources from Github organizations and
45
45
  edges for
46
46
  BloodHound.
47
47
 
48
+ ### Enterprise SCIM and hybrid correlations
49
+
50
+ When `SOURCES__GITHUB__COLLECT_ENTERPRISE_SCIM=true`, a token with enterprise SCIM access is used to collect both `/scim/v2/enterprises/{enterprise}/Users` and `/scim/v2/enterprises/{enterprise}/Groups`. The collector emits normalized `SCIM_Organization`, `SCIM_User`, and `SCIM_Group` nodes plus `SCIM_Contains`, `SCIM_MemberOf`, and `SCIM_Provisioned` relationships. Install the BloodHound SCIM extension alongside this extension to register the shared SCIM kinds.
51
+
52
+ `SOURCES__GITHUB__EMIT_LEGACY_SCIM_CORRELATIONS=true` temporarily reproduces GitHound-style Okta-to-SCIM correlation relationships. It defaults to false because a dedicated hybrid correlator should own IdP-to-SCIM matching; GitHub remains authoritative for GitHub's SCIM resources and target-system provisioning relationships.
53
+
54
+ Enterprise roles, including the built-in `members` role, are emitted through `GH_HasRole` and granular enterprise capability relationships. Only capability relationships with a confirmed privilege path are traversable; descriptive permissions such as `GH_WriteEnterpriseSso` remain non-traversable.
55
+
48
56
  [![Python Version](https://img.shields.io/badge/Python-3.13-brightgreen.svg)](#about)
49
57
 
50
58
  ## Getting Started
@@ -34,6 +34,14 @@ The openhound-github extension collects resources from Github organizations and
34
34
  edges for
35
35
  BloodHound.
36
36
 
37
+ ### Enterprise SCIM and hybrid correlations
38
+
39
+ When `SOURCES__GITHUB__COLLECT_ENTERPRISE_SCIM=true`, a token with enterprise SCIM access is used to collect both `/scim/v2/enterprises/{enterprise}/Users` and `/scim/v2/enterprises/{enterprise}/Groups`. The collector emits normalized `SCIM_Organization`, `SCIM_User`, and `SCIM_Group` nodes plus `SCIM_Contains`, `SCIM_MemberOf`, and `SCIM_Provisioned` relationships. Install the BloodHound SCIM extension alongside this extension to register the shared SCIM kinds.
40
+
41
+ `SOURCES__GITHUB__EMIT_LEGACY_SCIM_CORRELATIONS=true` temporarily reproduces GitHound-style Okta-to-SCIM correlation relationships. It defaults to false because a dedicated hybrid correlator should own IdP-to-SCIM matching; GitHub remains authoritative for GitHub's SCIM resources and target-system provisioning relationships.
42
+
43
+ Enterprise roles, including the built-in `members` role, are emitted through `GH_HasRole` and granular enterprise capability relationships. Only capability relationships with a confirmed privilege path are traversable; descriptive permissions such as `GH_WriteEnterpriseSso` remain non-traversable.
44
+
37
45
  [![Python Version](https://img.shields.io/badge/Python-3.13-brightgreen.svg)](#about)
38
46
 
39
47
  ## Getting Started
@@ -0,0 +1,3 @@
1
+ ## General Information
2
+
3
+ The non-traversable GH_AddMember edge indicates that a team role with the Maintainer permission level can add new members to the team. Maintainers already inherit the team's repository permissions through GH_MemberOf, so this edge preserves the membership-management capability as context without creating a second access path to the same team.
@@ -0,0 +1,3 @@
1
+ ## General Information
2
+
3
+ The traversable GH_AdminTo edge represents a role's full administrative access to the repository. Admin is the highest built-in repository role and grants control over all repository settings, including dangerous operations like deleting the repository or modifying its visibility. Admin access bypasses most protections including branch protection rules, unless `enforce_admins` is explicitly enabled on the branch protection rule. This edge is a key permission in the computed branch access model and is a high-value target in attack path analysis.
@@ -0,0 +1,7 @@
1
+ ## General Information
2
+
3
+ The non-traversable GH_ApprovesDeploymentTo edge represents that a user or team is configured as a required reviewer for a GitHub Environment.
4
+
5
+ This edge is emitted from GH_User or GH_Team nodes to GH_Environment nodes when the environment includes a required reviewer protection rule. Required reviewers act as an approval gate before jobs referencing the environment can continue.
6
+
7
+ The edge is non-traversable because it records reviewer configuration rather than direct deployment access. When self-review is allowed, the same reviewer may also receive a traversable GH_CanDeployToEnvironment edge because they can satisfy the approval gate themselves. When prevent_self_review is enabled, GH_ApprovesDeploymentTo remains context only because the split-principal approval flow is not currently modeled.
@@ -0,0 +1,5 @@
1
+ ## General Information
2
+
3
+ The non-traversable GH_AssignedTo edge represents an enterprise-scoped object being assigned to an organization. It is currently used for enterprise teams and enterprise runner groups. For runner groups, this edge indicates that an organization is allowed to inherit and use the enterprise-owned runner group.
4
+
5
+ This edge is not traversable because assignment alone does not directly grant a principal a privilege path.
@@ -0,0 +1,5 @@
1
+ ## General Information
2
+
3
+ The traversable GH_CanCreateEnvironment edge is a computed edge indicating that a repository role can cause a new GitHub environment to be created in the repository. This is derived from the ability to create and modify runnable branches/workflows: if a workflow references an environment name that does not already exist, GitHub will create that environment automatically.
4
+
5
+ This edge is useful for modeling OIDC and deployment scenarios where trust is tied to an environment name. An attacker who can create a new environment through workflow changes may be able to instantiate a trusted environment on demand, even if it was not previously configured.
@@ -0,0 +1,9 @@
1
+ ## General Information
2
+
3
+ The non-traversable GH_CanCreateRepositoryWithRunnerAccess edge is a computed edge indicating that a GH_OrgRole can create a repository whose visibility automatically places it in scope for a GH_OrgRunnerGroup.
4
+
5
+ This edge is emitted only for runner groups with `visibility=all` or `visibility=private`. Groups with `visibility=selected` require explicit repository assignment, so creating a repository does not automatically grant access to the group.
6
+
7
+ The computation follows repository-creation capability edges from the org role to the organization and then GH_Contains to the runner group. For `visibility=all`, public repository creation is included only when `allows_public_repositories=true`; otherwise the composition is limited to private and internal repository creation. Each edge includes a `query_composition` Cypher query showing the underlying graph evidence.
8
+
9
+ This edge represents latent repository eligibility subject to runner-group workflow policy. It is non-traversable because creating an eligible repository does not by itself prove that arbitrary jobs can dispatch to the group's runners.
@@ -0,0 +1,7 @@
1
+ ## General Information
2
+
3
+ The traversable GH_CanDeployToEnvironment edge represents the ability for a repository, branch, repository role, or self-approving reviewer to satisfy the modeled deployment constraints for a GitHub Environment.
4
+
5
+ This edge is computed from environment deployment branch policy, branch protection state, required reviewer behavior, and administrator bypass behavior. For environments without required reviewers, unrestricted environments emit repository and branch edges, protected-branch-only environments emit edges only for protected branches unless no branch protection rules exist, and custom branch policies emit edges only for matching branches.
6
+
7
+ When required reviewers are configured and self-review is allowed, the configured GH_User or GH_Team reviewer receives GH_CanDeployToEnvironment because that reviewer can satisfy the approval gate themselves. When prevent_self_review is enabled, no direct deploy edge is emitted for the reviewer because the required split-principal flow is not currently modeled. GH_ApprovesDeploymentTo remains non-traversable reviewer context in both cases.
@@ -0,0 +1,15 @@
1
+ ## General Information
2
+
3
+ The traversable GH_CanEditEnvironment edge indicates that a repository role can modify the configuration of a GitHub environment. In the current model, this edge is emitted for the repository's built-in `admin` role to every environment contained in that repository.
4
+
5
+ Editing an environment is security-relevant because environment configuration controls deployment protections such as required reviewers, self-review restrictions, wait timers, deployment branch policies, and the "allow administrators to bypass configured protection rules" setting. An attacker who can edit an environment may be able to weaken or remove those controls, making later deployment and secret access paths possible.
6
+
7
+ This edge is distinct from GH_CanDeployToEnvironment:
8
+
9
+ - **GH_CanEditEnvironment** means the role can manage the environment's settings.
10
+ - **GH_CanDeployToEnvironment** means the source satisfies the modeled deployment policy, reviewer gate, or administrator bypass condition for the environment.
11
+
12
+ ```mermaid
13
+ graph LR
14
+ role["GH_RepoRole admin"] ==>|GH_CanEditEnvironment| env["GH_Environment production"]
15
+ ```
@@ -0,0 +1,5 @@
1
+ ## General Information
2
+
3
+ The non-traversable GH_CanUseRunner edge represents that a repository can dispatch GitHub Actions jobs to a self-hosted runner. Repository-scoped runners receive this edge directly from their containing repository. Organization and enterprise runners receive composed GH_CanUseRunner edges derived from runner group containment and repository access policy.
4
+
5
+ For native organization runner groups, the composition path is `GH_Repository <- GH_GrantsAccessTo - GH_OrgRunnerGroup - GH_Contains -> GH_OrgRunner`. For inherited groups, the path continues through `GH_InheritedFrom` to the enterprise runner group and its contained GH_EnterpriseRunner nodes.
@@ -0,0 +1,3 @@
1
+ ## General Information
2
+
3
+ The non-traversable GH_Contains edge represents structural containment within the GitHub resource hierarchy. The enterprise contains enterprise teams, roles, managed users, runner groups, and enterprise runners through their groups. The organization serves as a top-level container for users, teams, repositories, roles, secrets, app installations, personal access tokens, and organization runner groups. Native organization runner groups contain organization runners. Repositories contain branches, workflows, branch protection rules, environments, repo-level secrets and variables, and repository-scoped runners. Environments contain environment branch policies, environment-scoped secrets, and environment-scoped variables. This edge is created by the collector to establish the resource hierarchy and is not traversable because containment alone does not imply privilege escalation.
@@ -1,3 +1,3 @@
1
1
  ## General Information
2
2
 
3
- The non-traversable GH_DeploysTo edge links a workflow job to the GitHub Environment it targets via the `environment:` key. This edge records which jobs deploy to which environments. Environments can gate deployments with protection rules (required reviewers, wait timers, deployment branch policies) and can expose environment-scoped secrets.
3
+ The non-traversable GH_DeploysTo edge links a workflow job to the GitHub Environment it targets via the `environment:` key. This edge records which jobs deploy to which environments. Environments can gate deployments with protection rules (required reviewers, wait timers, deployment branch policies) and can expose environment-scoped secrets and variables.
@@ -0,0 +1,5 @@
1
+ ## General Information
2
+
3
+ The non-traversable GH_GrantsAccessTo edge represents that a GH_OrgRunnerGroup allows a repository to use the runners exposed by that group. For native groups, those runners are GH_OrgRunner nodes contained by the group. For inherited groups, those runners are GH_EnterpriseRunner nodes reached through GH_InheritedFrom.
4
+
5
+ This edge is used as part of the composition path for GH_CanUseRunner and is not traversable on its own because repository eligibility alone is not a privilege escalation path.
@@ -0,0 +1,3 @@
1
+ ## General Information
2
+
3
+ The non-traversable GH_Contains edge represents the relationship between a repository and its branches. This edge links each collected branch to its parent repository. It is a structural edge that provides the foundation for understanding branch-level protections and access controls. While not traversable itself, it connects repositories to branches where traversable edges like GH_CanWriteBranch and GH_CanEditProtection model the effective access.
@@ -0,0 +1,3 @@
1
+ ## General Information
2
+
3
+ Environment containment is modeled with the non-traversable GH_Contains edge from a repository to each deployment environment it defines. Branch deployment eligibility is modeled separately with GH_CanDeployToEnvironment and GH_MatchesEnvironmentPolicy rather than a containment edge. Environments are security-relevant because they can gate access to secrets and cloud credentials, and their deployment branch policies control which branches can trigger deployments.
@@ -1,3 +1,3 @@
1
1
  ## General Information
2
2
 
3
- The traversable GH_HasSecret edge represents the relationship between a repository or environment and the secrets accessible within that context. This edge shows which secrets are available in which scopes. Repositories can have access to both organization-level secrets (scoped to selected repositories) and repository-level secrets, while environments contain their own environment-scoped secrets. This edge is traversable because any principal that can push code to a repository (via GH_CanWriteBranch or GH_CanCreateBranch) can write a workflow that exfiltrates the secret values at runtime, making this a meaningful link in attack path analysis.
3
+ The traversable GH_HasSecret edge represents the relationship between a repository or environment and the secrets accessible within that context. This edge shows which secrets are available in which scopes. Repositories can have access to both organization-level secrets (scoped to selected repositories) and repository-level secrets, while environments expose their own environment-scoped secrets to jobs that target them. This edge is traversable because any principal that can execute a workflow in the relevant context may be able to exfiltrate secret values at runtime, making this a meaningful link in attack path analysis.
@@ -0,0 +1,3 @@
1
+ ## General Information
2
+
3
+ The traversable GH_HasVariable edge represents the relationship between a repository or environment and the variables accessible within that context. This edge shows which variables are available in which scopes. Repositories can have access to both organization-level variables (scoped by visibility to all, private, or selected repositories) and repository-level variables defined directly on the repo, while environments expose their own environment-scoped variables to jobs that target them. This edge is traversable because any principal that can execute a workflow in the relevant context may be able to read variable values at runtime, and variables may contain configuration data useful for lateral movement such as deployment URLs, service names, or environment identifiers.
@@ -0,0 +1,5 @@
1
+ ## General Information
2
+
3
+ The non-traversable GH_InheritedFrom edge links an inherited GH_OrgRunnerGroup to the GH_EnterpriseRunnerGroup that owns the underlying runner set. This preserves the organization-local view of a runner group while still identifying the enterprise source that provides the runners.
4
+
5
+ This edge is not traversable because inheritance describes resource provenance rather than a direct privilege path.
@@ -0,0 +1,7 @@
1
+ ## General Information
2
+
3
+ The non-traversable GH_MatchesEnvironmentPolicy edge links a branch to a GitHub Environment deployment branch policy that it satisfies.
4
+
5
+ This edge is emitted when a branch name matches the pattern defined by a GH_EnvironmentBranchPolicy node, such as `main`, `release/*`, or `release/**/*`. The edge is structural rather than directly traversable because matching a policy alone does not guarantee deployment access; the environment may still require protected branches, reviewers, wait timers, or other controls.
6
+
7
+ GH_MatchesEnvironmentPolicy is primarily used as supporting evidence for computed GH_CanDeployToEnvironment edges.
@@ -0,0 +1,20 @@
1
+ ## General Information
2
+
3
+ The non-traversable GH_UsesSecret edge links a workflow job or step to the secret it references via a `${{ secrets.NAME }}` expression. This edge reveals which secrets a workflow component can access at runtime, enabling analysts to trace the blast radius of a compromised workflow.
4
+
5
+ ### Matching strategy
6
+
7
+ Edges use `match_by: property` with scope-specific matchers to disambiguate between secrets with the same name across repositories and environments:
8
+
9
+ - **GH_RepoSecret** is matched by `name` + `repository_id` (the GitHub node_id of the repository).
10
+ - **GH_OrgSecret** is matched by `name` + `environmentid` (the node_id of the organization, which acts as the org-level secret scope).
11
+ - **GH_EnvironmentSecret** is matched by `name` + `deployment_environment_name` + `repository_id` when the parent job targets a concrete environment name.
12
+
13
+ This means one `${{ secrets.MY_SECRET }}` expression in a workflow can produce edges to repo-level, org-level, and environment-level secrets that share the same name in the applicable scopes. The environment-level edge is only emitted when the workflow job references a literal environment name rather than a dynamic expression.
14
+
15
+ ### Context property
16
+
17
+ The edge carries a `context` property indicating where the reference was found:
18
+ - `with` — inside a `with:` input block of a `uses:` action step
19
+ - `env` — inside the step's `env:` block
20
+ - `run` — inline within a `run:` shell script
@@ -0,0 +1,20 @@
1
+ ## General Information
2
+
3
+ The non-traversable GH_UsesVariable edge links a workflow job or step to the variable it references via a `${{ vars.NAME }}` expression. This edge maps variable consumption within workflows. Unlike secrets, variable values are readable via the API, making them lower sensitivity — but they can still influence workflow behavior (e.g., controlling target environments or feature flags).
4
+
5
+ ### Matching strategy
6
+
7
+ Edges use `match_by: property` with scope-specific matchers to disambiguate between variables with the same name across repositories and environments:
8
+
9
+ - **GH_RepoVariable** is matched by `name` + `repository_id` (the GitHub node_id of the repository).
10
+ - **GH_OrgVariable** is matched by `name` + `environmentid` (the node_id of the organization, which acts as the org-level variable scope).
11
+ - **GH_EnvironmentVariable** is matched by `name` + `deployment_environment_name` + `repository_id` when the parent job targets a concrete environment name.
12
+
13
+ This means one `${{ vars.MY_VAR }}` expression can produce edges to repo-level, org-level, and environment-level variables that share the same name in the applicable scopes. The environment-level edge is only emitted when the workflow job references a literal environment name rather than a dynamic expression.
14
+
15
+ ### Context property
16
+
17
+ The edge carries a `context` property indicating where the reference was found:
18
+ - `with` — inside a `with:` input block of a `uses:` action step
19
+ - `env` — inside the step's `env:` block
20
+ - `run` — inline within a `run:` shell script
@@ -0,0 +1,5 @@
1
+ ## Description
2
+
3
+ Represents a self-hosted runner owned at the GitHub Enterprise level. Enterprise runners are contained by GH_EnterpriseRunnerGroup nodes and become usable by repositories when an inherited organization runner group grants access to those repositories.
4
+
5
+ The node captures runner metadata such as operating system, status, busy state, labels, and whether the runner is ephemeral when GitHub returns that property.
@@ -0,0 +1,5 @@
1
+ ## Description
2
+
3
+ Represents a self-hosted runner group owned by a GitHub Enterprise account. Enterprise runner groups control which organizations may use a shared set of enterprise runners. Groups with `visibility=all` are assigned to every organization in the enterprise, while groups with `visibility=selected` are assigned only to explicitly selected organizations.
4
+
5
+ Enterprise runner groups contain GH_EnterpriseRunner nodes and may be projected into organizations as inherited GH_OrgRunnerGroup nodes. The GH_InheritedFrom edge links the organization view back to the enterprise-owned group.
@@ -0,0 +1,5 @@
1
+ ## Description
2
+
3
+ Represents a GitHub Actions deployment environment configured on a repository. Environments can have protection rules including required reviewers, wait timers, administrator bypass behavior, and deployment branch policies.
4
+
5
+ Repositories always contain their environments. When custom branch policies are configured, the environment also contains one or more GH_EnvironmentBranchPolicy nodes that describe which branches are allowed to deploy. Environment-scoped secrets and variables are modeled as child nodes of the environment and become available to workflow jobs that reference it.
@@ -0,0 +1,5 @@
1
+ ## Description
2
+
3
+ Represents a deployment branch policy attached to a GitHub Environment. These policies define which branches or branch patterns are allowed to deploy to the environment, such as `main`, `release/*`, or `release/**/*`.
4
+
5
+ Environment branch policies are modeled as their own nodes so analysts can distinguish between the environment itself and the matching rules that govern deployment eligibility.
@@ -0,0 +1,5 @@
1
+ ## Description
2
+
3
+ Represents an environment-level GitHub Actions secret. These secrets are scoped to a specific deployment environment and are only available to workflow jobs that reference that environment.
4
+
5
+ The containing environment is linked to the secret with GH_Contains and GH_HasSecret edges. Workflow steps that reference the secret by name receive GH_UsesSecret edges when their job targets the same environment.
@@ -1,3 +1,5 @@
1
1
  ## Description
2
2
 
3
3
  Represents an environment-level GitHub Actions variable. These variables are scoped to a specific deployment environment and are only available to workflow jobs that reference that environment. Unlike secrets, variable values are readable via the API.
4
+
5
+ The containing environment is linked to the variable with GH_Contains and GH_HasVariable edges. Workflow steps that reference the variable by name receive GH_UsesVariable edges when their job targets the same environment.
@@ -0,0 +1,5 @@
1
+ ## Description
2
+
3
+ Represents a self-hosted runner owned by a GitHub organization. Organization runners are contained by native GH_OrgRunnerGroup nodes and become usable by repositories through the runner group's repository access policy.
4
+
5
+ The node captures runner metadata such as operating system, status, busy state, labels, and whether the runner is ephemeral when GitHub returns that property.
@@ -0,0 +1,5 @@
1
+ ## Description
2
+
3
+ Represents a self-hosted runner group visible within a GitHub organization. Organization runner groups may either be native to the organization or inherited from an enterprise runner group.
4
+
5
+ Native organization runner groups contain GH_OrgRunner nodes directly. Inherited organization runner groups do not directly contain organization runners; instead, they link to the source GH_EnterpriseRunnerGroup through GH_InheritedFrom and gain access to the enterprise runners contained there. GH_GrantsAccessTo edges describe which repositories may use the runners exposed by the group.
@@ -0,0 +1,5 @@
1
+ ## Description
2
+
3
+ Represents a self-hosted runner registered directly to a single GitHub repository. Repository runners are contained by that repository and may only be used by workflows in that repository.
4
+
5
+ The node captures runner metadata such as operating system, status, busy state, labels, and whether the runner is ephemeral when GitHub returns that property.
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "GitHub: Environments Where Admins Can Bypass Protections",
3
- "query": "MATCH p=(:GH_Repository)-[:GH_HasEnvironment]->(env:GH_Environment {can_admins_bypass: true})\nRETURN p\nLIMIT 1000",
3
+ "query": "MATCH p=(:GH_Repository)-[:GH_Contains]->(env:GH_Environment {can_admins_bypass: true})\nRETURN p\nLIMIT 1000",
4
4
  "description": "Finds deployment environments where administrators can bypass protection rules such as required reviewers and wait timers. Admins can deploy to these environments without any approval."
5
5
  }
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "GitHub: Repository Workflows",
3
- "query": "MATCH p=(:GH_Repository)-[:GH_HasWorkflow]->(:GH_Workflow)\nRETURN p\nLIMIT 1000",
3
+ "query": "MATCH p=(:GH_Repository)-[:GH_Contains]->(:GH_Workflow)\nRETURN p\nLIMIT 1000",
4
4
  "description": "Returns all repository workflows"
5
5
  }
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "GitHub: Unprotected Branches",
3
- "query": "MATCH p=(repo:GH_Repository)-[:GH_HasBranch]-(:GH_Branch {protected: false})\nRETURN p\nLIMIT 1000",
3
+ "query": "MATCH p=(repo:GH_Repository)-[:GH_Contains]-(:GH_Branch {protected: false})\nRETURN p\nLIMIT 1000",
4
4
  "description": "Returns all unprotected branches in repositories."
5
5
  }
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "name": "GitHub: Repositories with Workflows and Unprotected Default Branch",
3
- "query": "MATCH p=(repo:GH_Repository)-[:GH_HasWorkflow]->(:GH_Workflow)\nMATCH p1=(repo)-[:GH_HasBranch]->(branch:GH_Branch)\nWHERE repo.default_branch = branch.short_name\nAND branch.protected = false\nRETURN p1\nLIMIT 1000",
3
+ "query": "MATCH p=(repo:GH_Repository)-[:GH_Contains]->(:GH_Workflow)\nMATCH p1=(repo)-[:GH_Contains]->(branch:GH_Branch)\nWHERE repo.default_branch = branch.short_name\nAND branch.protected = false\nRETURN p1\nLIMIT 1000",
4
4
  "description": "Returns all repositories that have GitHub Actions workflows and an unprotected default branch. This means that users with GH_WriteRepoContents to the Repository can overwrite or change the workflow."
5
5
  }
@@ -0,0 +1,5 @@
1
+ {
2
+ "name": "GitHub: Unprotected Default Branches",
3
+ "query": "MATCH p=(repo:GH_Repository)-[:GH_Contains]-(branch:GH_Branch {protected: false})\nWHERE repo.default_branch = branch.short_name\nRETURN p\nLIMIT 1000",
4
+ "description": "Returns all default branches in repositories that are not protected."
5
+ }