openhound-github 0.7.2__tar.gz → 0.8.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 (465) hide show
  1. {openhound_github-0.7.2 → openhound_github-0.8.0}/PKG-INFO +1 -1
  2. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_AddAssignee.md +17 -0
  3. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_AddCollaborator.md +17 -0
  4. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_AddLabel.md +17 -0
  5. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_AddMember.md +17 -0
  6. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_AdminTo.md +17 -0
  7. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ApprovesDeploymentTo.md +20 -0
  8. openhound_github-0.8.0/descriptions/edges/GH_AssignedTo.md +22 -0
  9. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_BypassBranchProtection.md +17 -0
  10. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_BypassPullRequestAllowances.md +17 -0
  11. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_CallsWorkflow.md +17 -0
  12. openhound_github-0.8.0/descriptions/edges/GH_CanAccess.md +26 -0
  13. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_CanAssumeIdentity.md +17 -0
  14. openhound_github-0.8.0/descriptions/edges/GH_CanCreateBranch.md +26 -0
  15. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_CanCreateEnvironment.md +17 -0
  16. openhound_github-0.8.0/descriptions/edges/GH_CanCreateInternalRepositories.md +20 -0
  17. openhound_github-0.8.0/descriptions/edges/GH_CanCreatePrivateRepositories.md +20 -0
  18. openhound_github-0.8.0/descriptions/edges/GH_CanCreatePublicRepositories.md +20 -0
  19. openhound_github-0.8.0/descriptions/edges/GH_CanCreateRepositories.md +20 -0
  20. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_CanCreateRepositoryWithRunnerAccess.md +17 -0
  21. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_CanDeployToEnvironment.md +29 -0
  22. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_CanEditEnvironment.md +13 -1
  23. openhound_github-0.8.0/descriptions/edges/GH_CanEditProtection.md +26 -0
  24. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_CanPwnRequest.md +17 -13
  25. openhound_github-0.8.0/descriptions/edges/GH_CanReadSecret.md +20 -0
  26. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_CanReadSecretScanningAlert.md +13 -13
  27. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_CanUseRunner.md +23 -0
  28. openhound_github-0.8.0/descriptions/edges/GH_CanWriteBranch.md +32 -0
  29. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_CloseDiscussion.md +17 -0
  30. openhound_github-0.8.0/descriptions/edges/GH_CloseIssue.md +20 -0
  31. openhound_github-0.8.0/descriptions/edges/GH_ClosePullRequest.md +20 -0
  32. openhound_github-0.8.0/descriptions/edges/GH_Contains.md +98 -0
  33. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ConvertIssuesToDiscussions.md +17 -0
  34. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_CreateDiscussionCategory.md +17 -0
  35. openhound_github-0.8.0/descriptions/edges/GH_CreateEnterpriseOrganizations.md +20 -0
  36. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_CreateRepository.md +17 -0
  37. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_CreateSoloMergeQueueEntry.md +17 -0
  38. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_CreateTag.md +17 -0
  39. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_CreateTeam.md +17 -0
  40. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_DeleteAlertsCodeScanning.md +17 -0
  41. openhound_github-0.8.0/descriptions/edges/GH_DeleteDiscussion.md +20 -0
  42. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_DeleteDiscussionComment.md +17 -0
  43. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_DeleteIssue.md +17 -0
  44. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_DeleteTag.md +17 -0
  45. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_DependsOn.md +16 -0
  46. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_DeploysTo.md +17 -0
  47. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_EditCategoryOnDiscussion.md +17 -0
  48. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_EditDiscussionCategory.md +17 -0
  49. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_EditDiscussionComment.md +17 -0
  50. openhound_github-0.8.0/descriptions/edges/GH_EditEnterpriseCustomPropertiesForOrganizations.md +20 -0
  51. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_EditRepoAnnouncementBanners.md +17 -0
  52. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_EditRepoCustomPropertiesValues.md +17 -0
  53. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_EditRepoMetadata.md +17 -0
  54. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_EditRepoProtections.md +17 -0
  55. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_HasBaseRole.md +19 -0
  56. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_HasExternalIdentity.md +17 -0
  57. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_HasMember.md +20 -0
  58. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_HasPersonalAccessToken.md +17 -0
  59. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_HasPersonalAccessTokenRequest.md +17 -0
  60. openhound_github-0.8.0/descriptions/edges/GH_HasRole.md +37 -0
  61. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_HasRunner.md +21 -0
  62. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_HasSamlIdentityProvider.md +20 -0
  63. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_HasSecret.md +24 -0
  64. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_HasVariable.md +24 -0
  65. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_InheritedFrom.md +17 -0
  66. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_InstalledAs.md +17 -0
  67. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_InviteMember.md +17 -0
  68. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_IsEligibleFor.md +17 -0
  69. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_JumpMergeQueue.md +17 -0
  70. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ManageDeployKeys.md +17 -0
  71. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ManageDiscussionBadges.md +17 -0
  72. openhound_github-0.8.0/descriptions/edges/GH_ManageEnterpriseAdmins.md +20 -0
  73. openhound_github-0.8.0/descriptions/edges/GH_ManageEnterpriseIdentityProvider.md +20 -0
  74. openhound_github-0.8.0/descriptions/edges/GH_ManageEnterpriseMembers.md +20 -0
  75. openhound_github-0.8.0/descriptions/edges/GH_ManageEnterpriseOrganizationAdmins.md +20 -0
  76. openhound_github-0.8.0/descriptions/edges/GH_ManageEnterpriseOrganizations.md +20 -0
  77. openhound_github-0.8.0/descriptions/edges/GH_ManageEnterpriseReferrals.md +20 -0
  78. openhound_github-0.8.0/descriptions/edges/GH_ManageEnterpriseTeams.md +20 -0
  79. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ManageOrganizationWebhooks.md +17 -0
  80. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ManageRepoSecurityProducts.md +17 -0
  81. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ManageSecurityProducts.md +17 -0
  82. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ManageSettingsMergeTypes.md +17 -0
  83. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ManageSettingsPages.md +17 -0
  84. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ManageSettingsProjects.md +17 -0
  85. openhound_github-0.8.0/descriptions/edges/GH_ManageSettingsWiki.md +20 -0
  86. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ManageTopics.md +17 -0
  87. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ManageWebhooks.md +17 -0
  88. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_MapsToUser.md +20 -0
  89. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_MarkAsDuplicate.md +17 -0
  90. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_MatchesEnvironmentPolicy.md +17 -0
  91. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_MemberOf.md +24 -0
  92. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_OrgBypassCodeScanningDismissalRequests.md +17 -0
  93. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_OrgBypassSecretScanningClosureRequests.md +17 -0
  94. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_OrgReviewAndManageSecretScanningBypassRequests.md +17 -0
  95. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_OrgReviewAndManageSecretScanningClosureRequests.md +17 -0
  96. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_Owns.md +17 -0
  97. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ProtectedBy.md +17 -0
  98. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_PushProtectedBranch.md +17 -0
  99. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ReadCodeScanning.md +17 -0
  100. openhound_github-0.8.0/descriptions/edges/GH_ReadEnterpriseAuditLog.md +20 -0
  101. openhound_github-0.8.0/descriptions/edges/GH_ReadEnterpriseDomainVerification.md +20 -0
  102. openhound_github-0.8.0/descriptions/edges/GH_ReadEnterpriseMembers.md +20 -0
  103. openhound_github-0.8.0/descriptions/edges/GH_ReadEnterpriseOrgProjects.md +20 -0
  104. openhound_github-0.8.0/descriptions/edges/GH_ReadEnterpriseOrganizationAdmin.md +20 -0
  105. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ReadOrganizationActionsUsageMetrics.md +17 -0
  106. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ReadOrganizationCustomOrgRole.md +17 -0
  107. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ReadOrganizationCustomRepoRole.md +17 -0
  108. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ReadRepoContents.md +17 -0
  109. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_RemoveAssignee.md +17 -0
  110. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_RemoveLabel.md +17 -0
  111. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ReopenDiscussion.md +17 -0
  112. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ReopenIssue.md +17 -0
  113. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ReopenPullRequest.md +17 -0
  114. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_RequestPrReview.md +17 -0
  115. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ResolveDependabotAlerts.md +17 -0
  116. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ResolveSecretScanningAlerts.md +21 -0
  117. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_RestrictionsCanPush.md +17 -0
  118. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_RunOrgMigration.md +17 -0
  119. openhound_github-0.8.0/descriptions/edges/GH_RunsOn.md +24 -0
  120. openhound_github-0.8.0/descriptions/edges/GH_SetEnterpriseInteractionLimits.md +20 -0
  121. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_SetInteractionLimits.md +17 -0
  122. openhound_github-0.8.0/descriptions/edges/GH_SetIssueType.md +20 -0
  123. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_SetMilestone.md +17 -0
  124. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_SetSocialPreview.md +17 -0
  125. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_SyncedTo.md +17 -0
  126. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ToggleDiscussionAnswer.md +17 -0
  127. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ToggleDiscussionCommentMinimize.md +17 -0
  128. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_TransferRepository.md +17 -0
  129. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_UsesSecret.md +30 -0
  130. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_UsesVariable.md +30 -0
  131. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ValidToken.md +17 -0
  132. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ViewDependabotAlerts.md +17 -0
  133. openhound_github-0.8.0/descriptions/edges/GH_ViewEnterpriseActionsUsageMetrics.md +20 -0
  134. openhound_github-0.8.0/descriptions/edges/GH_ViewEnterpriseBilling.md +20 -0
  135. openhound_github-0.8.0/descriptions/edges/GH_ViewEnterpriseSecretScanningAlerts.md +20 -0
  136. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_ViewSecretScanningAlerts.md +21 -0
  137. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_WriteCodeScanning.md +17 -0
  138. openhound_github-0.8.0/descriptions/edges/GH_WriteEnterpriseActionsPolicies.md +20 -0
  139. openhound_github-0.8.0/descriptions/edges/GH_WriteEnterpriseBilling.md +20 -0
  140. openhound_github-0.8.0/descriptions/edges/GH_WriteEnterprisePersonalAccessTokenPolicies.md +20 -0
  141. openhound_github-0.8.0/descriptions/edges/GH_WriteEnterpriseSso.md +20 -0
  142. openhound_github-0.8.0/descriptions/edges/GH_WriteEnterpriseTeamMembers.md +20 -0
  143. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_WriteOrganizationActionsSecrets.md +17 -0
  144. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_WriteOrganizationActionsSettings.md +17 -0
  145. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_WriteOrganizationActionsVariables.md +17 -0
  146. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_WriteOrganizationCustomOrgRole.md +17 -0
  147. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_WriteOrganizationCustomRepoRole.md +17 -0
  148. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_WriteOrganizationNetworkConfigurations.md +17 -0
  149. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_WriteRepoContents.md +17 -0
  150. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/edges/GH_WriteRepoPullRequests.md +17 -0
  151. openhound_github-0.8.0/descriptions/nodes/GH_App.md +40 -0
  152. openhound_github-0.8.0/descriptions/nodes/GH_AppInstallation.md +47 -0
  153. openhound_github-0.8.0/descriptions/nodes/GH_Branch.md +48 -0
  154. {openhound_github-0.7.2 → openhound_github-0.8.0}/descriptions/nodes/GH_BranchProtectionRule.md +46 -1
  155. openhound_github-0.8.0/descriptions/nodes/GH_Enterprise.md +73 -0
  156. openhound_github-0.8.0/descriptions/nodes/GH_EnterpriseManagedUser.md +36 -0
  157. openhound_github-0.8.0/descriptions/nodes/GH_EnterpriseRole.md +63 -0
  158. openhound_github-0.8.0/descriptions/nodes/GH_EnterpriseRunner.md +48 -0
  159. openhound_github-0.8.0/descriptions/nodes/GH_EnterpriseRunnerGroup.md +46 -0
  160. openhound_github-0.8.0/descriptions/nodes/GH_EnterpriseTeam.md +44 -0
  161. openhound_github-0.8.0/descriptions/nodes/GH_Environment.md +60 -0
  162. openhound_github-0.8.0/descriptions/nodes/GH_EnvironmentBranchPolicy.md +30 -0
  163. openhound_github-0.8.0/descriptions/nodes/GH_EnvironmentSecret.md +38 -0
  164. openhound_github-0.8.0/descriptions/nodes/GH_EnvironmentVariable.md +39 -0
  165. openhound_github-0.8.0/descriptions/nodes/GH_ExternalIdentity.md +38 -0
  166. openhound_github-0.8.0/descriptions/nodes/GH_OrgRole.md +52 -0
  167. openhound_github-0.8.0/descriptions/nodes/GH_OrgRunner.md +48 -0
  168. openhound_github-0.8.0/descriptions/nodes/GH_OrgRunnerGroup.md +53 -0
  169. openhound_github-0.8.0/descriptions/nodes/GH_OrgSecret.md +38 -0
  170. openhound_github-0.8.0/descriptions/nodes/GH_OrgVariable.md +36 -0
  171. openhound_github-0.8.0/descriptions/nodes/GH_Organization.md +126 -0
  172. openhound_github-0.8.0/descriptions/nodes/GH_PersonalAccessToken.md +44 -0
  173. openhound_github-0.8.0/descriptions/nodes/GH_PersonalAccessTokenRequest.md +34 -0
  174. openhound_github-0.8.0/descriptions/nodes/GH_RepoRole.md +107 -0
  175. openhound_github-0.8.0/descriptions/nodes/GH_RepoRunner.md +48 -0
  176. openhound_github-0.8.0/descriptions/nodes/GH_RepoSecret.md +36 -0
  177. openhound_github-0.8.0/descriptions/nodes/GH_RepoVariable.md +36 -0
  178. openhound_github-0.8.0/descriptions/nodes/GH_Repository.md +159 -0
  179. openhound_github-0.8.0/descriptions/nodes/GH_Runner.md +22 -0
  180. openhound_github-0.8.0/descriptions/nodes/GH_RunnerGroup.md +22 -0
  181. openhound_github-0.8.0/descriptions/nodes/GH_SamlIdentityProvider.md +39 -0
  182. openhound_github-0.8.0/descriptions/nodes/GH_Secret.md +22 -0
  183. openhound_github-0.8.0/descriptions/nodes/GH_SecretScanningAlert.md +40 -0
  184. openhound_github-0.8.0/descriptions/nodes/GH_Team.md +52 -0
  185. openhound_github-0.8.0/descriptions/nodes/GH_TeamRole.md +37 -0
  186. openhound_github-0.8.0/descriptions/nodes/GH_User.md +61 -0
  187. openhound_github-0.8.0/descriptions/nodes/GH_Variable.md +22 -0
  188. openhound_github-0.8.0/descriptions/nodes/GH_Workflow.md +45 -0
  189. openhound_github-0.8.0/descriptions/nodes/GH_WorkflowJob.md +64 -0
  190. openhound_github-0.8.0/descriptions/nodes/GH_WorkflowStep.md +53 -0
  191. openhound_github-0.8.0/extension/privilege_zone_rules/t0-enterprise-owners-role.json +8 -0
  192. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/schema.json +5 -0
  193. openhound_github-0.8.0/scripts/generate_gh_description_docs.py +350 -0
  194. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/graphql.py +0 -1
  195. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/kinds/edges.py +1 -0
  196. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/lookup.py +199 -0
  197. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/main.py +6 -0
  198. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/enterprise.py +8 -6
  199. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/org.py +8 -0
  200. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/runner.py +5 -0
  201. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/workflow.py +52 -0
  202. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/workflow_job.py +61 -29
  203. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/resources/enterprise.py +8 -1
  204. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/resources/organization.py +8 -0
  205. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/source.py +79 -0
  206. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/transforms.py +87 -0
  207. openhound_github-0.8.0/tests/test_description_docs.py +45 -0
  208. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_enterprise_resources.py +12 -1
  209. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_runner_models.py +144 -0
  210. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_source_endpoints.py +70 -0
  211. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_source_org_canonicalization.py +9 -1
  212. openhound_github-0.8.0/tests/test_workflow_model.py +282 -0
  213. openhound_github-0.7.2/descriptions/edges/GH_AssignedTo.md +0 -5
  214. openhound_github-0.7.2/descriptions/edges/GH_CanAccess.md +0 -3
  215. openhound_github-0.7.2/descriptions/edges/GH_CanCreateBranch.md +0 -54
  216. openhound_github-0.7.2/descriptions/edges/GH_CanEditProtection.md +0 -31
  217. openhound_github-0.7.2/descriptions/edges/GH_CanWriteBranch.md +0 -82
  218. openhound_github-0.7.2/descriptions/edges/GH_CloseIssue.md +0 -3
  219. openhound_github-0.7.2/descriptions/edges/GH_ClosePullRequest.md +0 -3
  220. openhound_github-0.7.2/descriptions/edges/GH_Contains.md +0 -3
  221. openhound_github-0.7.2/descriptions/edges/GH_DeleteDiscussion.md +0 -3
  222. openhound_github-0.7.2/descriptions/edges/GH_HasBranch.md +0 -3
  223. openhound_github-0.7.2/descriptions/edges/GH_HasEnvironment.md +0 -3
  224. openhound_github-0.7.2/descriptions/edges/GH_HasJob.md +0 -3
  225. openhound_github-0.7.2/descriptions/edges/GH_HasRole.md +0 -3
  226. openhound_github-0.7.2/descriptions/edges/GH_HasStep.md +0 -3
  227. openhound_github-0.7.2/descriptions/edges/GH_HasWorkflow.md +0 -3
  228. openhound_github-0.7.2/descriptions/edges/GH_ManageSettingsWiki.md +0 -3
  229. openhound_github-0.7.2/descriptions/edges/GH_SetIssueType.md +0 -3
  230. openhound_github-0.7.2/descriptions/nodes/GH_App.md +0 -5
  231. openhound_github-0.7.2/descriptions/nodes/GH_AppInstallation.md +0 -5
  232. openhound_github-0.7.2/descriptions/nodes/GH_Branch.md +0 -3
  233. openhound_github-0.7.2/descriptions/nodes/GH_EnterpriseRunner.md +0 -5
  234. openhound_github-0.7.2/descriptions/nodes/GH_EnterpriseRunnerGroup.md +0 -5
  235. openhound_github-0.7.2/descriptions/nodes/GH_Environment.md +0 -5
  236. openhound_github-0.7.2/descriptions/nodes/GH_EnvironmentBranchPolicy.md +0 -5
  237. openhound_github-0.7.2/descriptions/nodes/GH_EnvironmentSecret.md +0 -5
  238. openhound_github-0.7.2/descriptions/nodes/GH_EnvironmentVariable.md +0 -5
  239. openhound_github-0.7.2/descriptions/nodes/GH_ExternalIdentity.md +0 -3
  240. openhound_github-0.7.2/descriptions/nodes/GH_OrgRole.md +0 -3
  241. openhound_github-0.7.2/descriptions/nodes/GH_OrgRunner.md +0 -5
  242. openhound_github-0.7.2/descriptions/nodes/GH_OrgRunnerGroup.md +0 -5
  243. openhound_github-0.7.2/descriptions/nodes/GH_OrgSecret.md +0 -3
  244. openhound_github-0.7.2/descriptions/nodes/GH_OrgVariable.md +0 -3
  245. openhound_github-0.7.2/descriptions/nodes/GH_Organization.md +0 -3
  246. openhound_github-0.7.2/descriptions/nodes/GH_PersonalAccessToken.md +0 -3
  247. openhound_github-0.7.2/descriptions/nodes/GH_PersonalAccessTokenRequest.md +0 -3
  248. openhound_github-0.7.2/descriptions/nodes/GH_RepoRole.md +0 -3
  249. openhound_github-0.7.2/descriptions/nodes/GH_RepoRunner.md +0 -5
  250. openhound_github-0.7.2/descriptions/nodes/GH_RepoSecret.md +0 -3
  251. openhound_github-0.7.2/descriptions/nodes/GH_RepoVariable.md +0 -3
  252. openhound_github-0.7.2/descriptions/nodes/GH_Repository.md +0 -3
  253. openhound_github-0.7.2/descriptions/nodes/GH_SamlIdentityProvider.md +0 -3
  254. openhound_github-0.7.2/descriptions/nodes/GH_SecretScanningAlert.md +0 -3
  255. openhound_github-0.7.2/descriptions/nodes/GH_Team.md +0 -3
  256. openhound_github-0.7.2/descriptions/nodes/GH_TeamRole.md +0 -3
  257. openhound_github-0.7.2/descriptions/nodes/GH_User.md +0 -3
  258. openhound_github-0.7.2/descriptions/nodes/GH_Workflow.md +0 -3
  259. openhound_github-0.7.2/descriptions/nodes/GH_WorkflowJob.md +0 -3
  260. openhound_github-0.7.2/descriptions/nodes/GH_WorkflowStep.md +0 -3
  261. openhound_github-0.7.2/tests/test_workflow_model.py +0 -147
  262. {openhound_github-0.7.2 → openhound_github-0.8.0}/.github/CODE_OF_CONDUCT.md +0 -0
  263. {openhound_github-0.7.2 → openhound_github-0.8.0}/.github/CONTRIBUTING.md +0 -0
  264. {openhound_github-0.7.2 → openhound_github-0.8.0}/.github/GOVERNANCE.md +0 -0
  265. {openhound_github-0.7.2 → openhound_github-0.8.0}/.github/GitHub-COC-Header.png +0 -0
  266. {openhound_github-0.7.2 → openhound_github-0.8.0}/.github/GitHub-CONTRIB-Header.png +0 -0
  267. {openhound_github-0.7.2 → openhound_github-0.8.0}/.github/GitHub-GOV-Header.png +0 -0
  268. {openhound_github-0.7.2 → openhound_github-0.8.0}/.github/GitHub-Header.png +0 -0
  269. {openhound_github-0.7.2 → openhound_github-0.8.0}/.github/GitHub-LIC-Header.png +0 -0
  270. {openhound_github-0.7.2 → openhound_github-0.8.0}/.github/GitHub-SEC-Header.png +0 -0
  271. {openhound_github-0.7.2 → openhound_github-0.8.0}/.github/SECURITY.md +0 -0
  272. {openhound_github-0.7.2 → openhound_github-0.8.0}/.github/SO-Dark.svg +0 -0
  273. {openhound_github-0.7.2 → openhound_github-0.8.0}/.github/SO-FOSS-Dark.svg +0 -0
  274. {openhound_github-0.7.2 → openhound_github-0.8.0}/.github/SO-FOSS-Light.svg +0 -0
  275. {openhound_github-0.7.2 → openhound_github-0.8.0}/.github/SO-Light.svg +0 -0
  276. {openhound_github-0.7.2 → openhound_github-0.8.0}/.github/workflows/publish.yml +0 -0
  277. {openhound_github-0.7.2 → openhound_github-0.8.0}/.github/workflows/release-on-merge.yml +0 -0
  278. {openhound_github-0.7.2 → openhound_github-0.8.0}/.github/workflows/validate-branch.yml +0 -0
  279. {openhound_github-0.7.2 → openhound_github-0.8.0}/.gitignore +0 -0
  280. {openhound_github-0.7.2 → openhound_github-0.8.0}/.gitmodules +0 -0
  281. {openhound_github-0.7.2 → openhound_github-0.8.0}/.pre-commit-config.yaml +0 -0
  282. {openhound_github-0.7.2 → openhound_github-0.8.0}/LICENSE.md +0 -0
  283. {openhound_github-0.7.2 → openhound_github-0.8.0}/README.md +0 -0
  284. {openhound_github-0.7.2 → openhound_github-0.8.0}/docs/og-docs.json +0 -0
  285. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/privilege_zone_rules/t0-all-repo-admin-role.json +0 -0
  286. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/privilege_zone_rules/t0-app-installations-all-repos.json +0 -0
  287. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/privilege_zone_rules/t0-apps-all-repos.json +0 -0
  288. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/privilege_zone_rules/t0-external-identities-owners.json +0 -0
  289. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/privilege_zone_rules/t0-organizations.json +0 -0
  290. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/privilege_zone_rules/t0-owner-users.json +0 -0
  291. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/privilege_zone_rules/t0-owners-role.json +0 -0
  292. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/privilege_zone_rules/t0-pats-all-repos.json +0 -0
  293. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/privilege_zone_rules/t0-privilege-escalation-roles.json +0 -0
  294. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/privilege_zone_rules/t0-privilege-escalation-users.json +0 -0
  295. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/privilege_zone_rules/t0-saml-identity-providers.json +0 -0
  296. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/README.md +0 -0
  297. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/actions-sha-pinning-not-required.json +0 -0
  298. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/active-leaked-secrets.json +0 -0
  299. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/advanced-security-disabled-new-repos.json +0 -0
  300. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/all-actions-allowed.json +0 -0
  301. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/app-installations-all-repos.json +0 -0
  302. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/branch-protection-admins-not-enforced.json +0 -0
  303. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/branch-protection-deletions-allowed.json +0 -0
  304. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/branch-protection-force-pushes.json +0 -0
  305. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/branch-protection-no-code-owner-reviews.json +0 -0
  306. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/branch-protection-no-pr-reviews.json +0 -0
  307. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/branch-protection-no-status-checks.json +0 -0
  308. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/branch-protection-self-approval.json +0 -0
  309. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/branch-protection-stale-reviews.json +0 -0
  310. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/bypass-pr-requirements.json +0 -0
  311. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/dangerous-branch-perms.json +0 -0
  312. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/default-repository-permissions.json +0 -0
  313. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/demo-sso-to-cloud-round-trip.json +0 -0
  314. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/dependabot-alerts-disabled-new-repos.json +0 -0
  315. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/dependabot-updates-disabled-new-repos.json +0 -0
  316. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/dependency-graph-disabled-new-repos.json +0 -0
  317. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/environments-admin-bypass.json +0 -0
  318. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/expired-pats.json +0 -0
  319. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/external-identities-without-scim.json +0 -0
  320. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/github-to-azure-identity.json +0 -0
  321. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/global-repo-perms.json +0 -0
  322. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/hybrid-identities.json +0 -0
  323. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/members-can-change-repo-visibility.json +0 -0
  324. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/members-can-create-pages.json +0 -0
  325. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/members-can-create-public-repos.json +0 -0
  326. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/members-can-delete-repos.json +0 -0
  327. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/members-can-fork-private-repos.json +0 -0
  328. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/members-can-invite-outside-collaborators.json +0 -0
  329. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/org-owners.json +0 -0
  330. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/orgs-without-2fa.json +0 -0
  331. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/pats-all-repo-access.json +0 -0
  332. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/pending-pat-requests.json +0 -0
  333. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/private-repos-forking-allowed.json +0 -0
  334. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/privileged-custom-org-roles.json +0 -0
  335. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/privileged-hybrid-identities.json +0 -0
  336. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/public-repos.json +0 -0
  337. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/push-protection-disabled-new-repos.json +0 -0
  338. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/push-to-protected-branches.json +0 -0
  339. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/repos-secret-scanning-disabled.json +0 -0
  340. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/repos-vulnerable-to-workflow-secret-exfil.json +0 -0
  341. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/repository-workflows.json +0 -0
  342. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/saml-configuration.json +0 -0
  343. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/secret-scanning-alerts.json +0 -0
  344. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/secret-scanning-disabled-new-repos.json +0 -0
  345. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/secrets-reachable-by-user.json +0 -0
  346. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/team-membership-admin.json +0 -0
  347. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/team-structure.json +0 -0
  348. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/unprotected-branches.json +0 -0
  349. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/unprotected-default-branch-with-workflow.json +0 -0
  350. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/unprotected-default-branches.json +0 -0
  351. {openhound_github-0.7.2 → openhound_github-0.8.0}/extension/saved_searches/web-commit-signoff-not-required.json +0 -0
  352. {openhound_github-0.7.2 → openhound_github-0.8.0}/justfile +0 -0
  353. {openhound_github-0.7.2 → openhound_github-0.8.0}/pyproject.toml +0 -0
  354. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/main.py +0 -0
  355. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/__init__.py +0 -0
  356. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/auth.py +0 -0
  357. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/extension.yaml +0 -0
  358. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/github_rest_client.py +0 -0
  359. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/github_retry.py +0 -0
  360. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/graph.py +0 -0
  361. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/helpers.py +0 -0
  362. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/kinds/nodes.py +0 -0
  363. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/__init__.py +0 -0
  364. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/actions_permission.py +0 -0
  365. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/app_installation.py +0 -0
  366. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/branch.py +0 -0
  367. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/branch_pr_bypass_allowance.py +0 -0
  368. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/branch_protection_rule.py +0 -0
  369. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/branch_push_allowance.py +0 -0
  370. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/enterprise_admin.py +0 -0
  371. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/enterprise_helpers.py +0 -0
  372. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/enterprise_managed_user.py +0 -0
  373. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/enterprise_member.py +0 -0
  374. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/enterprise_organization.py +0 -0
  375. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/enterprise_role.py +0 -0
  376. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/enterprise_role_team.py +0 -0
  377. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/enterprise_role_user.py +0 -0
  378. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/enterprise_team.py +0 -0
  379. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/enterprise_team_member.py +0 -0
  380. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/enterprise_team_organization.py +0 -0
  381. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/enterprise_team_role.py +0 -0
  382. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/enterprise_user.py +0 -0
  383. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/env_secret.py +0 -0
  384. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/env_variable.py +0 -0
  385. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/environment.py +0 -0
  386. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/environment_branch_policy.py +0 -0
  387. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/external_identity.py +0 -0
  388. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/org_role.py +0 -0
  389. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/org_role_member.py +0 -0
  390. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/org_role_team.py +0 -0
  391. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/org_secret.py +0 -0
  392. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/org_variable.py +0 -0
  393. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/personal_access_token.py +0 -0
  394. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/personal_access_token_access.py +0 -0
  395. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/personal_access_token_request.py +0 -0
  396. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/projected_enterprise_team.py +0 -0
  397. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/repo_role_assignment.py +0 -0
  398. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/repository.py +0 -0
  399. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/repository_role.py +0 -0
  400. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/repository_secret.py +0 -0
  401. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/repository_variable.py +0 -0
  402. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/saml_assertion_consumer_service.py +0 -0
  403. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/saml_helpers.py +0 -0
  404. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/saml_issuer.py +0 -0
  405. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/saml_provider.py +0 -0
  406. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/saml_service_provider.py +0 -0
  407. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/scim_user.py +0 -0
  408. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/secret_scanning_alert.py +0 -0
  409. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/team.py +0 -0
  410. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/team_member.py +0 -0
  411. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/team_role.py +0 -0
  412. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/user.py +0 -0
  413. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/models/workflow_step.py +0 -0
  414. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/resources/__init__.py +0 -0
  415. {openhound_github-0.7.2 → openhound_github-0.8.0}/src/openhound_github/runner_ids.py +0 -0
  416. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_app_auth.py +0 -0
  417. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_branch_collection_gate.py +0 -0
  418. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_branch_protection_traversability.py +0 -0
  419. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/actions-permissions.json +0 -0
  420. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/actionsecrets.json +0 -0
  421. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/app.json +0 -0
  422. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/appinstalls.json +0 -0
  423. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/branch-policies.json +0 -0
  424. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/branch-prot-rules.json +0 -0
  425. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/branches.json +0 -0
  426. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/custom-roles.json +0 -0
  427. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/environments.json +0 -0
  428. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/org-pat-request.json +0 -0
  429. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/org-pat.json +0 -0
  430. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/org-role-teams.json +0 -0
  431. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/org-role-users.json +0 -0
  432. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/org-roles.json +0 -0
  433. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/org.json +0 -0
  434. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/pat-repositories.json +0 -0
  435. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/repo-collaborators.json +0 -0
  436. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/repo-teams.json +0 -0
  437. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/repositories.json +0 -0
  438. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/scimusers.json +0 -0
  439. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/secrets.json +0 -0
  440. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/secretscanningalert.json +0 -0
  441. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/selected-org-secrets.json +0 -0
  442. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/variables.json +0 -0
  443. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_data/api/workflows.json +0 -0
  444. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_enterprise_capabilities.py +0 -0
  445. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_enterprise_organization.py +0 -0
  446. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_environment_model.py +0 -0
  447. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_environment_resources.py +0 -0
  448. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_environment_reviewer_lookup.py +0 -0
  449. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_error_resilience.py +0 -0
  450. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_github_app_retry.py +0 -0
  451. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_github_rest_client.py +0 -0
  452. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_github_retry.py +0 -0
  453. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_helpers.py +0 -0
  454. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_lookup.py +0 -0
  455. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_org_scim_resources.py +0 -0
  456. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_org_secret_models.py +0 -0
  457. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_repository_rulesets.py +0 -0
  458. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_runner_ids.py +0 -0
  459. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_runner_resources.py +0 -0
  460. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_saml_helpers.py +0 -0
  461. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_saml_models.py +0 -0
  462. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_scim_models.py +0 -0
  463. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_team_external_groups.py +0 -0
  464. {openhound_github-0.7.2 → openhound_github-0.8.0}/tests/test_variable_models.py +0 -0
  465. {openhound_github-0.7.2 → openhound_github-0.8.0}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: openhound-github
