openlayer 0.15.0 → 0.17.0

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 (276) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +35 -0
  3. data/README.md +1 -1
  4. data/lib/openlayer/client.rb +8 -0
  5. data/lib/openlayer/models/background_task_retrieve_params.rb +20 -0
  6. data/lib/openlayer/models/background_task_retrieve_response.rb +85 -0
  7. data/lib/openlayer/models/governance/framework_create_params.rb +143 -0
  8. data/lib/openlayer/models/governance/framework_create_response.rb +412 -0
  9. data/lib/openlayer/models/governance/framework_export_params.rb +36 -0
  10. data/lib/openlayer/models/governance/framework_export_response.rb +32 -0
  11. data/lib/openlayer/models/governance/framework_list_params.rb +148 -0
  12. data/lib/openlayer/models/governance/framework_list_project_rule_stats_params.rb +74 -0
  13. data/lib/openlayer/models/governance/framework_list_project_rule_stats_response.rb +279 -0
  14. data/lib/openlayer/models/governance/framework_list_projects_params.rb +39 -0
  15. data/lib/openlayer/models/governance/framework_list_projects_response.rb +315 -0
  16. data/lib/openlayer/models/governance/framework_list_response.rb +423 -0
  17. data/lib/openlayer/models/governance/framework_list_rules_params.rb +39 -0
  18. data/lib/openlayer/models/governance/framework_list_rules_response.rb +696 -0
  19. data/lib/openlayer/models/governance/framework_retrieve_params.rb +22 -0
  20. data/lib/openlayer/models/governance/framework_retrieve_response.rb +412 -0
  21. data/lib/openlayer/models/governance/framework_update_params.rb +200 -0
  22. data/lib/openlayer/models/governance/framework_update_response.rb +412 -0
  23. data/lib/openlayer/models/governance/frameworks/document_list_params.rb +41 -0
  24. data/lib/openlayer/models/governance/frameworks/document_list_response.rb +598 -0
  25. data/lib/openlayer/models/governance/frameworks/document_retrieve_params.rb +30 -0
  26. data/lib/openlayer/models/governance/frameworks/document_retrieve_response.rb +587 -0
  27. data/lib/openlayer/models/governance/frameworks/section_list_rules_params.rb +96 -0
  28. data/lib/openlayer/models/governance/frameworks/section_list_rules_response.rb +700 -0
  29. data/lib/openlayer/models/governance/frameworks/subsection_list_rules_params.rb +88 -0
  30. data/lib/openlayer/models/governance/frameworks/subsection_list_rules_response.rb +700 -0
  31. data/lib/openlayer/models/governance/rule_create_params.rb +173 -0
  32. data/lib/openlayer/models/governance/rule_create_response.rb +677 -0
  33. data/lib/openlayer/models/governance/rule_delete_params.rb +22 -0
  34. data/lib/openlayer/models/governance/rule_list_params.rb +231 -0
  35. data/lib/openlayer/models/governance/rule_list_response.rb +694 -0
  36. data/lib/openlayer/models/governance/rule_result_create_evidence_params.rb +69 -0
  37. data/lib/openlayer/models/governance/rule_result_create_evidence_response.rb +95 -0
  38. data/lib/openlayer/models/governance/rule_result_list_evidence_params.rb +39 -0
  39. data/lib/openlayer/models/governance/rule_result_list_evidence_response.rb +106 -0
  40. data/lib/openlayer/models/governance/rule_result_list_params.rb +149 -0
  41. data/lib/openlayer/models/governance/rule_result_list_response.rb +276 -0
  42. data/lib/openlayer/models/governance/rule_result_retrieve_params.rb +22 -0
  43. data/lib/openlayer/models/governance/rule_result_retrieve_response.rb +264 -0
  44. data/lib/openlayer/models/governance/rule_result_update_params.rb +156 -0
  45. data/lib/openlayer/models/governance/rule_result_update_response.rb +263 -0
  46. data/lib/openlayer/models/governance/rule_retrieve_params.rb +22 -0
  47. data/lib/openlayer/models/governance/rule_retrieve_response.rb +681 -0
  48. data/lib/openlayer/models/governance/rule_stat_retrieve_params.rb +39 -0
  49. data/lib/openlayer/models/governance/rule_stat_retrieve_response.rb +508 -0
  50. data/lib/openlayer/models/governance/rule_tag_list_params.rb +39 -0
  51. data/lib/openlayer/models/governance/rule_tag_list_response.rb +91 -0
  52. data/lib/openlayer/models/governance/rule_update_params.rb +78 -0
  53. data/lib/openlayer/models/governance/rule_update_response.rb +677 -0
  54. data/lib/openlayer/models/inference_pipeline_retrieve_response.rb +0 -1
  55. data/lib/openlayer/models/inference_pipeline_retrieve_sessions_response.rb +3 -0
  56. data/lib/openlayer/models/inference_pipeline_retrieve_users_response.rb +3 -0
  57. data/lib/openlayer/models/inference_pipeline_update_response.rb +0 -1
  58. data/lib/openlayer/models/project_create_response.rb +0 -1
  59. data/lib/openlayer/models/project_list_response.rb +0 -1
  60. data/lib/openlayer/models/project_update_response.rb +0 -1
  61. data/lib/openlayer/models/projects/inference_pipeline_create_params.rb +0 -1
  62. data/lib/openlayer/models/projects/inference_pipeline_create_response.rb +0 -1
  63. data/lib/openlayer/models/projects/inference_pipeline_list_response.rb +0 -1
  64. data/lib/openlayer/models/storage/presigned_url_retrieve_params.rb +28 -0
  65. data/lib/openlayer/models/storage/presigned_url_retrieve_response.rb +19 -0
  66. data/lib/openlayer/models/workspaces/api_key_create_params.rb +17 -1
  67. data/lib/openlayer/models/workspaces/api_key_create_response.rb +73 -3
  68. data/lib/openlayer/models/workspaces/api_key_delete_params.rb +28 -0
  69. data/lib/openlayer/models/workspaces/api_key_list_params.rb +22 -0
  70. data/lib/openlayer/models/workspaces/api_key_list_response.rb +134 -0
  71. data/lib/openlayer/models/workspaces/api_key_retrieve_params.rb +28 -0
  72. data/lib/openlayer/models/workspaces/api_key_retrieve_response.rb +131 -0
  73. data/lib/openlayer/models/workspaces/api_key_rotate_params.rb +56 -0
  74. data/lib/openlayer/models/workspaces/api_key_rotate_response.rb +131 -0
  75. data/lib/openlayer/models/workspaces/api_key_update_params.rb +38 -0
  76. data/lib/openlayer/models/workspaces/api_key_update_response.rb +131 -0
  77. data/lib/openlayer/models.rb +4 -0
  78. data/lib/openlayer/resources/background_tasks.rb +34 -0
  79. data/lib/openlayer/resources/commits.rb +1 -1
  80. data/lib/openlayer/resources/governance/frameworks/documents.rb +72 -0
  81. data/lib/openlayer/resources/governance/frameworks/sections.rb +68 -0
  82. data/lib/openlayer/resources/governance/frameworks/subsections.rb +65 -0
  83. data/lib/openlayer/resources/governance/frameworks.rb +292 -0
  84. data/lib/openlayer/resources/governance/rule_results.rb +187 -0
  85. data/lib/openlayer/resources/governance/rule_stats.rb +43 -0
  86. data/lib/openlayer/resources/governance/rule_tags.rb +43 -0
  87. data/lib/openlayer/resources/governance/rules.rb +210 -0
  88. data/lib/openlayer/resources/governance.rb +34 -0
  89. data/lib/openlayer/resources/inference_pipelines/rows.rb +4 -5
  90. data/lib/openlayer/resources/inference_pipelines.rb +5 -14
  91. data/lib/openlayer/resources/projects/tests.rb +3 -3
  92. data/lib/openlayer/resources/storage/presigned_url.rb +27 -1
  93. data/lib/openlayer/resources/tests.rb +1 -4
  94. data/lib/openlayer/resources/workspaces/api_keys.rb +146 -2
  95. data/lib/openlayer/resources/workspaces/invites.rb +1 -1
  96. data/lib/openlayer/resources/workspaces.rb +1 -1
  97. data/lib/openlayer/version.rb +1 -1
  98. data/lib/openlayer.rb +70 -0
  99. data/rbi/openlayer/client.rbi +6 -0
  100. data/rbi/openlayer/models/background_task_retrieve_params.rbi +38 -0
  101. data/rbi/openlayer/models/background_task_retrieve_response.rbi +105 -0
  102. data/rbi/openlayer/models/governance/framework_create_params.rbi +298 -0
  103. data/rbi/openlayer/models/governance/framework_create_response.rbi +735 -0
  104. data/rbi/openlayer/models/governance/framework_export_params.rbi +58 -0
  105. data/rbi/openlayer/models/governance/framework_export_response.rbi +48 -0
  106. data/rbi/openlayer/models/governance/framework_list_params.rbi +310 -0
  107. data/rbi/openlayer/models/governance/framework_list_project_rule_stats_params.rbi +178 -0
  108. data/rbi/openlayer/models/governance/framework_list_project_rule_stats_response.rbi +441 -0
  109. data/rbi/openlayer/models/governance/framework_list_projects_params.rbi +68 -0
  110. data/rbi/openlayer/models/governance/framework_list_projects_response.rbi +498 -0
  111. data/rbi/openlayer/models/governance/framework_list_response.rbi +776 -0
  112. data/rbi/openlayer/models/governance/framework_list_rules_params.rbi +68 -0
  113. data/rbi/openlayer/models/governance/framework_list_rules_response.rbi +1334 -0
  114. data/rbi/openlayer/models/governance/framework_retrieve_params.rbi +40 -0
  115. data/rbi/openlayer/models/governance/framework_retrieve_response.rbi +735 -0
  116. data/rbi/openlayer/models/governance/framework_update_params.rbi +425 -0
  117. data/rbi/openlayer/models/governance/framework_update_response.rbi +735 -0
  118. data/rbi/openlayer/models/governance/frameworks/document_list_params.rbi +70 -0
  119. data/rbi/openlayer/models/governance/frameworks/document_list_response.rbi +1050 -0
  120. data/rbi/openlayer/models/governance/frameworks/document_retrieve_params.rbi +50 -0
  121. data/rbi/openlayer/models/governance/frameworks/document_retrieve_response.rbi +1006 -0
  122. data/rbi/openlayer/models/governance/frameworks/section_list_rules_params.rbi +193 -0
  123. data/rbi/openlayer/models/governance/frameworks/section_list_rules_response.rbi +1338 -0
  124. data/rbi/openlayer/models/governance/frameworks/subsection_list_rules_params.rbi +182 -0
  125. data/rbi/openlayer/models/governance/frameworks/subsection_list_rules_response.rbi +1338 -0
  126. data/rbi/openlayer/models/governance/rule_create_params.rbi +291 -0
  127. data/rbi/openlayer/models/governance/rule_create_response.rbi +1289 -0
  128. data/rbi/openlayer/models/governance/rule_delete_params.rbi +40 -0
  129. data/rbi/openlayer/models/governance/rule_list_params.rbi +486 -0
  130. data/rbi/openlayer/models/governance/rule_list_response.rbi +1330 -0
  131. data/rbi/openlayer/models/governance/rule_result_create_evidence_params.rbi +90 -0
  132. data/rbi/openlayer/models/governance/rule_result_create_evidence_response.rbi +113 -0
  133. data/rbi/openlayer/models/governance/rule_result_list_evidence_params.rbi +68 -0
  134. data/rbi/openlayer/models/governance/rule_result_list_evidence_response.rbi +156 -0
  135. data/rbi/openlayer/models/governance/rule_result_list_params.rbi +322 -0
  136. data/rbi/openlayer/models/governance/rule_result_list_response.rbi +580 -0
  137. data/rbi/openlayer/models/governance/rule_result_retrieve_params.rbi +43 -0
  138. data/rbi/openlayer/models/governance/rule_result_retrieve_response.rbi +537 -0
  139. data/rbi/openlayer/models/governance/rule_result_update_params.rbi +381 -0
  140. data/rbi/openlayer/models/governance/rule_result_update_response.rbi +537 -0
  141. data/rbi/openlayer/models/governance/rule_retrieve_params.rbi +40 -0
  142. data/rbi/openlayer/models/governance/rule_retrieve_response.rbi +1289 -0
  143. data/rbi/openlayer/models/governance/rule_stat_retrieve_params.rbi +68 -0
  144. data/rbi/openlayer/models/governance/rule_stat_retrieve_response.rbi +877 -0
  145. data/rbi/openlayer/models/governance/rule_tag_list_params.rbi +68 -0
  146. data/rbi/openlayer/models/governance/rule_tag_list_response.rbi +141 -0
  147. data/rbi/openlayer/models/governance/rule_update_params.rbi +108 -0
  148. data/rbi/openlayer/models/governance/rule_update_response.rbi +1289 -0
  149. data/rbi/openlayer/models/inference_pipeline_retrieve_response.rbi +0 -5
  150. data/rbi/openlayer/models/inference_pipeline_retrieve_sessions_response.rbi +2 -0
  151. data/rbi/openlayer/models/inference_pipeline_retrieve_users_response.rbi +2 -0
  152. data/rbi/openlayer/models/inference_pipeline_update_response.rbi +0 -5
  153. data/rbi/openlayer/models/project_create_response.rbi +0 -5
  154. data/rbi/openlayer/models/project_list_response.rbi +0 -5
  155. data/rbi/openlayer/models/project_update_response.rbi +0 -5
  156. data/rbi/openlayer/models/projects/inference_pipeline_create_params.rbi +0 -5
  157. data/rbi/openlayer/models/projects/inference_pipeline_create_response.rbi +0 -5
  158. data/rbi/openlayer/models/projects/inference_pipeline_list_response.rbi +0 -5
  159. data/rbi/openlayer/models/storage/presigned_url_retrieve_params.rbi +47 -0
  160. data/rbi/openlayer/models/storage/presigned_url_retrieve_response.rbi +32 -0
  161. data/rbi/openlayer/models/workspaces/api_key_create_params.rbi +18 -0
  162. data/rbi/openlayer/models/workspaces/api_key_create_response.rbi +117 -5
  163. data/rbi/openlayer/models/workspaces/api_key_delete_params.rbi +48 -0
  164. data/rbi/openlayer/models/workspaces/api_key_list_params.rbi +40 -0
  165. data/rbi/openlayer/models/workspaces/api_key_list_response.rbi +202 -0
  166. data/rbi/openlayer/models/workspaces/api_key_retrieve_params.rbi +48 -0
  167. data/rbi/openlayer/models/workspaces/api_key_retrieve_response.rbi +194 -0
  168. data/rbi/openlayer/models/workspaces/api_key_rotate_params.rbi +85 -0
  169. data/rbi/openlayer/models/workspaces/api_key_rotate_response.rbi +194 -0
  170. data/rbi/openlayer/models/workspaces/api_key_update_params.rbi +60 -0
  171. data/rbi/openlayer/models/workspaces/api_key_update_response.rbi +194 -0
  172. data/rbi/openlayer/models.rbi +4 -0
  173. data/rbi/openlayer/resources/background_tasks.rbi +26 -0
  174. data/rbi/openlayer/resources/commits.rbi +1 -1
  175. data/rbi/openlayer/resources/governance/frameworks/documents.rbi +57 -0
  176. data/rbi/openlayer/resources/governance/frameworks/sections.rbi +56 -0
  177. data/rbi/openlayer/resources/governance/frameworks/subsections.rbi +52 -0
  178. data/rbi/openlayer/resources/governance/frameworks.rbi +261 -0
  179. data/rbi/openlayer/resources/governance/rule_results.rbi +167 -0
  180. data/rbi/openlayer/resources/governance/rule_stats.rbi +34 -0
  181. data/rbi/openlayer/resources/governance/rule_tags.rbi +34 -0
  182. data/rbi/openlayer/resources/governance/rules.rbi +209 -0
  183. data/rbi/openlayer/resources/governance.rbi +27 -0
  184. data/rbi/openlayer/resources/inference_pipelines/rows.rbi +4 -5
  185. data/rbi/openlayer/resources/inference_pipelines.rbi +5 -14
  186. data/rbi/openlayer/resources/projects/tests.rbi +3 -3
  187. data/rbi/openlayer/resources/storage/presigned_url.rbi +16 -1
  188. data/rbi/openlayer/resources/tests.rbi +1 -4
  189. data/rbi/openlayer/resources/workspaces/api_keys.rbi +110 -1
  190. data/rbi/openlayer/resources/workspaces/invites.rbi +1 -1
  191. data/rbi/openlayer/resources/workspaces.rbi +1 -1
  192. data/sig/openlayer/client.rbs +4 -0
  193. data/sig/openlayer/models/background_task_retrieve_params.rbs +23 -0
  194. data/sig/openlayer/models/background_task_retrieve_response.rbs +55 -0
  195. data/sig/openlayer/models/governance/framework_create_params.rbs +124 -0
  196. data/sig/openlayer/models/governance/framework_create_response.rbs +293 -0
  197. data/sig/openlayer/models/governance/framework_export_params.rbs +30 -0
  198. data/sig/openlayer/models/governance/framework_export_response.rbs +21 -0
  199. data/sig/openlayer/models/governance/framework_list_params.rbs +145 -0
  200. data/sig/openlayer/models/governance/framework_list_project_rule_stats_params.rbs +87 -0
  201. data/sig/openlayer/models/governance/framework_list_project_rule_stats_response.rbs +232 -0
  202. data/sig/openlayer/models/governance/framework_list_projects_params.rbs +38 -0
  203. data/sig/openlayer/models/governance/framework_list_projects_response.rbs +248 -0
  204. data/sig/openlayer/models/governance/framework_list_response.rbs +314 -0
  205. data/sig/openlayer/models/governance/framework_list_rules_params.rbs +38 -0
  206. data/sig/openlayer/models/governance/framework_list_rules_response.rbs +547 -0
  207. data/sig/openlayer/models/governance/framework_retrieve_params.rbs +25 -0
  208. data/sig/openlayer/models/governance/framework_retrieve_response.rbs +293 -0
  209. data/sig/openlayer/models/governance/framework_update_params.rbs +175 -0
  210. data/sig/openlayer/models/governance/framework_update_response.rbs +293 -0
  211. data/sig/openlayer/models/governance/frameworks/document_list_params.rbs +40 -0
  212. data/sig/openlayer/models/governance/frameworks/document_list_response.rbs +435 -0
  213. data/sig/openlayer/models/governance/frameworks/document_retrieve_params.rbs +32 -0
  214. data/sig/openlayer/models/governance/frameworks/document_retrieve_response.rbs +418 -0
  215. data/sig/openlayer/models/governance/frameworks/section_list_rules_params.rbs +102 -0
  216. data/sig/openlayer/models/governance/frameworks/section_list_rules_response.rbs +549 -0
  217. data/sig/openlayer/models/governance/frameworks/subsection_list_rules_params.rbs +95 -0
  218. data/sig/openlayer/models/governance/frameworks/subsection_list_rules_response.rbs +549 -0
  219. data/sig/openlayer/models/governance/rule_create_params.rbs +120 -0
  220. data/sig/openlayer/models/governance/rule_create_response.rbs +530 -0
  221. data/sig/openlayer/models/governance/rule_delete_params.rbs +25 -0
  222. data/sig/openlayer/models/governance/rule_list_params.rbs +228 -0
  223. data/sig/openlayer/models/governance/rule_list_response.rbs +547 -0
  224. data/sig/openlayer/models/governance/rule_result_create_evidence_params.rbs +53 -0
  225. data/sig/openlayer/models/governance/rule_result_create_evidence_response.rbs +62 -0
  226. data/sig/openlayer/models/governance/rule_result_list_evidence_params.rbs +38 -0
  227. data/sig/openlayer/models/governance/rule_result_list_evidence_response.rbs +79 -0
  228. data/sig/openlayer/models/governance/rule_result_list_params.rbs +156 -0
  229. data/sig/openlayer/models/governance/rule_result_list_response.rbs +252 -0
  230. data/sig/openlayer/models/governance/rule_result_retrieve_params.rbs +26 -0
  231. data/sig/openlayer/models/governance/rule_result_retrieve_response.rbs +235 -0
  232. data/sig/openlayer/models/governance/rule_result_update_params.rbs +165 -0
  233. data/sig/openlayer/models/governance/rule_result_update_response.rbs +235 -0
  234. data/sig/openlayer/models/governance/rule_retrieve_params.rbs +25 -0
  235. data/sig/openlayer/models/governance/rule_retrieve_response.rbs +530 -0
  236. data/sig/openlayer/models/governance/rule_stat_retrieve_params.rbs +38 -0
  237. data/sig/openlayer/models/governance/rule_stat_retrieve_response.rbs +434 -0
  238. data/sig/openlayer/models/governance/rule_tag_list_params.rbs +38 -0
  239. data/sig/openlayer/models/governance/rule_tag_list_response.rbs +74 -0
  240. data/sig/openlayer/models/governance/rule_update_params.rbs +62 -0
  241. data/sig/openlayer/models/governance/rule_update_response.rbs +530 -0
  242. data/sig/openlayer/models/inference_pipeline_retrieve_response.rbs +1 -2
  243. data/sig/openlayer/models/inference_pipeline_update_response.rbs +1 -2
  244. data/sig/openlayer/models/project_create_response.rbs +1 -2
  245. data/sig/openlayer/models/project_list_response.rbs +1 -2
  246. data/sig/openlayer/models/project_update_response.rbs +1 -2
  247. data/sig/openlayer/models/projects/inference_pipeline_create_params.rbs +1 -2
  248. data/sig/openlayer/models/projects/inference_pipeline_create_response.rbs +1 -2
  249. data/sig/openlayer/models/projects/inference_pipeline_list_response.rbs +1 -2
  250. data/sig/openlayer/models/storage/presigned_url_retrieve_params.rbs +25 -0
  251. data/sig/openlayer/models/storage/presigned_url_retrieve_response.rbs +15 -0
  252. data/sig/openlayer/models/workspaces/api_key_create_params.rbs +5 -1
  253. data/sig/openlayer/models/workspaces/api_key_create_response.rbs +42 -3
  254. data/sig/openlayer/models/workspaces/api_key_delete_params.rbs +30 -0
  255. data/sig/openlayer/models/workspaces/api_key_list_params.rbs +25 -0
  256. data/sig/openlayer/models/workspaces/api_key_list_response.rbs +91 -0
  257. data/sig/openlayer/models/workspaces/api_key_retrieve_params.rbs +30 -0
  258. data/sig/openlayer/models/workspaces/api_key_retrieve_response.rbs +86 -0
  259. data/sig/openlayer/models/workspaces/api_key_rotate_params.rbs +45 -0
  260. data/sig/openlayer/models/workspaces/api_key_rotate_response.rbs +86 -0
  261. data/sig/openlayer/models/workspaces/api_key_update_params.rbs +34 -0
  262. data/sig/openlayer/models/workspaces/api_key_update_response.rbs +86 -0
  263. data/sig/openlayer/models.rbs +4 -0
  264. data/sig/openlayer/resources/background_tasks.rbs +12 -0
  265. data/sig/openlayer/resources/governance/frameworks/documents.rbs +24 -0
  266. data/sig/openlayer/resources/governance/frameworks/sections.rbs +23 -0
  267. data/sig/openlayer/resources/governance/frameworks/subsections.rbs +22 -0
  268. data/sig/openlayer/resources/governance/frameworks.rbs +88 -0
  269. data/sig/openlayer/resources/governance/rule_results.rbs +57 -0
  270. data/sig/openlayer/resources/governance/rule_stats.rbs +16 -0
  271. data/sig/openlayer/resources/governance/rule_tags.rbs +16 -0
  272. data/sig/openlayer/resources/governance/rules.rbs +68 -0
  273. data/sig/openlayer/resources/governance.rbs +17 -0
  274. data/sig/openlayer/resources/storage/presigned_url.rbs +5 -0
  275. data/sig/openlayer/resources/workspaces/api_keys.rbs +33 -0
  276. metadata +212 -2
