deeprails 0.6.0 → 0.8.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 (49) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +17 -0
  3. data/README.md +30 -6
  4. data/lib/deeprails/internal/transport/pooled_net_requester.rb +30 -24
  5. data/lib/deeprails/models/defend_create_workflow_params.rb +4 -4
  6. data/lib/deeprails/models/defend_response.rb +4 -4
  7. data/lib/deeprails/models/defend_submit_event_params.rb +6 -6
  8. data/lib/deeprails/models/evaluate_create_params.rb +4 -4
  9. data/lib/deeprails/models/evaluation.rb +4 -4
  10. data/lib/deeprails/models/monitor_detail_response.rb +150 -0
  11. data/lib/deeprails/models/monitor_event_response.rb +41 -0
  12. data/lib/deeprails/models/monitor_response.rb +83 -0
  13. data/lib/deeprails/models/monitor_submit_event_params.rb +4 -4
  14. data/lib/deeprails/models.rb +6 -2
  15. data/lib/deeprails/resources/defend.rb +2 -2
  16. data/lib/deeprails/resources/monitor.rb +8 -8
  17. data/lib/deeprails/version.rb +1 -1
  18. data/lib/deeprails.rb +3 -3
  19. data/rbi/deeprails/models/defend_create_workflow_params.rbi +6 -6
  20. data/rbi/deeprails/models/defend_response.rbi +6 -6
  21. data/rbi/deeprails/models/defend_submit_event_params.rbi +8 -8
  22. data/rbi/deeprails/models/evaluate_create_params.rbi +6 -6
  23. data/rbi/deeprails/models/evaluation.rbi +6 -6
  24. data/rbi/deeprails/models/monitor_detail_response.rbi +251 -0
  25. data/rbi/deeprails/models/monitor_event_response.rbi +64 -0
  26. data/rbi/deeprails/models/monitor_response.rbi +142 -0
  27. data/rbi/deeprails/models/monitor_submit_event_params.rbi +6 -6
  28. data/rbi/deeprails/models.rbi +6 -2
  29. data/rbi/deeprails/resources/defend.rbi +4 -4
  30. data/rbi/deeprails/resources/evaluate.rbi +2 -2
  31. data/rbi/deeprails/resources/monitor.rbi +6 -6
  32. data/sig/deeprails/models/defend_create_workflow_params.rbs +5 -5
  33. data/sig/deeprails/models/defend_response.rbs +5 -5
  34. data/sig/deeprails/models/monitor_detail_response.rbs +134 -0
  35. data/sig/deeprails/models/monitor_event_response.rbs +37 -0
  36. data/sig/deeprails/models/monitor_response.rbs +73 -0
  37. data/sig/deeprails/models.rbs +6 -2
  38. data/sig/deeprails/resources/defend.rbs +1 -1
  39. data/sig/deeprails/resources/monitor.rbs +4 -4
  40. metadata +11 -11
  41. data/lib/deeprails/models/api_response.rb +0 -116
  42. data/lib/deeprails/models/monitor_retrieve_response.rb +0 -183
  43. data/lib/deeprails/models/monitor_submit_event_response.rb +0 -74
  44. data/rbi/deeprails/models/api_response.rbi +0 -201
  45. data/rbi/deeprails/models/monitor_retrieve_response.rbi +0 -333
  46. data/rbi/deeprails/models/monitor_submit_event_response.rbi +0 -131
  47. data/sig/deeprails/models/api_response.rbs +0 -100
  48. data/sig/deeprails/models/monitor_retrieve_response.rbs +0 -167
  49. data/sig/deeprails/models/monitor_submit_event_response.rbs +0 -70