3
- Version: 0.7.2
3
+ Version: 0.8.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
@@ -1,3 +1,20 @@
1
+ # GH_AddAssignee
2
+
1
3
  ## General Information
2
4
 
3
5
  The non-traversable GH_AddAssignee edge represents a role's ability to assign users to issues and pull requests. This permission is available to Triage, Write, Maintain, and Admin roles and custom roles that have been granted this specific permission.
6
+
7
+ ## Edge Schema
8
+
9
+ | Source | Destination | Traversable |
10
+ | --- | --- | --- |
11
+ | `GH_RepoRole` | `GH_Repository` | `false` |
12
+
13
+ ## Diagram
14
+
15
+ ```mermaid
16
+ graph LR
17
+ n0["GH_RepoRole"]
18
+ n1["GH_Repository"]
19
+ n0 -.->|GH_AddAssignee| n1
20
+ ```
@@ -1,3 +1,20 @@
1
+ # GH_AddCollaborator
2
+
1
3
  ## General Information
2
4
 
3
5
  The non-traversable GH_AddCollaborator edge represents that a role has the ability to add outside collaborators to organization repositories. This permission is typically restricted to Owners, as it grants repository access to external users who are not members of the organization. Outside collaborators bypass organizational membership controls, making this permission significant for security because it can be used to grant access to untrusted external identities without the visibility that full membership provides.