@@ -0,0 +1,1330 @@
1
+ # typed: strong
2
+
3
+ module Openlayer
4
+ module Models
5
+ module Governance
6
+ class RuleListResponse < Openlayer::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ Openlayer::Models::Governance::RuleListResponse,
11
+ Openlayer::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ sig do
16
+ returns(
17
+ T::Array[Openlayer::Models::Governance::RuleListResponse::Item]
18
+ )
19
+ end
20
+ attr_accessor :items
21
+
22
+ sig do
23
+ params(
24
+ items:
25
+ T::Array[
26
+ Openlayer::Models::Governance::RuleListResponse::Item::OrHash
27
+ ]
28
+ ).returns(T.attached_class)
29
+ end
30
+ def self.new(items:)
31
+ end
32
+
33
+ sig do
34
+ override.returns(
35
+ {
36
+ items:
37
+ T::Array[Openlayer::Models::Governance::RuleListResponse::Item]
38
+ }
39
+ )
40
+ end
41
+ def to_hash
42
+ end
43
+
44
+ class Item < Openlayer::Internal::Type::BaseModel
45
+ OrHash =
46
+ T.type_alias do
47
+ T.any(
48
+ Openlayer::Models::Governance::RuleListResponse::Item,
49
+ Openlayer::Internal::AnyHash
50
+ )
51
+ end
52
+
53
+ # The rule name.
54
+ sig { returns(String) }
55
+ attr_accessor :name
56
+
57
+ # Whether the rule is evaluated once for the whole workspace, or once per project
58
+ # the rule's frameworks apply to. Must be `project` for platform rules. Fixed once
59
+ # the rule is created.
60
+ sig do
61
+ returns(
62
+ Openlayer::Models::Governance::RuleListResponse::Item::Scope::TaggedSymbol
63
+ )
64
+ end
65
+ attr_accessor :scope
66
+
67
+ # `platform` rules are evaluated automatically from the state of your Openlayer
68
+ # workspace. `evidence` rules are satisfied by attaching evidence. Fixed once the
69
+ # rule is created.
70
+ sig do
71
+ returns(
72
+ Openlayer::Models::Governance::RuleListResponse::Item::Type::TaggedSymbol
73
+ )
74
+ end
75
+ attr_accessor :type
76
+
77
+ # The user responsible for satisfying the rule.
78
+ sig { returns(T.nilable(String)) }
79
+ attr_accessor :assignee_id
80
+
81
+ # Configuration for the platform check, when the automation takes parameters. Omit
82
+ # or `null` for evidence rules. Fixed once the rule is created.
83
+ sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
84
+ attr_accessor :automation_params
85
+
86
+ # Which workspace signal a platform rule checks, for example
87
+ # `monitoring_mode_enabled`, `test_setup`, or `project_owner_set`. Set it for
88
+ # platform rules; omit or `null` for evidence rules. Fixed once the rule is
89
+ # created.
90
+ sig { returns(T.nilable(String)) }
91
+ attr_accessor :automation_type
92
+
93
+ # Whether the rule is excluded from compliance calculations.
94
+ sig { returns(T.nilable(T::Boolean)) }
95
+ attr_reader :deactivated
96
+
97
+ sig { params(deactivated: T::Boolean).void }
98
+ attr_writer :deactivated
99
+
100
+ # What the rule requires.
101
+ sig { returns(T.nilable(String)) }
102
+ attr_accessor :description
103
+
104
+ # The kind of evidence that satisfies the rule. Set it for evidence rules; omit or
105
+ # `null` for platform rules. Fixed once the rule is created.
106
+ sig do
107
+ returns(
108
+ T.nilable(
109
+ Openlayer::Models::Governance::RuleListResponse::Item::EvidenceType::TaggedSymbol
110
+ )
111
+ )
112
+ end
113
+ attr_accessor :evidence_type
114
+
115
+ # How often evidence must be renewed, in days. Once evidence is older than this,
116
+ # the rule result becomes `due_soon` and then `failing`. The window restarts
117
+ # whenever evidence is attached. Omit or `null` for platform rules.
118
+ sig { returns(T.nilable(Integer)) }
119
+ attr_accessor :renewal_cadence_days
120
+
121
+ # The rule id.
122
+ sig { returns(String) }
123
+ attr_accessor :id
124
+
125
+ # The creation date.
126
+ sig { returns(Time) }
127
+ attr_accessor :date_created
128
+
129
+ # The last update date.
130
+ sig { returns(Time) }
131
+ attr_accessor :date_updated
132
+
133
+ # The id of the workspace the rule belongs to.
134
+ sig { returns(String) }
135
+ attr_accessor :workspace_id
136
+
137
+ # The frameworks that include this rule.
138
+ sig do
139
+ returns(
140
+ T.nilable(
141
+ T::Array[
142
+ Openlayer::Models::Governance::RuleListResponse::Item::Framework
143
+ ]
144
+ )
145
+ )
146
+ end
147
+ attr_reader :frameworks
148
+
149
+ sig do
150
+ params(
151
+ frameworks:
152
+ T::Array[
153
+ Openlayer::Models::Governance::RuleListResponse::Item::Framework::OrHash
154
+ ]
155
+ ).void
156
+ end
157
+ attr_writer :frameworks
158
+
159
+ # Whether the rule is managed by Openlayer. These rules can't be renamed or
160
+ # deleted; set `deactivated` to exclude one from compliance instead.
161
+ sig { returns(T.nilable(T::Boolean)) }
162
+ attr_reader :immutable
163
+
164
+ sig { params(immutable: T::Boolean).void }
165
+ attr_writer :immutable
166
+
167
+ # The rule's results, one per entity the rule is evaluated against. Only returned
168
+ # when `includeResults` is `true`.
169
+ sig do
170
+ returns(
171
+ T.nilable(
172
+ T::Array[
173
+ Openlayer::Models::Governance::RuleListResponse::Item::Result
174
+ ]
175
+ )
176
+ )
177
+ end
178
+ attr_reader :results
179
+
180
+ sig do
181
+ params(
182
+ results:
183
+ T::Array[
184
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::OrHash
185
+ ]
186
+ ).void
187
+ end
188
+ attr_writer :results
189
+
190
+ # Pass-rate counts across all of the rule's entities, independent of any status
191
+ # filter applied to the request.
192
+ sig do
193
+ returns(
194
+ T.nilable(
195
+ Openlayer::Models::Governance::RuleListResponse::Item::ResultsSummary
196
+ )
197
+ )
198
+ end
199
+ attr_reader :results_summary
200
+
201
+ sig do
202
+ params(
203
+ results_summary:
204
+ T.nilable(
205
+ Openlayer::Models::Governance::RuleListResponse::Item::ResultsSummary::OrHash
206
+ )
207
+ ).void
208
+ end
209
+ attr_writer :results_summary
210
+
211
+ # The rule tags associated with the rule.
212
+ sig do
213
+ returns(
214
+ T.nilable(
215
+ T::Array[
216
+ Openlayer::Models::Governance::RuleListResponse::Item::Tag
217
+ ]
218
+ )
219
+ )
220
+ end
221
+ attr_accessor :tags
222
+
223
+ # A single requirement Openlayer tracks. `platform` rules are evaluated
224
+ # automatically from the state of your workspace, and `evidence` rules are
225
+ # satisfied by attaching evidence. A rule can belong to several frameworks, or to
226
+ # none.
227
+ sig do
228
+ params(
229
+ id: String,
230
+ date_created: Time,
231
+ date_updated: Time,
232
+ name: String,
233
+ scope:
234
+ Openlayer::Models::Governance::RuleListResponse::Item::Scope::OrSymbol,
235
+ type:
236
+ Openlayer::Models::Governance::RuleListResponse::Item::Type::OrSymbol,
237
+ workspace_id: String,
238
+ assignee_id: T.nilable(String),
239
+ automation_params: T.nilable(T::Hash[Symbol, T.anything]),
240
+ automation_type: T.nilable(String),
241
+ deactivated: T::Boolean,
242
+ description: T.nilable(String),
243
+ evidence_type:
244
+ T.nilable(
245
+ Openlayer::Models::Governance::RuleListResponse::Item::EvidenceType::OrSymbol
246
+ ),
247
+ frameworks:
248
+ T::Array[
249
+ Openlayer::Models::Governance::RuleListResponse::Item::Framework::OrHash
250
+ ],
251
+ immutable: T::Boolean,
252
+ renewal_cadence_days: T.nilable(Integer),
253
+ results:
254
+ T::Array[
255
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::OrHash
256
+ ],
257
+ results_summary:
258
+ T.nilable(
259
+ Openlayer::Models::Governance::RuleListResponse::Item::ResultsSummary::OrHash
260
+ ),
261
+ tags:
262
+ T.nilable(
263
+ T::Array[
264
+ Openlayer::Models::Governance::RuleListResponse::Item::Tag::OrHash
265
+ ]
266
+ )
267
+ ).returns(T.attached_class)
268
+ end
269
+ def self.new(
270
+ # The rule id.
271
+ id:,
272
+ # The creation date.
273
+ date_created:,
274
+ # The last update date.
275
+ date_updated:,
276
+ # The rule name.
277
+ name:,
278
+ # Whether the rule is evaluated once for the whole workspace, or once per project
279
+ # the rule's frameworks apply to. Must be `project` for platform rules. Fixed once
280
+ # the rule is created.
281
+ scope:,
282
+ # `platform` rules are evaluated automatically from the state of your Openlayer
283
+ # workspace. `evidence` rules are satisfied by attaching evidence. Fixed once the
284
+ # rule is created.
285
+ type:,
286
+ # The id of the workspace the rule belongs to.
287
+ workspace_id:,
288
+ # The user responsible for satisfying the rule.
289
+ assignee_id: nil,
290
+ # Configuration for the platform check, when the automation takes parameters. Omit
291
+ # or `null` for evidence rules. Fixed once the rule is created.
292
+ automation_params: nil,
293
+ # Which workspace signal a platform rule checks, for example
294
+ # `monitoring_mode_enabled`, `test_setup`, or `project_owner_set`. Set it for
295
+ # platform rules; omit or `null` for evidence rules. Fixed once the rule is
296
+ # created.
297
+ automation_type: nil,
298
+ # Whether the rule is excluded from compliance calculations.
299
+ deactivated: nil,
300
+ # What the rule requires.
301
+ description: nil,
302
+ # The kind of evidence that satisfies the rule. Set it for evidence rules; omit or
303
+ # `null` for platform rules. Fixed once the rule is created.
304
+ evidence_type: nil,
305
+ # The frameworks that include this rule.
306
+ frameworks: nil,
307
+ # Whether the rule is managed by Openlayer. These rules can't be renamed or
308
+ # deleted; set `deactivated` to exclude one from compliance instead.
309
+ immutable: nil,
310
+ # How often evidence must be renewed, in days. Once evidence is older than this,
311
+ # the rule result becomes `due_soon` and then `failing`. The window restarts
312
+ # whenever evidence is attached. Omit or `null` for platform rules.
313
+ renewal_cadence_days: nil,
314
+ # The rule's results, one per entity the rule is evaluated against. Only returned
315
+ # when `includeResults` is `true`.
316
+ results: nil,
317
+ # Pass-rate counts across all of the rule's entities, independent of any status
318
+ # filter applied to the request.
319
+ results_summary: nil,
320
+ # The rule tags associated with the rule.
321
+ tags: nil
322
+ )
323
+ end
324
+
325
+ sig do
326
+ override.returns(
327
+ {
328
+ id: String,
329
+ date_created: Time,
330
+ date_updated: Time,
331
+ name: String,
332
+ scope:
333
+ Openlayer::Models::Governance::RuleListResponse::Item::Scope::TaggedSymbol,
334
+ type:
335
+ Openlayer::Models::Governance::RuleListResponse::Item::Type::TaggedSymbol,
336
+ workspace_id: String,
337
+ assignee_id: T.nilable(String),
338
+ automation_params: T.nilable(T::Hash[Symbol, T.anything]),
339
+ automation_type: T.nilable(String),
340
+ deactivated: T::Boolean,
341
+ description: T.nilable(String),
342
+ evidence_type:
343
+ T.nilable(
344
+ Openlayer::Models::Governance::RuleListResponse::Item::EvidenceType::TaggedSymbol
345
+ ),
346
+ frameworks:
347
+ T::Array[
348
+ Openlayer::Models::Governance::RuleListResponse::Item::Framework
349
+ ],
350
+ immutable: T::Boolean,
351
+ renewal_cadence_days: T.nilable(Integer),
352
+ results:
353
+ T::Array[
354
+ Openlayer::Models::Governance::RuleListResponse::Item::Result
355
+ ],
356
+ results_summary:
357
+ T.nilable(
358
+ Openlayer::Models::Governance::RuleListResponse::Item::ResultsSummary
359
+ ),
360
+ tag_ids: T.nilable(T::Array[String]),
361
+ tags:
362
+ T.nilable(
363
+ T::Array[
364
+ Openlayer::Models::Governance::RuleListResponse::Item::Tag
365
+ ]
366
+ )
367
+ }
368
+ )
369
+ end
370
+ def to_hash
371
+ end
372
+
373
+ # Whether the rule is evaluated once for the whole workspace, or once per project
374
+ # the rule's frameworks apply to. Must be `project` for platform rules. Fixed once
375
+ # the rule is created.
376
+ module Scope
377
+ extend Openlayer::Internal::Type::Enum
378
+
379
+ TaggedSymbol =
380
+ T.type_alias do
381
+ T.all(
382
+ Symbol,
383
+ Openlayer::Models::Governance::RuleListResponse::Item::Scope
384
+ )
385
+ end
386
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
387
+
388
+ PROJECT =
389
+ T.let(
390
+ :project,
391
+ Openlayer::Models::Governance::RuleListResponse::Item::Scope::TaggedSymbol
392
+ )
393
+ WORKSPACE =
394
+ T.let(
395
+ :workspace,
396
+ Openlayer::Models::Governance::RuleListResponse::Item::Scope::TaggedSymbol
397
+ )
398
+
399
+ sig do
400
+ override.returns(
401
+ T::Array[
402
+ Openlayer::Models::Governance::RuleListResponse::Item::Scope::TaggedSymbol
403
+ ]
404
+ )
405
+ end
406
+ def self.values
407
+ end
408
+ end
409
+
410
+ # `platform` rules are evaluated automatically from the state of your Openlayer
411
+ # workspace. `evidence` rules are satisfied by attaching evidence. Fixed once the
412
+ # rule is created.
413
+ module Type
414
+ extend Openlayer::Internal::Type::Enum
415
+
416
+ TaggedSymbol =
417
+ T.type_alias do
418
+ T.all(
419
+ Symbol,
420
+ Openlayer::Models::Governance::RuleListResponse::Item::Type
421
+ )
422
+ end
423
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
424
+
425
+ PLATFORM =
426
+ T.let(
427
+ :platform,
428
+ Openlayer::Models::Governance::RuleListResponse::Item::Type::TaggedSymbol
429
+ )
430
+ EVIDENCE =
431
+ T.let(
432
+ :evidence,
433
+ Openlayer::Models::Governance::RuleListResponse::Item::Type::TaggedSymbol
434
+ )
435
+
436
+ sig do
437
+ override.returns(
438
+ T::Array[
439
+ Openlayer::Models::Governance::RuleListResponse::Item::Type::TaggedSymbol
440
+ ]
441
+ )
442
+ end
443
+ def self.values
444
+ end
445
+ end
446
+
447
+ # The kind of evidence that satisfies the rule. Set it for evidence rules; omit or
448
+ # `null` for platform rules. Fixed once the rule is created.
449
+ module EvidenceType
450
+ extend Openlayer::Internal::Type::Enum
451
+
452
+ TaggedSymbol =
453
+ T.type_alias do
454
+ T.all(
455
+ Symbol,
456
+ Openlayer::Models::Governance::RuleListResponse::Item::EvidenceType
457
+ )
458
+ end
459
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
460
+
461
+ DOCUMENT =
462
+ T.let(
463
+ :document,
464
+ Openlayer::Models::Governance::RuleListResponse::Item::EvidenceType::TaggedSymbol
465
+ )
466
+ TEXT =
467
+ T.let(
468
+ :text,
469
+ Openlayer::Models::Governance::RuleListResponse::Item::EvidenceType::TaggedSymbol
470
+ )
471
+ URL =
472
+ T.let(
473
+ :url,
474
+ Openlayer::Models::Governance::RuleListResponse::Item::EvidenceType::TaggedSymbol
475
+ )
476
+ CATEGORY_VALUE =
477
+ T.let(
478
+ :categoryValue,
479
+ Openlayer::Models::Governance::RuleListResponse::Item::EvidenceType::TaggedSymbol
480
+ )
481
+
482
+ sig do
483
+ override.returns(
484
+ T::Array[
485
+ Openlayer::Models::Governance::RuleListResponse::Item::EvidenceType::TaggedSymbol
486
+ ]
487
+ )
488
+ end
489
+ def self.values
490
+ end
491
+ end
492
+
493
+ class Framework < Openlayer::Internal::Type::BaseModel
494
+ OrHash =
495
+ T.type_alias do
496
+ T.any(
497
+ Openlayer::Models::Governance::RuleListResponse::Item::Framework,
498
+ Openlayer::Internal::AnyHash
499
+ )
500
+ end
501
+
502
+ # The icon shown for the framework.
503
+ sig do
504
+ returns(
505
+ T.nilable(
506
+ Openlayer::Models::Governance::RuleListResponse::Item::Framework::Avatar
507
+ )
508
+ )
509
+ end
510
+ attr_reader :avatar
511
+
512
+ sig do
513
+ params(
514
+ avatar:
515
+ T.nilable(
516
+ Openlayer::Models::Governance::RuleListResponse::Item::Framework::Avatar::OrHash
517
+ )
518
+ ).void
519
+ end
520
+ attr_writer :avatar
521
+
522
+ # Identifies a framework that ships with Openlayer, for example `eu_ai_act`,
523
+ # `iso_42001`, `nist_ai_rmf`, or `traiga`. `null` for frameworks you create
524
+ # yourself.
525
+ sig { returns(T.nilable(String)) }
526
+ attr_accessor :built_in_slug
527
+
528
+ # Whether the framework is active. Rules of a disabled framework are not evaluated
529
+ # and do not count towards compliance.
530
+ sig { returns(T::Boolean) }
531
+ attr_accessor :enabled
532
+
533
+ # The framework name.
534
+ sig { returns(String) }
535
+ attr_accessor :name
536
+
537
+ # The framework id.
538
+ sig { returns(String) }
539
+ attr_accessor :id
540
+
541
+ sig do
542
+ params(
543
+ id: String,
544
+ avatar:
545
+ T.nilable(
546
+ Openlayer::Models::Governance::RuleListResponse::Item::Framework::Avatar::OrHash
547
+ ),
548
+ built_in_slug: T.nilable(String),
549
+ enabled: T::Boolean,
550
+ name: String
551
+ ).returns(T.attached_class)
552
+ end
553
+ def self.new(
554
+ # The framework id.
555
+ id:,
556
+ # The icon shown for the framework.
557
+ avatar:,
558
+ # Identifies a framework that ships with Openlayer, for example `eu_ai_act`,
559
+ # `iso_42001`, `nist_ai_rmf`, or `traiga`. `null` for frameworks you create
560
+ # yourself.
561
+ built_in_slug:,
562
+ # Whether the framework is active. Rules of a disabled framework are not evaluated
563
+ # and do not count towards compliance.
564
+ enabled:,
565
+ # The framework name.
566
+ name:
567
+ )
568
+ end
569
+
570
+ sig do
571
+ override.returns(
572
+ {
573
+ id: String,
574
+ avatar:
575
+ T.nilable(
576
+ Openlayer::Models::Governance::RuleListResponse::Item::Framework::Avatar
577
+ ),
578
+ built_in_slug: T.nilable(String),
579
+ enabled: T::Boolean,
580
+ name: String
581
+ }
582
+ )
583
+ end
584
+ def to_hash
585
+ end
586
+
587
+ class Avatar < Openlayer::Internal::Type::BaseModel
588
+ OrHash =
589
+ T.type_alias do
590
+ T.any(
591
+ Openlayer::Models::Governance::RuleListResponse::Item::Framework::Avatar,
592
+ Openlayer::Internal::AnyHash
593
+ )
594
+ end
595
+
596
+ sig do
597
+ returns(
598
+ Openlayer::Models::Governance::RuleListResponse::Item::Framework::Avatar::Type::TaggedSymbol
599
+ )
600
+ end
601
+ attr_accessor :type
602
+
603
+ sig { returns(String) }
604
+ attr_accessor :value
605
+
606
+ # The icon shown for the framework.
607
+ sig do
608
+ params(
609
+ type:
610
+ Openlayer::Models::Governance::RuleListResponse::Item::Framework::Avatar::Type::OrSymbol,
611
+ value: String
612
+ ).returns(T.attached_class)
613
+ end
614
+ def self.new(type:, value:)
615
+ end
616
+
617
+ sig do
618
+ override.returns(
619
+ {
620
+ type:
621
+ Openlayer::Models::Governance::RuleListResponse::Item::Framework::Avatar::Type::TaggedSymbol,
622
+ value: String
623
+ }
624
+ )
625
+ end
626
+ def to_hash
627
+ end
628
+
629
+ module Type
630
+ extend Openlayer::Internal::Type::Enum
631
+
632
+ TaggedSymbol =
633
+ T.type_alias do
634
+ T.all(
635
+ Symbol,
636
+ Openlayer::Models::Governance::RuleListResponse::Item::Framework::Avatar::Type
637
+ )
638
+ end
639
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
640
+
641
+ EMOJI =
642
+ T.let(
643
+ :emoji,
644
+ Openlayer::Models::Governance::RuleListResponse::Item::Framework::Avatar::Type::TaggedSymbol
645
+ )
646
+ IMAGE_URL =
647
+ T.let(
648
+ :imageUrl,
649
+ Openlayer::Models::Governance::RuleListResponse::Item::Framework::Avatar::Type::TaggedSymbol
650
+ )
651
+ BUILTIN_IMAGE =
652
+ T.let(
653
+ :builtinImage,
654
+ Openlayer::Models::Governance::RuleListResponse::Item::Framework::Avatar::Type::TaggedSymbol
655
+ )
656
+
657
+ sig do
658
+ override.returns(
659
+ T::Array[
660
+ Openlayer::Models::Governance::RuleListResponse::Item::Framework::Avatar::Type::TaggedSymbol
661
+ ]
662
+ )
663
+ end
664
+ def self.values
665
+ end
666
+ end
667
+ end
668
+ end
669
+
670
+ class Result < Openlayer::Internal::Type::BaseModel
671
+ OrHash =
672
+ T.type_alias do
673
+ T.any(
674
+ Openlayer::Models::Governance::RuleListResponse::Item::Result,
675
+ Openlayer::Internal::AnyHash
676
+ )
677
+ end
678
+
679
+ # Whether this result is excluded from compliance calculations. Excludes just this
680
+ # result, without deactivating the rule everywhere.
681
+ sig { returns(T::Boolean) }
682
+ attr_accessor :deactivated
683
+
684
+ # The compliance status of the rule for this entity. Computed by Openlayer and
685
+ # can't be set directly.
686
+ sig do
687
+ returns(
688
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Status::TaggedSymbol
689
+ )
690
+ end
691
+ attr_accessor :status
692
+
693
+ # The user responsible for this result.
694
+ sig { returns(T.nilable(String)) }
695
+ attr_accessor :assignee_id
696
+
697
+ # Rule results that must pass before this one can be satisfied.
698
+ sig do
699
+ returns(
700
+ T.nilable(
701
+ T::Array[
702
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::BlockedBy
703
+ ]
704
+ )
705
+ )
706
+ end
707
+ attr_reader :blocked_by
708
+
709
+ sig do
710
+ params(
711
+ blocked_by:
712
+ T::Array[
713
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::BlockedBy::OrHash
714
+ ]
715
+ ).void
716
+ end
717
+ attr_writer :blocked_by
718
+
719
+ # Rule results that this one blocks.
720
+ sig do
721
+ returns(
722
+ T.nilable(
723
+ T::Array[
724
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Blocking
725
+ ]
726
+ )
727
+ )
728
+ end
729
+ attr_reader :blocking
730
+
731
+ sig do
732
+ params(
733
+ blocking:
734
+ T::Array[
735
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Blocking::OrHash
736
+ ]
737
+ ).void
738
+ end
739
+ attr_writer :blocking
740
+
741
+ # Why the result was excluded. Required when setting `deactivated` to `true`.
742
+ sig { returns(T.nilable(String)) }
743
+ attr_accessor :deactivated_reason
744
+
745
+ # A human-readable explanation of the status.
746
+ sig { returns(T.nilable(String)) }
747
+ attr_accessor :status_message
748
+
749
+ # The rule result id.
750
+ sig { returns(String) }
751
+ attr_accessor :id
752
+
753
+ # The creation date.
754
+ sig { returns(Time) }
755
+ attr_accessor :date_created
756
+
757
+ # The last update date.
758
+ sig { returns(Time) }
759
+ attr_accessor :date_updated
760
+
761
+ # The rule this result belongs to.
762
+ sig { returns(String) }
763
+ attr_accessor :rule_id
764
+
765
+ # The id of the workspace the rule result belongs to.
766
+ sig { returns(String) }
767
+ attr_accessor :workspace_id
768
+
769
+ # When the rule was last evaluated. Platform rules only.
770
+ sig { returns(T.nilable(Time)) }
771
+ attr_accessor :date_last_evaluated
772
+
773
+ # When the most recent piece of evidence was attached. Evidence rules only.
774
+ sig { returns(T.nilable(Time)) }
775
+ attr_accessor :date_of_latest_evidence
776
+
777
+ # When the rule will next be evaluated. Platform rules only.
778
+ sig { returns(T.nilable(Time)) }
779
+ attr_accessor :date_of_next_evaluation
780
+
781
+ # When the evidence must be renewed. Evidence rules with a renewal cadence only.
782
+ sig { returns(T.nilable(Time)) }
783
+ attr_accessor :date_of_renewal
784
+
785
+ # The project this result was evaluated for. `null` for workspace-scoped rules.
786
+ sig { returns(T.nilable(String)) }
787
+ attr_accessor :project_id
788
+
789
+ # The compliance status of one rule for one entity: a project for project-scoped
790
+ # rules, or the workspace for workspace-scoped rules.
791
+ sig do
792
+ params(
793
+ id: String,
794
+ date_created: Time,
795
+ date_updated: Time,
796
+ deactivated: T::Boolean,
797
+ rule_id: String,
798
+ status:
799
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Status::OrSymbol,
800
+ workspace_id: String,
801
+ assignee_id: T.nilable(String),
802
+ blocked_by:
803
+ T::Array[
804
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::BlockedBy::OrHash
805
+ ],
806
+ blocking:
807
+ T::Array[
808
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Blocking::OrHash
809
+ ],
810
+ date_last_evaluated: T.nilable(Time),
811
+ date_of_latest_evidence: T.nilable(Time),
812
+ date_of_next_evaluation: T.nilable(Time),
813
+ date_of_renewal: T.nilable(Time),
814
+ deactivated_reason: T.nilable(String),
815
+ project_id: T.nilable(String),
816
+ status_message: T.nilable(String)
817
+ ).returns(T.attached_class)
818
+ end
819
+ def self.new(
820
+ # The rule result id.
821
+ id:,
822
+ # The creation date.
823
+ date_created:,
824
+ # The last update date.
825
+ date_updated:,
826
+ # Whether this result is excluded from compliance calculations. Excludes just this
827
+ # result, without deactivating the rule everywhere.
828
+ deactivated:,
829
+ # The rule this result belongs to.
830
+ rule_id:,
831
+ # The compliance status of the rule for this entity. Computed by Openlayer and
832
+ # can't be set directly.
833
+ status:,
834
+ # The id of the workspace the rule result belongs to.
835
+ workspace_id:,
836
+ # The user responsible for this result.
837
+ assignee_id: nil,
838
+ # Rule results that must pass before this one can be satisfied.
839
+ blocked_by: nil,
840
+ # Rule results that this one blocks.
841
+ blocking: nil,
842
+ # When the rule was last evaluated. Platform rules only.
843
+ date_last_evaluated: nil,
844
+ # When the most recent piece of evidence was attached. Evidence rules only.
845
+ date_of_latest_evidence: nil,
846
+ # When the rule will next be evaluated. Platform rules only.
847
+ date_of_next_evaluation: nil,
848
+ # When the evidence must be renewed. Evidence rules with a renewal cadence only.
849
+ date_of_renewal: nil,
850
+ # Why the result was excluded. Required when setting `deactivated` to `true`.
851
+ deactivated_reason: nil,
852
+ # The project this result was evaluated for. `null` for workspace-scoped rules.
853
+ project_id: nil,
854
+ # A human-readable explanation of the status.
855
+ status_message: nil
856
+ )
857
+ end
858
+
859
+ sig do
860
+ override.returns(
861
+ {
862
+ id: String,
863
+ date_created: Time,
864
+ date_updated: Time,
865
+ deactivated: T::Boolean,
866
+ rule_id: String,
867
+ status:
868
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Status::TaggedSymbol,
869
+ workspace_id: String,
870
+ assignee_id: T.nilable(String),
871
+ blocked_by:
872
+ T::Array[
873
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::BlockedBy
874
+ ],
875
+ blocking:
876
+ T::Array[
877
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Blocking
878
+ ],
879
+ date_last_evaluated: T.nilable(Time),
880
+ date_of_latest_evidence: T.nilable(Time),
881
+ date_of_next_evaluation: T.nilable(Time),
882
+ date_of_renewal: T.nilable(Time),
883
+ deactivated_reason: T.nilable(String),
884
+ project_id: T.nilable(String),
885
+ status_message: T.nilable(String)
886
+ }
887
+ )
888
+ end
889
+ def to_hash
890
+ end
891
+
892
+ # The compliance status of the rule for this entity. Computed by Openlayer and
893
+ # can't be set directly.
894
+ module Status
895
+ extend Openlayer::Internal::Type::Enum
896
+
897
+ TaggedSymbol =
898
+ T.type_alias do
899
+ T.all(
900
+ Symbol,
901
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Status
902
+ )
903
+ end
904
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
905
+
906
+ RUNNING =
907
+ T.let(
908
+ :running,
909
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Status::TaggedSymbol
910
+ )
911
+ PASSING =
912
+ T.let(
913
+ :passing,
914
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Status::TaggedSymbol
915
+ )
916
+ FAILING =
917
+ T.let(
918
+ :failing,
919
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Status::TaggedSymbol
920
+ )
921
+ SKIPPED =
922
+ T.let(
923
+ :skipped,
924
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Status::TaggedSymbol
925
+ )
926
+ ERROR =
927
+ T.let(
928
+ :error,
929
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Status::TaggedSymbol
930
+ )
931
+ PENDING =
932
+ T.let(
933
+ :pending,
934
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Status::TaggedSymbol
935
+ )
936
+ DUE_SOON =
937
+ T.let(
938
+ :due_soon,
939
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Status::TaggedSymbol
940
+ )
941
+
942
+ sig do
943
+ override.returns(
944
+ T::Array[
945
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Status::TaggedSymbol
946
+ ]
947
+ )
948
+ end
949
+ def self.values
950
+ end
951
+ end
952
+
953
+ class BlockedBy < Openlayer::Internal::Type::BaseModel
954
+ OrHash =
955
+ T.type_alias do
956
+ T.any(
957
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::BlockedBy,
958
+ Openlayer::Internal::AnyHash
959
+ )
960
+ end
961
+
962
+ sig { returns(T.nilable(String)) }
963
+ attr_reader :id
964
+
965
+ sig { params(id: String).void }
966
+ attr_writer :id
967
+
968
+ # The compliance status of the rule for this entity. Computed by Openlayer and
969
+ # can't be set directly.
970
+ sig do
971
+ returns(
972
+ T.nilable(
973
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::BlockedBy::Status::TaggedSymbol
974
+ )
975
+ )
976
+ end
977
+ attr_reader :status
978
+
979
+ sig do
980
+ params(
981
+ status:
982
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::BlockedBy::Status::OrSymbol
983
+ ).void
984
+ end
985
+ attr_writer :status
986
+
987
+ sig do
988
+ params(
989
+ id: String,
990
+ status:
991
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::BlockedBy::Status::OrSymbol
992
+ ).returns(T.attached_class)
993
+ end
994
+ def self.new(
995
+ id: nil,
996
+ # The compliance status of the rule for this entity. Computed by Openlayer and
997
+ # can't be set directly.
998
+ status: nil
999
+ )
1000
+ end
1001
+
1002
+ sig do
1003
+ override.returns(
1004
+ {
1005
+ id: String,
1006
+ status:
1007
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::BlockedBy::Status::TaggedSymbol
1008
+ }
1009
+ )
1010
+ end
1011
+ def to_hash
1012
+ end
1013
+
1014
+ # The compliance status of the rule for this entity. Computed by Openlayer and
1015
+ # can't be set directly.
1016
+ module Status
1017
+ extend Openlayer::Internal::Type::Enum
1018
+
1019
+ TaggedSymbol =
1020
+ T.type_alias do
1021
+ T.all(
1022
+ Symbol,
1023
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::BlockedBy::Status
1024
+ )
1025
+ end
1026
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1027
+
1028
+ RUNNING =
1029
+ T.let(
1030
+ :running,
1031
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::BlockedBy::Status::TaggedSymbol
1032
+ )
1033
+ PASSING =
1034
+ T.let(
1035
+ :passing,
1036
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::BlockedBy::Status::TaggedSymbol
1037
+ )
1038
+ FAILING =
1039
+ T.let(
1040
+ :failing,
1041
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::BlockedBy::Status::TaggedSymbol
1042
+ )
1043
+ SKIPPED =
1044
+ T.let(
1045
+ :skipped,
1046
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::BlockedBy::Status::TaggedSymbol
1047
+ )
1048
+ ERROR =
1049
+ T.let(
1050
+ :error,
1051
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::BlockedBy::Status::TaggedSymbol
1052
+ )
1053
+ PENDING =
1054
+ T.let(
1055
+ :pending,
1056
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::BlockedBy::Status::TaggedSymbol
1057
+ )
1058
+ DUE_SOON =
1059
+ T.let(
1060
+ :due_soon,
1061
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::BlockedBy::Status::TaggedSymbol
1062
+ )
1063
+
1064
+ sig do
1065
+ override.returns(
1066
+ T::Array[
1067
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::BlockedBy::Status::TaggedSymbol
1068
+ ]
1069
+ )
1070
+ end
1071
+ def self.values
1072
+ end
1073
+ end
1074
+ end
1075
+
1076
+ class Blocking < Openlayer::Internal::Type::BaseModel
1077
+ OrHash =
1078
+ T.type_alias do
1079
+ T.any(
1080
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Blocking,
1081
+ Openlayer::Internal::AnyHash
1082
+ )
1083
+ end
1084
+
1085
+ sig { returns(T.nilable(String)) }
1086
+ attr_reader :id
1087
+
1088
+ sig { params(id: String).void }
1089
+ attr_writer :id
1090
+
1091
+ # The compliance status of the rule for this entity. Computed by Openlayer and
1092
+ # can't be set directly.
1093
+ sig do
1094
+ returns(
1095
+ T.nilable(
1096
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Blocking::Status::TaggedSymbol
1097
+ )
1098
+ )
1099
+ end
1100
+ attr_reader :status
1101
+
1102
+ sig do
1103
+ params(
1104
+ status:
1105
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Blocking::Status::OrSymbol
1106
+ ).void
1107
+ end
1108
+ attr_writer :status
1109
+
1110
+ sig do
1111
+ params(
1112
+ id: String,
1113
+ status:
1114
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Blocking::Status::OrSymbol
1115
+ ).returns(T.attached_class)
1116
+ end
1117
+ def self.new(
1118
+ id: nil,
1119
+ # The compliance status of the rule for this entity. Computed by Openlayer and
1120
+ # can't be set directly.
1121
+ status: nil
1122
+ )
1123
+ end
1124
+
1125
+ sig do
1126
+ override.returns(
1127
+ {
1128
+ id: String,
1129
+ status:
1130
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Blocking::Status::TaggedSymbol
1131
+ }
1132
+ )
1133
+ end
1134
+ def to_hash
1135
+ end
1136
+
1137
+ # The compliance status of the rule for this entity. Computed by Openlayer and
1138
+ # can't be set directly.
1139
+ module Status
1140
+ extend Openlayer::Internal::Type::Enum
1141
+
1142
+ TaggedSymbol =
1143
+ T.type_alias do
1144
+ T.all(
1145
+ Symbol,
1146
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Blocking::Status
1147
+ )
1148
+ end
1149
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
1150
+
1151
+ RUNNING =
1152
+ T.let(
1153
+ :running,
1154
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Blocking::Status::TaggedSymbol
1155
+ )
1156
+ PASSING =
1157
+ T.let(
1158
+ :passing,
1159
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Blocking::Status::TaggedSymbol
1160
+ )
1161
+ FAILING =
1162
+ T.let(
1163
+ :failing,
1164
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Blocking::Status::TaggedSymbol
1165
+ )
1166
+ SKIPPED =
1167
+ T.let(
1168
+ :skipped,
1169
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Blocking::Status::TaggedSymbol
1170
+ )
1171
+ ERROR =
1172
+ T.let(
1173
+ :error,
1174
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Blocking::Status::TaggedSymbol
1175
+ )
1176
+ PENDING =
1177
+ T.let(
1178
+ :pending,
1179
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Blocking::Status::TaggedSymbol
1180
+ )
1181
+ DUE_SOON =
1182
+ T.let(
1183
+ :due_soon,
1184
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Blocking::Status::TaggedSymbol
1185
+ )
1186
+
1187
+ sig do
1188
+ override.returns(
1189
+ T::Array[
1190
+ Openlayer::Models::Governance::RuleListResponse::Item::Result::Blocking::Status::TaggedSymbol
1191
+ ]
1192
+ )
1193
+ end
1194
+ def self.values
1195
+ end
1196
+ end
1197
+ end
1198
+ end
1199
+
1200
+ class ResultsSummary < Openlayer::Internal::Type::BaseModel
1201
+ OrHash =
1202
+ T.type_alias do
1203
+ T.any(
1204
+ Openlayer::Models::Governance::RuleListResponse::Item::ResultsSummary,
1205
+ Openlayer::Internal::AnyHash
1206
+ )
1207
+ end
1208
+
1209
+ sig { returns(T.nilable(Integer)) }
1210
+ attr_reader :passing
1211
+
1212
+ sig { params(passing: Integer).void }
1213
+ attr_writer :passing
1214
+
1215
+ sig { returns(T.nilable(Integer)) }
1216
+ attr_reader :total
1217
+
1218
+ sig { params(total: Integer).void }
1219
+ attr_writer :total
1220
+
1221
+ # Pass-rate counts across all of the rule's entities, independent of any status
1222
+ # filter applied to the request.
1223
+ sig do
1224
+ params(passing: Integer, total: Integer).returns(T.attached_class)
1225
+ end
1226
+ def self.new(passing: nil, total: nil)
1227
+ end
1228
+
1229
+ sig { override.returns({ passing: Integer, total: Integer }) }
1230
+ def to_hash
1231
+ end
1232
+ end
1233
+
1234
+ class Tag < Openlayer::Internal::Type::BaseModel
1235
+ OrHash =
1236
+ T.type_alias do
1237
+ T.any(
1238
+ Openlayer::Models::Governance::RuleListResponse::Item::Tag,
1239
+ Openlayer::Internal::AnyHash
1240
+ )
1241
+ end
1242
+
1243
+ # The tag name.
1244
+ sig { returns(String) }
1245
+ attr_accessor :name
1246
+
1247
+ # The color the tag is displayed with.
1248
+ sig { returns(T.nilable(String)) }
1249
+ attr_accessor :color
1250
+
1251
+ # The rule tag id.
1252
+ sig { returns(String) }
1253
+ attr_accessor :id
1254
+
1255
+ # The user who created the tag. `null` for tags that ship with Openlayer.
1256
+ sig { returns(T.nilable(String)) }
1257
+ attr_accessor :creator_id
1258
+
1259
+ # The creation date.
1260
+ sig { returns(Time) }
1261
+ attr_accessor :date_created
1262
+
1263
+ # The last update date.
1264
+ sig { returns(Time) }
1265
+ attr_accessor :date_updated
1266
+
1267
+ # Whether the tag is managed by Openlayer. These tags can't be deleted.
1268
+ sig { returns(T::Boolean) }
1269
+ attr_accessor :immutable
1270
+
1271
+ # The id of the workspace the tag belongs to.
1272
+ sig { returns(String) }
1273
+ attr_accessor :workspace_id
1274
+
1275
+ # A label that groups rules across frameworks, for example by team or control
1276
+ # family.
1277
+ sig do
1278
+ params(
1279
+ id: String,
1280
+ creator_id: T.nilable(String),
1281
+ date_created: Time,
1282
+ date_updated: Time,
1283
+ immutable: T::Boolean,
1284
+ name: String,
1285
+ workspace_id: String,
1286
+ color: T.nilable(String)
1287
+ ).returns(T.attached_class)
1288
+ end
1289
+ def self.new(
1290
+ # The rule tag id.
1291
+ id:,
1292
+ # The user who created the tag. `null` for tags that ship with Openlayer.
1293
+ creator_id:,
1294
+ # The creation date.
1295
+ date_created:,
1296
+ # The last update date.
1297
+ date_updated:,
1298
+ # Whether the tag is managed by Openlayer. These tags can't be deleted.
1299
+ immutable:,
1300
+ # The tag name.
1301
+ name:,
1302
+ # The id of the workspace the tag belongs to.
1303
+ workspace_id:,
1304
+ # The color the tag is displayed with.
1305
+ color: nil
1306
+ )
1307
+ end
1308
+
1309
+ sig do
1310
+ override.returns(
1311
+ {
1312
+ id: String,
1313
+ creator_id: T.nilable(String),
1314
+ date_created: Time,
1315
+ date_updated: Time,
1316
+ immutable: T::Boolean,
1317
+ name: String,
1318
+ workspace_id: String,
1319
+ color: T.nilable(String)
1320
+ }
1321
+ )
1322
+ end
1323
+ def to_hash
1324
+ end
1325
+ end
1326
+ end
1327
+ end
1328
+ end
1329
+ end
1330
+ end