context.dev 2.11.0 → 2.13.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 (70) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +18 -0
  3. data/README.md +4 -4
  4. data/lib/context_dev/models/ai_extract_product_response.rb +102 -2
  5. data/lib/context_dev/models/ai_extract_products_response.rb +102 -2
  6. data/lib/context_dev/models/batch_get_results_response.rb +56 -1
  7. data/lib/context_dev/models/batch_submit_response.rb +54 -1
  8. data/lib/context_dev/models/brand_retrieve_response.rb +58 -3
  9. data/lib/context_dev/models/brand_retrieve_simplified_response.rb +55 -1
  10. data/lib/context_dev/models/news_search_params.rb +1 -0
  11. data/lib/context_dev/models/web_extract_fonts_response.rb +54 -1
  12. data/lib/context_dev/models/web_extract_params.rb +169 -6
  13. data/lib/context_dev/models/web_extract_response.rb +139 -2
  14. data/lib/context_dev/models/web_extract_styleguide_response.rb +55 -1
  15. data/lib/context_dev/models/web_screenshot_response.rb +54 -1
  16. data/lib/context_dev/models/web_search_response.rb +54 -1
  17. data/lib/context_dev/models/web_web_crawl_md_params.rb +7 -5
  18. data/lib/context_dev/models/web_web_crawl_md_response.rb +54 -1
  19. data/lib/context_dev/models/web_web_scrape_html_params.rb +99 -3
  20. data/lib/context_dev/models/web_web_scrape_html_response.rb +54 -1
  21. data/lib/context_dev/models/web_web_scrape_images_params.rb +99 -3
  22. data/lib/context_dev/models/web_web_scrape_images_response.rb +139 -1
  23. data/lib/context_dev/models/web_web_scrape_md_params.rb +99 -3
  24. data/lib/context_dev/models/web_web_scrape_md_response.rb +54 -1
  25. data/lib/context_dev/resources/web.rb +9 -7
  26. data/lib/context_dev/version.rb +1 -1
  27. data/rbi/context_dev/models/ai_extract_product_response.rbi +218 -0
  28. data/rbi/context_dev/models/ai_extract_products_response.rbi +218 -0
  29. data/rbi/context_dev/models/batch_get_results_response.rbi +121 -0
  30. data/rbi/context_dev/models/batch_submit_response.rbi +117 -0
  31. data/rbi/context_dev/models/brand_retrieve_response.rbi +123 -2
  32. data/rbi/context_dev/models/brand_retrieve_simplified_response.rbi +121 -0
  33. data/rbi/context_dev/models/news_search_params.rbi +5 -0
  34. data/rbi/context_dev/models/web_extract_fonts_response.rbi +119 -0
  35. data/rbi/context_dev/models/web_extract_params.rbi +353 -8
  36. data/rbi/context_dev/models/web_extract_response.rbi +289 -3
  37. data/rbi/context_dev/models/web_extract_styleguide_response.rbi +119 -0
  38. data/rbi/context_dev/models/web_screenshot_response.rbi +117 -0
  39. data/rbi/context_dev/models/web_search_response.rbi +117 -0
  40. data/rbi/context_dev/models/web_web_crawl_md_params.rbi +10 -6
  41. data/rbi/context_dev/models/web_web_crawl_md_response.rbi +117 -0
  42. data/rbi/context_dev/models/web_web_scrape_html_params.rbi +218 -4
  43. data/rbi/context_dev/models/web_web_scrape_html_response.rbi +119 -0
  44. data/rbi/context_dev/models/web_web_scrape_images_params.rbi +218 -4
  45. data/rbi/context_dev/models/web_web_scrape_images_response.rbi +288 -0
  46. data/rbi/context_dev/models/web_web_scrape_md_params.rbi +218 -4
  47. data/rbi/context_dev/models/web_web_scrape_md_response.rbi +117 -0
  48. data/rbi/context_dev/resources/web.rbi +31 -10
  49. data/sig/context_dev/models/ai_extract_product_response.rbs +79 -0
  50. data/sig/context_dev/models/ai_extract_products_response.rbs +79 -0
  51. data/sig/context_dev/models/batch_get_results_response.rbs +39 -0
  52. data/sig/context_dev/models/batch_submit_response.rbs +39 -0
  53. data/sig/context_dev/models/brand_retrieve_response.rbs +39 -0
  54. data/sig/context_dev/models/brand_retrieve_simplified_response.rbs +39 -0
  55. data/sig/context_dev/models/news_search_params.rbs +2 -0
  56. data/sig/context_dev/models/web_extract_fonts_response.rbs +39 -0
  57. data/sig/context_dev/models/web_extract_params.rbs +117 -0
  58. data/sig/context_dev/models/web_extract_response.rbs +120 -3
  59. data/sig/context_dev/models/web_extract_styleguide_response.rbs +39 -0
  60. data/sig/context_dev/models/web_screenshot_response.rbs +39 -0
  61. data/sig/context_dev/models/web_search_response.rbs +39 -0
  62. data/sig/context_dev/models/web_web_crawl_md_response.rbs +39 -0
  63. data/sig/context_dev/models/web_web_scrape_html_params.rbs +74 -0
  64. data/sig/context_dev/models/web_web_scrape_html_response.rbs +39 -0
  65. data/sig/context_dev/models/web_web_scrape_images_params.rbs +74 -0
  66. data/sig/context_dev/models/web_web_scrape_images_response.rbs +117 -0
  67. data/sig/context_dev/models/web_web_scrape_md_params.rbs +74 -0
  68. data/sig/context_dev/models/web_web_scrape_md_response.rbs +39 -0
  69. data/sig/context_dev/resources/web.rbs +1 -0
  70. metadata +2 -2
