openlayer 0.3.0 → 0.4.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 (230) hide show
  1. checksums.yaml +4 -4
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +23 -0
  4. data/README.md +280 -39
  5. data/SECURITY.md +27 -0
  6. data/lib/openlayer/client.rb +64 -59
  7. data/lib/openlayer/errors.rb +228 -0
  8. data/lib/openlayer/file_part.rb +58 -0
  9. data/lib/openlayer/internal/transport/base_client.rb +567 -0
  10. data/lib/openlayer/internal/transport/pooled_net_requester.rb +198 -0
  11. data/lib/openlayer/internal/type/array_of.rb +168 -0
  12. data/lib/openlayer/internal/type/base_model.rb +531 -0
  13. data/lib/openlayer/internal/type/base_page.rb +55 -0
  14. data/lib/openlayer/internal/type/boolean.rb +77 -0
  15. data/lib/openlayer/internal/type/converter.rb +327 -0
  16. data/lib/openlayer/internal/type/enum.rb +131 -0
  17. data/lib/openlayer/internal/type/file_input.rb +111 -0
  18. data/lib/openlayer/internal/type/hash_of.rb +188 -0
  19. data/lib/openlayer/internal/type/request_parameters.rb +42 -0
  20. data/lib/openlayer/internal/type/union.rb +237 -0
  21. data/lib/openlayer/internal/type/unknown.rb +81 -0
  22. data/lib/openlayer/internal/util.rb +915 -0
  23. data/lib/openlayer/internal.rb +20 -0
  24. data/lib/openlayer/models/commit_retrieve_params.rb +14 -0
  25. data/lib/openlayer/models/commit_retrieve_response.rb +275 -0
  26. data/lib/openlayer/models/commits/test_result_list_params.rb +91 -0
  27. data/lib/openlayer/models/commits/test_result_list_response.rb +566 -0
  28. data/lib/openlayer/models/inference_pipeline_delete_params.rb +14 -0
  29. data/lib/openlayer/models/inference_pipeline_retrieve_params.rb +33 -0
  30. data/lib/openlayer/models/inference_pipeline_retrieve_response.rb +605 -0
  31. data/lib/openlayer/models/inference_pipeline_update_params.rb +42 -0
  32. data/lib/openlayer/models/inference_pipeline_update_response.rb +605 -0
  33. data/lib/openlayer/models/inference_pipelines/data_stream_params.rb +463 -0
  34. data/lib/openlayer/models/inference_pipelines/data_stream_response.rb +28 -0
  35. data/lib/openlayer/models/inference_pipelines/row_update_params.rb +90 -0
  36. data/lib/openlayer/models/inference_pipelines/row_update_response.rb +28 -0
  37. data/lib/openlayer/models/inference_pipelines/test_result_list_params.rb +83 -0
  38. data/lib/openlayer/models/inference_pipelines/test_result_list_response.rb +568 -0
  39. data/lib/openlayer/models/project_create_params.rb +51 -0
  40. data/lib/openlayer/models/project_create_response.rb +262 -0
  41. data/lib/openlayer/models/project_list_params.rb +59 -0
  42. data/lib/openlayer/models/project_list_response.rb +274 -0
  43. data/lib/openlayer/models/projects/commit_create_params.rb +61 -0
  44. data/lib/openlayer/models/projects/commit_create_response.rb +277 -0
  45. data/lib/openlayer/models/projects/commit_list_params.rb +32 -0
  46. data/lib/openlayer/models/projects/commit_list_response.rb +288 -0
  47. data/lib/openlayer/models/projects/inference_pipeline_create_params.rb +229 -0
  48. data/lib/openlayer/models/projects/inference_pipeline_create_response.rb +612 -0
  49. data/lib/openlayer/models/projects/inference_pipeline_list_params.rb +40 -0
  50. data/lib/openlayer/models/projects/inference_pipeline_list_response.rb +623 -0
  51. data/lib/openlayer/models/projects/test_create_params.rb +367 -0
  52. data/lib/openlayer/models/projects/test_create_response.rb +438 -0
  53. data/lib/openlayer/models/projects/test_list_params.rb +91 -0
  54. data/lib/openlayer/models/projects/test_list_response.rb +452 -0
  55. data/lib/openlayer/models/projects/test_update_params.rb +262 -0
  56. data/lib/openlayer/models/projects/test_update_response.rb +24 -0
  57. data/lib/openlayer/models/storage/presigned_url_create_params.rb +24 -0
  58. data/lib/openlayer/models/storage/presigned_url_create_response.rb +35 -0
  59. data/lib/openlayer/models.rb +61 -0
  60. data/lib/openlayer/request_options.rb +77 -0
  61. data/lib/openlayer/resources/commits/test_results.rb +51 -0
  62. data/lib/openlayer/resources/commits.rb +38 -0
  63. data/lib/openlayer/resources/inference_pipelines/data.rb +46 -0
  64. data/lib/openlayer/resources/inference_pipelines/rows.rb +46 -0
  65. data/lib/openlayer/resources/inference_pipelines/test_results.rb +49 -0
  66. data/lib/openlayer/resources/inference_pipelines.rb +101 -0
  67. data/lib/openlayer/resources/projects/commits.rb +72 -0
  68. data/lib/openlayer/resources/projects/inference_pipelines.rb +74 -0
  69. data/lib/openlayer/resources/projects/tests.rb +135 -0
  70. data/lib/openlayer/resources/projects.rb +80 -0
  71. data/lib/openlayer/resources/storage/presigned_url.rb +38 -0
  72. data/lib/openlayer/resources/storage.rb +18 -0
  73. data/lib/openlayer/version.rb +1 -1
  74. data/lib/openlayer.rb +96 -12
  75. data/manifest.yaml +15 -0
  76. data/rbi/openlayer/client.rbi +58 -0
  77. data/rbi/openlayer/errors.rbi +205 -0
  78. data/rbi/openlayer/file_part.rbi +37 -0
  79. data/rbi/openlayer/internal/transport/base_client.rbi +293 -0
  80. data/rbi/openlayer/internal/transport/pooled_net_requester.rbi +79 -0
  81. data/rbi/openlayer/internal/type/array_of.rbi +104 -0
  82. data/rbi/openlayer/internal/type/base_model.rbi +304 -0
  83. data/rbi/openlayer/internal/type/base_page.rbi +42 -0
  84. data/rbi/openlayer/internal/type/boolean.rbi +58 -0
  85. data/rbi/openlayer/internal/type/converter.rbi +216 -0
  86. data/rbi/openlayer/internal/type/enum.rbi +82 -0
  87. data/rbi/openlayer/internal/type/file_input.rbi +59 -0
  88. data/rbi/openlayer/internal/type/hash_of.rbi +104 -0
  89. data/rbi/openlayer/internal/type/request_parameters.rbi +29 -0
  90. data/rbi/openlayer/internal/type/union.rbi +128 -0
  91. data/rbi/openlayer/internal/type/unknown.rbi +58 -0
  92. data/rbi/openlayer/internal/util.rbi +487 -0
  93. data/rbi/openlayer/internal.rbi +18 -0
  94. data/rbi/openlayer/models/commit_retrieve_params.rbi +27 -0
  95. data/rbi/openlayer/models/commit_retrieve_response.rbi +393 -0
  96. data/rbi/openlayer/models/commits/test_result_list_params.rbi +214 -0
  97. data/rbi/openlayer/models/commits/test_result_list_response.rbi +1256 -0
  98. data/rbi/openlayer/models/inference_pipeline_delete_params.rbi +30 -0
  99. data/rbi/openlayer/models/inference_pipeline_retrieve_params.rbi +101 -0
  100. data/rbi/openlayer/models/inference_pipeline_retrieve_response.rbi +1022 -0
  101. data/rbi/openlayer/models/inference_pipeline_update_params.rbi +67 -0
  102. data/rbi/openlayer/models/inference_pipeline_update_response.rbi +1018 -0
  103. data/rbi/openlayer/models/inference_pipelines/data_stream_params.rbi +750 -0
  104. data/rbi/openlayer/models/inference_pipelines/data_stream_response.rbi +73 -0
  105. data/rbi/openlayer/models/inference_pipelines/row_update_params.rbi +153 -0
  106. data/rbi/openlayer/models/inference_pipelines/row_update_response.rbi +73 -0
  107. data/rbi/openlayer/models/inference_pipelines/test_result_list_params.rbi +216 -0
  108. data/rbi/openlayer/models/inference_pipelines/test_result_list_response.rbi +1258 -0
  109. data/rbi/openlayer/models/project_create_params.rbi +99 -0
  110. data/rbi/openlayer/models/project_create_response.rbi +401 -0
  111. data/rbi/openlayer/models/project_list_params.rbi +121 -0
  112. data/rbi/openlayer/models/project_list_response.rbi +442 -0
  113. data/rbi/openlayer/models/projects/commit_create_params.rbi +125 -0
  114. data/rbi/openlayer/models/projects/commit_create_response.rbi +409 -0
  115. data/rbi/openlayer/models/projects/commit_list_params.rbi +62 -0
  116. data/rbi/openlayer/models/projects/commit_list_response.rbi +454 -0
  117. data/rbi/openlayer/models/projects/inference_pipeline_create_params.rbi +560 -0
  118. data/rbi/openlayer/models/projects/inference_pipeline_create_response.rbi +1027 -0
  119. data/rbi/openlayer/models/projects/inference_pipeline_list_params.rbi +73 -0
  120. data/rbi/openlayer/models/projects/inference_pipeline_list_response.rbi +1070 -0
  121. data/rbi/openlayer/models/projects/test_create_params.rbi +940 -0
  122. data/rbi/openlayer/models/projects/test_create_response.rbi +1026 -0
  123. data/rbi/openlayer/models/projects/test_list_params.rbi +165 -0
  124. data/rbi/openlayer/models/projects/test_list_response.rbi +1067 -0
  125. data/rbi/openlayer/models/projects/test_update_params.rbi +699 -0
  126. data/rbi/openlayer/models/projects/test_update_response.rbi +43 -0
  127. data/rbi/openlayer/models/storage/presigned_url_create_params.rbi +45 -0
  128. data/rbi/openlayer/models/storage/presigned_url_create_response.rbi +55 -0
  129. data/rbi/openlayer/models.rbi +26 -0
  130. data/rbi/openlayer/request_options.rbi +59 -0
  131. data/rbi/openlayer/resources/commits/test_results.rbi +45 -0
  132. data/rbi/openlayer/resources/commits.rbi +29 -0
  133. data/rbi/openlayer/resources/inference_pipelines/data.rbi +41 -0
  134. data/rbi/openlayer/resources/inference_pipelines/rows.rbi +40 -0
  135. data/rbi/openlayer/resources/inference_pipelines/test_results.rbi +46 -0
  136. data/rbi/openlayer/resources/inference_pipelines.rbi +79 -0
  137. data/rbi/openlayer/resources/projects/commits.rbi +60 -0
  138. data/rbi/openlayer/resources/projects/inference_pipelines.rbi +69 -0
  139. data/rbi/openlayer/resources/projects/tests.rbi +123 -0
  140. data/rbi/openlayer/resources/projects.rbi +64 -0
  141. data/rbi/openlayer/resources/storage/presigned_url.rbi +28 -0
  142. data/rbi/openlayer/resources/storage.rbi +15 -0
  143. data/rbi/openlayer/version.rbi +5 -0
  144. data/sig/openlayer/client.rbs +32 -0
  145. data/sig/openlayer/errors.rbs +117 -0
  146. data/sig/openlayer/file_part.rbs +21 -0
  147. data/sig/openlayer/internal/transport/base_client.rbs +131 -0
  148. data/sig/openlayer/internal/transport/pooled_net_requester.rbs +45 -0
  149. data/sig/openlayer/internal/type/array_of.rbs +48 -0
  150. data/sig/openlayer/internal/type/base_model.rbs +102 -0
  151. data/sig/openlayer/internal/type/base_page.rbs +24 -0
  152. data/sig/openlayer/internal/type/boolean.rbs +26 -0
  153. data/sig/openlayer/internal/type/converter.rbs +79 -0
  154. data/sig/openlayer/internal/type/enum.rbs +32 -0
  155. data/sig/openlayer/internal/type/file_input.rbs +25 -0
  156. data/sig/openlayer/internal/type/hash_of.rbs +48 -0
  157. data/sig/openlayer/internal/type/request_parameters.rbs +19 -0
  158. data/sig/openlayer/internal/type/union.rbs +52 -0
  159. data/sig/openlayer/internal/type/unknown.rbs +26 -0
  160. data/sig/openlayer/internal/util.rbs +185 -0
  161. data/sig/openlayer/internal.rbs +9 -0
  162. data/sig/openlayer/models/commit_retrieve_params.rbs +15 -0
  163. data/sig/openlayer/models/commit_retrieve_response.rbs +209 -0
  164. data/sig/openlayer/models/commits/test_result_list_params.rbs +91 -0
  165. data/sig/openlayer/models/commits/test_result_list_response.rbs +529 -0
  166. data/sig/openlayer/models/inference_pipeline_delete_params.rbs +15 -0
  167. data/sig/openlayer/models/inference_pipeline_retrieve_params.rbs +41 -0
  168. data/sig/openlayer/models/inference_pipeline_retrieve_response.rbs +493 -0
  169. data/sig/openlayer/models/inference_pipeline_update_params.rbs +34 -0
  170. data/sig/openlayer/models/inference_pipeline_update_response.rbs +493 -0
  171. data/sig/openlayer/models/inference_pipelines/data_stream_params.rbs +386 -0
  172. data/sig/openlayer/models/inference_pipelines/data_stream_response.rbs +32 -0
  173. data/sig/openlayer/models/inference_pipelines/row_update_params.rbs +75 -0
  174. data/sig/openlayer/models/inference_pipelines/row_update_response.rbs +32 -0
  175. data/sig/openlayer/models/inference_pipelines/test_result_list_params.rbs +84 -0
  176. data/sig/openlayer/models/inference_pipelines/test_result_list_response.rbs +529 -0
  177. data/sig/openlayer/models/project_create_params.rbs +53 -0
  178. data/sig/openlayer/models/project_create_response.rbs +210 -0
  179. data/sig/openlayer/models/project_list_params.rbs +68 -0
  180. data/sig/openlayer/models/project_list_response.rbs +225 -0
  181. data/sig/openlayer/models/projects/commit_create_params.rbs +82 -0
  182. data/sig/openlayer/models/projects/commit_create_response.rbs +211 -0
  183. data/sig/openlayer/models/projects/commit_list_params.rbs +34 -0
  184. data/sig/openlayer/models/projects/commit_list_response.rbs +228 -0
  185. data/sig/openlayer/models/projects/inference_pipeline_create_params.rbs +308 -0
  186. data/sig/openlayer/models/projects/inference_pipeline_create_response.rbs +495 -0
  187. data/sig/openlayer/models/projects/inference_pipeline_list_params.rbs +40 -0
  188. data/sig/openlayer/models/projects/inference_pipeline_list_response.rbs +512 -0
  189. data/sig/openlayer/models/projects/test_create_params.rbs +388 -0
  190. data/sig/openlayer/models/projects/test_create_response.rbs +427 -0
  191. data/sig/openlayer/models/projects/test_list_params.rbs +85 -0
  192. data/sig/openlayer/models/projects/test_list_response.rbs +442 -0
  193. data/sig/openlayer/models/projects/test_update_params.rbs +275 -0
  194. data/sig/openlayer/models/projects/test_update_response.rbs +25 -0
  195. data/sig/openlayer/models/storage/presigned_url_create_params.rbs +25 -0
  196. data/sig/openlayer/models/storage/presigned_url_create_response.rbs +22 -0
  197. data/sig/openlayer/models.rbs +21 -0
  198. data/sig/openlayer/request_options.rbs +34 -0
  199. data/sig/openlayer/resources/commits/test_results.rbs +19 -0
  200. data/sig/openlayer/resources/commits.rbs +14 -0
  201. data/sig/openlayer/resources/inference_pipelines/data.rbs +16 -0
  202. data/sig/openlayer/resources/inference_pipelines/rows.rbs +17 -0
  203. data/sig/openlayer/resources/inference_pipelines/test_results.rbs +18 -0
  204. data/sig/openlayer/resources/inference_pipelines.rbs +32 -0
  205. data/sig/openlayer/resources/projects/commits.rbs +25 -0
  206. data/sig/openlayer/resources/projects/inference_pipelines.rbs +26 -0
  207. data/sig/openlayer/resources/projects/tests.rbs +45 -0
  208. data/sig/openlayer/resources/projects.rbs +28 -0
  209. data/sig/openlayer/resources/storage/presigned_url.rbs +14 -0
  210. data/sig/openlayer/resources/storage.rbs +9 -0
  211. data/sig/openlayer/version.rbs +3 -0
  212. metadata +223 -91
  213. data/.env +0 -0
  214. data/.rspec +0 -3
  215. data/.rubocop.yml +0 -13
  216. data/LICENSE +0 -21
  217. data/Rakefile +0 -12
  218. data/examples/staging/.DS_Store +0 -0
  219. data/examples/staging/commit.yaml +0 -2
  220. data/examples/staging/model/model_config.yaml +0 -12
  221. data/examples/staging/validation/dataset_config.yaml +0 -12
  222. data/lib/openlayer/error.rb +0 -5
  223. data/lib/openlayer/inference_pipeline.rb +0 -36
  224. data/lib/openlayer/object.rb +0 -28
  225. data/lib/openlayer/objects/project.rb +0 -185
  226. data/lib/openlayer/objects/project_version.rb +0 -89
  227. data/lib/openlayer/services/s3_presigned_client.rb +0 -47
  228. data/lib/openlayer/services/tar_file_helper.rb +0 -55
  229. data/openlayer.gemspec +0 -45
  230. data/sig/openlayer.rbs +0 -4
