openhound-github 0.13.0__tar.gz → 0.14.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 (437) hide show
  1. {openhound_github-0.13.0 → openhound_github-0.14.0}/PKG-INFO +1 -1
  2. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_Organization.md +1 -0
  3. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_Repository.md +3 -1
  4. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/org.py +4 -0
  5. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/org_role.py +4 -3
  6. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/repository.py +12 -1
  7. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/resources/organization.py +2 -0
  8. openhound_github-0.14.0/tests/test_org_role_model.py +68 -0
  9. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_repository_rulesets.py +65 -4
  10. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_source_org_canonicalization.py +4 -0
  11. {openhound_github-0.13.0 → openhound_github-0.14.0}/.github/CODE_OF_CONDUCT.md +0 -0
  12. {openhound_github-0.13.0 → openhound_github-0.14.0}/.github/CONTRIBUTING.md +0 -0
  13. {openhound_github-0.13.0 → openhound_github-0.14.0}/.github/GOVERNANCE.md +0 -0
  14. {openhound_github-0.13.0 → openhound_github-0.14.0}/.github/GitHub-COC-Header.png +0 -0
  15. {openhound_github-0.13.0 → openhound_github-0.14.0}/.github/GitHub-CONTRIB-Header.png +0 -0
  16. {openhound_github-0.13.0 → openhound_github-0.14.0}/.github/GitHub-GOV-Header.png +0 -0
  17. {openhound_github-0.13.0 → openhound_github-0.14.0}/.github/GitHub-Header.png +0 -0
  18. {openhound_github-0.13.0 → openhound_github-0.14.0}/.github/GitHub-LIC-Header.png +0 -0
  19. {openhound_github-0.13.0 → openhound_github-0.14.0}/.github/GitHub-SEC-Header.png +0 -0
  20. {openhound_github-0.13.0 → openhound_github-0.14.0}/.github/SECURITY.md +0 -0
  21. {openhound_github-0.13.0 → openhound_github-0.14.0}/.github/SO-Dark.svg +0 -0
  22. {openhound_github-0.13.0 → openhound_github-0.14.0}/.github/SO-FOSS-Dark.svg +0 -0
  23. {openhound_github-0.13.0 → openhound_github-0.14.0}/.github/SO-FOSS-Light.svg +0 -0
  24. {openhound_github-0.13.0 → openhound_github-0.14.0}/.github/SO-Light.svg +0 -0
  25. {openhound_github-0.13.0 → openhound_github-0.14.0}/.github/workflows/publish.yml +0 -0
  26. {openhound_github-0.13.0 → openhound_github-0.14.0}/.github/workflows/release-on-merge.yml +0 -0
  27. {openhound_github-0.13.0 → openhound_github-0.14.0}/.github/workflows/validate-branch.yml +0 -0
  28. {openhound_github-0.13.0 → openhound_github-0.14.0}/.gitignore +0 -0
  29. {openhound_github-0.13.0 → openhound_github-0.14.0}/.gitmodules +0 -0
  30. {openhound_github-0.13.0 → openhound_github-0.14.0}/.pre-commit-config.yaml +0 -0
  31. {openhound_github-0.13.0 → openhound_github-0.14.0}/LICENSE.md +0 -0
  32. {openhound_github-0.13.0 → openhound_github-0.14.0}/README.md +0 -0
  33. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_AddAssignee.md +0 -0
  34. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_AddCollaborator.md +0 -0
  35. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_AddLabel.md +0 -0
  36. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_AddMember.md +0 -0
  37. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_AddedDeployKey.md +0 -0
  38. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_AdminTo.md +0 -0
  39. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ApprovesDeploymentTo.md +0 -0
  40. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_AssignedTo.md +0 -0
  41. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_BypassBranchProtection.md +0 -0
  42. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_BypassPullRequestAllowances.md +0 -0
  43. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CallsWorkflow.md +0 -0
  44. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CanAccess.md +0 -0
  45. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CanAccessSecret.md +0 -0
  46. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CanAssumeIdentity.md +0 -0
  47. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CanCreateBranch.md +0 -0
  48. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CanCreateEnvironment.md +0 -0
  49. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CanCreateInternalRepositories.md +0 -0
  50. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CanCreatePrivateRepositories.md +0 -0
  51. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CanCreatePublicRepositories.md +0 -0
  52. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CanCreateRepositories.md +0 -0
  53. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CanCreateRepositoryWithRunnerAccess.md +0 -0
  54. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CanDeployToEnvironment.md +0 -0
  55. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CanEditEnvironment.md +0 -0
  56. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CanEditProtection.md +0 -0
  57. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CanInterceptJob.md +0 -0
  58. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CanPwnRequest.md +0 -0
  59. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CanReadSecret.md +0 -0
  60. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CanReadSecretScanningAlert.md +0 -0
  61. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CanRequestOIDCTokenFor.md +0 -0
  62. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CanUseRunner.md +0 -0
  63. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CanWriteBranch.md +0 -0
  64. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CloseDiscussion.md +0 -0
  65. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CloseIssue.md +0 -0
  66. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ClosePullRequest.md +0 -0
  67. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_Contains.md +0 -0
  68. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ConvertIssuesToDiscussions.md +0 -0
  69. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CreateDiscussionCategory.md +0 -0
  70. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CreateEnterpriseOrganizations.md +0 -0
  71. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CreateRepository.md +0 -0
  72. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CreateSoloMergeQueueEntry.md +0 -0
  73. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CreateTag.md +0 -0
  74. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_CreateTeam.md +0 -0
  75. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_DeleteAlertsCodeScanning.md +0 -0
  76. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_DeleteDiscussion.md +0 -0
  77. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_DeleteDiscussionComment.md +0 -0
  78. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_DeleteIssue.md +0 -0
  79. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_DeleteTag.md +0 -0
  80. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_DependsOn.md +0 -0
  81. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_DeploysTo.md +0 -0
  82. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_EditCategoryOnDiscussion.md +0 -0
  83. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_EditDiscussionCategory.md +0 -0
  84. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_EditDiscussionComment.md +0 -0
  85. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_EditEnterpriseCustomPropertiesForOrganizations.md +0 -0
  86. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_EditRepoAnnouncementBanners.md +0 -0
  87. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_EditRepoCustomPropertiesValues.md +0 -0
  88. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_EditRepoMetadata.md +0 -0
  89. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_EditRepoProtections.md +0 -0
  90. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_HasBaseRole.md +0 -0
  91. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_HasExternalIdentity.md +0 -0
  92. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_HasMember.md +0 -0
  93. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_HasPersonalAccessToken.md +0 -0
  94. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_HasPersonalAccessTokenRequest.md +0 -0
  95. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_HasRole.md +0 -0
  96. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_HasRunner.md +0 -0
  97. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_HasSamlIdentityProvider.md +0 -0
  98. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_HasSecret.md +0 -0
  99. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_HasVariable.md +0 -0
  100. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_InheritedFrom.md +0 -0
  101. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_InstalledAs.md +0 -0
  102. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_InviteMember.md +0 -0
  103. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_IsEligibleFor.md +0 -0
  104. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_JumpMergeQueue.md +0 -0
  105. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ManageDeployKeys.md +0 -0
  106. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ManageDiscussionBadges.md +0 -0
  107. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ManageEnterpriseAdmins.md +0 -0
  108. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ManageEnterpriseIdentityProvider.md +0 -0
  109. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ManageEnterpriseMembers.md +0 -0
  110. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ManageEnterpriseOrganizationAdmins.md +0 -0
  111. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ManageEnterpriseOrganizations.md +0 -0
  112. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ManageEnterpriseReferrals.md +0 -0
  113. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ManageEnterpriseTeams.md +0 -0
  114. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ManageOrganizationWebhooks.md +0 -0
  115. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ManageRepoSecurityProducts.md +0 -0
  116. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ManageSecurityProducts.md +0 -0
  117. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ManageSettingsMergeTypes.md +0 -0
  118. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ManageSettingsPages.md +0 -0
  119. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ManageSettingsProjects.md +0 -0
  120. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ManageSettingsWiki.md +0 -0
  121. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ManageTopics.md +0 -0
  122. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ManageWebhooks.md +0 -0
  123. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_MapsToUser.md +0 -0
  124. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_MarkAsDuplicate.md +0 -0
  125. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_MatchesEnvironmentPolicy.md +0 -0
  126. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_MemberOf.md +0 -0
  127. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_OrgBypassCodeScanningDismissalRequests.md +0 -0
  128. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_OrgBypassSecretScanningClosureRequests.md +0 -0
  129. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_OrgReviewAndManageSecretScanningBypassRequests.md +0 -0
  130. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_OrgReviewAndManageSecretScanningClosureRequests.md +0 -0
  131. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_Owns.md +0 -0
  132. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ProtectedBy.md +0 -0
  133. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_PushProtectedBranch.md +0 -0
  134. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ReadCodeScanning.md +0 -0
  135. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ReadEnterpriseAuditLog.md +0 -0
  136. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ReadEnterpriseDomainVerification.md +0 -0
  137. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ReadEnterpriseMembers.md +0 -0
  138. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ReadEnterpriseOrgProjects.md +0 -0
  139. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ReadEnterpriseOrganizationAdmin.md +0 -0
  140. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ReadOrganizationActionsUsageMetrics.md +0 -0
  141. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ReadOrganizationCustomOrgRole.md +0 -0
  142. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ReadOrganizationCustomRepoRole.md +0 -0
  143. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ReadRepoContents.md +0 -0
  144. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_RemoveAssignee.md +0 -0
  145. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_RemoveLabel.md +0 -0
  146. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ReopenDiscussion.md +0 -0
  147. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ReopenIssue.md +0 -0
  148. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ReopenPullRequest.md +0 -0
  149. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_RequestPrReview.md +0 -0
  150. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ResolveDependabotAlerts.md +0 -0
  151. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ResolveSecretScanningAlerts.md +0 -0
  152. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_RestrictionsCanPush.md +0 -0
  153. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_RunOrgMigration.md +0 -0
  154. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_RunsOn.md +0 -0
  155. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_SetEnterpriseInteractionLimits.md +0 -0
  156. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_SetInteractionLimits.md +0 -0
  157. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_SetIssueType.md +0 -0
  158. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_SetMilestone.md +0 -0
  159. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_SetSocialPreview.md +0 -0
  160. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_SyncedTo.md +0 -0
  161. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ToggleDiscussionAnswer.md +0 -0
  162. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ToggleDiscussionCommentMinimize.md +0 -0
  163. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_TransferRepository.md +0 -0
  164. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_UsesSecret.md +0 -0
  165. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_UsesVariable.md +0 -0
  166. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ValidToken.md +0 -0
  167. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ViewDependabotAlerts.md +0 -0
  168. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ViewEnterpriseActionsUsageMetrics.md +0 -0
  169. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ViewEnterpriseBilling.md +0 -0
  170. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ViewEnterpriseSecretScanningAlerts.md +0 -0
  171. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_ViewSecretScanningAlerts.md +0 -0
  172. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_WriteCodeScanning.md +0 -0
  173. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_WriteEnterpriseActionsPolicies.md +0 -0
  174. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_WriteEnterpriseBilling.md +0 -0
  175. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_WriteEnterprisePersonalAccessTokenPolicies.md +0 -0
  176. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_WriteEnterpriseSso.md +0 -0
  177. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_WriteEnterpriseTeamMembers.md +0 -0
  178. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_WriteOrganizationActionsSecrets.md +0 -0
  179. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_WriteOrganizationActionsSettings.md +0 -0
  180. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_WriteOrganizationActionsVariables.md +0 -0
  181. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_WriteOrganizationCustomOrgRole.md +0 -0
  182. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_WriteOrganizationCustomRepoRole.md +0 -0
  183. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_WriteOrganizationNetworkConfigurations.md +0 -0
  184. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_WriteRepoContents.md +0 -0
  185. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/edges/GH_WriteRepoPullRequests.md +0 -0
  186. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_App.md +0 -0
  187. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_AppInstallation.md +0 -0
  188. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_Branch.md +0 -0
  189. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_BranchProtectionRule.md +0 -0
  190. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_DeployKey.md +0 -0
  191. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_Enterprise.md +0 -0
  192. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_EnterpriseManagedUser.md +0 -0
  193. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_EnterpriseRole.md +0 -0
  194. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_EnterpriseRunner.md +0 -0
  195. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_EnterpriseRunnerGroup.md +0 -0
  196. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_EnterpriseTeam.md +0 -0
  197. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_Environment.md +0 -0
  198. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_EnvironmentBranchPolicy.md +0 -0
  199. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_EnvironmentSecret.md +0 -0
  200. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_EnvironmentVariable.md +0 -0
  201. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_ExternalIdentity.md +0 -0
  202. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_OrgRole.md +0 -0
  203. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_OrgRunner.md +0 -0
  204. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_OrgRunnerGroup.md +0 -0
  205. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_OrgSecret.md +0 -0
  206. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_OrgVariable.md +0 -0
  207. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_PersonalAccessToken.md +0 -0
  208. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_PersonalAccessTokenRequest.md +0 -0
  209. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_RepoRole.md +0 -0
  210. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_RepoRunner.md +0 -0
  211. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_RepoSecret.md +0 -0
  212. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_RepoVariable.md +0 -0
  213. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_Runner.md +0 -0
  214. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_RunnerGroup.md +0 -0
  215. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_SamlIdentityProvider.md +0 -0
  216. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_Secret.md +0 -0
  217. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_SecretScanningAlert.md +0 -0
  218. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_Team.md +0 -0
  219. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_TeamRole.md +0 -0
  220. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_User.md +0 -0
  221. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_Variable.md +0 -0
  222. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_Workflow.md +0 -0
  223. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_WorkflowJob.md +0 -0
  224. {openhound_github-0.13.0 → openhound_github-0.14.0}/descriptions/nodes/GH_WorkflowStep.md +0 -0
  225. {openhound_github-0.13.0 → openhound_github-0.14.0}/docs/og-docs.json +0 -0
  226. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/privilege_zone_rules/t0-all-repo-admin-role.json +0 -0
  227. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/privilege_zone_rules/t0-app-installations-all-repos.json +0 -0
  228. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/privilege_zone_rules/t0-apps-all-repos.json +0 -0
  229. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/privilege_zone_rules/t0-enterprise-owners-role.json +0 -0
  230. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/privilege_zone_rules/t0-external-identities-owners.json +0 -0
  231. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/privilege_zone_rules/t0-organizations.json +0 -0
  232. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/privilege_zone_rules/t0-owner-users.json +0 -0
  233. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/privilege_zone_rules/t0-owners-role.json +0 -0
  234. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/privilege_zone_rules/t0-pats-all-repos.json +0 -0
  235. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/privilege_zone_rules/t0-privilege-escalation-roles.json +0 -0
  236. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/privilege_zone_rules/t0-privilege-escalation-users.json +0 -0
  237. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/privilege_zone_rules/t0-saml-identity-providers.json +0 -0
  238. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/README.md +0 -0
  239. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/actions-sha-pinning-not-required.json +0 -0
  240. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/active-leaked-secrets.json +0 -0
  241. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/advanced-security-disabled-new-repos.json +0 -0
  242. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/all-actions-allowed.json +0 -0
  243. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/app-installations-all-repos.json +0 -0
  244. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/branch-protection-admins-not-enforced.json +0 -0
  245. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/branch-protection-deletions-allowed.json +0 -0
  246. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/branch-protection-force-pushes.json +0 -0
  247. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/branch-protection-no-code-owner-reviews.json +0 -0
  248. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/branch-protection-no-pr-reviews.json +0 -0
  249. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/branch-protection-no-status-checks.json +0 -0
  250. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/branch-protection-self-approval.json +0 -0
  251. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/branch-protection-stale-reviews.json +0 -0
  252. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/bypass-pr-requirements.json +0 -0
  253. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/dangerous-branch-perms.json +0 -0
  254. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/default-repository-permissions.json +0 -0
  255. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/demo-sso-to-cloud-round-trip.json +0 -0
  256. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/dependabot-alerts-disabled-new-repos.json +0 -0
  257. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/dependabot-updates-disabled-new-repos.json +0 -0
  258. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/dependency-graph-disabled-new-repos.json +0 -0
  259. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/environments-admin-bypass.json +0 -0
  260. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/expired-pats.json +0 -0
  261. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/external-identities-without-scim.json +0 -0
  262. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/github-to-azure-identity.json +0 -0
  263. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/global-repo-perms.json +0 -0
  264. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/hybrid-identities.json +0 -0
  265. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/members-can-change-repo-visibility.json +0 -0
  266. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/members-can-create-pages.json +0 -0
  267. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/members-can-create-public-repos.json +0 -0
  268. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/members-can-delete-repos.json +0 -0
  269. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/members-can-fork-private-repos.json +0 -0
  270. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/members-can-invite-outside-collaborators.json +0 -0
  271. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/org-owners.json +0 -0
  272. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/orgs-without-2fa.json +0 -0
  273. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/pats-all-repo-access.json +0 -0
  274. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/pending-pat-requests.json +0 -0
  275. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/private-repos-forking-allowed.json +0 -0
  276. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/privileged-custom-org-roles.json +0 -0
  277. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/privileged-hybrid-identities.json +0 -0
  278. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/public-repos.json +0 -0
  279. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/push-protection-disabled-new-repos.json +0 -0
  280. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/push-to-protected-branches.json +0 -0
  281. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/repos-secret-scanning-disabled.json +0 -0
  282. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/repos-vulnerable-to-workflow-secret-exfil.json +0 -0
  283. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/repository-workflows.json +0 -0
  284. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/saml-configuration.json +0 -0
  285. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/secret-scanning-alerts.json +0 -0
  286. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/secret-scanning-disabled-new-repos.json +0 -0
  287. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/secrets-reachable-by-user.json +0 -0
  288. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/self-hosted-runners-can-intercept-broad-token-jobs.json +0 -0
  289. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/shared-self-hosted-runners-can-intercept-secret-bearing-jobs.json +0 -0
  290. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/team-membership-admin.json +0 -0
  291. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/team-structure.json +0 -0
  292. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/unprotected-branches.json +0 -0
  293. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/unprotected-default-branch-with-workflow.json +0 -0
  294. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/unprotected-default-branches.json +0 -0
  295. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/web-commit-signoff-not-required.json +0 -0
  296. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/workflow-jobs-interceptable-by-self-hosted-runners.json +0 -0
  297. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/workflow-jobs-with-broad-token-write-permissions.json +0 -0
  298. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/workflow-jobs-with-id-token-write-on-self-hosted-runners.json +0 -0
  299. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/workflow-jobs-with-id-token-write.json +0 -0
  300. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/saved_searches/workflow-jobs-with-observed-oidc-auth-steps.json +0 -0
  301. {openhound_github-0.13.0 → openhound_github-0.14.0}/extension/schema.json +0 -0
  302. {openhound_github-0.13.0 → openhound_github-0.14.0}/justfile +0 -0
  303. {openhound_github-0.13.0 → openhound_github-0.14.0}/pyproject.toml +0 -0
  304. {openhound_github-0.13.0 → openhound_github-0.14.0}/scripts/generate_gh_description_docs.py +0 -0
  305. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/main.py +0 -0
  306. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/__init__.py +0 -0
  307. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/auth.py +0 -0
  308. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/extension.yaml +0 -0
  309. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/github_rest_client.py +0 -0
  310. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/github_retry.py +0 -0
  311. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/graph.py +0 -0
  312. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/graphql.py +0 -0
  313. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/helpers.py +0 -0
  314. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/kinds/edges.py +0 -0
  315. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/kinds/nodes.py +0 -0
  316. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/lookup.py +0 -0
  317. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/main.py +0 -0
  318. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/__init__.py +0 -0
  319. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/actions_permission.py +0 -0
  320. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/app_installation.py +0 -0
  321. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/branch.py +0 -0
  322. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/branch_pr_bypass_allowance.py +0 -0
  323. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/branch_protection_rule.py +0 -0
  324. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/branch_push_allowance.py +0 -0
  325. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/deploy_key.py +0 -0
  326. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/enterprise.py +0 -0
  327. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/enterprise_admin.py +0 -0
  328. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/enterprise_helpers.py +0 -0
  329. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/enterprise_managed_user.py +0 -0
  330. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/enterprise_member.py +0 -0
  331. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/enterprise_organization.py +0 -0
  332. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/enterprise_role.py +0 -0
  333. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/enterprise_role_team.py +0 -0
  334. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/enterprise_role_user.py +0 -0
  335. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/enterprise_team.py +0 -0
  336. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/enterprise_team_member.py +0 -0
  337. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/enterprise_team_organization.py +0 -0
  338. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/enterprise_team_role.py +0 -0
  339. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/enterprise_user.py +0 -0
  340. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/env_secret.py +0 -0
  341. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/env_variable.py +0 -0
  342. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/environment.py +0 -0
  343. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/environment_branch_policy.py +0 -0
  344. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/external_identity.py +0 -0
  345. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/org_role_member.py +0 -0
  346. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/org_role_team.py +0 -0
  347. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/org_secret.py +0 -0
  348. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/org_variable.py +0 -0
  349. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/permissions.py +0 -0
  350. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/personal_access_token.py +0 -0
  351. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/personal_access_token_access.py +0 -0
  352. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/personal_access_token_request.py +0 -0
  353. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/projected_enterprise_team.py +0 -0
  354. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/repo_role_assignment.py +0 -0
  355. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/repository_role.py +0 -0
  356. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/repository_secret.py +0 -0
  357. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/repository_variable.py +0 -0
  358. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/runner.py +0 -0
  359. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/saml_assertion_consumer_service.py +0 -0
  360. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/saml_helpers.py +0 -0
  361. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/saml_issuer.py +0 -0
  362. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/saml_provider.py +0 -0
  363. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/saml_service_provider.py +0 -0
  364. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/scim_user.py +0 -0
  365. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/secret_scanning_alert.py +0 -0
  366. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/team.py +0 -0
  367. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/team_member.py +0 -0
  368. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/team_role.py +0 -0
  369. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/user.py +0 -0
  370. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/workflow.py +0 -0
  371. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/workflow_job.py +0 -0
  372. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/workflow_reference.py +0 -0
  373. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/models/workflow_step.py +0 -0
  374. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/resources/__init__.py +0 -0
  375. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/resources/enterprise.py +0 -0
  376. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/runner_ids.py +0 -0
  377. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/source.py +0 -0
  378. {openhound_github-0.13.0 → openhound_github-0.14.0}/src/openhound_github/transforms.py +0 -0
  379. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_app_auth.py +0 -0
  380. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_branch_collection_gate.py +0 -0
  381. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_branch_protection_traversability.py +0 -0
  382. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_credential_permission_models.py +0 -0
  383. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/actions-permissions.json +0 -0
  384. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/actionsecrets.json +0 -0
  385. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/app.json +0 -0
  386. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/appinstalls.json +0 -0
  387. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/branch-policies.json +0 -0
  388. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/branch-prot-rules.json +0 -0
  389. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/branches.json +0 -0
  390. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/custom-roles.json +0 -0
  391. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/environments.json +0 -0
  392. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/org-pat-request.json +0 -0
  393. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/org-pat.json +0 -0
  394. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/org-role-teams.json +0 -0
  395. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/org-role-users.json +0 -0
  396. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/org-roles.json +0 -0
  397. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/org.json +0 -0
  398. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/pat-repositories.json +0 -0
  399. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/repo-collaborators.json +0 -0
  400. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/repo-teams.json +0 -0
  401. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/repositories.json +0 -0
  402. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/scimusers.json +0 -0
  403. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/secrets.json +0 -0
  404. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/secretscanningalert.json +0 -0
  405. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/selected-org-secrets.json +0 -0
  406. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/variables.json +0 -0
  407. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_data/api/workflows.json +0 -0
  408. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_deploy_key_models.py +0 -0
  409. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_deploy_key_resources.py +0 -0
  410. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_description_docs.py +0 -0
  411. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_enterprise_capabilities.py +0 -0
  412. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_enterprise_organization.py +0 -0
  413. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_enterprise_resources.py +0 -0
  414. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_environment_model.py +0 -0
  415. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_environment_resources.py +0 -0
  416. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_environment_reviewer_lookup.py +0 -0
  417. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_error_resilience.py +0 -0
  418. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_github_app_retry.py +0 -0
  419. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_github_rest_client.py +0 -0
  420. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_github_retry.py +0 -0
  421. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_helpers.py +0 -0
  422. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_lookup.py +0 -0
  423. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_org_scim_resources.py +0 -0
  424. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_org_secret_models.py +0 -0
  425. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_runner_ids.py +0 -0
  426. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_runner_models.py +0 -0
  427. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_runner_resources.py +0 -0
  428. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_saml_helpers.py +0 -0
  429. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_saml_models.py +0 -0
  430. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_scim_models.py +0 -0
  431. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_source_endpoints.py +0 -0
  432. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_team_external_groups.py +0 -0
  433. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_variable_models.py +0 -0
  434. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_workflow_interception_path.py +0 -0
  435. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_workflow_model.py +0 -0
  436. {openhound_github-0.13.0 → openhound_github-0.14.0}/tests/test_workflow_resources.py +0 -0
  437. {openhound_github-0.13.0 → openhound_github-0.14.0}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: openhound-github