@@ -1,333 +0,0 @@
1
- # typed: strong
2
-
3
- module Deeprails
4
- module Models
5
- class MonitorRetrieveResponse < Deeprails::Internal::Type::BaseModel
6
- OrHash =
7
- T.type_alias do
8
- T.any(
9
- Deeprails::Models::MonitorRetrieveResponse,
10
- Deeprails::Internal::AnyHash
11
- )
12
- end
13
-
14
- # Represents whether the request was completed successfully.
15
- sig { returns(T::Boolean) }
16
- attr_accessor :success
17
-
18
- sig do
19
- returns(T.nilable(Deeprails::Models::MonitorRetrieveResponse::Data))
20
- end
21
- attr_reader :data
22
-
23
- sig do
24
- params(
25
- data: Deeprails::Models::MonitorRetrieveResponse::Data::OrHash
26
- ).void
27
- end
28
- attr_writer :data
29
-
30
- # The accompanying message for the request. Includes error details when
31
- # applicable.
32
- sig { returns(T.nilable(String)) }
33
- attr_reader :message
34
-
35
- sig { params(message: String).void }
36
- attr_writer :message
37
-
38
- # Response wrapper for operations returning a MonitorDetailResponse.
39
- sig do
40
- params(
41
- success: T::Boolean,
42
- data: Deeprails::Models::MonitorRetrieveResponse::Data::OrHash,
43
- message: String
44
- ).returns(T.attached_class)
45
- end
46
- def self.new(
47
- # Represents whether the request was completed successfully.
48
- success:,
49
- data: nil,
50
- # The accompanying message for the request. Includes error details when
51
- # applicable.
52
- message: nil
53
- )
54
- end
55
-
56
- sig do
57
- override.returns(
58
- {
59
- success: T::Boolean,
60
- data: Deeprails::Models::MonitorRetrieveResponse::Data,
61
- message: String
62
- }
63
- )
64
- end
65
- def to_hash
66
- end
67
-
68
- class Data < Deeprails::Internal::Type::BaseModel
69
- OrHash =
70
- T.type_alias do
71
- T.any(
72
- Deeprails::Models::MonitorRetrieveResponse::Data,
73
- Deeprails::Internal::AnyHash
74
- )
75
- end
76
-
77
- # A unique monitor ID.
78
- sig { returns(String) }
79
- attr_accessor :monitor_id
80
-
81
- # Status of the monitor. Can be `active` or `inactive`. Inactive monitors no
82
- # longer record and evaluate events.
83
- sig do
84
- returns(
85
- Deeprails::Models::MonitorRetrieveResponse::Data::MonitorStatus::TaggedSymbol
86
- )
87
- end
88
- attr_accessor :monitor_status
89
-
90
- # Name of this monitor.
91
- sig { returns(String) }
92
- attr_accessor :name
93
-
94
- # The time the monitor was created in UTC.
95
- sig { returns(T.nilable(Time)) }
96
- attr_reader :created_at
97
-
98
- sig { params(created_at: Time).void }
99
- attr_writer :created_at
100
-
101
- # Description of this monitor.
102
- sig { returns(T.nilable(String)) }
103
- attr_reader :description
104
-
105
- sig { params(description: String).void }
106
- attr_writer :description
107
-
108
- # An array of all evaluations performed by this monitor. Each one corresponds to a
109
- # separate monitor event.
110
- sig { returns(T.nilable(T::Array[Deeprails::Evaluation])) }
111
- attr_reader :evaluations
112
-
113
- sig do
114
- params(evaluations: T::Array[Deeprails::Evaluation::OrHash]).void
115
- end
116
- attr_writer :evaluations
117
-
118
- # Contains five fields used for stats of this monitor: total evaluations,
119
- # completed evaluations, failed evaluations, queued evaluations, and in progress
120
- # evaluations.
121
- sig do
122
- returns(
123
- T.nilable(Deeprails::Models::MonitorRetrieveResponse::Data::Stats)
124
- )
125
- end
126
- attr_reader :stats
127
-
128
- sig do
129
- params(
130
- stats:
131
- Deeprails::Models::MonitorRetrieveResponse::Data::Stats::OrHash
132
- ).void
133
- end
134
- attr_writer :stats
135
-
136
- # The most recent time the monitor was modified in UTC.
137
- sig { returns(T.nilable(Time)) }
138
- attr_reader :updated_at
139
-
140
- sig { params(updated_at: Time).void }
141
- attr_writer :updated_at
142
-
143
- # User ID of the user who created the monitor.
144
- sig { returns(T.nilable(String)) }
145
- attr_reader :user_id
146
-
147
- sig { params(user_id: String).void }
148
- attr_writer :user_id
149
-
150
- sig do
151
- params(
152
- monitor_id: String,
153
- monitor_status:
154
- Deeprails::Models::MonitorRetrieveResponse::Data::MonitorStatus::OrSymbol,
155
- name: String,
156
- created_at: Time,
157
- description: String,
158
- evaluations: T::Array[Deeprails::Evaluation::OrHash],
159
- stats:
160
- Deeprails::Models::MonitorRetrieveResponse::Data::Stats::OrHash,
161
- updated_at: Time,
162
- user_id: String
163
- ).returns(T.attached_class)
164
- end
165
- def self.new(
166
- # A unique monitor ID.
167
- monitor_id:,
168
- # Status of the monitor. Can be `active` or `inactive`. Inactive monitors no
169
- # longer record and evaluate events.
170
- monitor_status:,
171
- # Name of this monitor.
172
- name:,
173
- # The time the monitor was created in UTC.
174
- created_at: nil,
175
- # Description of this monitor.
176
- description: nil,
177
- # An array of all evaluations performed by this monitor. Each one corresponds to a
178
- # separate monitor event.
179
- evaluations: nil,
180
- # Contains five fields used for stats of this monitor: total evaluations,
181
- # completed evaluations, failed evaluations, queued evaluations, and in progress
182
- # evaluations.
183
- stats: nil,
184
- # The most recent time the monitor was modified in UTC.
185
- updated_at: nil,
186
- # User ID of the user who created the monitor.
187
- user_id: nil
188
- )
189
- end
190
-
191
- sig do
192
- override.returns(
193
- {
194
- monitor_id: String,
195
- monitor_status:
196
- Deeprails::Models::MonitorRetrieveResponse::Data::MonitorStatus::TaggedSymbol,
197
- name: String,
198
- created_at: Time,
199
- description: String,
200
- evaluations: T::Array[Deeprails::Evaluation],
201
- stats: Deeprails::Models::MonitorRetrieveResponse::Data::Stats,
202
- updated_at: Time,
203
- user_id: String
204
- }
205
- )
206
- end
207
- def to_hash
208
- end
209
-
210
- # Status of the monitor. Can be `active` or `inactive`. Inactive monitors no
211
- # longer record and evaluate events.
212
- module MonitorStatus
213
- extend Deeprails::Internal::Type::Enum
214
-
215
- TaggedSymbol =
216
- T.type_alias do
217
- T.all(
218
- Symbol,
219
- Deeprails::Models::MonitorRetrieveResponse::Data::MonitorStatus
220
- )
221
- end
222
- OrSymbol = T.type_alias { T.any(Symbol, String) }
223
-
224
- ACTIVE =
225
- T.let(
226
- :active,
227
- Deeprails::Models::MonitorRetrieveResponse::Data::MonitorStatus::TaggedSymbol
228
- )
229
- INACTIVE =
230
- T.let(
231
- :inactive,
232
- Deeprails::Models::MonitorRetrieveResponse::Data::MonitorStatus::TaggedSymbol
233
- )
234
-
235
- sig do
236
- override.returns(
237
- T::Array[
238
- Deeprails::Models::MonitorRetrieveResponse::Data::MonitorStatus::TaggedSymbol
239
- ]
240
- )
241
- end
242
- def self.values
243
- end
244
- end
245
-
246
- class Stats < Deeprails::Internal::Type::BaseModel
247
- OrHash =
248
- T.type_alias do
249
- T.any(
250
- Deeprails::Models::MonitorRetrieveResponse::Data::Stats,
251
- Deeprails::Internal::AnyHash
252
- )
253
- end
254
-
255
- # Number of evaluations that completed successfully.
256
- sig { returns(T.nilable(Integer)) }
257
- attr_reader :completed_evaluations
258
-
259
- sig { params(completed_evaluations: Integer).void }
260
- attr_writer :completed_evaluations
261
-
262
- # Number of evaluations that failed.
263
- sig { returns(T.nilable(Integer)) }
264
- attr_reader :failed_evaluations
265
-
266
- sig { params(failed_evaluations: Integer).void }
267
- attr_writer :failed_evaluations
268
-
269
- # Number of evaluations currently in progress.
270
- sig { returns(T.nilable(Integer)) }
271
- attr_reader :in_progress_evaluations
272
-
273
- sig { params(in_progress_evaluations: Integer).void }
274
- attr_writer :in_progress_evaluations
275
-
276
- # Number of evaluations currently queued.
277
- sig { returns(T.nilable(Integer)) }
278
- attr_reader :queued_evaluations
279
-
280
- sig { params(queued_evaluations: Integer).void }
281
- attr_writer :queued_evaluations
282
-
283
- # Total number of evaluations performed by this monitor.
284
- sig { returns(T.nilable(Integer)) }
285
- attr_reader :total_evaluations
286
-
287
- sig { params(total_evaluations: Integer).void }
288
- attr_writer :total_evaluations
289
-
290
- # Contains five fields used for stats of this monitor: total evaluations,
291
- # completed evaluations, failed evaluations, queued evaluations, and in progress
292
- # evaluations.
293
- sig do
294
- params(
295
- completed_evaluations: Integer,
296
- failed_evaluations: Integer,
297
- in_progress_evaluations: Integer,
298
- queued_evaluations: Integer,
299
- total_evaluations: Integer
300
- ).returns(T.attached_class)
301
- end
302
- def self.new(
303
- # Number of evaluations that completed successfully.
304
- completed_evaluations: nil,
305
- # Number of evaluations that failed.
306
- failed_evaluations: nil,
307
- # Number of evaluations currently in progress.
308
- in_progress_evaluations: nil,
309
- # Number of evaluations currently queued.
310
- queued_evaluations: nil,
311
- # Total number of evaluations performed by this monitor.
312
- total_evaluations: nil
313
- )
314
- end
315
-
316
- sig do
317
- override.returns(
318
- {
319
- completed_evaluations: Integer,
320
- failed_evaluations: Integer,
321
- in_progress_evaluations: Integer,
322
- queued_evaluations: Integer,
323
- total_evaluations: Integer
324
- }
325
- )
326
- end
327
- def to_hash
328
- end
329
- end
330
- end
331
- end
332
- end
333
- end
@@ -1,131 +0,0 @@
1
- # typed: strong
2
-
3
- module Deeprails
4
- module Models
5
- class MonitorSubmitEventResponse < Deeprails::Internal::Type::BaseModel
6
- OrHash =
7
- T.type_alias do
8
- T.any(
9
- Deeprails::Models::MonitorSubmitEventResponse,
10
- Deeprails::Internal::AnyHash
11
- )
12
- end
13
-
14
- # Represents whether the request was completed successfully.
15
- sig { returns(T::Boolean) }
16
- attr_accessor :success
17
-
18
- sig do
19
- returns(T.nilable(Deeprails::Models::MonitorSubmitEventResponse::Data))
20
- end
21
- attr_reader :data
22
-
23
- sig do
24
- params(
25
- data: Deeprails::Models::MonitorSubmitEventResponse::Data::OrHash
26
- ).void
27
- end
28
- attr_writer :data
29
-
30
- # The accompanying message for the request. Includes error details when
31
- # applicable.
32
- sig { returns(T.nilable(String)) }
33
- attr_reader :message
34
-
35
- sig { params(message: String).void }
36
- attr_writer :message
37
-
38
- # Response wrapper for operations returning a MonitorEventResponse.
39
- sig do
40
- params(
41
- success: T::Boolean,
42
- data: Deeprails::Models::MonitorSubmitEventResponse::Data::OrHash,
43
- message: String
44
- ).returns(T.attached_class)
45
- end
46
- def self.new(
47
- # Represents whether the request was completed successfully.
48
- success:,
49
- data: nil,
50
- # The accompanying message for the request. Includes error details when
51
- # applicable.
52
- message: nil
53
- )
54
- end
55
-
56
- sig do
57
- override.returns(
58
- {
59
- success: T::Boolean,
60
- data: Deeprails::Models::MonitorSubmitEventResponse::Data,
61
- message: String
62
- }
63
- )
64
- end
65
- def to_hash
66
- end
67
-
68
- class Data < Deeprails::Internal::Type::BaseModel
69
- OrHash =
70
- T.type_alias do
71
- T.any(
72
- Deeprails::Models::MonitorSubmitEventResponse::Data,
73
- Deeprails::Internal::AnyHash
74
- )
75
- end
76
-
77
- # A unique evaluation ID associated with this event.
78
- sig { returns(String) }
79
- attr_accessor :evaluation_id
80
-
81
- # A unique monitor event ID.
82
- sig { returns(String) }
83
- attr_accessor :event_id
84
-
85
- # Monitor ID associated with this event.
86
- sig { returns(String) }
87
- attr_accessor :monitor_id
88
-
89
- # The time the monitor event was created in UTC.
90
- sig { returns(T.nilable(Time)) }
91
- attr_reader :created_at
92
-
93
- sig { params(created_at: Time).void }
94
- attr_writer :created_at
95
-
96
- sig do
97
- params(
98
- evaluation_id: String,
99
- event_id: String,
100
- monitor_id: String,
101
- created_at: Time
102
- ).returns(T.attached_class)
103
- end
104
- def self.new(
105
- # A unique evaluation ID associated with this event.
106
- evaluation_id:,
107
- # A unique monitor event ID.
108
- event_id:,
109
- # Monitor ID associated with this event.
110
- monitor_id:,
111
- # The time the monitor event was created in UTC.
112
- created_at: nil
113
- )
114
- end
115
-
116
- sig do
117
- override.returns(
118
- {
119
- evaluation_id: String,
120
- event_id: String,
121
- monitor_id: String,
122
- created_at: Time
123
- }
124
- )
125
- end
126
- def to_hash
127
- end
128
- end
129
- end
130
- end
131
- end
@@ -1,100 +0,0 @@
1
- module Deeprails
2
- module Models
3
- type api_response =
4
- { success: bool, data: Deeprails::APIResponse::Data, message: String }
5
-
6
- class APIResponse < Deeprails::Internal::Type::BaseModel
7
- attr_accessor success: bool
8
-
9
- attr_reader data: Deeprails::APIResponse::Data?
10
-
11
- def data=: (Deeprails::APIResponse::Data) -> Deeprails::APIResponse::Data
12
-
13
- attr_reader message: String?
14
-
15
- def message=: (String) -> String
16
-
17
- def initialize: (
18
- success: bool,
19
- ?data: Deeprails::APIResponse::Data,
20
- ?message: String
21
- ) -> void
22
-
23
- def to_hash: -> {
24
- success: bool,
25
- data: Deeprails::APIResponse::Data,
26
- message: String
27
- }
28
-
29
- type data =
30
- {
31
- monitor_id: String,
32
- name: String,
33
- created_at: Time,
34
- description: String,
35
- monitor_status: Deeprails::Models::APIResponse::Data::monitor_status,
36
- updated_at: Time,
37
- user_id: String
38
- }
39
-
40
- class Data < Deeprails::Internal::Type::BaseModel
41
- attr_accessor monitor_id: String
42
-
43
- attr_accessor name: String
44
-
45
- attr_reader created_at: Time?
46
-
47
- def created_at=: (Time) -> Time
48
-
49
- attr_reader description: String?
50
-
51
- def description=: (String) -> String
52
-
53
- attr_reader monitor_status: Deeprails::Models::APIResponse::Data::monitor_status?
54
-
55
- def monitor_status=: (
56
- Deeprails::Models::APIResponse::Data::monitor_status
57
- ) -> Deeprails::Models::APIResponse::Data::monitor_status
58
-
59
- attr_reader updated_at: Time?
60
-
61
- def updated_at=: (Time) -> Time
62
-
63
- attr_reader user_id: String?
64
-
65
- def user_id=: (String) -> String
66
-
67
- def initialize: (
68
- monitor_id: String,
69
- name: String,
70
- ?created_at: Time,
71
- ?description: String,
72
- ?monitor_status: Deeprails::Models::APIResponse::Data::monitor_status,
73
- ?updated_at: Time,
74
- ?user_id: String
75
- ) -> void
76
-
77
- def to_hash: -> {
78
- monitor_id: String,
79
- name: String,
80
- created_at: Time,
81
- description: String,
82
- monitor_status: Deeprails::Models::APIResponse::Data::monitor_status,
83
- updated_at: Time,
84
- user_id: String
85
- }
86
-
87
- type monitor_status = :active | :inactive
88
-
89
- module MonitorStatus
90
- extend Deeprails::Internal::Type::Enum
91
-
92
- ACTIVE: :active
93
- INACTIVE: :inactive
94
-
95
- def self?.values: -> ::Array[Deeprails::Models::APIResponse::Data::monitor_status]
96
- end
97
- end
98
- end
99
- end
100
- end