@@ -0,0 +1,442 @@
1
+ # typed: strong
2
+
3
+ module Openlayer
4
+ module Models
5
+ class ProjectListResponse < Openlayer::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Openlayer::Models::ProjectListResponse,
10
+ Openlayer::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ sig { returns(T::Array[Openlayer::Models::ProjectListResponse::Item]) }
15
+ attr_accessor :items
16
+
17
+ sig do
18
+ params(
19
+ items: T::Array[Openlayer::Models::ProjectListResponse::Item::OrHash]
20
+ ).returns(T.attached_class)
21
+ end
22
+ def self.new(items:)
23
+ end
24
+
25
+ sig do
26
+ override.returns(
27
+ { items: T::Array[Openlayer::Models::ProjectListResponse::Item] }
28
+ )
29
+ end
30
+ def to_hash
31
+ end
32
+
33
+ class Item < Openlayer::Internal::Type::BaseModel
34
+ OrHash =
35
+ T.type_alias do
36
+ T.any(
37
+ Openlayer::Models::ProjectListResponse::Item,
38
+ Openlayer::Internal::AnyHash
39
+ )
40
+ end
41
+
42
+ # The project name.
43
+ sig { returns(String) }
44
+ attr_accessor :name
45
+
46
+ # The task type of the project.
47
+ sig do
48
+ returns(
49
+ Openlayer::Models::ProjectListResponse::Item::TaskType::TaggedSymbol
50
+ )
51
+ end
52
+ attr_accessor :task_type
53
+
54
+ # The project description.
55
+ sig { returns(T.nilable(String)) }
56
+ attr_accessor :description
57
+
58
+ # The project id.
59
+ sig { returns(String) }
60
+ attr_accessor :id
61
+
62
+ # The project creator id.
63
+ sig { returns(T.nilable(String)) }
64
+ attr_accessor :creator_id
65
+
66
+ # The project creation date.
67
+ sig { returns(Time) }
68
+ attr_accessor :date_created
69
+
70
+ # The project last updated date.
71
+ sig { returns(Time) }
72
+ attr_accessor :date_updated
73
+
74
+ # The number of tests in the development mode of the project.
75
+ sig { returns(Integer) }
76
+ attr_accessor :development_goal_count
77
+
78
+ # The total number of tests in the project.
79
+ sig { returns(Integer) }
80
+ attr_accessor :goal_count
81
+
82
+ # The number of inference pipelines in the project.
83
+ sig { returns(Integer) }
84
+ attr_accessor :inference_pipeline_count
85
+
86
+ # Links to the project.
87
+ sig { returns(Openlayer::Models::ProjectListResponse::Item::Links) }
88
+ attr_reader :links
89
+
90
+ sig do
91
+ params(
92
+ links: Openlayer::Models::ProjectListResponse::Item::Links::OrHash
93
+ ).void
94
+ end
95
+ attr_writer :links
96
+
97
+ # The number of tests in the monitoring mode of the project.
98
+ sig { returns(Integer) }
99
+ attr_accessor :monitoring_goal_count
100
+
101
+ # The source of the project.
102
+ sig do
103
+ returns(
104
+ T.nilable(
105
+ Openlayer::Models::ProjectListResponse::Item::Source::TaggedSymbol
106
+ )
107
+ )
108
+ end
109
+ attr_accessor :source
110
+
111
+ # The number of versions (commits) in the project.
112
+ sig { returns(Integer) }
113
+ attr_accessor :version_count
114
+
115
+ # The workspace id.
116
+ sig { returns(T.nilable(String)) }
117
+ attr_accessor :workspace_id
118
+
119
+ sig do
120
+ returns(
121
+ T.nilable(Openlayer::Models::ProjectListResponse::Item::GitRepo)
122
+ )
123
+ end
124
+ attr_reader :git_repo
125
+
126
+ sig do
127
+ params(
128
+ git_repo:
129
+ T.nilable(
130
+ Openlayer::Models::ProjectListResponse::Item::GitRepo::OrHash
131
+ )
132
+ ).void
133
+ end
134
+ attr_writer :git_repo
135
+
136
+ sig do
137
+ params(
138
+ id: String,
139
+ creator_id: T.nilable(String),
140
+ date_created: Time,
141
+ date_updated: Time,
142
+ development_goal_count: Integer,
143
+ goal_count: Integer,
144
+ inference_pipeline_count: Integer,
145
+ links: Openlayer::Models::ProjectListResponse::Item::Links::OrHash,
146
+ monitoring_goal_count: Integer,
147
+ name: String,
148
+ source:
149
+ T.nilable(
150
+ Openlayer::Models::ProjectListResponse::Item::Source::OrSymbol
151
+ ),
152
+ task_type:
153
+ Openlayer::Models::ProjectListResponse::Item::TaskType::OrSymbol,
154
+ version_count: Integer,
155
+ workspace_id: T.nilable(String),
156
+ description: T.nilable(String),
157
+ git_repo:
158
+ T.nilable(
159
+ Openlayer::Models::ProjectListResponse::Item::GitRepo::OrHash
160
+ )
161
+ ).returns(T.attached_class)
162
+ end
163
+ def self.new(
164
+ # The project id.
165
+ id:,
166
+ # The project creator id.
167
+ creator_id:,
168
+ # The project creation date.
169
+ date_created:,
170
+ # The project last updated date.
171
+ date_updated:,
172
+ # The number of tests in the development mode of the project.
173
+ development_goal_count:,
174
+ # The total number of tests in the project.
175
+ goal_count:,
176
+ # The number of inference pipelines in the project.
177
+ inference_pipeline_count:,
178
+ # Links to the project.
179
+ links:,
180
+ # The number of tests in the monitoring mode of the project.
181
+ monitoring_goal_count:,
182
+ # The project name.
183
+ name:,
184
+ # The source of the project.
185
+ source:,
186
+ # The task type of the project.
187
+ task_type:,
188
+ # The number of versions (commits) in the project.
189
+ version_count:,
190
+ # The workspace id.
191
+ workspace_id:,
192
+ # The project description.
193
+ description: nil,
194
+ git_repo: nil
195
+ )
196
+ end
197
+
198
+ sig do
199
+ override.returns(
200
+ {
201
+ id: String,
202
+ creator_id: T.nilable(String),
203
+ date_created: Time,
204
+ date_updated: Time,
205
+ development_goal_count: Integer,
206
+ goal_count: Integer,
207
+ inference_pipeline_count: Integer,
208
+ links: Openlayer::Models::ProjectListResponse::Item::Links,
209
+ monitoring_goal_count: Integer,
210
+ name: String,
211
+ source:
212
+ T.nilable(
213
+ Openlayer::Models::ProjectListResponse::Item::Source::TaggedSymbol
214
+ ),
215
+ task_type:
216
+ Openlayer::Models::ProjectListResponse::Item::TaskType::TaggedSymbol,
217
+ version_count: Integer,
218
+ workspace_id: T.nilable(String),
219
+ description: T.nilable(String),
220
+ git_repo:
221
+ T.nilable(Openlayer::Models::ProjectListResponse::Item::GitRepo)
222
+ }
223
+ )
224
+ end
225
+ def to_hash
226
+ end
227
+
228
+ class Links < Openlayer::Internal::Type::BaseModel
229
+ OrHash =
230
+ T.type_alias do
231
+ T.any(
232
+ Openlayer::Models::ProjectListResponse::Item::Links,
233
+ Openlayer::Internal::AnyHash
234
+ )
235
+ end
236
+
237
+ sig { returns(String) }
238
+ attr_accessor :app
239
+
240
+ # Links to the project.
241
+ sig { params(app: String).returns(T.attached_class) }
242
+ def self.new(app:)
243
+ end
244
+
245
+ sig { override.returns({ app: String }) }
246
+ def to_hash
247
+ end
248
+ end
249
+
250
+ # The source of the project.
251
+ module Source
252
+ extend Openlayer::Internal::Type::Enum
253
+
254
+ TaggedSymbol =
255
+ T.type_alias do
256
+ T.all(
257
+ Symbol,
258
+ Openlayer::Models::ProjectListResponse::Item::Source
259
+ )
260
+ end
261
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
262
+
263
+ WEB =
264
+ T.let(
265
+ :web,
266
+ Openlayer::Models::ProjectListResponse::Item::Source::TaggedSymbol
267
+ )
268
+ API =
269
+ T.let(
270
+ :api,
271
+ Openlayer::Models::ProjectListResponse::Item::Source::TaggedSymbol
272
+ )
273
+ NULL =
274
+ T.let(
275
+ :null,
276
+ Openlayer::Models::ProjectListResponse::Item::Source::TaggedSymbol
277
+ )
278
+
279
+ sig do
280
+ override.returns(
281
+ T::Array[
282
+ Openlayer::Models::ProjectListResponse::Item::Source::TaggedSymbol
283
+ ]
284
+ )
285
+ end
286
+ def self.values
287
+ end
288
+ end
289
+
290
+ # The task type of the project.
291
+ module TaskType
292
+ extend Openlayer::Internal::Type::Enum
293
+
294
+ TaggedSymbol =
295
+ T.type_alias do
296
+ T.all(
297
+ Symbol,
298
+ Openlayer::Models::ProjectListResponse::Item::TaskType
299
+ )
300
+ end
301
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
302
+
303
+ LLM_BASE =
304
+ T.let(
305
+ :"llm-base",
306
+ Openlayer::Models::ProjectListResponse::Item::TaskType::TaggedSymbol
307
+ )
308
+ TABULAR_CLASSIFICATION =
309
+ T.let(
310
+ :"tabular-classification",
311
+ Openlayer::Models::ProjectListResponse::Item::TaskType::TaggedSymbol
312
+ )
313
+ TABULAR_REGRESSION =
314
+ T.let(
315
+ :"tabular-regression",
316
+ Openlayer::Models::ProjectListResponse::Item::TaskType::TaggedSymbol
317
+ )
318
+ TEXT_CLASSIFICATION =
319
+ T.let(
320
+ :"text-classification",
321
+ Openlayer::Models::ProjectListResponse::Item::TaskType::TaggedSymbol
322
+ )
323
+
324
+ sig do
325
+ override.returns(
326
+ T::Array[
327
+ Openlayer::Models::ProjectListResponse::Item::TaskType::TaggedSymbol
328
+ ]
329
+ )
330
+ end
331
+ def self.values
332
+ end
333
+ end
334
+
335
+ class GitRepo < Openlayer::Internal::Type::BaseModel
336
+ OrHash =
337
+ T.type_alias do
338
+ T.any(
339
+ Openlayer::Models::ProjectListResponse::Item::GitRepo,
340
+ Openlayer::Internal::AnyHash
341
+ )
342
+ end
343
+
344
+ sig { returns(String) }
345
+ attr_accessor :git_account_id
346
+
347
+ sig { returns(Integer) }
348
+ attr_accessor :git_id
349
+
350
+ sig { returns(T.nilable(String)) }
351
+ attr_reader :branch
352
+
353
+ sig { params(branch: String).void }
354
+ attr_writer :branch
355
+
356
+ sig { returns(T.nilable(String)) }
357
+ attr_reader :root_dir
358
+
359
+ sig { params(root_dir: String).void }
360
+ attr_writer :root_dir
361
+
362
+ sig { returns(String) }
363
+ attr_accessor :id
364
+
365
+ sig { returns(Time) }
366
+ attr_accessor :date_connected
367
+
368
+ sig { returns(Time) }
369
+ attr_accessor :date_updated
370
+
371
+ sig { returns(String) }
372
+ attr_accessor :name
373
+
374
+ sig { returns(T::Boolean) }
375
+ attr_accessor :private
376
+
377
+ sig { returns(String) }
378
+ attr_accessor :project_id
379
+
380
+ sig { returns(String) }
381
+ attr_accessor :slug
382
+
383
+ sig { returns(String) }
384
+ attr_accessor :url
385
+
386
+ sig do
387
+ params(
388
+ id: String,
389
+ date_connected: Time,
390
+ date_updated: Time,
391
+ git_account_id: String,
392
+ git_id: Integer,
393
+ name: String,
394
+ private: T::Boolean,
395
+ project_id: String,
396
+ slug: String,
397
+ url: String,
398
+ branch: String,
399
+ root_dir: String
400
+ ).returns(T.attached_class)
401
+ end
402
+ def self.new(
403
+ id:,
404
+ date_connected:,
405
+ date_updated:,
406
+ git_account_id:,
407
+ git_id:,
408
+ name:,
409
+ private:,
410
+ project_id:,
411
+ slug:,
412
+ url:,
413
+ branch: nil,
414
+ root_dir: nil
415
+ )
416
+ end
417
+
418
+ sig do
419
+ override.returns(
420
+ {
421
+ id: String,
422
+ date_connected: Time,
423
+ date_updated: Time,
424
+ git_account_id: String,
425
+ git_id: Integer,
426
+ name: String,
427
+ private: T::Boolean,
428
+ project_id: String,
429
+ slug: String,
430
+ url: String,
431
+ branch: String,
432
+ root_dir: String
433
+ }
434
+ )
435
+ end
436
+ def to_hash
437
+ end
438
+ end
439
+ end
440
+ end
441
+ end
442
+ end
@@ -0,0 +1,125 @@
1
+ # typed: strong
2
+
3
+ module Openlayer
4
+ module Models
5
+ module Projects
6
+ class CommitCreateParams < Openlayer::Internal::Type::BaseModel
7
+ extend Openlayer::Internal::Type::RequestParameters::Converter
8
+ include Openlayer::Internal::Type::RequestParameters
9
+
10
+ OrHash =
11
+ T.type_alias do
12
+ T.any(
13
+ Openlayer::Projects::CommitCreateParams,
14
+ Openlayer::Internal::AnyHash
15
+ )
16
+ end
17
+
18
+ # The details of a commit (project version).
19
+ sig { returns(Openlayer::Projects::CommitCreateParams::Commit) }
20
+ attr_reader :commit
21
+
22
+ sig do
23
+ params(
24
+ commit: Openlayer::Projects::CommitCreateParams::Commit::OrHash
25
+ ).void
26
+ end
27
+ attr_writer :commit
28
+
29
+ # The storage URI where the commit bundle is stored.
30
+ sig { returns(String) }
31
+ attr_accessor :storage_uri
32
+
33
+ # Whether the commit is archived.
34
+ sig { returns(T.nilable(T::Boolean)) }
35
+ attr_accessor :archived
36
+
37
+ # The deployment status associated with the commit's model.
38
+ sig { returns(T.nilable(String)) }
39
+ attr_reader :deployment_status
40
+
41
+ sig { params(deployment_status: String).void }
42
+ attr_writer :deployment_status
43
+
44
+ sig do
45
+ params(
46
+ commit: Openlayer::Projects::CommitCreateParams::Commit::OrHash,
47
+ storage_uri: String,
48
+ archived: T.nilable(T::Boolean),
49
+ deployment_status: String,
50
+ request_options: Openlayer::RequestOptions::OrHash
51
+ ).returns(T.attached_class)
52
+ end
53
+ def self.new(
54
+ # The details of a commit (project version).
55
+ commit:,
56
+ # The storage URI where the commit bundle is stored.
57
+ storage_uri:,
58
+ # Whether the commit is archived.
59
+ archived: nil,
60
+ # The deployment status associated with the commit's model.
61
+ deployment_status: nil,
62
+ request_options: {}
63
+ )
64
+ end
65
+
66
+ sig do
67
+ override.returns(
68
+ {
69
+ commit: Openlayer::Projects::CommitCreateParams::Commit,
70
+ storage_uri: String,
71
+ archived: T.nilable(T::Boolean),
72
+ deployment_status: String,
73
+ request_options: Openlayer::RequestOptions
74
+ }
75
+ )
76
+ end
77
+ def to_hash
78
+ end
79
+
80
+ class Commit < Openlayer::Internal::Type::BaseModel
81
+ OrHash =
82
+ T.type_alias do
83
+ T.any(
84
+ Openlayer::Projects::CommitCreateParams::Commit,
85
+ Openlayer::Internal::AnyHash
86
+ )
87
+ end
88
+
89
+ # The commit message.
90
+ sig { returns(String) }
91
+ attr_accessor :message
92
+
93
+ # The details of a commit (project version).
94
+ sig { params(message: String).returns(T.attached_class) }
95
+ def self.new(
96
+ # The commit message.
97
+ message:
98
+ )
99
+ end
100
+
101
+ sig do
102
+ override.returns(
103
+ {
104
+ id: String,
105
+ author_id: String,
106
+ file_size: T.nilable(Integer),
107
+ message: String,
108
+ ml_model_id: T.nilable(String),
109
+ storage_uri: String,
110
+ training_dataset_id: T.nilable(String),
111
+ validation_dataset_id: T.nilable(String),
112
+ date_created: Time,
113
+ git_commit_ref: String,
114
+ git_commit_sha: Integer,
115
+ git_commit_url: String
116
+ }
117
+ )
118
+ end
119
+ def to_hash
120
+ end
121
+ end
122
+ end
123
+ end
124
+ end
125
+ end