3
- Version: 0.13.0
3
+ Version: 0.14.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
@@ -13,6 +13,7 @@ Represents a GitHub organization. This is the root node of the graph and serves
13
13
  | `environmentid` | `string` | The identifier of the GitHub environment where this node was collected. |
14
14
  | `last_seen` | `datetime` | The timestamp when this node was last observed during collection. |
15
15
  | `node_id` | `string` | The stable identifier used as the OpenGraph node ID; this is the native GitHub node ID where available. |
16
+ | `database_id` | `integer` | The organization's numeric GitHub database ID used in immutable OIDC subjects. |
16
17
  | `login` | `string` | The organization's login handle (URL slug). |
17
18
  | `org_name` | `string` | The organization's display name (from the `name` field in the GitHub API). |
18
19
  | `description` | `string` | The organization's description. |
@@ -18,6 +18,7 @@ The `branch_count` and `environment_count` properties preserve GitHub-reported t
18
18
  | `last_seen` | `datetime` | The timestamp when this node was last observed during collection. |
19
19
  | `node_id` | `string` | The stable identifier used as the OpenGraph node ID; this is the native GitHub node ID where available. |
20
20
  | `collected` | `boolean` | Collected/generated by OpenHound. |
21
+ | `database_id` | `integer` | The repository's numeric GitHub database ID used in immutable OIDC subjects. |
21
22
  | `full_name` | `string` | The fully qualified name (e.g., `org/repo`). |