6
+
7
+ ## Edge Schema
8
+
9
+ | Source | Destination | Traversable |
10
+ | --- | --- | --- |
11
+ | `GH_OrgRole` | `GH_Organization` | `false` |
12
+
13
+ ## Diagram
14
+
15
+ ```mermaid
16
+ graph LR
17
+ n0["GH_OrgRole"]
18
+ n1["GH_Organization"]
19
+ n0 -.->|GH_AddCollaborator| n1
20
+ ```
@@ -1,3 +1,20 @@
1
+ # GH_AddLabel
2
+
1
3
  ## General Information
2
4
 
3
5
  The non-traversable GH_AddLabel edge represents a role's ability to add labels to issues and pull requests. This permission is available to Triage, Write, Maintain, and Admin roles and custom roles that have been granted this specific permission.
6
+
7
+ ## Edge Schema
8
+
9
+ | Source | Destination | Traversable |
10
+ | --- | --- | --- |
11
+ | `GH_RepoRole` | `GH_Repository` | `false` |
12
+
13
+ ## Diagram
14
+
15
+ ```mermaid
16
+ graph LR
17
+ n0["GH_RepoRole"]
18
+ n1["GH_Repository"]
19
+ n0 -.->|GH_AddLabel| n1
20
+ ```
@@ -1,3 +1,20 @@
1
+ # GH_AddMember
2
+
1
3
  ## General Information
