noresponse 9.2.0 → 9.3.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8953e9efde2a1afc67354b14a01cbe5839454a6920f6603d2f072aaf5649d777
4
- data.tar.gz: 9bc93c249f17aaecf7eaff58c6fa7ffdb4c472b04d45856c8c09260269144acd
3
+ metadata.gz: 3aa78bd996400b2982cfc831b5363fb3b2952efe5ecf8f26d8a2e664eec7539f
4
+ data.tar.gz: 64f85917b39fb1b726994b728cf395eb707ba65ea5031f6cfac13c5599dcd3a9
5
5
  SHA512:
6
- metadata.gz: 61d8e3318514097c2d3ccd782403c75facdefd90ecc81ab90c193f001feb610c3badcf766da50b7ddc9b09982b876a81e21386e2d68e027dae0860e3ef0b5361
7
- data.tar.gz: 0f0778475a4f26e754af8139f13cae8d08a9e596aea104bc21b0ac0d252d5b03e43b92fa0985e38010bf0c4049402ab5ee1acbfbd51f997d5a032c89684ff9f0
6
+ metadata.gz: 495425bed3d71ea2b30cc0640a066bf2669f98af38cacc37979ad581124fbc396e8ba0fb90a90959c59ebdb3f1af113e7eba7dcd0acaeec0dc93855638f8dec8
7
+ data.tar.gz: 1388a47e8c71fd475aef54caf6a783da4d5c57d680c7aa5a00d4fbf4c3a58cf3d950b3d609f6274cf056a7c9be656b345a4ca70cf648595223dec7f7d05d8bd4
@@ -1548,7 +1548,7 @@ module NoResponse
1548
1548
  }
1549
1549
  def aggregate(request:, retries: nil, timeout_ms: nil, http_headers: nil)
1550
1550
  # aggregate - Count assessments by time, decision and reason
1551
- # Count this environment's assessments created in [from,to) by hour, day or week, grouped by up to two of decision, flow, recommendation, band, reason, lane, country, asn and list_match. Each assessment counts once, by its first answer; late results do not count it again and appear in late_flips. Optional metrics add a score histogram per flow, that histogram by the latest reported outcome, and late account decision changes. from and to start a bucket and cover at most 366 days (31 for hour buckets) inside the retention period. The filters are search's and describe the first answer: send them to search with revision first to list a cell's assessments. Counts hold no identifier, stay when an assessment or account is deleted, and report reasons by code and impact band. No Idempotency-Key.
1551
+ # Count this environment's assessments created in [from,to) by UTC hour, or by day or week from local midnight in time_zone (an IANA name, UTC by default; at most 92 days in a zone other than UTC), grouped by up to two of decision, flow, recommendation, band, reason, lane, country, asn and list_match. Each assessment counts once, by its first answer; late results do not count it again and appear in late_flips. Optional metrics add a score histogram per flow, that histogram by the latest reported outcome, and late account decision changes. from and to start a bucket and cover at most 366 days (31 for hour buckets) inside the retention period. The filters are search's and describe the first answer: send them to search with revision first to list a cell's assessments. Counts hold no identifier, stay when an assessment or account is deleted, and report reasons by code and impact band. No Idempotency-Key.
1552
1552
  url, params = @sdk_configuration.get_server_details
1553
1553
  base_url = Utils.template_url(url, params)
1554
1554
  url = "#{base_url}/v1/assessments/aggregate"
@@ -9,6 +9,7 @@ module NoResponse
9
9
  extend T::Sig
10
10
  include Crystalline::MetadataFields
11
11
 