@@ -130,6 +130,24 @@ module ContextDev
130
130
  )
131
131
  end
132
132
 
133
+ # Cache outcome for this response. Composite responses are hits only when every
134
+ # cache-controlled fetch contributing to the output was a hit; age_ms is the
135
+ # oldest contributing hit.
136
+ sig do
137
+ returns(
138
+ ContextDev::Models::BatchGetResultsResponse::Data::Ok::CacheMetadata
139
+ )
140
+ end
141
+ attr_reader :cache_metadata
142
+
143
+ sig do
144
+ params(
145
+ cache_metadata:
146
+ ContextDev::Models::BatchGetResultsResponse::Data::Ok::CacheMetadata::OrHash
147
+ ).void
148
+ end
149
+ attr_writer :cache_metadata
150
+
133
151
  # URL the content was read from, after redirects.
134
152
  sig { returns(String) }
135
153
  attr_accessor :final_url
@@ -202,6 +220,8 @@ module ContextDev
202
220
  # A page the batch fetched successfully.
203
221
  sig do
204
222
  params(
223
+ cache_metadata:
224
+ ContextDev::Models::BatchGetResultsResponse::Data::Ok::CacheMetadata::OrHash,
205
225
  final_url: String,
206
226
  http_status: T.nilable(Integer),
207
227
  metadata:
@@ -216,6 +236,10 @@ module ContextDev
216
236
  ).returns(T.attached_class)
217
237
  end