2
4
 
3
5
  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.
6
+
7
+ ## Edge Schema
8
+
9
+ | Source | Destination | Traversable |
10
+ | --- | --- | --- |
11
+ | `GH_TeamRole` | `GH_Team` | `false` |
12
+
13
+ ## Diagram
14
+
15
+ ```mermaid
16
+ graph LR
17
+ n0["GH_TeamRole"]
18
+ n1["GH_Team"]
19
+ n0 -.->|GH_AddMember| n1
20
+ ```
@@ -1,3 +1,20 @@
1
+ # GH_AdminTo
2
+
1
3
  ## General Information
2
4
 
3
5
  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.
6
+
7
+ ## Edge Schema
8
+
9
+ | Source | Destination | Traversable |
10
+ | --- | --- | --- |
11
+ | `GH_RepoRole` | `GH_Repository` | `true` |
12
+
13
+ ## Diagram
14
+
15
+ ```mermaid
16
+ graph LR
17
+ n0["GH_RepoRole"]
18
+ n1["GH_Repository"]
19
+ n0 -->|GH_AdminTo| n1
20
+ ```
@@ -1,3 +1,5 @@
1
+ # GH_ApprovesDeploymentTo
2
+
1
3
  ## General Information
2
4
 
3
5
  The non-traversable GH_ApprovesDeploymentTo edge represents that a user or team is configured as a required reviewer for a GitHub Environment.