22
23
  | `private` | `boolean` | Whether the repository is private. |
23
24
  | `html_url` | `string` | URL to the repository on GitHub. |
@@ -37,7 +38,8 @@ The `branch_count` and `environment_count` properties preserve GitHub-reported t
37
38
  | `open_issues` | `integer` | Number of open issues (includes pull requests). |
38
39
  | `watchers` | `integer` | Number of watchers. |
39
40
  | `owner_name` | `string` | The login of the repository owner. |
40
- | `owner_id` | `string` | The owner id property. |
41
+ | `owner_id` | `string` | The opaque GraphQL node ID of the repository owner. |
42
+ | `owner_database_id` | `integer` | The numeric GitHub database ID of the repository owner used in immutable OIDC subjects. |
41
43
  | `environment_name` | `string` | The name of the environment (GitHub organization). |
42
44
  | `actions_enabled` | `boolean` | Whether GitHub Actions is enabled for this repository. |
43
45
  | `self_hosted_runners_enabled` | `boolean` | Whether the repository may use self-hosted runners. |
@@ -15,6 +15,7 @@ class GHOrganizationProperties(GHNodeProperties):
15
15
  """Organization-specific properties and accordion panel queries.
16
16
 
17
17
  Attributes:
18
+ database_id: The organization's numeric GitHub database ID used in immutable OIDC subjects.
18
19
  login: The organization's login handle (URL slug).
19
20
  org_name: The organization's display name (from the `name` field in the GitHub API).
20
21
  description: The organization's description.
@@ -88,6 +89,7 @@ class GHOrganizationProperties(GHNodeProperties):
88
89
  collected: The collected property.
89
90
  """