218
238
  def self.new(
239
+ # Cache outcome for this response. Composite responses are hits only when every
240
+ # cache-controlled fetch contributing to the output was a hit; age_ms is the
241
+ # oldest contributing hit.
242
+ cache_metadata:,
219
243
  # URL the content was read from, after redirects.
220
244
  final_url:,
221
245
  # HTTP status of the final response, when known.
@@ -244,6 +268,8 @@ module ContextDev
244
268
  sig do
245
269
  override.returns(
246
270
  {
271
+ cache_metadata:
272
+ ContextDev::Models::BatchGetResultsResponse::Data::Ok::CacheMetadata,
247
273
  final_url: String,
248
274
  http_status: T.nilable(Integer),
249
275
  metadata:
@@ -261,6 +287,101 @@ module ContextDev
261
287
  def to_hash
262
288
  end
263
289
 
290
+ class CacheMetadata < ContextDev::Internal::Type::BaseModel
291
+ OrHash =
292
+ T.type_alias do
293
+ T.any(
294
+ ContextDev::Models::BatchGetResultsResponse::Data::Ok::CacheMetadata,
295
+ ContextDev::Internal::AnyHash
296
+ )
297
+ end
298
+
299
+ # Age of the cached data in milliseconds. Zero for miss and zdr responses.
300
+ sig { returns(Integer) }
301
+ attr_accessor :age_ms
302
+
303
+ # Whether the response was served from cache, required fresh work, or honored
304
+ # zero-data-retention cache bypass.
305
+ sig do
306
+ returns(
307
+ ContextDev::Models::BatchGetResultsResponse::Data::Ok::CacheMetadata::Status::TaggedSymbol
308
+ )
309
+ end
310
+ attr_accessor :status
311
+
312
+ # Cache outcome for this response. Composite responses are hits only when every
313
+ # cache-controlled fetch contributing to the output was a hit; age_ms is the
314
+ # oldest contributing hit.
315
+ sig do
316
+ params(
317
+ age_ms: Integer,
318
+ status:
319
+ ContextDev::Models::BatchGetResultsResponse::Data::Ok::CacheMetadata::Status::OrSymbol
320
+ ).returns(T.attached_class)
321
+ end
322
+ def self.new(
323
+ # Age of the cached data in milliseconds. Zero for miss and zdr responses.
324
+ age_ms:,
325
+ # Whether the response was served from cache, required fresh work, or honored
326
+ # zero-data-retention cache bypass.
327
+ status:
328
+ )
329
+ end
330
+
331
+ sig do
332
+ override.returns(
333
+ {
334
+ age_ms: Integer,
335
+ status:
336
+ ContextDev::Models::BatchGetResultsResponse::Data::Ok::CacheMetadata::Status::TaggedSymbol
337
+ }
338
+ )
339
+ end
340
+ def to_hash
341
+ end
342
+
343
+ # Whether the response was served from cache, required fresh work, or honored
344
+ # zero-data-retention cache bypass.
345
+ module Status
346
+ extend ContextDev::Internal::Type::Enum
347
+
348
+ TaggedSymbol =
349
+ T.type_alias do
350
+ T.all(
351
+ Symbol,
352
+ ContextDev::Models::BatchGetResultsResponse::Data::Ok::CacheMetadata::Status
353
+ )
354
+ end
355
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
356
+
357
+ HIT =
358
+ T.let(
359
+ :hit,
360
+ ContextDev::Models::BatchGetResultsResponse::Data::Ok::CacheMetadata::Status::TaggedSymbol
361
+ )
362
+ MISS =
363
+ T.let(
364
+ :miss,
365
+ ContextDev::Models::BatchGetResultsResponse::Data::Ok::CacheMetadata::Status::TaggedSymbol
366
+ )
367
+ ZDR =
368
+ T.let(
369
+ :zdr,
370
+ ContextDev::Models::BatchGetResultsResponse::Data::Ok::CacheMetadata::Status::TaggedSymbol
371
+ )
372
+
373
+ sig do
374
+ override.returns(
375
+ T::Array[
376
+ ContextDev::Models::BatchGetResultsResponse::Data::Ok::CacheMetadata::Status::TaggedSymbol
377
+ ]
378
+ )
379
+ end
380
+ def self.values
381
+ end
382
+ end
383
+ end
384
+
264
385
  class Metadata < ContextDev::Internal::Type::BaseModel
265
386
  OrHash =
266
387
  T.type_alias do
@@ -15,6 +15,20 @@ module ContextDev
15
15
  sig { returns(String) }
16
16
  attr_accessor :id
17
17
 
18
+ # Cache outcome for this response. Composite responses are hits only when every
19
+ # cache-controlled fetch contributing to the output was a hit; age_ms is the
20
+ # oldest contributing hit.
21
+ sig { returns(ContextDev::Models::BatchSubmitResponse::CacheMetadata) }
22
+ attr_reader :cache_metadata
23
+
24
+ sig do
25
+ params(
26
+ cache_metadata:
27
+ ContextDev::Models::BatchSubmitResponse::CacheMetadata::OrHash
28
+ ).void
29
+ end
30
+ attr_writer :cache_metadata
31
+
18
32
  # The crawl controls as submitted, so the limits requested can be compared against
19
33
  # what the crawl reached.
20
34
  sig { returns(T.nilable(ContextDev::CrawlControls)) }
@@ -98,6 +112,8 @@ module ContextDev
98
112
  sig do
99
113
  params(
100
114
  id: String,
115
+ cache_metadata:
116
+ ContextDev::Models::BatchSubmitResponse::CacheMetadata::OrHash,
101
117
  crawl: T.nilable(ContextDev::CrawlControls::OrHash),
102
118
  created_at: String,
103
119
  credits: ContextDev::Models::BatchSubmitResponse::Credits::OrHash,
@@ -118,6 +134,10 @@ module ContextDev
118
134
  def self.new(
119
135
  # Batch ID. Poll GET /batch/{batch_id} with it.
120
136
  id:,
137
+ # Cache outcome for this response. Composite responses are hits only when every
138
+ # cache-controlled fetch contributing to the output was a hit; age_ms is the
139
+ # oldest contributing hit.
140
+ cache_metadata:,
121
141
  # The crawl controls as submitted, so the limits requested can be compared against
122
142
  # what the crawl reached.
123
143
  crawl:,
@@ -149,6 +169,8 @@ module ContextDev
149
169
  override.returns(
150
170
  {
151
171
  id: String,
172
+ cache_metadata:
173
+ ContextDev::Models::BatchSubmitResponse::CacheMetadata,
152
174
  crawl: T.nilable(ContextDev::CrawlControls),
153
175
  created_at: String,
154
176
  credits: ContextDev::Models::BatchSubmitResponse::Credits,
@@ -169,6 +191,101 @@ module ContextDev
169
191
  def to_hash
170
192
  end
171
193
 
194
+ class CacheMetadata < ContextDev::Internal::Type::BaseModel
195
+ OrHash =
196
+ T.type_alias do
197
+ T.any(
198
+ ContextDev::Models::BatchSubmitResponse::CacheMetadata,
199
+ ContextDev::Internal::AnyHash
200
+ )
201
+ end
202
+
203
+ # Age of the cached data in milliseconds. Zero for miss and zdr responses.
204
+ sig { returns(Integer) }
205
+ attr_accessor :age_ms
206
+
207
+ # Whether the response was served from cache, required fresh work, or honored
208
+ # zero-data-retention cache bypass.
209
+ sig do
210
+ returns(
211
+ ContextDev::Models::BatchSubmitResponse::CacheMetadata::Status::TaggedSymbol
212
+ )
213
+ end
214
+ attr_accessor :status
215
+
216
+ # Cache outcome for this response. Composite responses are hits only when every
217
+ # cache-controlled fetch contributing to the output was a hit; age_ms is the
218
+ # oldest contributing hit.
219
+ sig do
220
+ params(
221
+ age_ms: Integer,
222
+ status:
223
+ ContextDev::Models::BatchSubmitResponse::CacheMetadata::Status::OrSymbol
224
+ ).returns(T.attached_class)
225
+ end
226
+ def self.new(
227
+ # Age of the cached data in milliseconds. Zero for miss and zdr responses.
228
+ age_ms:,
229
+ # Whether the response was served from cache, required fresh work, or honored
230
+ # zero-data-retention cache bypass.
231
+ status:
232
+ )
233
+ end
234
+
235
+ sig do
236
+ override.returns(
237
+ {
238
+ age_ms: Integer,
239
+ status:
240
+ ContextDev::Models::BatchSubmitResponse::CacheMetadata::Status::TaggedSymbol
241
+ }
242
+ )
243
+ end
244
+ def to_hash
245
+ end
246
+
247
+ # Whether the response was served from cache, required fresh work, or honored
248
+ # zero-data-retention cache bypass.
249
+ module Status
250
+ extend ContextDev::Internal::Type::Enum
251
+
252
+ TaggedSymbol =
253
+ T.type_alias do
254
+ T.all(
255
+ Symbol,
256
+ ContextDev::Models::BatchSubmitResponse::CacheMetadata::Status
257
+ )
258
+ end
259
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
260
+
261
+ HIT =
262
+ T.let(
263
+ :hit,
264
+ ContextDev::Models::BatchSubmitResponse::CacheMetadata::Status::TaggedSymbol
265
+ )
266
+ MISS =
267
+ T.let(
268
+ :miss,
269
+ ContextDev::Models::BatchSubmitResponse::CacheMetadata::Status::TaggedSymbol
270
+ )
271
+ ZDR =
272
+ T.let(
273
+ :zdr,
274
+ ContextDev::Models::BatchSubmitResponse::CacheMetadata::Status::TaggedSymbol
275
+ )
276
+
277
+ sig do
278
+ override.returns(
279
+ T::Array[
280
+ ContextDev::Models::BatchSubmitResponse::CacheMetadata::Status::TaggedSymbol
281
+ ]
282
+ )
283
+ end
284
+ def self.values
285
+ end
286
+ end
287
+ end
288
+
172
289
  class Credits < ContextDev::Internal::Type::BaseModel
173
290
  OrHash =
174
291
  T.type_alias do
@@ -11,6 +11,20 @@ module ContextDev
11
11
  )
12
12
  end
13
13
 
14
+ # Cache outcome for this response. Composite responses are hits only when every
15
+ # cache-controlled fetch contributing to the output was a hit; age_ms is the
16
+ # oldest contributing hit.
17
+ sig { returns(ContextDev::Models::BrandRetrieveResponse::CacheMetadata) }
18
+ attr_reader :cache_metadata
19
+
20
+ sig do
21
+ params(
22
+ cache_metadata:
23
+ ContextDev::Models::BrandRetrieveResponse::CacheMetadata::OrHash
24
+ ).void
25
+ end
26
+ attr_writer :cache_metadata
27
+
14
28
  # Detailed brand information
15
29
  sig do
16
30
  returns(T.nilable(ContextDev::Models::BrandRetrieveResponse::Brand))
@@ -57,6 +71,8 @@ module ContextDev
57
71
 
58
72
  sig do
59
73
  params(
74
+ cache_metadata:
75
+ ContextDev::Models::BrandRetrieveResponse::CacheMetadata::OrHash,
60
76
  brand: ContextDev::Models::BrandRetrieveResponse::Brand::OrHash,
61
77
  code: Integer,
62
78
  key_metadata:
@@ -65,6 +81,10 @@ module ContextDev
65
81
  ).returns(T.attached_class)
66
82
  end
67
83
  def self.new(
84
+ # Cache outcome for this response. Composite responses are hits only when every
85
+ # cache-controlled fetch contributing to the output was a hit; age_ms is the
86
+ # oldest contributing hit.
87
+ cache_metadata:,
68
88
  # Detailed brand information
69
89
  brand: nil,
70
90
  # HTTP status code
@@ -80,6 +100,8 @@ module ContextDev
80
100
  sig do
81
101
  override.returns(
82
102
  {
103
+ cache_metadata:
104
+ ContextDev::Models::BrandRetrieveResponse::CacheMetadata,
83
105
  brand: ContextDev::Models::BrandRetrieveResponse::Brand,
84
106
  code: Integer,
85
107
  key_metadata:
@@ -91,6 +113,101 @@ module ContextDev
91
113
  def to_hash
92
114
  end
93
115
 
116
+ class CacheMetadata < ContextDev::Internal::Type::BaseModel
117
+ OrHash =
118
+ T.type_alias do
119
+ T.any(
120
+ ContextDev::Models::BrandRetrieveResponse::CacheMetadata,
121
+ ContextDev::Internal::AnyHash
122
+ )
123
+ end
124
+
125
+ # Age of the cached data in milliseconds. Zero for miss and zdr responses.
126
+ sig { returns(Integer) }
127
+ attr_accessor :age_ms
128
+
129
+ # Whether the response was served from cache, required fresh work, or honored
130
+ # zero-data-retention cache bypass.
131
+ sig do
132
+ returns(
133
+ ContextDev::Models::BrandRetrieveResponse::CacheMetadata::Status::TaggedSymbol
134
+ )
135
+ end
136
+ attr_accessor :status
137
+
138
+ # Cache outcome for this response. Composite responses are hits only when every
139
+ # cache-controlled fetch contributing to the output was a hit; age_ms is the
140
+ # oldest contributing hit.
141
+ sig do
142
+ params(
143
+ age_ms: Integer,
144
+ status:
145
+ ContextDev::Models::BrandRetrieveResponse::CacheMetadata::Status::OrSymbol
146
+ ).returns(T.attached_class)
147
+ end
148
+ def self.new(
149
+ # Age of the cached data in milliseconds. Zero for miss and zdr responses.
150
+ age_ms:,
151
+ # Whether the response was served from cache, required fresh work, or honored
152
+ # zero-data-retention cache bypass.
153
+ status:
154
+ )
155
+ end
156
+
157
+ sig do
158
+ override.returns(
159
+ {
160
+ age_ms: Integer,
161
+ status:
162
+ ContextDev::Models::BrandRetrieveResponse::CacheMetadata::Status::TaggedSymbol
163
+ }
164
+ )
165
+ end
166
+ def to_hash
167
+ end
168
+
169
+ # Whether the response was served from cache, required fresh work, or honored
170
+ # zero-data-retention cache bypass.
171
+ module Status
172
+ extend ContextDev::Internal::Type::Enum
173
+
174
+ TaggedSymbol =
175
+ T.type_alias do
176
+ T.all(
177
+ Symbol,
178
+ ContextDev::Models::BrandRetrieveResponse::CacheMetadata::Status
179
+ )
180
+ end
181
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
182
+
183
+ HIT =
184
+ T.let(
185
+ :hit,
186
+ ContextDev::Models::BrandRetrieveResponse::CacheMetadata::Status::TaggedSymbol
187
+ )
188
+ MISS =
189
+ T.let(
190
+ :miss,
191
+ ContextDev::Models::BrandRetrieveResponse::CacheMetadata::Status::TaggedSymbol
192
+ )
193
+ ZDR =
194
+ T.let(
195
+ :zdr,
196
+ ContextDev::Models::BrandRetrieveResponse::CacheMetadata::Status::TaggedSymbol
197
+ )
198
+
199
+ sig do
200
+ override.returns(
201
+ T::Array[
202
+ ContextDev::Models::BrandRetrieveResponse::CacheMetadata::Status::TaggedSymbol
203
+ ]
204
+ )
205
+ end
206
+ def self.values
207
+ end
208
+ end
209
+ end
210
+
94
211
  class Brand < ContextDev::Internal::Type::BaseModel
95
212
  OrHash =
96
213
  T.type_alias do
@@ -238,7 +355,9 @@ module ContextDev
238
355
  end
239
356
  attr_writer :links
240
357
 
241
- # An array of logos associated with the brand
358
+ # An array of logos associated with the brand. When a similarly shaped SVG variant
359
+ # exists, it is returned ahead of its raster equivalent; otherwise relevance order
360
+ # is preserved
242
361
  sig do
243
362
  returns(
244
363
  T.nilable(
@@ -389,7 +508,9 @@ module ContextDev
389
508
  is_nsfw: nil,
390
509
  # Important website links for the brand
391
510
  links: nil,
392
- # An array of logos associated with the brand
511
+ # An array of logos associated with the brand. When a similarly shaped SVG variant
512
+ # exists, it is returned ahead of its raster equivalent; otherwise relevance order
513
+ # is preserved
393
514
  logos: nil,
394
515
  # Company phone number
395
516
  phone: nil,
@@ -11,6 +11,24 @@ module ContextDev
11
11
  )
12
12
  end
13
13
 
14
+ # Cache outcome for this response. Composite responses are hits only when every
15
+ # cache-controlled fetch contributing to the output was a hit; age_ms is the
16
+ # oldest contributing hit.
17
+ sig do
18
+ returns(
19
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::CacheMetadata
20
+ )
21
+ end
22
+ attr_reader :cache_metadata
23
+
24
+ sig do
25
+ params(
26
+ cache_metadata:
27
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::CacheMetadata::OrHash
28
+ ).void
29
+ end
30
+ attr_writer :cache_metadata
31
+
14
32
  # Simplified brand information
15
33
  sig do
16
34
  returns(
@@ -62,6 +80,8 @@ module ContextDev
62
80
 
63
81
  sig do
64
82
  params(
83
+ cache_metadata:
84
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::CacheMetadata::OrHash,
65
85
  brand:
66
86
  ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand::OrHash,
67
87
  code: Integer,
@@ -71,6 +91,10 @@ module ContextDev
71
91
  ).returns(T.attached_class)
72
92
  end
73
93
  def self.new(
94
+ # Cache outcome for this response. Composite responses are hits only when every
95
+ # cache-controlled fetch contributing to the output was a hit; age_ms is the
96
+ # oldest contributing hit.
97
+ cache_metadata:,
74
98
  # Simplified brand information
75
99
  brand: nil,
76
100
  # HTTP status code of the response
@@ -86,6 +110,8 @@ module ContextDev
86
110
  sig do
87
111
  override.returns(
88
112
  {
113
+ cache_metadata:
114
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::CacheMetadata,
89
115
  brand: ContextDev::Models::BrandRetrieveSimplifiedResponse::Brand,
90
116
  code: Integer,
91
117
  key_metadata:
@@ -97,6 +123,101 @@ module ContextDev
97
123
  def to_hash
98
124
  end
99
125
 
126
+ class CacheMetadata < ContextDev::Internal::Type::BaseModel
127
+ OrHash =
128
+ T.type_alias do
129
+ T.any(
130
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::CacheMetadata,
131
+ ContextDev::Internal::AnyHash
132
+ )
133
+ end
134
+
135
+ # Age of the cached data in milliseconds. Zero for miss and zdr responses.
136
+ sig { returns(Integer) }
137
+ attr_accessor :age_ms
138
+
139
+ # Whether the response was served from cache, required fresh work, or honored
140
+ # zero-data-retention cache bypass.
141
+ sig do
142
+ returns(
143
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::CacheMetadata::Status::TaggedSymbol
144
+ )
145
+ end
146
+ attr_accessor :status
147
+
148
+ # Cache outcome for this response. Composite responses are hits only when every
149
+ # cache-controlled fetch contributing to the output was a hit; age_ms is the
150
+ # oldest contributing hit.
151
+ sig do
152
+ params(
153
+ age_ms: Integer,
154
+ status:
155
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::CacheMetadata::Status::OrSymbol
156
+ ).returns(T.attached_class)
157
+ end
158
+ def self.new(
159
+ # Age of the cached data in milliseconds. Zero for miss and zdr responses.
160
+ age_ms:,
161
+ # Whether the response was served from cache, required fresh work, or honored
162
+ # zero-data-retention cache bypass.
163
+ status:
164
+ )
165
+ end
166
+
167
+ sig do
168
+ override.returns(
169
+ {
170
+ age_ms: Integer,
171
+ status:
172
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::CacheMetadata::Status::TaggedSymbol
173
+ }
174
+ )
175
+ end
176
+ def to_hash
177
+ end
178
+
179
+ # Whether the response was served from cache, required fresh work, or honored
180
+ # zero-data-retention cache bypass.
181
+ module Status
182
+ extend ContextDev::Internal::Type::Enum
183
+
184
+ TaggedSymbol =
185
+ T.type_alias do
186
+ T.all(
187
+ Symbol,
188
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::CacheMetadata::Status
189
+ )
190
+ end
191
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
192
+
193
+ HIT =
194
+ T.let(
195
+ :hit,
196
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::CacheMetadata::Status::TaggedSymbol
197
+ )
198
+ MISS =
199
+ T.let(
200
+ :miss,
201
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::CacheMetadata::Status::TaggedSymbol
202
+ )
203
+ ZDR =
204
+ T.let(
205
+ :zdr,
206
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::CacheMetadata::Status::TaggedSymbol
207
+ )
208
+
209
+ sig do
210
+ override.returns(
211
+ T::Array[
212
+ ContextDev::Models::BrandRetrieveSimplifiedResponse::CacheMetadata::Status::TaggedSymbol
213
+ ]
214
+ )
215
+ end
216
+ def self.values
217
+ end
218
+ end
219
+ end
220
+
100
221
  class Brand < ContextDev::Internal::Type::BaseModel
101
222
  OrHash =
102
223
  T.type_alias do
@@ -1123,6 +1123,11 @@ module ContextDev
1123
1123
  :cl,
1124
1124
  ContextDev::NewsSearchParams::FilterBy::SourceCountry::TaggedSymbol
1125
1125
  )
1126
+ CZ =
1127
+ T.let(
1128
+ :cz,
1129
+ ContextDev::NewsSearchParams::FilterBy::SourceCountry::TaggedSymbol
1130
+ )
1126
1131
  DE =
1127
1132
  T.let(
1128
1133
  :de,