@@ -5,3 +7,21 @@ The non-traversable GH_ApprovesDeploymentTo edge represents that a user or team
5
7
  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
8
 
7
9
  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 only if they can also supply deployable code through GH_CanCreateBranch or GH_CanWriteBranch under the environment's branch policy. When prevent_self_review is enabled, GH_ApprovesDeploymentTo remains context only because the split-principal approval flow is not currently modeled.
10
+
11
+ ## Edge Schema
12
+
13
+ | Source | Destination | Traversable |
14
+ | --- | --- | --- |
15
+ | `GH_Team` | `GH_Environment` | `false` |
16
+ | `GH_User` | `GH_Environment` | `false` |
17
+
18
+ ## Diagram
19
+
20
+ ```mermaid
21
+ graph LR
22
+ n0["GH_Team"]
23
+ n1["GH_Environment"]
24
+ n2["GH_User"]
25
+ n0 -.->|GH_ApprovesDeploymentTo| n1
26
+ n2 -.->|GH_ApprovesDeploymentTo| n1
27
+ ```
@@ -0,0 +1,22 @@
1
+ # GH_AssignedTo
2
+
3
+ ## General Information
4
+
5
+ The non-traversable GH_AssignedTo edge represents an enterprise-scoped team being assigned to an organization.
6
+
7
+ This edge is not traversable because assignment alone does not directly grant a principal a privilege path.
8
+
9
+ ## Edge Schema
10
+
11
+ | Source | Destination | Traversable |
12
+ | --- | --- | --- |
13
+ | `GH_EnterpriseTeam` | `GH_Organization` | `false` |
14
+
15
+ ## Diagram
16
+
17
+ ```mermaid
18
+ graph LR
19
+ n0["GH_EnterpriseTeam"]
20
+ n1["GH_Organization"]
21
+ n0 -.->|GH_AssignedTo| n1
22
+ ```
@@ -1,3 +1,20 @@
1
+ # GH_BypassBranchProtection
2
+
1
3
  ## General Information
