openlayer 0.14.1 → 0.16.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 (231) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +34 -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 +81 -0
  7. data/lib/openlayer/models/governance/framework_create_params.rb +143 -0
  8. data/lib/openlayer/models/governance/framework_create_response.rb +407 -0
  9. data/lib/openlayer/models/governance/framework_export_params.rb +31 -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 +277 -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 +418 -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 +656 -0
  19. data/lib/openlayer/models/governance/framework_retrieve_params.rb +22 -0
  20. data/lib/openlayer/models/governance/framework_retrieve_response.rb +407 -0
  21. data/lib/openlayer/models/governance/framework_update_params.rb +200 -0
  22. data/lib/openlayer/models/governance/framework_update_response.rb +407 -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 +572 -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 +561 -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 +660 -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 +660 -0
  31. data/lib/openlayer/models/governance/rule_create_params.rb +164 -0
  32. data/lib/openlayer/models/governance/rule_create_response.rb +638 -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 +654 -0
  36. data/lib/openlayer/models/governance/rule_result_create_evidence_params.rb +68 -0
  37. data/lib/openlayer/models/governance/rule_result_create_evidence_response.rb +90 -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 +101 -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 +255 -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 +243 -0
  44. data/lib/openlayer/models/governance/rule_result_update_params.rb +140 -0
  45. data/lib/openlayer/models/governance/rule_result_update_response.rb +242 -0
  46. data/lib/openlayer/models/governance/rule_retrieve_params.rb +22 -0
  47. data/lib/openlayer/models/governance/rule_retrieve_response.rb +642 -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 +504 -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 +88 -0
  52. data/lib/openlayer/models/governance/rule_update_params.rb +77 -0
  53. data/lib/openlayer/models/governance/rule_update_response.rb +638 -0
  54. data/lib/openlayer/models/inference_pipeline_retrieve_response.rb +38 -2
  55. data/lib/openlayer/models/inference_pipeline_update_response.rb +37 -2
  56. data/lib/openlayer/models/project_create_params.rb +37 -1
  57. data/lib/openlayer/models/project_create_response.rb +37 -2
  58. data/lib/openlayer/models/project_list_response.rb +37 -2
  59. data/lib/openlayer/models/project_update_params.rb +73 -0
  60. data/lib/openlayer/models/project_update_response.rb +297 -0
  61. data/lib/openlayer/models/projects/inference_pipeline_create_params.rb +38 -2
  62. data/lib/openlayer/models/projects/inference_pipeline_create_response.rb +38 -2
  63. data/lib/openlayer/models/projects/inference_pipeline_list_response.rb +41 -2
  64. data/lib/openlayer/models/storage/presigned_url_retrieve_params.rb +24 -0
  65. data/lib/openlayer/models/storage/presigned_url_retrieve_response.rb +19 -0
  66. data/lib/openlayer/models.rb +6 -0
  67. data/lib/openlayer/resources/background_tasks.rb +38 -0
  68. data/lib/openlayer/resources/governance/frameworks/documents.rb +80 -0
  69. data/lib/openlayer/resources/governance/frameworks/sections.rb +72 -0
  70. data/lib/openlayer/resources/governance/frameworks/subsections.rb +69 -0
  71. data/lib/openlayer/resources/governance/frameworks.rb +344 -0
  72. data/lib/openlayer/resources/governance/rule_results.rb +212 -0
  73. data/lib/openlayer/resources/governance/rule_stats.rb +47 -0
  74. data/lib/openlayer/resources/governance/rule_tags.rb +47 -0
  75. data/lib/openlayer/resources/governance/rules.rb +241 -0
  76. data/lib/openlayer/resources/governance.rb +34 -0
  77. data/lib/openlayer/resources/projects.rb +49 -1
  78. data/lib/openlayer/resources/storage/presigned_url.rb +32 -0
  79. data/lib/openlayer/version.rb +1 -1
  80. data/lib/openlayer.rb +63 -0
  81. data/rbi/openlayer/client.rbi +6 -0
  82. data/rbi/openlayer/models/background_task_retrieve_params.rbi +38 -0
  83. data/rbi/openlayer/models/background_task_retrieve_response.rbi +102 -0
  84. data/rbi/openlayer/models/governance/framework_create_params.rbi +298 -0
  85. data/rbi/openlayer/models/governance/framework_create_response.rbi +730 -0
  86. data/rbi/openlayer/models/governance/framework_export_params.rbi +54 -0
  87. data/rbi/openlayer/models/governance/framework_export_response.rbi +48 -0
  88. data/rbi/openlayer/models/governance/framework_list_params.rbi +310 -0
  89. data/rbi/openlayer/models/governance/framework_list_project_rule_stats_params.rbi +178 -0
  90. data/rbi/openlayer/models/governance/framework_list_project_rule_stats_response.rbi +440 -0
  91. data/rbi/openlayer/models/governance/framework_list_projects_params.rbi +68 -0
  92. data/rbi/openlayer/models/governance/framework_list_projects_response.rbi +498 -0
  93. data/rbi/openlayer/models/governance/framework_list_response.rbi +771 -0
  94. data/rbi/openlayer/models/governance/framework_list_rules_params.rbi +68 -0
  95. data/rbi/openlayer/models/governance/framework_list_rules_response.rbi +1298 -0
  96. data/rbi/openlayer/models/governance/framework_retrieve_params.rbi +40 -0
  97. data/rbi/openlayer/models/governance/framework_retrieve_response.rbi +730 -0
  98. data/rbi/openlayer/models/governance/framework_update_params.rbi +425 -0
  99. data/rbi/openlayer/models/governance/framework_update_response.rbi +730 -0
  100. data/rbi/openlayer/models/governance/frameworks/document_list_params.rbi +70 -0
  101. data/rbi/openlayer/models/governance/frameworks/document_list_response.rbi +1012 -0
  102. data/rbi/openlayer/models/governance/frameworks/document_retrieve_params.rbi +50 -0
  103. data/rbi/openlayer/models/governance/frameworks/document_retrieve_response.rbi +968 -0
  104. data/rbi/openlayer/models/governance/frameworks/section_list_rules_params.rbi +193 -0
  105. data/rbi/openlayer/models/governance/frameworks/section_list_rules_response.rbi +1302 -0
  106. data/rbi/openlayer/models/governance/frameworks/subsection_list_rules_params.rbi +182 -0
  107. data/rbi/openlayer/models/governance/frameworks/subsection_list_rules_response.rbi +1302 -0
  108. data/rbi/openlayer/models/governance/rule_create_params.rbi +276 -0
  109. data/rbi/openlayer/models/governance/rule_create_response.rbi +1253 -0
  110. data/rbi/openlayer/models/governance/rule_delete_params.rbi +40 -0
  111. data/rbi/openlayer/models/governance/rule_list_params.rbi +486 -0
  112. data/rbi/openlayer/models/governance/rule_list_response.rbi +1294 -0
  113. data/rbi/openlayer/models/governance/rule_result_create_evidence_params.rbi +88 -0
  114. data/rbi/openlayer/models/governance/rule_result_create_evidence_response.rbi +108 -0
  115. data/rbi/openlayer/models/governance/rule_result_list_evidence_params.rbi +68 -0
  116. data/rbi/openlayer/models/governance/rule_result_list_evidence_response.rbi +151 -0
  117. data/rbi/openlayer/models/governance/rule_result_list_params.rbi +322 -0
  118. data/rbi/openlayer/models/governance/rule_result_list_response.rbi +567 -0
  119. data/rbi/openlayer/models/governance/rule_result_retrieve_params.rbi +43 -0
  120. data/rbi/openlayer/models/governance/rule_result_retrieve_response.rbi +524 -0
  121. data/rbi/openlayer/models/governance/rule_result_update_params.rbi +373 -0
  122. data/rbi/openlayer/models/governance/rule_result_update_response.rbi +524 -0
  123. data/rbi/openlayer/models/governance/rule_retrieve_params.rbi +40 -0
  124. data/rbi/openlayer/models/governance/rule_retrieve_response.rbi +1253 -0
  125. data/rbi/openlayer/models/governance/rule_stat_retrieve_params.rbi +68 -0
  126. data/rbi/openlayer/models/governance/rule_stat_retrieve_response.rbi +874 -0
  127. data/rbi/openlayer/models/governance/rule_tag_list_params.rbi +68 -0
  128. data/rbi/openlayer/models/governance/rule_tag_list_response.rbi +139 -0
  129. data/rbi/openlayer/models/governance/rule_update_params.rbi +106 -0
  130. data/rbi/openlayer/models/governance/rule_update_response.rbi +1253 -0
  131. data/rbi/openlayer/models/inference_pipeline_retrieve_response.rbi +37 -8
  132. data/rbi/openlayer/models/inference_pipeline_update_response.rbi +37 -8
  133. data/rbi/openlayer/models/project_create_params.rbi +34 -0
  134. data/rbi/openlayer/models/project_create_response.rbi +39 -8
  135. data/rbi/openlayer/models/project_list_response.rbi +39 -8
  136. data/rbi/openlayer/models/project_update_params.rbi +94 -0
  137. data/rbi/openlayer/models/project_update_response.rbi +432 -0
  138. data/rbi/openlayer/models/projects/inference_pipeline_create_params.rbi +37 -8
  139. data/rbi/openlayer/models/projects/inference_pipeline_create_response.rbi +37 -8
  140. data/rbi/openlayer/models/projects/inference_pipeline_list_response.rbi +37 -8
  141. data/rbi/openlayer/models/storage/presigned_url_retrieve_params.rbi +45 -0
  142. data/rbi/openlayer/models/storage/presigned_url_retrieve_response.rbi +32 -0
  143. data/rbi/openlayer/models.rbi +6 -0
  144. data/rbi/openlayer/resources/background_tasks.rbi +30 -0
  145. data/rbi/openlayer/resources/governance/frameworks/documents.rbi +65 -0
  146. data/rbi/openlayer/resources/governance/frameworks/sections.rbi +60 -0
  147. data/rbi/openlayer/resources/governance/frameworks/subsections.rbi +56 -0
  148. data/rbi/openlayer/resources/governance/frameworks.rbi +314 -0
  149. data/rbi/openlayer/resources/governance/rule_results.rbi +193 -0
  150. data/rbi/openlayer/resources/governance/rule_stats.rbi +38 -0
  151. data/rbi/openlayer/resources/governance/rule_tags.rbi +38 -0
  152. data/rbi/openlayer/resources/governance/rules.rbi +233 -0
  153. data/rbi/openlayer/resources/governance.rbi +27 -0
  154. data/rbi/openlayer/resources/projects.rbi +46 -0
  155. data/rbi/openlayer/resources/storage/presigned_url.rbi +23 -0
  156. data/sig/openlayer/client.rbs +4 -0
  157. data/sig/openlayer/models/background_task_retrieve_params.rbs +23 -0
  158. data/sig/openlayer/models/background_task_retrieve_response.rbs +55 -0
  159. data/sig/openlayer/models/governance/framework_create_params.rbs +124 -0
  160. data/sig/openlayer/models/governance/framework_create_response.rbs +293 -0
  161. data/sig/openlayer/models/governance/framework_export_params.rbs +30 -0
  162. data/sig/openlayer/models/governance/framework_export_response.rbs +21 -0
  163. data/sig/openlayer/models/governance/framework_list_params.rbs +145 -0
  164. data/sig/openlayer/models/governance/framework_list_project_rule_stats_params.rbs +87 -0
  165. data/sig/openlayer/models/governance/framework_list_project_rule_stats_response.rbs +232 -0
  166. data/sig/openlayer/models/governance/framework_list_projects_params.rbs +38 -0
  167. data/sig/openlayer/models/governance/framework_list_projects_response.rbs +248 -0
  168. data/sig/openlayer/models/governance/framework_list_response.rbs +314 -0
  169. data/sig/openlayer/models/governance/framework_list_rules_params.rbs +38 -0
  170. data/sig/openlayer/models/governance/framework_list_rules_response.rbs +547 -0
  171. data/sig/openlayer/models/governance/framework_retrieve_params.rbs +25 -0
  172. data/sig/openlayer/models/governance/framework_retrieve_response.rbs +293 -0
  173. data/sig/openlayer/models/governance/framework_update_params.rbs +175 -0
  174. data/sig/openlayer/models/governance/framework_update_response.rbs +293 -0
  175. data/sig/openlayer/models/governance/frameworks/document_list_params.rbs +40 -0
  176. data/sig/openlayer/models/governance/frameworks/document_list_response.rbs +435 -0
  177. data/sig/openlayer/models/governance/frameworks/document_retrieve_params.rbs +32 -0
  178. data/sig/openlayer/models/governance/frameworks/document_retrieve_response.rbs +418 -0
  179. data/sig/openlayer/models/governance/frameworks/section_list_rules_params.rbs +102 -0
  180. data/sig/openlayer/models/governance/frameworks/section_list_rules_response.rbs +549 -0
  181. data/sig/openlayer/models/governance/frameworks/subsection_list_rules_params.rbs +95 -0
  182. data/sig/openlayer/models/governance/frameworks/subsection_list_rules_response.rbs +549 -0
  183. data/sig/openlayer/models/governance/rule_create_params.rbs +120 -0
  184. data/sig/openlayer/models/governance/rule_create_response.rbs +530 -0
  185. data/sig/openlayer/models/governance/rule_delete_params.rbs +25 -0
  186. data/sig/openlayer/models/governance/rule_list_params.rbs +228 -0
  187. data/sig/openlayer/models/governance/rule_list_response.rbs +547 -0
  188. data/sig/openlayer/models/governance/rule_result_create_evidence_params.rbs +53 -0
  189. data/sig/openlayer/models/governance/rule_result_create_evidence_response.rbs +62 -0
  190. data/sig/openlayer/models/governance/rule_result_list_evidence_params.rbs +38 -0
  191. data/sig/openlayer/models/governance/rule_result_list_evidence_response.rbs +79 -0
  192. data/sig/openlayer/models/governance/rule_result_list_params.rbs +156 -0
  193. data/sig/openlayer/models/governance/rule_result_list_response.rbs +252 -0
  194. data/sig/openlayer/models/governance/rule_result_retrieve_params.rbs +26 -0
  195. data/sig/openlayer/models/governance/rule_result_retrieve_response.rbs +235 -0
  196. data/sig/openlayer/models/governance/rule_result_update_params.rbs +165 -0
  197. data/sig/openlayer/models/governance/rule_result_update_response.rbs +235 -0
  198. data/sig/openlayer/models/governance/rule_retrieve_params.rbs +25 -0
  199. data/sig/openlayer/models/governance/rule_retrieve_response.rbs +530 -0
  200. data/sig/openlayer/models/governance/rule_stat_retrieve_params.rbs +38 -0
  201. data/sig/openlayer/models/governance/rule_stat_retrieve_response.rbs +434 -0
  202. data/sig/openlayer/models/governance/rule_tag_list_params.rbs +38 -0
  203. data/sig/openlayer/models/governance/rule_tag_list_response.rbs +74 -0
  204. data/sig/openlayer/models/governance/rule_update_params.rbs +62 -0
  205. data/sig/openlayer/models/governance/rule_update_response.rbs +530 -0
  206. data/sig/openlayer/models/inference_pipeline_retrieve_response.rbs +24 -5
  207. data/sig/openlayer/models/inference_pipeline_update_response.rbs +24 -5
  208. data/sig/openlayer/models/project_create_params.rbs +21 -1
  209. data/sig/openlayer/models/project_create_response.rbs +24 -5
  210. data/sig/openlayer/models/project_list_response.rbs +24 -5
  211. data/sig/openlayer/models/project_update_params.rbs +58 -0
  212. data/sig/openlayer/models/project_update_response.rbs +229 -0
  213. data/sig/openlayer/models/projects/inference_pipeline_create_params.rbs +24 -5
  214. data/sig/openlayer/models/projects/inference_pipeline_create_response.rbs +24 -5
  215. data/sig/openlayer/models/projects/inference_pipeline_list_response.rbs +24 -5
  216. data/sig/openlayer/models/storage/presigned_url_retrieve_params.rbs +25 -0
  217. data/sig/openlayer/models/storage/presigned_url_retrieve_response.rbs +15 -0
  218. data/sig/openlayer/models.rbs +6 -0
  219. data/sig/openlayer/resources/background_tasks.rbs +12 -0
  220. data/sig/openlayer/resources/governance/frameworks/documents.rbs +24 -0
  221. data/sig/openlayer/resources/governance/frameworks/sections.rbs +23 -0
  222. data/sig/openlayer/resources/governance/frameworks/subsections.rbs +22 -0
  223. data/sig/openlayer/resources/governance/frameworks.rbs +88 -0
  224. data/sig/openlayer/resources/governance/rule_results.rbs +57 -0
  225. data/sig/openlayer/resources/governance/rule_stats.rbs +16 -0
  226. data/sig/openlayer/resources/governance/rule_tags.rbs +16 -0
  227. data/sig/openlayer/resources/governance/rules.rbs +68 -0
  228. data/sig/openlayer/resources/governance.rbs +17 -0
  229. data/sig/openlayer/resources/projects.rbs +15 -0
  230. data/sig/openlayer/resources/storage/presigned_url.rbs +5 -0
  231. metadata +191 -2