90
91
 
92
+ database_id: int | None = None
91
93
  login: str | None = None
92
94
  org_name: str | None = None
93
95
  description: str | None = None
@@ -176,6 +178,7 @@ class Organization(BaseAsset):
176
178
 
177
179
  node_id: str
178
180
  login: str
181
+ database_id: int | None = None
179
182
  name: str | None = None
180
183
  description: str | None = None
181
184
  company: str | None = None
@@ -245,6 +248,7 @@ class Organization(BaseAsset):
245
248
  name=self.login,
246
249
  displayname=self.name or self.login,
247
250
  node_id=oid,
251
+ database_id=self.database_id,
248
252
  login=self.login,
249
253
  org_name=self.name or "",
250
254
  description=self.description,
@@ -201,7 +201,7 @@ class OrgRole(BaseAsset):
201
201
 
202
202
  # node_id: int = Field(alias="id")
203
203
  id: int
204
- name: str # full: "my-org/owners"
204
+ name: str # role-only name from the API, e.g. "owners" or "Custom Role Manager"
205
205
  created_at: datetime
206
206
  updated_at: datetime | None = None
207
207
  organization: Organization | None = None
@@ -221,11 +221,12 @@ class OrgRole(BaseAsset):
221
221
 
222
222
  @property
223
223
  def as_node(self) -> GHNode:
224
+ qualified_name = f"{self.org_login}/{self.name}"
224
225
  return GHNode(
225
226
  kinds=[nk.ORG_ROLE, "GH_Role"],
226
227
  properties=GHOrgRoleProperties(
227
- name=self.name,
228
- displayname=f"{self.org_login}/{self.name}",
228
+ name=qualified_name,
229
+ displayname=qualified_name,
229
230
  node_id=self.node_id,
230
231
  short_name=self.name,
231
232
  type=self.type,
@@ -18,6 +18,7 @@ class GHRepositoryProperties(GHNodeProperties):
18
18
 
19
19
  Attributes:
20
20
  collected: Collected/generated by OpenHound
21
+ database_id: The repository's numeric GitHub database ID used in immutable OIDC subjects.
21
22
  full_name: The fully qualified name (e.g., `org/repo`).
22
23
  private: Whether the repository is private.
23
24
  html_url: URL to the repository on GitHub.
@@ -37,7 +38,8 @@ class GHRepositoryProperties(GHNodeProperties):
37
38
  open_issues: Number of open issues (includes pull requests).
38
39
  watchers: Number of watchers.
39
40
  owner_name: The login of the repository owner.
40
- owner_id: The owner id property.
41
+ owner_id: The opaque GraphQL node ID of the repository owner.
42
+ owner_database_id: The numeric GitHub database ID of the repository owner used in immutable OIDC subjects.
41
43
  environment_name: The name of the environment (GitHub organization).
42
44
  actions_enabled: Whether GitHub Actions is enabled for this repository.
43
45
  self_hosted_runners_enabled: Whether the repository may use self-hosted runners.
@@ -70,6 +72,7 @@ class GHRepositoryProperties(GHNodeProperties):
70
72
  collected: bool = True
71
73
 
72
74
  # TODO: Check owner_node_id
75
+ database_id: int | None = None
73
76
  full_name: str | None = None
74
77
  private: bool | None = None
75
78
  html_url: str | None = None
@@ -90,6 +93,7 @@ class GHRepositoryProperties(GHNodeProperties):
90
93
  watchers: int | None = None
91
94
  owner_name: str | None = None
92
95
  owner_id: str | None = None
96
+ owner_database_id: int | None = None
93
97
  environment_name: str | None = None
94
98
  actions_enabled: bool | None = None
95
99
  self_hosted_runners_enabled: bool | None = None
@@ -201,6 +205,7 @@ class Repository(BaseAsset):
201
205
  node_id: str
202
206
  name: str
203
207
  full_name: str
208
+ database_id: int | None = None
204
209
 
205
210
  private: bool
206
211
  owner: Owner
@@ -238,6 +243,10 @@ class Repository(BaseAsset):
238
243
  def owner_name(self) -> str:
239
244
  return self.owner.login
240
245
 
246
+ @property
247
+ def owner_database_id(self) -> int:
248
+ return self.owner.id
249
+
241
250
  @property
242
251
  def as_node(self) -> GHNode:
243
252
  rid = self.node_id
@@ -255,6 +264,7 @@ class Repository(BaseAsset):
255
264
  name=self.name,
256
265
  displayname=self.full_name,
257
266
  node_id=rid,
267
+ database_id=self.database_id,
258
268
  full_name=self.full_name,
259
269
  private=self.private,
260
270
  html_url=self.html_url,
@@ -275,6 +285,7 @@ class Repository(BaseAsset):
275
285
  watchers=self.watchers,
276
286
  owner_name=self.owner_name or "",
277
287
  owner_id=self.owner_id or "",
288
+ owner_database_id=self.owner_database_id,
278
289
  environment_name=self.org_login,
279
290
  environmentid=self.org_node_id,
280
291
  actions_enabled=self.actions_enabled,
@@ -510,6 +510,7 @@ def organizations(ctx: SourceContext):
510
510
  org_data["can_approve_pull_request_reviews"] = workflow_perms.get(
511
511
  "can_approve_pull_request_reviews"
512
512
  )
513
+ org_data["database_id"] = org_data.get("id")
513
514
  org_data["github_deployment_type"] = ctx.deployment_type
514
515
  org_data["ghes_version"] = ctx.ghes_version
515
516
 
@@ -1008,6 +1009,7 @@ def repositories(ctx: SourceContext):
1008
1009
  )
1009
1010
  yield {
1010
1011
  **repo,
1012
+ "database_id": repo.get("id"),
1011
1013
  "actions_enabled": actions_enabled,
1012
1014
  "self_hosted_runners_enabled": self_hosted_runners_enabled,
1013
1015
  "org_login": org_name,
@@ -0,0 +1,68 @@
1
+ from datetime import datetime
2
+
3
+ from openhound_github.models.org_role import OrgRole
4
+ from openhound_github.models.org_role_member import OrgRoleMember
5
+ from openhound_github.models.org_role_team import OrgRoleTeam
6
+
7
+
8
+ def _role(
9
+ org_node_id: str, org_login: str, name: str = "owners", role_type: str = "default"
10
+ ) -> OrgRole:
11
+ return OrgRole(
12
+ id=1,
13
+ name=name,
14
+ type=role_type,
15
+ base_role="admin",
16
+ created_at=datetime.now(),
17
+ org_node_id=org_node_id,
18
+ org_login=org_login,
19
+ )
20
+
21
+
22
+ def test_org_role_name_is_qualified_by_organization() -> None:
23
+ acme_role = _role("ORG_1", "acme")
24
+ example_role = _role("ORG_2", "example")
25
+
26
+ assert acme_role.as_node.properties.name == "acme/owners"
27
+ assert acme_role.as_node.properties.displayname == "acme/owners"
28
+ assert acme_role.as_node.properties.short_name == "owners"
29
+
30
+ assert example_role.as_node.properties.name == "example/owners"
31
+ assert example_role.as_node.properties.displayname == "example/owners"
32
+ assert example_role.as_node.properties.short_name == "owners"
33
+
34
+
35
+ def test_custom_org_role_uses_role_only_name_for_assignment_node_ids() -> None:
36
+ role = _role("ORG_1", "acme", name="Custom Role Manager", role_type="custom")
37
+ member = OrgRoleMember(
38
+ id=1,
39
+ node_id="USER_1",
40
+ login="alice",
41
+ type="User",
42
+ site_admin=False,
43
+ org_role_id=role.id,
44
+ org_role_name=role.name,
45
+ org_node_id=role.org_node_id,
46
+ org_login=role.org_login,
47
+ )
48
+ team = OrgRoleTeam(
49
+ id=2,
50
+ node_id="TEAM_1",
51
+ url="https://api.github.com/teams/2",
52
+ name="security",
53
+ slug="security",
54
+ description="Security team",
55
+ permission="pull",
56
+ members_url="https://api.github.com/teams/2/members{/member}",
57
+ repositories_url="https://api.github.com/teams/2/repos",
58
+ org_role_id=role.id,
59
+ org_role_name=role.name,
60
+ org_node_id=role.org_node_id,
61
+ org_login=role.org_login,
62
+ )
63
+
64
+ assert role.name == "Custom Role Manager"
65
+ assert role.node_id == "ORG_1_Custom Role Manager"
66
+ assert role.as_node.properties.name == "acme/Custom Role Manager"
67
+ assert member.org_role_node_id == role.node_id
68
+ assert team.org_role_node_id == role.node_id
@@ -10,6 +10,7 @@ from openhound_github.models.repository import Repository
10
10
  from openhound_github.resources.organization import (
11
11
  OrgContext,
12
12
  SourceContext,
13
+ repositories,
13
14
  repositories_graphql,
14
15
  )
15
16
 
@@ -33,6 +34,35 @@ class _FakeClient:
33
34
  return response
34
35
 
35
36
 
37
+ class _FakeRepositoryRESTClient:
38
+ def __init__(self) -> None:
39
+ self.get_calls: list[str] = []
40
+ self.paginate_calls: list[str] = []
41
+
42
+ def get(self, path: str):
43
+ self.get_calls.append(path)
44
+ return type(
45
+ "Response",
46
+ (),
47
+ {"json": lambda _self: {"enabled_repositories": "all"}},
48
+ )()
49
+
50
+ def paginate(self, path: str, **_kwargs):
51
+ self.paginate_calls.append(path)
52
+ return iter(
53
+ [
54
+ [
55
+ {
56
+ "id": 1296269,
57
+ "node_id": "R_1",
58
+ "name": "repo",
59
+ "full_name": "org/repo",
60
+ }
61
+ ]
62
+ ]
63
+ )
64
+
65
+
36
66
  def _repository_page_data(
37
67
  repository_id: str,
38
68
  repository_name: str,
@@ -98,16 +128,17 @@ def _request_pages(client: _FakeClient) -> list[tuple[object, object]]:
98
128
 
99
129
  def _make_repository() -> Repository:
100
130
  return Repository(
101
- id=1,
131
+ id=1296269,
102
132
  node_id="R_1",
103
133
  name="repo",
104
134
  full_name="org/repo",
135
+ database_id=1296269,
105
136
  private=False,
106
137
  size=0,
107
138
  owner={
108
- "login": "octocat",
109
- "id": 1,
110
- "node_id": "U_1",
139
+ "login": "org",
140
+ "id": 123456,
141
+ "node_id": "O_1",
111
142
  "avatar_url": "",
112
143
  "gravatar_id": "",
113
144
  "url": "",
@@ -166,6 +197,29 @@ def test_repositories_graphql_flattens_repository_counts() -> None:
166
197
  ]
167
198
 
168
199
 
200
+ def test_repositories_preserve_numeric_database_id_from_rest_payload() -> None:
201
+ client = _FakeRepositoryRESTClient()
202
+ ctx = SourceContext(
203
+ client=client,
204
+ organizations=[OrgContext(client=client, org_name="org")],
205
+ )
206
+
207
+ rows = list(repositories.__wrapped__(ctx))
208
+
209
+ assert rows == [
210
+ {
211
+ "id": 1296269,
212
+ "node_id": "R_1",
213
+ "name": "repo",
214
+ "full_name": "org/repo",
215
+ "database_id": 1296269,
216
+ "actions_enabled": True,
217
+ "self_hosted_runners_enabled": True,
218
+ "org_login": "org",
219
+ }
220
+ ]
221
+
222
+
169
223
  def test_repositories_graphql_uses_dedicated_graphql_client_path() -> None:
170
224
  rest_client = _FakeClient()
171
225
  graphql_client = _FakeClient()
@@ -425,6 +479,13 @@ def test_repository_node_surfaces_branch_ruleset_presence() -> None:
425
479
  assert node.properties.default_workflow_permissions == "read"
426
480
  assert node.properties.can_approve_pull_request_reviews is False
427
481
  assert node.properties.size == 0
482
+ assert node.properties.database_id == 1296269
483
+ assert node.properties.owner_database_id == 123456
484
+ assert node.properties.node_id == "R_1"
485
+ assert node.properties.owner_id == "O_1"
486
+ assert [(edge.start.value, edge.end.value) for edge in repo.edges] == [
487
+ ("O_1", "R_1")
488
+ ]
428
489
  lookup.repository_branch_ruleset_count.assert_called_once_with("R_1")
429
490
  lookup.repository_graphql_counts.assert_called_once_with("R_1")
430
491
  lookup.repository_workflow_permissions.assert_called_once_with("R_1")
@@ -60,6 +60,7 @@ def test_organizations_reuses_preflight_org_response() -> None:
60
60
  client = _FakeClient(
61
61
  {
62
62
  "/orgs/spectertst": {
63
+ "id": 123456,
63
64
  "login": "SpecterTst",
64
65
  "node_id": "O_kgDOCoV2OQ",
65
66
  },
@@ -78,9 +79,12 @@ def test_organizations_reuses_preflight_org_response() -> None:
78
79
  rows = list(inspect.unwrap(organizations._pipe.gen)(ctx))
79
80
 
80
81
  assert rows[0]["login"] == "SpecterTst"
82
+ assert rows[0]["database_id"] == 123456
81
83
  assert rows[0]["github_deployment_type"] == "ghes"
82
84
  assert rows[0]["ghes_version"] == "3.22.1"
83
85
  node = Organization(**rows[0]).as_node
86
+ assert node.properties.database_id == 123456
87
+ assert node.properties.node_id == "O_kgDOCoV2OQ"
84
88
  assert node.properties.github_deployment_type == "ghes"
85
89
  assert node.properties.ghes_version == "3.22.1"
86
90
  assert client.get_calls == [