2
4
 
3
5
  The non-traversable GH_BypassBranchProtection edge represents a role's ability to bypass branch protection rules on the repository. This permission is available to Admin roles and custom roles that have been granted this specific permission. Bypassing branch protection allows merging pull requests without satisfying required review or status check requirements, effectively circumventing the merge gate. This bypass is suppressed when `enforce_admins` is enabled on the branch protection rule, which forces even admins to comply with the protection policy.
6
+
7
+ ## Edge Schema
8
+
9
+ | Source | Destination | Traversable |
10
+ | --- | --- | --- |
11
+ | `GH_RepoRole` | `GH_Repository` | `false` |
12
+
13
+ ## Diagram
14
+
15
+ ```mermaid
16
+ graph LR
17
+ n0["GH_RepoRole"]
18
+ n1["GH_Repository"]
19
+ n0 -.->|GH_BypassBranchProtection| n1
20
+ ```
@@ -1,3 +1,20 @@
1
+ # GH_BypassPullRequestAllowances
2
+
1
3
  ## General Information
2
4
 
3
5
  The non-traversable GH_BypassPullRequestAllowances edge represents a per-actor allowance that bypasses the pull request review requirement on a branch protection rule. This edge identifies specific users or teams that can merge code without going through the normal PR review process. This is a significant security concern because these actors can push or merge changes directly, circumventing code review controls that protect branch integrity. Note that this bypass is suppressed when `enforce_admins` is enabled on the branch protection rule, meaning even listed actors must follow the PR review requirement.
6
+
7
+ ## Edge Schema
8
+
9
+ | Source | Destination | Traversable |
10
+ | --- | --- | --- |
11
+ | `GH_User` | `GH_BranchProtectionRule` | `false` |
12
+
13
+ ## Diagram
14
+
15
+ ```mermaid
16
+ graph LR
17
+ n0["GH_User"]
18
+ n1["GH_BranchProtectionRule"]
19
+ n0 -.->|GH_BypassPullRequestAllowances| n1
20
+ ```
@@ -1,3 +1,5 @@
1
+ # GH_CallsWorkflow
2
+
1
3
  ## General Information
2
4
 
3
5
  The traversable GH_CallsWorkflow edge links a workflow job to a reusable workflow it invokes via the `uses:` key at the job level. This edge captures the reusable workflow call graph, enabling analysts to trace inherited permissions and secret access through called workflows.
@@ -8,3 +10,18 @@ The traversable GH_CallsWorkflow edge links a workflow job to a reusable workflo
8
10
  - **Remote** (`org/repo/.github/workflows/file.yml@ref`): the destination is matched by the full reference string. If the called workflow has not been collected, the edge destination will not resolve.
9
11
 
10
12
  The `reusable_ref` property on the edge always contains the raw `uses:` value from the workflow file.
13
+
14
+ ## Edge Schema
15
+
16
+ | Source | Destination | Traversable |
17
+ | --- | --- | --- |
18
+ | `GH_WorkflowJob` | `GH_Workflow` | `false` |
19
+
20
+ ## Diagram
21
+
22
+ ```mermaid
23
+ graph LR
24
+ n0["GH_WorkflowJob"]
25
+ n1["GH_Workflow"]
26
+ n0 -.->|GH_CallsWorkflow| n1
27
+ ```
@@ -0,0 +1,26 @@
1
+ # GH_CanAccess
2
+
3
+ ## General Information
4
+
5
+ The non-traversable GH_CanAccess edge indicates that a personal access token or app installation has been granted access to specific repositories. This edge represents the scope of access granted to a token or app rather than a direct attack path, providing visibility into which repositories are reachable through non-human credentials. It is non-traversable because token and app access does not transitively extend to other principals.
6
+
7
+ ## Edge Schema
8
+
9
+ | Source | Destination | Traversable |
10
+ | --- | --- | --- |
11
+ | `GH_AppInstallation` | `GH_Repository` | `false` |
12
+ | `GH_PersonalAccessToken` | `GH_Organization` | `false` |
13
+ | `GH_PersonalAccessToken` | `GH_Repository` | `false` |
14
+
15
+ ## Diagram
16
+
17
+ ```mermaid
18
+ graph LR
19
+ n0["GH_AppInstallation"]
20
+ n1["GH_Repository"]
21
+ n2["GH_PersonalAccessToken"]
22
+ n3["GH_Organization"]
23
+ n0 -.->|GH_CanAccess| n1
24
+ n2 -.->|GH_CanAccess| n3
25
+ n2 -.->|GH_CanAccess| n1
26
+ ```
@@ -1,3 +1,20 @@
1
+ # GH_CanAssumeIdentity
2
+
1
3
  ## General Information
2
4
 
3
5
  The traversable GH_CanAssumeIdentity edge is a hybrid edge connecting GitHub OIDC token sources to cloud identity targets configured for GitHub Actions federation. This edge represents a verified path from GitHub Actions to cloud resource access. It is traversable because an attacker who can execute workflows in the source repository, branch, or environment can obtain an OIDC token that the cloud provider will accept, granting access to the associated cloud identity and its permissions. This edge is critical for identifying cross-cloud lateral movement paths from GitHub into Azure and AWS.
6
+
7
+ ## Edge Schema
8
+
9
+ | Source | Destination | Traversable |
10
+ | --- | --- | --- |
11
+ | `GH_Repository` | `External cloud identity` | `true` |
12
+
13
+ ## Diagram
14
+
15
+ ```mermaid
16
+ graph LR
17
+ n0["GH_Repository"]
18
+ n1["External cloud identity"]
19
+ n0 -->|GH_CanAssumeIdentity| n1
20
+ ```
@@ -0,0 +1,26 @@
1
+ # GH_CanCreateBranch
2
+
3
+ ## General Information
4
+
5
+ The traversable GH_CanCreateBranch edge is a computed edge indicating that a role or actor can create new branches in a repository. The computation evaluates whether a wildcard (`*`) BPR with push restrictions and `blocks_creations` exists. If no such BPR exists, any write-capable role can create branches. If one exists, admin or `push_protected_branch` permission is required, or the actor must be listed in pushAllowances. Per-actor edges from GH_User or GH_Team are only emitted when BPR allowances grant branch creation access beyond what the role provides. Each edge includes a `reason` property and a `query_composition` Cypher query showing the underlying graph evidence.
6
+
7
+ ## Scenarios
8
+
9
+ ### `no_protection` — No wildcard BPR blocking creations
10
+
11
+ No wildcard (`*`) BPR with `blocks_creations` exists. Any write-capable role can create new branches.
12
+
13
+ ## Edge Schema
14
+
15
+ | Source | Destination | Traversable |
16
+ | --- | --- | --- |
17
+ | `GH_RepoRole` | `GH_Repository` | `false` |
18
+
19
+ ## Diagram
20
+
21
+ ```mermaid
22
+ graph LR
23
+ n0["GH_RepoRole"]
24
+ n1["GH_Repository"]
25
+ n0 -.->|GH_CanCreateBranch| n1
26
+ ```
@@ -1,5 +1,22 @@
1
+ # GH_CanCreateEnvironment
2
+
1
3
  ## General Information