12
+ # The bucket's first instant, in UTC. A day or week bucket in a time zone starts at local midnight there, so in Asia/Tokyo a day starts at 15:00Z the day before.
12
13
  field(
13
14
  :start,
14
15
  ::String,
@@ -12,7 +12,7 @@ module NoResponse
12
12
  field :from, ::String, {'format_json': {'letter_case': ::NoResponse::Utils.field_name("from"), required: true}}
13
13
 
14
14
  field :to, ::String, {'format_json': {'letter_case': ::NoResponse::Utils.field_name("to"), required: true}}
15
- # The period each count covers, in UTC; a week starts on Monday.
15
+ # The period each count covers: an hour, or a day or a week (from Monday) in time_zone. Hour buckets are whole UTC hours in any time zone.
16
16
  field(
17
17
  :bucket,
18
18
  Models::Shared::Bucket,
@@ -36,6 +36,12 @@ module NoResponse
36
36
  Crystalline::Array.new(Models::Shared::AssessmentAggregateMetric),
37
37
  {'format_json': {'letter_case': ::NoResponse::Utils.field_name("metrics"), required: true}}
38
38
  )
39
+ # The time zone whose local midnight started each day and week bucket, as requested; UTC when the request named none.
40
+ field(
41
+ :time_zone,
42
+ ::String,
43
+ {'format_json': {'letter_case': ::NoResponse::Utils.field_name("time_zone"), required: true}}
44
+ )
39
45
  # true when more groups had counts than limit allowed.
40
46
  field(
41
47
  :groups_truncated,
@@ -74,6 +80,7 @@ module NoResponse
74
80
  bucket: Models::Shared::Bucket,
75
81
  group_by: T::Array[Models::Shared::AggregateDimension],
76
82
  metrics: T::Array[Models::Shared::AssessmentAggregateMetric],
83
+ time_zone: ::String,
77
84
  groups_truncated: T::Boolean,
78
85
  buckets: T::Array[Models::Shared::AggregateBucket],
79
86
  schema_version: ::String,
@@ -88,6 +95,7 @@ module NoResponse
88
95
  bucket:,
89
96
  group_by:,
90
97
  metrics:,
98
+ time_zone:,
91
99
  groups_truncated:,
92
100
  buckets:,
93
101
  schema_version: "1",
@@ -99,6 +107,7 @@ module NoResponse
99
107
  @bucket = bucket
100
108
  @group_by = group_by
101
109
  @metrics = metrics
110
+ @time_zone = time_zone
102
111
  @groups_truncated = groups_truncated
103
112
  @buckets = buckets
104
113
  unless schema_version == "1"
@@ -118,6 +127,7 @@ module NoResponse
118
127
  return false unless @bucket == other.bucket
119
128
  return false unless @group_by == other.group_by
120
129
  return false unless @metrics == other.metrics
130
+ return false unless @time_zone == other.time_zone
121
131
  return false unless @groups_truncated == other.groups_truncated
122
132
  return false unless @buckets == other.buckets
123
133
  return false unless @schema_version == other.schema_version
@@ -36,6 +36,12 @@ class NoResponse::Models::Shared::AssessmentAggregate
36
36
  def metrics=(str_)
37
37
  end
38
38
 
39
+ def time_zone
40
+ end
41
+
42
+ def time_zone=(str_)
43
+ end
44
+
39
45
  def groups_truncated
40
46
  end
41
47
 
@@ -4,7 +4,7 @@
4
4
  module NoResponse
5
5
  module Models
6
6
  module Shared
7
- # Count this environment's assessments created in [from,to) by bucket, from counts kept as each assessment is first answered, not by scanning assessments. Each assessment counts once, by its first answer (the answer served when it was first answered); later revisions and late results do not count it again, and late_flips counts its later account decision changes. from and to start a bucket (an hour, a UTC day, or a week from Monday 00:00 UTC), cover at most 366 days (31 for hour buckets) and from is inside the retention period. The filters are POST /v1/assessments/search's and describe the first answer, so a cell drills down to search with the same filters, revision first and the cell's bucket as from and to. Counts hold no identifier and stay when an assessment or account is deleted or erased; they expire with retention and go with the workspace. Reasons are counted by code and impact band, not by weight. No Idempotency-Key. Select retained_first_answers for exact facet filters and pairs over retained detail. This mode supports count, score_histogram and score_outcomes, and refuses late_flips. It has a 31-day and 100000-record work budget.
7
+ # Count this environment's assessments created in [from,to) by bucket, from counts kept as each assessment is first answered, not by scanning assessments. Each assessment counts once, by its first answer (the answer served when it was first answered); later revisions and late results do not count it again, and late_flips counts its later account decision changes. from and to start a bucket (an hour, or a day or a week from Monday that starts at midnight in time_zone, UTC by default), cover at most 366 days (31 for hour buckets, 92 for day and week buckets in a time_zone other than UTC) and from is inside the retention period. The filters are POST /v1/assessments/search's and describe the first answer, so a cell drills down to search with the same filters, revision first and the cell's bucket as from and to. Counts hold no identifier and stay when an assessment or account is deleted or erased; they expire with retention and go with the workspace. Reasons are counted by code and impact band, not by weight. No Idempotency-Key. Select retained_first_answers for exact facet filters and pairs over retained detail. This mode supports count, score_histogram and score_outcomes, and refuses late_flips. It has a 31-day and 100000-record work budget.
8
8
  class AssessmentAggregateRequest
9
9
  extend T::Sig
10
10
  include Crystalline::MetadataFields
@@ -13,7 +13,7 @@ module NoResponse
13
13
  field :from, ::String, {'format_json': {'letter_case': ::NoResponse::Utils.field_name("from"), required: true}}
14
14
  # The end, excluded: the start of the bucket after the last.
15
15
  field :to, ::String, {'format_json': {'letter_case': ::NoResponse::Utils.field_name("to"), required: true}}
16
- # The period each count covers, in UTC; a week starts on Monday.
16
+ # The period each count covers: an hour, or a day or a week (from Monday) in time_zone. Hour buckets are whole UTC hours in any time zone.
17
17
  field(
18
18
  :bucket,
19
19
  Models::Shared::Bucket,
@@ -182,6 +182,12 @@ module NoResponse
182
182
  }
183
183
  }
184
184
  )