@@ -0,0 +1,407 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Openlayer
4
+ module Models
5
+ module Governance
6
+ # @see Openlayer::Resources::Governance::Frameworks#retrieve
7
+ class FrameworkRetrieveResponse < Openlayer::Internal::Type::BaseModel
8
+ # @!attribute enabled
9
+ # Whether the framework is active. Rules of a disabled framework are not evaluated
10
+ # and do not count towards compliance.
11
+ #
12
+ # @return [Boolean]
13
+ required :enabled, Openlayer::Internal::Type::Boolean
14
+
15
+ # @!attribute name
16
+ # The framework name.
17
+ #
18
+ # @return [String]
19
+ required :name, String
20
+
21
+ # @!attribute tags
22
+ # Free-form labels on the framework.
23
+ #
24
+ # @return [Array<String>]
25
+ required :tags, Openlayer::Internal::Type::ArrayOf[String]
26
+
27
+ # @!attribute avatar
28
+ # The icon shown for the framework.
29
+ #
30
+ # @return [Openlayer::Models::Governance::FrameworkRetrieveResponse::Avatar, nil]
31
+ optional :avatar, -> { Openlayer::Models::Governance::FrameworkRetrieveResponse::Avatar }, nil?: true
32
+
33
+ # @!attribute built_in_slug
34
+ # Identifies a framework that ships with Openlayer, for example `eu_ai_act`,
35
+ # `iso_42001`, `nist_ai_rmf`, or `traiga`. `null` for frameworks you create
36
+ # yourself.
37
+ #
38
+ # @return [String, nil]
39
+ optional :built_in_slug, String, api_name: :builtInSlug, nil?: true
40
+
41
+ # @!attribute description
42
+ # A short description of the framework.
43
+ #
44
+ # @return [String, nil]
45
+ optional :description, String, nil?: true
46
+
47
+ # @!attribute extended_description
48
+ # A longer, rich-text description, as a TipTap JSON document.
49
+ #
50
+ # @return [Hash{Symbol=>Object}, nil]
51
+ optional :extended_description,
52
+ Openlayer::Internal::Type::HashOf[Openlayer::Internal::Type::Unknown],
53
+ api_name: :extendedDescription,
54
+ nil?: true
55
+
56
+ # @!attribute href
57
+ # A link to the external standard or regulation the framework is based on.
58
+ #
59
+ # @return [String, nil]
60
+ optional :href, String, nil?: true
61
+
62
+ # @!attribute project_selector
63
+ # Determines which projects the framework applies to. An empty or `null` `match`
64
+ # array applies the framework to every project in the workspace.
65
+ #
66
+ # @return [Openlayer::Models::Governance::FrameworkRetrieveResponse::ProjectSelector, nil]
67
+ optional :project_selector,
68
+ -> { Openlayer::Models::Governance::FrameworkRetrieveResponse::ProjectSelector },
69
+ api_name: :projectSelector,
70
+ nil?: true
71
+
72
+ response_only do
73
+ # @!attribute id
74
+ # The framework id.
75
+ #
76
+ # @return [String]
77
+ required :id, String
78
+
79
+ # @!attribute date_created
80
+ # The creation date.
81
+ #
82
+ # @return [Time]
83
+ required :date_created, Time, api_name: :dateCreated
84
+
85
+ # @!attribute date_updated
86
+ # The last update date.
87
+ #
88
+ # @return [Time]
89
+ required :date_updated, Time, api_name: :dateUpdated
90
+
91
+ # @!attribute workspace_id
92
+ # The id of the workspace the framework belongs to.
93
+ #
94
+ # @return [String]
95
+ required :workspace_id, String, api_name: :workspaceId
96
+
97
+ # @!attribute creator_id
98
+ # The user who created the framework. `null` for built-in frameworks.
99
+ #
100
+ # @return [String, nil]
101
+ optional :creator_id, String, api_name: :creatorId, nil?: true
102
+
103
+ # @!attribute immutable
104
+ # Whether the framework definition is managed by Openlayer and cannot be edited.
105
+ #
106
+ # @return [Boolean, nil]
107
+ optional :immutable, Openlayer::Internal::Type::Boolean
108
+
109
+ # @!attribute rule_stats
110
+ # Compliance roll-up for the framework. Present only on
111
+ # `GET /workspaces/{workspaceId}/frameworks` when the request sets
112
+ # `includeRuleStats=true`.
113
+ #
114
+ # @return [Openlayer::Models::Governance::FrameworkRetrieveResponse::RuleStats, nil]
115
+ optional :rule_stats,
116
+ -> { Openlayer::Models::Governance::FrameworkRetrieveResponse::RuleStats },
117
+ api_name: :ruleStats
118
+ end
119
+
120
+ # @!method initialize(id:, date_created:, date_updated:, enabled:, name:, tags:, workspace_id:, avatar: nil, built_in_slug: nil, creator_id: nil, description: nil, extended_description: nil, href: nil, immutable: nil, project_selector: nil, rule_stats: nil)
121
+ # Some parameter documentations has been truncated, see
122
+ # {Openlayer::Models::Governance::FrameworkRetrieveResponse} for more details.
123
+ #
124
+ # @param id [String] The framework id.
125
+ #
126
+ # @param date_created [Time] The creation date.
127
+ #
128
+ # @param date_updated [Time] The last update date.
129
+ #
130
+ # @param enabled [Boolean] Whether the framework is active. Rules of a disabled framework are not evaluated
131
+ #
132
+ # @param name [String] The framework name.
133
+ #
134
+ # @param tags [Array<String>] Free-form labels on the framework.
135
+ #
136
+ # @param workspace_id [String] The id of the workspace the framework belongs to.
137
+ #
138
+ # @param avatar [Openlayer::Models::Governance::FrameworkRetrieveResponse::Avatar, nil] The icon shown for the framework.
139
+ #
140
+ # @param built_in_slug [String, nil] Identifies a framework that ships with Openlayer, for example `eu_ai_act`,
141
+ # `iso\_
142
+ #
143
+ # @param creator_id [String, nil] The user who created the framework. `null` for built-in frameworks.
144
+ #
145
+ # @param description [String, nil] A short description of the framework.
146
+ #
147
+ # @param extended_description [Hash{Symbol=>Object}, nil] A longer, rich-text description, as a TipTap JSON document.
148
+ #
149
+ # @param href [String, nil] A link to the external standard or regulation the framework is based on.
150
+ #
151
+ # @param immutable [Boolean] Whether the framework definition is managed by Openlayer and cannot be edited.
152
+ #
153
+ # @param project_selector [Openlayer::Models::Governance::FrameworkRetrieveResponse::ProjectSelector, nil] Determines which projects the framework applies to. An empty or `null` `match` a
154
+ #
155
+ # @param rule_stats [Openlayer::Models::Governance::FrameworkRetrieveResponse::RuleStats] Compliance roll-up for the framework. Present only on `GET /workspaces/{workspac
156
+
157
+ # @see Openlayer::Models::Governance::FrameworkRetrieveResponse#avatar
158
+ class Avatar < Openlayer::Internal::Type::BaseModel
159
+ # @!attribute type
160
+ #
161
+ # @return [Symbol, Openlayer::Models::Governance::FrameworkRetrieveResponse::Avatar::Type]
162
+ required :type, enum: -> { Openlayer::Models::Governance::FrameworkRetrieveResponse::Avatar::Type }
163
+
164
+ # @!attribute value
165
+ #
166
+ # @return [String]
167
+ required :value, String
168
+
169
+ # @!method initialize(type:, value:)
170
+ # The icon shown for the framework.
171
+ #
172
+ # @param type [Symbol, Openlayer::Models::Governance::FrameworkRetrieveResponse::Avatar::Type]
173
+ # @param value [String]
174
+
175
+ # @see Openlayer::Models::Governance::FrameworkRetrieveResponse::Avatar#type
176
+ module Type
177
+ extend Openlayer::Internal::Type::Enum
178
+
179
+ EMOJI = :emoji
180
+ IMAGE_URL = :imageUrl
181
+ BUILTIN_IMAGE = :builtinImage
182
+
183
+ # @!method self.values
184
+ # @return [Array<Symbol>]
185
+ end
186
+ end
187
+
188
+ # @see Openlayer::Models::Governance::FrameworkRetrieveResponse#project_selector
189
+ class ProjectSelector < Openlayer::Internal::Type::BaseModel
190
+ # @!attribute match
191
+ # Match criteria, ANDed together.
192
+ #
193
+ # @return [Array<Openlayer::Models::Governance::FrameworkRetrieveResponse::ProjectSelector::Match>, nil]
194
+ optional :match,
195
+ -> { Openlayer::Internal::Type::ArrayOf[Openlayer::Models::Governance::FrameworkRetrieveResponse::ProjectSelector::Match] },
196
+ nil?: true
197
+
198
+ # @!method initialize(match: nil)
199
+ # Determines which projects the framework applies to. An empty or `null` `match`
200
+ # array applies the framework to every project in the workspace.
201
+ #
202
+ # @param match [Array<Openlayer::Models::Governance::FrameworkRetrieveResponse::ProjectSelector::Match>, nil] Match criteria, ANDed together.
203
+
204
+ class Match < Openlayer::Internal::Type::BaseModel
205
+ # @!attribute property
206
+ # The project property to match against.
207
+ #
208
+ # @return [Symbol, Openlayer::Models::Governance::FrameworkRetrieveResponse::ProjectSelector::Match::Property]
209
+ required :property,
210
+ enum: -> { Openlayer::Models::Governance::FrameworkRetrieveResponse::ProjectSelector::Match::Property }
211
+
212
+ # @!attribute value
213
+ # The value to match against. Pass an array to match any of several values, or
214
+ # `null` to match projects where the property is unset. Omit it for `exists` and
215
+ # `notExists`.
216
+ #
217
+ # @return [Object]
218
+ required :value, Openlayer::Internal::Type::Unknown
219
+
220
+ # @!attribute operator
221
+ # How to compare the project property with `value`. One of `equals`, `notEquals`,
222
+ # `contains`, `notContains`, `startsWith`, `endsWith`, `in`, `notIn`,
223
+ # `greaterThan`, `greaterThanOrEqual`, `lessThan`, `lessThanOrEqual`,
224
+ # `equalsIgnoreCase`, `containsIgnoreCase`, `matches`, `exists`, or `notExists`.
225
+ #
226
+ # @return [String, nil]
227
+ optional :operator, String
228
+
229
+ # @!method initialize(property:, value:, operator: nil)
230
+ # Some parameter documentations has been truncated, see
231
+ # {Openlayer::Models::Governance::FrameworkRetrieveResponse::ProjectSelector::Match}
232
+ # for more details.
233
+ #
234
+ # @param property [Symbol, Openlayer::Models::Governance::FrameworkRetrieveResponse::ProjectSelector::Match::Property] The project property to match against.
235
+ #
236
+ # @param value [Object] The value to match against. Pass an array to match any of several values, or `nu
237
+ #
238
+ # @param operator [String] How to compare the project property with `value`. One of `equals`, `notEquals`,
239
+
240
+ # The project property to match against.
241
+ #
242
+ # @see Openlayer::Models::Governance::FrameworkRetrieveResponse::ProjectSelector::Match#property
243
+ module Property
244
+ extend Openlayer::Internal::Type::Enum
245
+
246
+ TASK_TYPE = :taskType
247
+ RISK_LEVEL = :riskLevel
248
+ RISK_TOTAL_SCORE = :riskTotalScore
249
+ NAME = :name
250
+ OWNER_ID = :ownerId
251
+ MODEL_TYPES = :modelTypes
252
+
253
+ # @!method self.values
254
+ # @return [Array<Symbol>]
255
+ end
256
+ end
257
+ end
258
+
259
+ # @see Openlayer::Models::Governance::FrameworkRetrieveResponse#rule_stats
260
+ class RuleStats < Openlayer::Internal::Type::BaseModel
261
+ # @!attribute project_completion
262
+ # How many of the framework's projects fall into each completion band, where a
263
+ # project's completion is the share of its rule results that are passing or
264
+ # skipped. Projects with no evaluated results count as `low`.
265
+ #
266
+ # Zeroed when the request carries `projectId`: the bands compare a framework's
267
+ # projects against each other, which says nothing about a single project.
268
+ #
269
+ # @return [Openlayer::Models::Governance::FrameworkRetrieveResponse::RuleStats::ProjectCompletion]
270
+ required :project_completion,
271
+ -> { Openlayer::Models::Governance::FrameworkRetrieveResponse::RuleStats::ProjectCompletion },
272
+ api_name: :projectCompletion
273
+
274
+ # @!attribute rule_results
275
+ # Rule result counts by status for this framework, matching what
276
+ # `/workspaces/{workspaceId}/rule-stats?frameworkId=<id>` reports. Narrowed to a
277
+ # single project when the request also carries `projectId`.
278
+ #
279
+ # @return [Openlayer::Models::Governance::FrameworkRetrieveResponse::RuleStats::RuleResults]
280
+ required :rule_results,
281
+ -> { Openlayer::Models::Governance::FrameworkRetrieveResponse::RuleStats::RuleResults },
282
+ api_name: :ruleResults
283
+
284
+ # @!method initialize(project_completion:, rule_results:)
285
+ # Some parameter documentations has been truncated, see
286
+ # {Openlayer::Models::Governance::FrameworkRetrieveResponse::RuleStats} for more
287
+ # details.
288
+ #
289
+ # Compliance roll-up for the framework. Present only on
290
+ # `GET /workspaces/{workspaceId}/frameworks` when the request sets
291
+ # `includeRuleStats=true`.
292
+ #
293
+ # @param project_completion [Openlayer::Models::Governance::FrameworkRetrieveResponse::RuleStats::ProjectCompletion] How many of the framework's projects fall into each completion band, where a pro
294
+ #
295
+ # @param rule_results [Openlayer::Models::Governance::FrameworkRetrieveResponse::RuleStats::RuleResults] Rule result counts by status for this framework, matching what `/workspaces/{wor
296
+
297
+ # @see Openlayer::Models::Governance::FrameworkRetrieveResponse::RuleStats#project_completion
298
+ class ProjectCompletion < Openlayer::Internal::Type::BaseModel
299
+ # @!attribute high
300
+ # Projects at 80% completion or above.
301
+ #
302
+ # @return [Integer]
303
+ required :high, Integer
304
+
305
+ # @!attribute low
306
+ # Projects below 20% completion.
307
+ #
308
+ # @return [Integer]
309
+ required :low, Integer
310
+
311
+ # @!attribute mid
312
+ # Projects at or above 20% but below 80% completion.
313
+ #
314
+ # @return [Integer]
315
+ required :mid, Integer
316
+
317
+ # @!method initialize(high:, low:, mid:)
318
+ # How many of the framework's projects fall into each completion band, where a
319
+ # project's completion is the share of its rule results that are passing or
320
+ # skipped. Projects with no evaluated results count as `low`.
321
+ #
322
+ # Zeroed when the request carries `projectId`: the bands compare a framework's
323
+ # projects against each other, which says nothing about a single project.
324
+ #
325
+ # @param high [Integer] Projects at 80% completion or above.
326
+ #
327
+ # @param low [Integer] Projects below 20% completion.
328
+ #
329
+ # @param mid [Integer] Projects at or above 20% but below 80% completion.
330
+ end
331
+
332
+ # @see Openlayer::Models::Governance::FrameworkRetrieveResponse::RuleStats#rule_results
333
+ class RuleResults < Openlayer::Internal::Type::BaseModel
334
+ # @!attribute total
335
+ # The total number of rule results.
336
+ #
337
+ # @return [Integer]
338
+ required :total, Integer
339
+
340
+ # @!attribute total_due_soon
341
+ # The number of rule results whose evidence is about to expire.
342
+ #
343
+ # @return [Integer]
344
+ required :total_due_soon, Integer, api_name: :totalDueSoon
345
+
346
+ # @!attribute total_error
347
+ # The number of rule results that errored during evaluation.
348
+ #
349
+ # @return [Integer]
350
+ required :total_error, Integer, api_name: :totalError
351
+
352
+ # @!attribute total_failing
353
+ # The number of failing rule results.
354
+ #
355
+ # @return [Integer]
356
+ required :total_failing, Integer, api_name: :totalFailing
357
+
358
+ # @!attribute total_passing
359
+ # The number of passing rule results.
360
+ #
361
+ # @return [Integer]
362
+ required :total_passing, Integer, api_name: :totalPassing
363
+
364
+ # @!attribute total_pending
365
+ # The number of rule results that have not been satisfied yet.
366
+ #
367
+ # @return [Integer]
368
+ required :total_pending, Integer, api_name: :totalPending
369
+
370
+ # @!attribute total_running
371
+ # The number of rule results currently being evaluated.
372
+ #
373
+ # @return [Integer]
374
+ required :total_running, Integer, api_name: :totalRunning
375
+
376
+ # @!attribute total_skipped
377
+ # The number of skipped rule results.
378
+ #
379
+ # @return [Integer]
380
+ required :total_skipped, Integer, api_name: :totalSkipped
381
+
382
+ # @!method initialize(total:, total_due_soon:, total_error:, total_failing:, total_passing:, total_pending:, total_running:, total_skipped:)
383
+ # Rule result counts by status for this framework, matching what
384
+ # `/workspaces/{workspaceId}/rule-stats?frameworkId=<id>` reports. Narrowed to a
385
+ # single project when the request also carries `projectId`.
386
+ #
387
+ # @param total [Integer] The total number of rule results.
388
+ #
389
+ # @param total_due_soon [Integer] The number of rule results whose evidence is about to expire.
390
+ #
391
+ # @param total_error [Integer] The number of rule results that errored during evaluation.
392
+ #
393
+ # @param total_failing [Integer] The number of failing rule results.
394
+ #
395
+ # @param total_passing [Integer] The number of passing rule results.
396
+ #
397
+ # @param total_pending [Integer] The number of rule results that have not been satisfied yet.
398
+ #
399
+ # @param total_running [Integer] The number of rule results currently being evaluated.
400
+ #
401
+ # @param total_skipped [Integer] The number of skipped rule results.
402
+ end
403
+ end
404
+ end
405
+ end
406
+ end
407
+ end
@@ -0,0 +1,200 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Openlayer
4
+ module Models
5
+ module Governance
6
+ # @see Openlayer::Resources::Governance::Frameworks#update
7
+ class FrameworkUpdateParams < Openlayer::Internal::Type::BaseModel
8
+ extend Openlayer::Internal::Type::RequestParameters::Converter
9
+ include Openlayer::Internal::Type::RequestParameters
10
+
11
+ # @!attribute framework_id
12
+ #
13
+ # @return [String]
14
+ required :framework_id, String
15
+
16
+ # @!attribute avatar
17
+ # The icon shown for the framework.
18
+ #
19
+ # @return [Openlayer::Models::Governance::FrameworkUpdateParams::Avatar, nil]
20
+ optional :avatar, -> { Openlayer::Governance::FrameworkUpdateParams::Avatar }, nil?: true
21
+
22
+ # @!attribute description
23
+ # A short description of the framework.
24
+ #
25
+ # @return [String, nil]
26
+ optional :description, String, nil?: true
27
+
28
+ # @!attribute enabled
29
+ # Whether the framework is active. Rules of a disabled framework are not evaluated
30
+ # and do not count towards compliance.
31
+ #
32
+ # @return [Boolean, nil]
33
+ optional :enabled, Openlayer::Internal::Type::Boolean
34
+
35
+ # @!attribute extended_description
36
+ # A longer, rich-text description, as a TipTap JSON document.
37
+ #
38
+ # @return [Hash{Symbol=>Object}, nil]
39
+ optional :extended_description,
40
+ Openlayer::Internal::Type::HashOf[Openlayer::Internal::Type::Unknown],
41
+ api_name: :extendedDescription,
42
+ nil?: true
43
+
44
+ # @!attribute href
45
+ # A link to the external standard or regulation the framework is based on.
46
+ #
47
+ # @return [String, nil]
48
+ optional :href, String, nil?: true
49
+
50
+ # @!attribute name
51
+ # The framework name.
52
+ #
53
+ # @return [String, nil]
54
+ optional :name, String
55
+
56
+ # @!attribute project_selector
57
+ # Determines which projects the framework applies to. An empty or `null` `match`
58
+ # array applies the framework to every project in the workspace.
59
+ #
60
+ # @return [Openlayer::Models::Governance::FrameworkUpdateParams::ProjectSelector, nil]
61
+ optional :project_selector,
62
+ -> { Openlayer::Governance::FrameworkUpdateParams::ProjectSelector },
63
+ api_name: :projectSelector,
64
+ nil?: true
65
+
66
+ # @!attribute tags
67
+ # Free-form labels on the framework.
68
+ #
69
+ # @return [Array<String>, nil]
70
+ optional :tags, Openlayer::Internal::Type::ArrayOf[String]
71
+
72
+ # @!method initialize(framework_id:, avatar: nil, description: nil, enabled: nil, extended_description: nil, href: nil, name: nil, project_selector: nil, tags: nil, request_options: {})
73
+ # Some parameter documentations has been truncated, see
74
+ # {Openlayer::Models::Governance::FrameworkUpdateParams} for more details.
75
+ #
76
+ # @param framework_id [String]
77
+ #
78
+ # @param avatar [Openlayer::Models::Governance::FrameworkUpdateParams::Avatar, nil] The icon shown for the framework.
79
+ #
80
+ # @param description [String, nil] A short description of the framework.
81
+ #
82
+ # @param enabled [Boolean] Whether the framework is active. Rules of a disabled framework are not evaluated
83
+ #
84
+ # @param extended_description [Hash{Symbol=>Object}, nil] A longer, rich-text description, as a TipTap JSON document.
85
+ #
86
+ # @param href [String, nil] A link to the external standard or regulation the framework is based on.
87
+ #
88
+ # @param name [String] The framework name.
89
+ #
90
+ # @param project_selector [Openlayer::Models::Governance::FrameworkUpdateParams::ProjectSelector, nil] Determines which projects the framework applies to. An empty or `null` `match` a
91
+ #
92
+ # @param tags [Array<String>] Free-form labels on the framework.
93
+ #
94
+ # @param request_options [Openlayer::RequestOptions, Hash{Symbol=>Object}]
95
+
96
+ class Avatar < Openlayer::Internal::Type::BaseModel
97
+ # @!attribute type
98
+ #
99
+ # @return [Symbol, Openlayer::Models::Governance::FrameworkUpdateParams::Avatar::Type]
100
+ required :type, enum: -> { Openlayer::Governance::FrameworkUpdateParams::Avatar::Type }
101
+
102
+ # @!attribute value
103
+ #
104
+ # @return [String]
105
+ required :value, String
106
+
107
+ # @!method initialize(type:, value:)
108
+ # The icon shown for the framework.
109
+ #
110
+ # @param type [Symbol, Openlayer::Models::Governance::FrameworkUpdateParams::Avatar::Type]
111
+ # @param value [String]
112
+
113
+ # @see Openlayer::Models::Governance::FrameworkUpdateParams::Avatar#type
114
+ module Type
115
+ extend Openlayer::Internal::Type::Enum
116
+
117
+ EMOJI = :emoji
118
+ IMAGE_URL = :imageUrl
119
+ BUILTIN_IMAGE = :builtinImage
120
+
121
+ # @!method self.values
122
+ # @return [Array<Symbol>]
123
+ end
124
+ end
125
+
126
+ class ProjectSelector < Openlayer::Internal::Type::BaseModel
127
+ # @!attribute match
128
+ # Match criteria, ANDed together.
129
+ #
130
+ # @return [Array<Openlayer::Models::Governance::FrameworkUpdateParams::ProjectSelector::Match>, nil]
131
+ optional :match,
132
+ -> {
133
+ Openlayer::Internal::Type::ArrayOf[Openlayer::Governance::FrameworkUpdateParams::ProjectSelector::Match]
134
+ },
135
+ nil?: true
136
+
137
+ # @!method initialize(match: nil)
138
+ # Determines which projects the framework applies to. An empty or `null` `match`
139
+ # array applies the framework to every project in the workspace.
140
+ #
141
+ # @param match [Array<Openlayer::Models::Governance::FrameworkUpdateParams::ProjectSelector::Match>, nil] Match criteria, ANDed together.
142
+
143
+ class Match < Openlayer::Internal::Type::BaseModel
144
+ # @!attribute property
145
+ # The project property to match against.
146
+ #
147
+ # @return [Symbol, Openlayer::Models::Governance::FrameworkUpdateParams::ProjectSelector::Match::Property]
148
+ required :property,
149
+ enum: -> { Openlayer::Governance::FrameworkUpdateParams::ProjectSelector::Match::Property }
150
+
151
+ # @!attribute value
152
+ # The value to match against. Pass an array to match any of several values, or
153
+ # `null` to match projects where the property is unset. Omit it for `exists` and
154
+ # `notExists`.
155
+ #
156
+ # @return [Object]
157
+ required :value, Openlayer::Internal::Type::Unknown
158
+
159
+ # @!attribute operator
160
+ # How to compare the project property with `value`. One of `equals`, `notEquals`,
161
+ # `contains`, `notContains`, `startsWith`, `endsWith`, `in`, `notIn`,
162
+ # `greaterThan`, `greaterThanOrEqual`, `lessThan`, `lessThanOrEqual`,
163
+ # `equalsIgnoreCase`, `containsIgnoreCase`, `matches`, `exists`, or `notExists`.
164
+ #
165
+ # @return [String, nil]
166
+ optional :operator, String
167
+
168
+ # @!method initialize(property:, value:, operator: nil)
169
+ # Some parameter documentations has been truncated, see
170
+ # {Openlayer::Models::Governance::FrameworkUpdateParams::ProjectSelector::Match}
171
+ # for more details.
172
+ #
173
+ # @param property [Symbol, Openlayer::Models::Governance::FrameworkUpdateParams::ProjectSelector::Match::Property] The project property to match against.
174
+ #
175
+ # @param value [Object] The value to match against. Pass an array to match any of several values, or `nu
176
+ #
177
+ # @param operator [String] How to compare the project property with `value`. One of `equals`, `notEquals`,
178
+
179
+ # The project property to match against.
180
+ #
181
+ # @see Openlayer::Models::Governance::FrameworkUpdateParams::ProjectSelector::Match#property
182
+ module Property
183
+ extend Openlayer::Internal::Type::Enum
184
+
185
+ TASK_TYPE = :taskType
186
+ RISK_LEVEL = :riskLevel
187
+ RISK_TOTAL_SCORE = :riskTotalScore
188
+ NAME = :name
189
+ OWNER_ID = :ownerId
190
+ MODEL_TYPES = :modelTypes
191
+
192
+ # @!method self.values
193
+ # @return [Array<Symbol>]
194
+ end
195
+ end
196
+ end
197
+ end
198
+ end
199
+ end
200
+ end