2
4
 
3
5
  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
6
 
5
7
  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.
8
+
9
+ ## Edge Schema
10
+
11
+ | Source | Destination | Traversable |
12
+ | --- | --- | --- |
13
+ | `GH_RepoRole` | `GH_Repository` | `true` |
14
+
15
+ ## Diagram
16
+
17
+ ```mermaid
18
+ graph LR
19
+ n0["GH_RepoRole"]
20
+ n1["GH_Repository"]
21
+ n0 -->|GH_CanCreateEnvironment| n1
22
+ ```
@@ -0,0 +1,20 @@
1
+ # GH_CanCreateInternalRepositories
2
+
3
+ ## General Information
4
+
5
+ Role can create internal repositories in the organization.
6
+
7
+ ## Edge Schema
8
+
9
+ | Source | Destination | Traversable |
10
+ | --- | --- | --- |
11
+ | `GH_OrgRole` | `GH_Organization` | `false` |
12
+
13
+ ## Diagram
14
+
15
+ ```mermaid
16
+ graph LR
17
+ n0["GH_OrgRole"]
18
+ n1["GH_Organization"]
19
+ n0 -.->|GH_CanCreateInternalRepositories| n1
20
+ ```
@@ -0,0 +1,20 @@
1
+ # GH_CanCreatePrivateRepositories
2
+
3
+ ## General Information
4
+
5
+ Role can create private repositories in the organization.
6
+
7
+ ## Edge Schema
8
+
9
+ | Source | Destination | Traversable |
10
+ | --- | --- | --- |
11
+ | `GH_OrgRole` | `GH_Organization` | `false` |
12
+
13
+ ## Diagram
14
+
15
+ ```mermaid
16
+ graph LR
17
+ n0["GH_OrgRole"]
18
+ n1["GH_Organization"]
19
+ n0 -.->|GH_CanCreatePrivateRepositories| n1
20
+ ```
@@ -0,0 +1,20 @@
1
+ # GH_CanCreatePublicRepositories
2
+
3
+ ## General Information
4
+
5
+ Role can create public repositories in the organization.
6
+
7
+ ## Edge Schema
8
+
9
+ | Source | Destination | Traversable |
10
+ | --- | --- | --- |
11
+ | `GH_OrgRole` | `GH_Organization` | `false` |
12
+
13
+ ## Diagram
14
+
15
+ ```mermaid
16
+ graph LR
17
+ n0["GH_OrgRole"]
18
+ n1["GH_Organization"]
19
+ n0 -.->|GH_CanCreatePublicRepositories| n1
20
+ ```
@@ -0,0 +1,20 @@
1
+ # GH_CanCreateRepositories
2
+
3
+ ## General Information
4
+
5
+ Role can create repositories in the organization.
6
+
7
+ ## Edge Schema
8
+
9
+ | Source | Destination | Traversable |
10
+ | --- | --- | --- |
11
+ | `GH_OrgRole` | `GH_Organization` | `false` |
12
+
13
+ ## Diagram
14
+
15
+ ```mermaid
16
+ graph LR
17
+ n0["GH_OrgRole"]
18
+ n1["GH_Organization"]
19
+ n0 -.->|GH_CanCreateRepositories| n1
20
+ ```
@@ -1,3 +1,5 @@
1
+ # GH_CanCreateRepositoryWithRunnerAccess
2
+
1
3
  ## General Information
2
4
 
3
5
  The traversable GH_CanCreateRepositoryWithRunnerAccess edge is a computed edge indicating that a GH_OrgRole can create a repository that will immediately be able to dispatch workflows to a GH_OrgRunnerGroup.
@@ -7,3 +9,18 @@ This edge is emitted only for runner groups with `visibility=all` or `visibility
7
9
  The collector emits this edge only when new repositories in the organization have GitHub Actions enabled by default (`actions_enabled_repositories=all`), the organization-facing runner group has `restricted_to_workflows=false`, and inherited enterprise-backed access also has `restricted_to_workflows=false` on the source GH_EnterpriseRunnerGroup.
8
10
 
9
11
  The computation follows repository-creation capability edges from the org role to the organization and then GH_Contains to the runner group. Each edge includes a `query_composition` Cypher query showing the repository-creation path and the Actions and runner-group policy predicates that make the path immediately usable.
12
+
13
+ ## Edge Schema
14
+
15
+ | Source | Destination | Traversable |
16
+ | --- | --- | --- |
17
+ | `GH_OrgRole` | `GH_OrgRunnerGroup` | `true` |
18
+
19
+ ## Diagram
20
+
21
+ ```mermaid
22
+ graph LR
23
+ n0["GH_OrgRole"]
24
+ n1["GH_OrgRunnerGroup"]
25
+ n0 -->|GH_CanCreateRepositoryWithRunnerAccess| n1
26
+ ```
@@ -1,3 +1,5 @@
1
+ # GH_CanDeployToEnvironment
2
+
1
3
  ## General Information
2
4
 
3
5
  The traversable GH_CanDeployToEnvironment edge represents the ability for a repository, branch, repository role, or reviewer to satisfy the modeled deployment constraints for a GitHub Environment.
@@ -7,3 +9,30 @@ This edge is computed from environment deployment branch policy, branch protecti
7
9
  When required reviewers are configured and self-review is allowed, a configured GH_User or GH_Team reviewer receives GH_CanDeployToEnvironment only when the same actor can also supply deployable code. For unrestricted environments this means the actor can create a branch in the repository. For protected-branch-only or custom branch policy environments this means the actor can write to an eligible branch under the existing GH_CanWriteBranch rules.
8
10
 
9
11
  Self-review alone is not sufficient for this edge. GH_ApprovesDeploymentTo remains the non-traversable representation of reviewer authority, while GH_CanDeployToEnvironment represents the combined ability to satisfy both the approval gate and the code-supply path. 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.
12
+
13
+ ## Edge Schema
14
+
15
+ | Source | Destination | Traversable |
16
+ | --- | --- | --- |
17
+ | `GH_Branch` | `GH_Environment` | `true` |
18
+ | `GH_RepoRole` | `GH_Environment` | `true` |
19
+ | `GH_Repository` | `GH_Environment` | `true` |
20
+ | `GH_Team` | `GH_Environment` | `true` |
21
+ | `GH_User` | `GH_Environment` | `true` |
22
+
23
+ ## Diagram
24
+
25
+ ```mermaid
26
+ graph LR
27
+ n0["GH_Branch"]
28
+ n1["GH_Environment"]
29
+ n2["GH_RepoRole"]
30
+ n3["GH_Repository"]
31
+ n4["GH_Team"]
32
+ n5["GH_User"]
33
+ n0 -->|GH_CanDeployToEnvironment| n1
34
+ n2 -->|GH_CanDeployToEnvironment| n1
35
+ n3 -->|GH_CanDeployToEnvironment| n1
36
+ n4 -->|GH_CanDeployToEnvironment| n1
37
+ n5 -->|GH_CanDeployToEnvironment| n1
38
+ ```
@@ -1,3 +1,5 @@
1
+ # GH_CanEditEnvironment
2
+
1
3
  ## General Information
2
4
 
3
5
  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.
@@ -9,7 +11,17 @@ This edge is distinct from GH_CanDeployToEnvironment:
9
11
  - **GH_CanEditEnvironment** means the role can manage the environment's settings.
10
12
  - **GH_CanDeployToEnvironment** means the source satisfies the modeled deployment policy, reviewer gate, or administrator bypass condition for the environment.
11
13
 
14
+ ## Edge Schema
15
+
16
+ | Source | Destination | Traversable |
17
+ | --- | --- | --- |
18
+ | `GH_RepoRole` | `GH_Environment` | `true` |
19
+
20
+ ## Diagram
21
+
12
22
  ```mermaid