185
+ # The IANA time zone whose local midnight starts each day and week bucket, such as Europe/London or Asia/Kolkata; daylight saving changes make those days 23 or 25 hours long. A name the zone database does not know is refused (400 invalid_request naming time_zone). Day and week buckets in a zone other than UTC cover at most 92 days (400 invalid_request naming to); a year of them reads too many hourly counts to answer in time. Hour buckets stay whole UTC hours. Bucket starts, from and to stay instants. With the default population, a zone whose local midnight falls inside a UTC hour (a half-hour offset such as Asia/Kolkata) is refused for day and week buckets, as those counts are kept by the hour; retained_first_answers counts it.
186
+ field(
187
+ :time_zone,
188
+ Crystalline::Nilable.new(::String),
189
+ {'format_json': {'letter_case': ::NoResponse::Utils.field_name("time_zone")}}
190
+ )
185
191
  # The most groups answered: the largest over the whole range, then by value. groups_truncated says when there were more.
186
192
  field(
187
193
  :limit,
@@ -211,6 +217,7 @@ module NoResponse
211
217
  score_min: T.nilable(::Integer),
212
218
  score_max: T.nilable(::Integer),
213
219
  list_match: T.nilable(Models::Shared::ListMatch),
220
+ time_zone: T.nilable(::String),
214
221
  limit: T.nilable(::Integer)
215
222
  )
216
223
  .void
@@ -236,6 +243,7 @@ module NoResponse
236
243
  score_min: nil,
237
244
  score_max: nil,
238
245
  list_match: nil,
246
+ time_zone: "UTC",
239
247
  limit: 20
240
248
  )
241
249
  @from = from
@@ -258,6 +266,7 @@ module NoResponse
258
266
  @score_min = score_min
259
267
  @score_max = score_max
260
268
  @list_match = list_match
269
+ @time_zone = time_zone
261
270
  @limit = limit
262
271
  end
263
272
 
@@ -284,6 +293,7 @@ module NoResponse
284
293
  return false unless @score_min == other.score_min
285
294
  return false unless @score_max == other.score_max
286
295
  return false unless @list_match == other.list_match
296
+ return false unless @time_zone == other.time_zone
287
297
  return false unless @limit == other.limit
288
298
  true
289
299
  end
@@ -126,6 +126,12 @@ class NoResponse::Models::Shared::AssessmentAggregateRequest
126
126
  def list_match=(str_)
127
127
  end
128
128
 
129
+ def time_zone
130
+ end
131
+
132
+ def time_zone=(str_)
133
+ end
134
+
129
135
  def limit
130
136
  end
131
137
 
@@ -4,7 +4,7 @@
4
4
  module NoResponse
5
5
  module Models
6
6
  module Shared
7
- # Bucket - The period each count covers, in UTC; a week starts on Monday.
7
+ # Bucket - The period each count covers: an hour, or a day or a week (from Monday) in time_zone. Hour buckets are whole UTC hours in any time zone.
8
8
  class Bucket
9
9
  include ::Crystalline::Enum
10
10
  enums do
@@ -95,9 +95,9 @@ module NoResponse
95
95
 
96
96
  @language = "ruby"
97
97
  @openapi_doc_version = "1"
98
- @sdk_version = "9.2.0"
98
+ @sdk_version = "9.3.0"
99
99
  @gen_version = "internal"
100
- @user_agent = "noresponse-sdk/ruby 9.2.0 internal 1 noresponse"
100
+ @user_agent = "noresponse-sdk/ruby 9.3.0 internal 1 noresponse"
101
101
  end
102
102
 
103
103
  sig { returns([String, T::Hash[Symbol, String]]) }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: noresponse
3
3
  version: !ruby/object:Gem::Version
4
- version: 9.2.0
4
+ version: 9.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - NoResponse