13
23
  graph LR
14
- role["GH_RepoRole admin"] ==>|GH_CanEditEnvironment| env["GH_Environment production"]
24
+ n0["GH_RepoRole"]
25
+ n1["GH_Environment"]
26
+ n0 -->|GH_CanEditEnvironment| n1
15
27
  ```
@@ -0,0 +1,26 @@
1
+ # GH_CanEditProtection
2
+
3
+ ## General Information
4
+
5
+ The traversable GH_CanEditProtection edge is a computed edge indicating that a role can modify or remove branch protection rules in a repository. This edge is emitted when the role has GH_EditRepoProtections or GH_AdminTo permissions and the repository contains at least one protected branch. Repo-targeted edges model the repo-wide security impact for attack path traversal; branch-targeted edges are also emitted as supporting evidence for each protected branch governed by those rules.
6
+
7
+ ## Scenarios
8
+
9
+ ### `admin` — Admin can edit protections
10
+
11
+ The admin role has GH_AdminTo which implicitly grants the ability to modify or remove any branch protection rule.
12
+
13
+ ## Edge Schema
14
+
15
+ | Source | Destination | Traversable |
16
+ | --- | --- | --- |
17
+ | `GH_RepoRole` | `GH_Branch` | `false` |
18
+
19
+ ## Diagram
20
+
21
+ ```mermaid
22
+ graph LR
23
+ n0["GH_RepoRole"]
24
+ n1["GH_Branch"]
25
+ n0 -.->|GH_CanEditProtection| n1
26
+ ```
@@ -1,3 +1,5 @@
1
+ # GH_CanPwnRequest
2
+
1
3
  ## General Information
2
4
 
3
5
  The traversable GH_CanPwnRequest edge indicates that a repository role can exploit a pwn-requestable workflow to execute arbitrary code with the base branch's secrets, GITHUB_TOKEN permissions, and OIDC identity. This is a computed edge that combines workflow analysis with repository access and fork policy evaluation.
@@ -42,18 +44,20 @@ An attacker who exploits a pwn request gains code execution in the workflow runn
42
44
  - **OIDC traversal requires `id-token: write`**: The attack chain from GH_CanPwnRequest through GH_CanAssumeIdentity to a cloud role is only valid if the pwn-requestable workflow (or job) explicitly declares `id-token: write` in its `permissions:` block. The `id-token` permission defaults to `none` and is never implicitly granted — even when the workflow has no `permissions:` block at all. The `permissions` property on the GH_WorkflowJob node can be inspected to verify this.
43
45
  - **GITHUB_TOKEN permissions**: The `permissions:` block controls what the `GITHUB_TOKEN` can do (e.g., push commits, create releases), but has no effect on secret access, OIDC token requests (governed separately by `id-token`), or arbitrary code execution. A workflow with `contents: read` is still fully exploitable via pwn request for secret exfiltration and lateral movement — only write-back to the repository is limited.
44
46
 
47
+ ## Edge Schema
48
+
49
+ | Source | Destination | Traversable |
50
+ | --- | --- | --- |
51
+ | `GH_RepoRole` | `GH_Branch` | `true` |
52
+ | `GH_RepoRole` | `GH_Repository` | `true` |
53
+
54
+ ## Diagram
55
+
45
56
  ```mermaid
46
57
  graph LR
47
- role("GH_RepoRole repo-read")
48
- repo("GH_Repository private-app")
49
- branch("GH_Branch main")
50
- wf("GH_Workflow vulnerable-ci.yml")
51
- secret("GH_RepoSecret DEPLOY_KEY")
52
- cloud("AWSRole deploy-prod")
53
-
54
- role -- GH_CanPwnRequest --> repo
55
- role -- GH_CanPwnRequest --> branch
56
- repo -.- |GH_HasWorkflow| wf
57
- repo -.- |GH_Contains| secret
58
- branch -- GH_CanAssumeIdentity --> cloud
59
- ```
58
+ n0["GH_RepoRole"]
59
+ n1["GH_Branch"]
60
+ n2["GH_Repository"]
61
+ n0 -->|GH_CanPwnRequest| n1
62
+ n0 -->|GH_CanPwnRequest| n2
63
+ ```
@@ -0,0 +1,20 @@
1
+ # GH_CanReadSecret
2
+
3
+ ## General Information
4
+
5
+ Org role can read an organization secret by creating a repository in scope.
6
+
7
+ ## Edge Schema
8
+
9
+ | Source | Destination | Traversable |
10
+ | --- | --- | --- |
11
+ | `GH_OrgRole` | `GH_OrgSecret` | `true` |
12
+
13
+ ## Diagram
14
+
15
+ ```mermaid
16
+ graph LR
17
+ n0["GH_OrgRole"]
18
+ n1["GH_OrgSecret"]
19
+ n0 -->|GH_CanReadSecret| n1
20
+ ```
@@ -1,3 +1,5 @@
1
+ # GH_CanReadSecretScanningAlert
2
+
1
3
  ## General Information
2
4
 
3
5
  The traversable GH_CanReadSecretScanningAlert edge is a computed edge indicating that a role can read a specific secret scanning alert, including the leaked secret value. The computation cross-references GH_ViewSecretScanningAlerts permission edges with GH_Contains structural edges (org-level and repo-level) to determine which alerts each role can access. This edge is traversable because reading an alert reveals the leaked secret — if the secret is a valid GitHub Personal Access Token, the GH_ValidToken edge enables identity compromise of the token's owner.
@@ -10,22 +12,20 @@ Each edge includes a `reason` property (`org_role_permission` or `repo_role_perm
10
12
 
11
13
  An org role with GH_ViewSecretScanningAlerts to the organization can read all secret scanning alerts across the entire org. The computation follows GH_Contains edges from the organization to each alert.
12
14
 
13
- ```mermaid
14
- graph LR
15
- role("GH_OrgRole security_manager") -->|GH_ViewSecretScanningAlerts| org("GH_Organization")
16
- org -->|GH_Contains| alert("GH_SecretScanningAlert #42")
17
- role ==>|GH_CanReadSecretScanningAlert| alert
18
- alert -.->|GH_ValidToken| user("GH_User jdoe")
19
- ```
15
+ ## Edge Schema
20
16
 
21
- ### `repo_role_permission` — Repo role views alerts via repository
17
+ | Source | Destination | Traversable |
18
+ | --- | --- | --- |
19
+ | `GH_OrgRole` | `GH_SecretScanningAlert` | `true` |
20
+ | `GH_RepoRole` | `GH_SecretScanningAlert` | `true` |
22
21
 
23
- A repo role with GH_ViewSecretScanningAlerts to the repository can read secret scanning alerts in that specific repo. The computation follows GH_Contains edges from the repository to each alert.
22
+ ## Diagram
24
23
 
25
24
  ```mermaid
26
25
  graph LR
27
- role("GH_RepoRole admin") -->|GH_ViewSecretScanningAlerts| repo("GH_Repository")
28
- repo -->|GH_Contains| alert("GH_SecretScanningAlert #17")
29
- role ==>|GH_CanReadSecretScanningAlert| alert
30
- alert -.->|GH_ValidToken| user("GH_User jdoe")
26
+ n0["GH_OrgRole"]
27
+ n1["GH_SecretScanningAlert"]
28
+ n2["GH_RepoRole"]
29
+ n0 -->|GH_CanReadSecretScanningAlert| n1
30
+ n2 -->|GH_CanReadSecretScanningAlert| n1
31
31
  ```