context.dev 2.9.0 → 2.11.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 (80) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +23 -0
  3. data/README.md +1 -1
  4. data/lib/context_dev/client.rb +5 -0
  5. data/lib/context_dev/models/batch_get_results_response.rb +33 -3
  6. data/lib/context_dev/models/batch_submit_params.rb +44 -316
  7. data/lib/context_dev/models/brand_retrieve_response.rb +29 -1
  8. data/lib/context_dev/models/brand_retrieve_simplified_response.rb +30 -1
  9. data/lib/context_dev/models/brand_search_params.rb +41 -3
  10. data/lib/context_dev/models/news_search_params.rb +467 -0
  11. data/lib/context_dev/models/news_search_response.rb +284 -0
  12. data/lib/context_dev/models/parse_handle_params.rb +15 -144
  13. data/lib/context_dev/models/person_enrich_response.rb +61 -1
  14. data/lib/context_dev/models/utility_prefetch_params.rb +19 -16
  15. data/lib/context_dev/models/utility_prefetch_response.rb +4 -5
  16. data/lib/context_dev/models/web_screenshot_params.rb +16 -31
  17. data/lib/context_dev/models/web_web_crawl_md_response.rb +30 -1
  18. data/lib/context_dev/models/web_web_scrape_html_params.rb +15 -153
  19. data/lib/context_dev/models/web_web_scrape_html_response.rb +30 -1
  20. data/lib/context_dev/models/web_web_scrape_images_params.rb +12 -124
  21. data/lib/context_dev/models/web_web_scrape_md_params.rb +35 -238
  22. data/lib/context_dev/models/web_web_scrape_md_response.rb +41 -2
  23. data/lib/context_dev/models.rb +2 -0
  24. data/lib/context_dev/resources/brand.rb +10 -11
  25. data/lib/context_dev/resources/news.rb +51 -0
  26. data/lib/context_dev/resources/parse.rb +5 -5
  27. data/lib/context_dev/resources/utility.rb +7 -6
  28. data/lib/context_dev/resources/web.rb +30 -24
  29. data/lib/context_dev/version.rb +1 -1
  30. data/lib/context_dev.rb +3 -0
  31. data/rbi/context_dev/client.rbi +4 -0
  32. data/rbi/context_dev/models/batch_get_results_response.rbi +71 -2
  33. data/rbi/context_dev/models/batch_submit_params.rbi +58 -592
  34. data/rbi/context_dev/models/brand_retrieve_response.rbi +80 -3
  35. data/rbi/context_dev/models/brand_retrieve_simplified_response.rbi +80 -3
  36. data/rbi/context_dev/models/brand_search_params.rbi +71 -2
  37. data/rbi/context_dev/models/news_search_params.rbi +1294 -0
  38. data/rbi/context_dev/models/news_search_response.rbi +489 -0
  39. data/rbi/context_dev/models/parse_handle_params.rbi +20 -316
  40. data/rbi/context_dev/models/person_enrich_response.rbi +87 -0
  41. data/rbi/context_dev/models/utility_prefetch_params.rbi +24 -16
  42. data/rbi/context_dev/models/utility_prefetch_response.rbi +8 -6
  43. data/rbi/context_dev/models/web_screenshot_params.rbi +23 -71
  44. data/rbi/context_dev/models/web_web_crawl_md_response.rbi +67 -0
  45. data/rbi/context_dev/models/web_web_scrape_html_params.rbi +20 -356
  46. data/rbi/context_dev/models/web_web_scrape_html_response.rbi +65 -0
  47. data/rbi/context_dev/models/web_web_scrape_images_params.rbi +16 -287
  48. data/rbi/context_dev/models/web_web_scrape_md_params.rbi +47 -551
  49. data/rbi/context_dev/models/web_web_scrape_md_response.rbi +80 -0
  50. data/rbi/context_dev/models.rbi +2 -0
  51. data/rbi/context_dev/resources/brand.rbi +14 -9
  52. data/rbi/context_dev/resources/news.rbi +46 -0
  53. data/rbi/context_dev/resources/parse.rbi +5 -21
  54. data/rbi/context_dev/resources/utility.rbi +8 -6
  55. data/rbi/context_dev/resources/web.rbi +34 -66
  56. data/sig/context_dev/client.rbs +2 -0
  57. data/sig/context_dev/models/batch_get_results_response.rbs +21 -0
  58. data/sig/context_dev/models/batch_submit_params.rbs +54 -144
  59. data/sig/context_dev/models/brand_retrieve_response.rbs +33 -3
  60. data/sig/context_dev/models/brand_retrieve_simplified_response.rbs +33 -3
  61. data/sig/context_dev/models/brand_search_params.rbs +38 -1
  62. data/sig/context_dev/models/news_search_params.rbs +532 -0
  63. data/sig/context_dev/models/news_search_response.rbs +206 -0
  64. data/sig/context_dev/models/parse_handle_params.rbs +25 -90
  65. data/sig/context_dev/models/person_enrich_response.rbs +31 -0
  66. data/sig/context_dev/models/utility_prefetch_params.rbs +2 -1
  67. data/sig/context_dev/models/utility_prefetch_response.rbs +2 -1
  68. data/sig/context_dev/models/web_screenshot_params.rbs +12 -18
  69. data/sig/context_dev/models/web_web_crawl_md_response.rbs +21 -0
  70. data/sig/context_dev/models/web_web_scrape_html_params.rbs +24 -94
  71. data/sig/context_dev/models/web_web_scrape_html_response.rbs +21 -0
  72. data/sig/context_dev/models/web_web_scrape_images_params.rbs +20 -72
  73. data/sig/context_dev/models/web_web_scrape_md_params.rbs +46 -148
  74. data/sig/context_dev/models/web_web_scrape_md_response.rbs +28 -0
  75. data/sig/context_dev/models.rbs +2 -0
  76. data/sig/context_dev/resources/brand.rbs +3 -0
  77. data/sig/context_dev/resources/news.rbs +17 -0
  78. data/sig/context_dev/resources/parse.rbs +5 -5
  79. data/sig/context_dev/resources/web.rbs +13 -11
  80. metadata +11 -2
@@ -36,51 +36,17 @@ module ContextDev
36
36
  attr_writer :extension
37
37
 
38
38
  # Include image references in Markdown output
39
- sig do
40
- returns(
41
- T.nilable(
42
- T.any(
43
- T::Boolean,
44
- ContextDev::ParseHandleParams::IncludeImages::OrSymbol
45
- )
46
- )
47
- )
48
- end
39
+ sig { returns(T.nilable(T::Boolean)) }
49
40
  attr_reader :include_images
50
41
 
51
- sig do
52
- params(
53
- include_images:
54
- T.any(
55
- T::Boolean,
56
- ContextDev::ParseHandleParams::IncludeImages::OrSymbol
57
- )
58
- ).void
59
- end
42
+ sig { params(include_images: T::Boolean).void }
60
43
  attr_writer :include_images
61
44
 
62
45
  # Preserve hyperlinks in Markdown output
63
- sig do
64
- returns(
65
- T.nilable(
66
- T.any(
67
- T::Boolean,
68
- ContextDev::ParseHandleParams::IncludeLinks::OrSymbol
69
- )
70
- )
71
- )
72
- end
46
+ sig { returns(T.nilable(T::Boolean)) }
73
47
  attr_reader :include_links
74
48
 
75
- sig do
76
- params(
77
- include_links:
78
- T.any(
79
- T::Boolean,
80
- ContextDev::ParseHandleParams::IncludeLinks::OrSymbol
81
- )
82
- ).void
83
- end
49
+ sig { params(include_links: T::Boolean).void }
84
50
  attr_writer :include_links
85
51
 
86
52
  # When true for PDF inputs, OCR the selected pages that have no usable text layer
@@ -88,20 +54,10 @@ module ContextDev
88
54
  # with a real text layer keep it. pdf.start/pdf.end limit the inclusive page
89
55
  # range. Billed at 1 credit per page OCR actually recovered, on top of the base
90
56
  # request cost. When false, no OCR runs.
91
- sig do
92
- returns(
93
- T.nilable(
94
- T.any(T::Boolean, ContextDev::ParseHandleParams::Ocr::OrSymbol)
95
- )
96
- )
97
- end
57
+ sig { returns(T.nilable(T::Boolean)) }
98
58
  attr_reader :ocr
99
59
 
100
- sig do
101
- params(
102
- ocr: T.any(T::Boolean, ContextDev::ParseHandleParams::Ocr::OrSymbol)
103
- ).void
104
- end
60
+ sig { params(ocr: T::Boolean).void }
105
61
  attr_writer :ocr
106
62
 
107
63
  # PDF page-range options as a JSON object, e.g. {"start": 2, "end": 5}.
@@ -112,27 +68,10 @@ module ContextDev
112
68
  attr_writer :pdf
113
69
 
114
70
  # Shorten base64-encoded image data in the Markdown output
115
- sig do
116
- returns(
117
- T.nilable(
118
- T.any(
119
- T::Boolean,
120
- ContextDev::ParseHandleParams::ShortenBase64Images::OrSymbol
121
- )
122
- )
123
- )
124
- end
71
+ sig { returns(T.nilable(T::Boolean)) }
125
72
  attr_reader :shorten_base64_images
126
73
 
127
- sig do
128
- params(
129
- shorten_base64_images:
130
- T.any(
131
- T::Boolean,
132
- ContextDev::ParseHandleParams::ShortenBase64Images::OrSymbol
133
- )
134
- ).void
135
- end
74
+ sig { params(shorten_base64_images: T::Boolean).void }
136
75
  attr_writer :shorten_base64_images
137
76
 
138
77
  # Optional comma-separated caller-defined tags for tracking this request. Tags are
@@ -145,27 +84,10 @@ module ContextDev
145
84
  attr_writer :tags
146
85
 
147
86
  # Extract only the main content from HTML-like inputs
148
- sig do
149
- returns(
150
- T.nilable(
151
- T.any(
152
- T::Boolean,
153
- ContextDev::ParseHandleParams::UseMainContentOnly::OrSymbol
154
- )
155
- )
156
- )
157
- end
87
+ sig { returns(T.nilable(T::Boolean)) }
158
88
  attr_reader :use_main_content_only
159
89
 
160
- sig do
161
- params(
162
- use_main_content_only:
163
- T.any(
164
- T::Boolean,
165
- ContextDev::ParseHandleParams::UseMainContentOnly::OrSymbol
166
- )
167
- ).void
168
- end
90
+ sig { params(use_main_content_only: T::Boolean).void }
169
91
  attr_writer :use_main_content_only
170
92
 
171
93
  # Set to enabled to bypass shared caches and omit request and response content
@@ -183,29 +105,13 @@ module ContextDev
183
105
  body: ContextDev::Internal::FileInput,
184
106
  client: String,
185
107
  extension: ContextDev::ParseHandleParams::Extension::OrSymbol,
186
- include_images:
187
- T.any(
188
- T::Boolean,
189
- ContextDev::ParseHandleParams::IncludeImages::OrSymbol
190
- ),
191
- include_links:
192
- T.any(
193
- T::Boolean,
194
- ContextDev::ParseHandleParams::IncludeLinks::OrSymbol
195
- ),
196
- ocr: T.any(T::Boolean, ContextDev::ParseHandleParams::Ocr::OrSymbol),
108
+ include_images: T::Boolean,
109
+ include_links: T::Boolean,
110
+ ocr: T::Boolean,
197
111
  pdf: ContextDev::ParseHandleParams::Pdf::OrHash,
198
- shorten_base64_images:
199
- T.any(
200
- T::Boolean,
201
- ContextDev::ParseHandleParams::ShortenBase64Images::OrSymbol
202
- ),
112
+ shorten_base64_images: T::Boolean,
203
113
  tags: T::Array[String],
204
- use_main_content_only:
205
- T.any(
206
- T::Boolean,
207
- ContextDev::ParseHandleParams::UseMainContentOnly::OrSymbol
208
- ),
114
+ use_main_content_only: T::Boolean,
209
115
  zdr: ContextDev::ParseHandleParams::Zdr::OrSymbol,
210
116
  request_options: ContextDev::RequestOptions::OrHash
211
117
  ).returns(T.attached_class)
@@ -252,30 +158,13 @@ module ContextDev
252
158
  body: ContextDev::Internal::FileInput,
253
159
  client: String,
254
160
  extension: ContextDev::ParseHandleParams::Extension::OrSymbol,
255
- include_images:
256
- T.any(
257
- T::Boolean,
258
- ContextDev::ParseHandleParams::IncludeImages::OrSymbol
259
- ),
260
- include_links:
261
- T.any(
262
- T::Boolean,
263
- ContextDev::ParseHandleParams::IncludeLinks::OrSymbol
264
- ),
265
- ocr:
266
- T.any(T::Boolean, ContextDev::ParseHandleParams::Ocr::OrSymbol),
161
+ include_images: T::Boolean,
162
+ include_links: T::Boolean,
163
+ ocr: T::Boolean,
267
164
  pdf: ContextDev::ParseHandleParams::Pdf,
268
- shorten_base64_images:
269
- T.any(
270
- T::Boolean,
271
- ContextDev::ParseHandleParams::ShortenBase64Images::OrSymbol
272
- ),
165
+ shorten_base64_images: T::Boolean,
273
166
  tags: T::Array[String],
274
- use_main_content_only:
275
- T.any(
276
- T::Boolean,
277
- ContextDev::ParseHandleParams::UseMainContentOnly::OrSymbol
278
- ),
167
+ use_main_content_only: T::Boolean,
279
168
  zdr: ContextDev::ParseHandleParams::Zdr::OrSymbol,
280
169
  request_options: ContextDev::RequestOptions
281
170
  }
@@ -442,111 +331,6 @@ module ContextDev
442
331
  end
443
332
  end
444
333
 
445
- # Include image references in Markdown output
446
- module IncludeImages
447
- extend ContextDev::Internal::Type::Union
448
-
449
- Variants =
450
- T.type_alias do
451
- T.any(
452
- T::Boolean,
453
- ContextDev::ParseHandleParams::IncludeImages::TaggedSymbol
454
- )
455
- end
456
-
457
- sig do
458
- override.returns(
459
- T::Array[ContextDev::ParseHandleParams::IncludeImages::Variants]
460
- )
461
- end
462
- def self.variants
463
- end
464
-
465
- TaggedSymbol =
466
- T.type_alias do
467
- T.all(Symbol, ContextDev::ParseHandleParams::IncludeImages)
468
- end
469
- OrSymbol = T.type_alias { T.any(Symbol, String) }
470
-
471
- TRUE =
472
- T.let(
473
- :true,
474
- ContextDev::ParseHandleParams::IncludeImages::TaggedSymbol
475
- )
476
- FALSE =
477
- T.let(
478
- :false,
479
- ContextDev::ParseHandleParams::IncludeImages::TaggedSymbol
480
- )
481
- end
482
-
483
- # Preserve hyperlinks in Markdown output
484
- module IncludeLinks
485
- extend ContextDev::Internal::Type::Union
486
-
487
- Variants =
488
- T.type_alias do
489
- T.any(
490
- T::Boolean,
491
- ContextDev::ParseHandleParams::IncludeLinks::TaggedSymbol
492
- )
493
- end
494
-
495
- sig do
496
- override.returns(
497
- T::Array[ContextDev::ParseHandleParams::IncludeLinks::Variants]
498
- )
499
- end
500
- def self.variants
501
- end
502
-
503
- TaggedSymbol =
504
- T.type_alias do
505
- T.all(Symbol, ContextDev::ParseHandleParams::IncludeLinks)
506
- end
507
- OrSymbol = T.type_alias { T.any(Symbol, String) }
508
-
509
- TRUE =
510
- T.let(
511
- :true,
512
- ContextDev::ParseHandleParams::IncludeLinks::TaggedSymbol
513
- )
514
- FALSE =
515
- T.let(
516
- :false,
517
- ContextDev::ParseHandleParams::IncludeLinks::TaggedSymbol
518
- )
519
- end
520
-
521
- # When true for PDF inputs, OCR the selected pages that have no usable text layer
522
- # (scans), replacing each recovered page's text with the OCR result while pages
523
- # with a real text layer keep it. pdf.start/pdf.end limit the inclusive page
524
- # range. Billed at 1 credit per page OCR actually recovered, on top of the base
525
- # request cost. When false, no OCR runs.
526
- module Ocr
527
- extend ContextDev::Internal::Type::Union
528
-
529
- Variants =
530
- T.type_alias do
531
- T.any(T::Boolean, ContextDev::ParseHandleParams::Ocr::TaggedSymbol)
532
- end
533
-
534
- sig do
535
- override.returns(
536
- T::Array[ContextDev::ParseHandleParams::Ocr::Variants]
537
- )
538
- end
539
- def self.variants
540
- end
541
-
542
- TaggedSymbol =
543
- T.type_alias { T.all(Symbol, ContextDev::ParseHandleParams::Ocr) }
544
- OrSymbol = T.type_alias { T.any(Symbol, String) }
545
-
546
- TRUE = T.let(:true, ContextDev::ParseHandleParams::Ocr::TaggedSymbol)
547
- FALSE = T.let(:false, ContextDev::ParseHandleParams::Ocr::TaggedSymbol)
548
- end
549
-
550
334
  class Pdf < ContextDev::Internal::Type::BaseModel
551
335
  OrHash =
552
336
  T.type_alias do
@@ -587,86 +371,6 @@ module ContextDev
587
371
  end
588
372
  end
589
373
 
590
- # Shorten base64-encoded image data in the Markdown output
591
- module ShortenBase64Images
592
- extend ContextDev::Internal::Type::Union
593
-
594
- Variants =
595
- T.type_alias do
596
- T.any(
597
- T::Boolean,
598
- ContextDev::ParseHandleParams::ShortenBase64Images::TaggedSymbol
599
- )
600
- end
601
-
602
- sig do
603
- override.returns(
604
- T::Array[
605
- ContextDev::ParseHandleParams::ShortenBase64Images::Variants
606
- ]
607
- )
608
- end
609
- def self.variants
610
- end
611
-
612
- TaggedSymbol =
613
- T.type_alias do
614
- T.all(Symbol, ContextDev::ParseHandleParams::ShortenBase64Images)
615
- end
616
- OrSymbol = T.type_alias { T.any(Symbol, String) }
617
-
618
- TRUE =
619
- T.let(
620
- :true,
621
- ContextDev::ParseHandleParams::ShortenBase64Images::TaggedSymbol
622
- )
623
- FALSE =
624
- T.let(
625
- :false,
626
- ContextDev::ParseHandleParams::ShortenBase64Images::TaggedSymbol
627
- )
628
- end
629
-
630
- # Extract only the main content from HTML-like inputs
631
- module UseMainContentOnly
632
- extend ContextDev::Internal::Type::Union
633
-
634
- Variants =
635
- T.type_alias do
636
- T.any(
637
- T::Boolean,
638
- ContextDev::ParseHandleParams::UseMainContentOnly::TaggedSymbol
639
- )
640
- end
641
-
642
- sig do
643
- override.returns(
644
- T::Array[
645
- ContextDev::ParseHandleParams::UseMainContentOnly::Variants
646
- ]
647
- )
648
- end
649
- def self.variants
650
- end
651
-
652
- TaggedSymbol =
653
- T.type_alias do
654
- T.all(Symbol, ContextDev::ParseHandleParams::UseMainContentOnly)
655
- end
656
- OrSymbol = T.type_alias { T.any(Symbol, String) }
657
-
658
- TRUE =
659
- T.let(
660
- :true,
661
- ContextDev::ParseHandleParams::UseMainContentOnly::TaggedSymbol
662
- )
663
- FALSE =
664
- T.let(
665
- :false,
666
- ContextDev::ParseHandleParams::UseMainContentOnly::TaggedSymbol
667
- )
668
- end
669
-
670
374
  # Set to enabled to bypass shared caches and omit request and response content
671
375
  # from retained usage logs. Requires zero data retention to be enabled for your
672
376
  # organization (contact support@context.dev), otherwise the request fails with
@@ -139,6 +139,17 @@ module ContextDev
139
139
  )
140
140
  end
141
141
 
142
+ # Whether the person's current role is known. `present` — current_role is
143
+ # populated. `none` — the work history explicitly shows every role has ended.
144
+ # `unknown` — our data sources could not confirm either way; treat a missing
145
+ # current_role as unverified rather than vacant.
146
+ sig do
147
+ returns(
148
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRoleStatus::TaggedSymbol
149
+ )
150
+ end
151
+ attr_accessor :current_role_status
152
+
142
153
  sig do
143
154
  returns(
144
155
  T::Array[
@@ -178,6 +189,13 @@ module ContextDev
178
189
  sig { params(bio: String).void }
179
190
  attr_writer :bio
180
191
 
192
+ # When we last refreshed this profile from our data sources (ISO 8601).
193
+ sig { returns(T.nilable(String)) }
194
+ attr_reader :checked_at
195
+
196
+ sig { params(checked_at: String).void }
197
+ attr_writer :checked_at
198
+
181
199
  sig do
182
200
  returns(
183
201
  T.nilable(
@@ -201,6 +219,14 @@ module ContextDev
201
219
  sig { params(email: String).void }
202
220
  attr_writer :email
203
221
 
222
+ # When the underlying profile data last changed in our data sources (ISO 8601).
223
+ # Omitted when unknown.
224
+ sig { returns(T.nilable(String)) }
225
+ attr_reader :last_updated
226
+
227
+ sig { params(last_updated: String).void }
228
+ attr_writer :last_updated
229
+
204
230
  sig do
205
231
  returns(
206
232
  T.nilable(
@@ -237,6 +263,8 @@ module ContextDev
237
263
 
238
264
  sig do
239
265
  params(
266
+ current_role_status:
267
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRoleStatus::OrSymbol,
240
268
  education:
241
269
  T::Array[
242
270
  ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education::OrHash
@@ -250,9 +278,11 @@ module ContextDev
250
278
  website_urls: T::Array[String],
251
279
  avatar_url: String,
252
280
  bio: String,
281
+ checked_at: String,
253
282
  current_role:
254
283
  ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole::OrHash,
255
284
  email: String,
285
+ last_updated: String,
256
286
  location:
257
287
  ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Location::OrHash,
258
288
  name:
@@ -260,6 +290,11 @@ module ContextDev
260
290
  ).returns(T.attached_class)
261
291
  end
262
292
  def self.new(
293
+ # Whether the person's current role is known. `present` — current_role is
294
+ # populated. `none` — the work history explicitly shows every role has ended.
295
+ # `unknown` — our data sources could not confirm either way; treat a missing
296
+ # current_role as unverified rather than vacant.
297
+ current_role_status:,
263
298
  education:,
264
299
  experience:,
265
300
  skills:,
@@ -267,8 +302,13 @@ module ContextDev
267
302
  website_urls:,
268
303
  avatar_url: nil,
269
304
  bio: nil,
305
+ # When we last refreshed this profile from our data sources (ISO 8601).
306
+ checked_at: nil,
270
307
  current_role: nil,
271
308
  email: nil,
309
+ # When the underlying profile data last changed in our data sources (ISO 8601).
310
+ # Omitted when unknown.
311
+ last_updated: nil,
272
312
  location: nil,
273
313
  name: nil
274
314
  )
@@ -277,6 +317,8 @@ module ContextDev
277
317
  sig do
278
318
  override.returns(
279
319
  {
320
+ current_role_status:
321
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRoleStatus::TaggedSymbol,
280
322
  education:
281
323
  T::Array[
282
324
  ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Education
@@ -290,9 +332,11 @@ module ContextDev
290
332
  website_urls: T::Array[String],
291
333
  avatar_url: String,
292
334
  bio: String,
335
+ checked_at: String,
293
336
  current_role:
294
337
  ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRole,
295
338
  email: String,
339
+ last_updated: String,
296
340
  location:
297
341
  ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::Location,
298
342
  name:
@@ -303,6 +347,49 @@ module ContextDev
303
347
  def to_hash
304
348
  end
305
349
 
350
+ # Whether the person's current role is known. `present` — current_role is
351
+ # populated. `none` — the work history explicitly shows every role has ended.
352
+ # `unknown` — our data sources could not confirm either way; treat a missing
353
+ # current_role as unverified rather than vacant.
354
+ module CurrentRoleStatus
355
+ extend ContextDev::Internal::Type::Enum
356
+
357
+ TaggedSymbol =
358
+ T.type_alias do
359
+ T.all(
360
+ Symbol,
361
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRoleStatus
362
+ )
363
+ end
364
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
365
+
366
+ PRESENT =
367
+ T.let(
368
+ :present,
369
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRoleStatus::TaggedSymbol
370
+ )
371
+ NONE =
372
+ T.let(
373
+ :none,
374
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRoleStatus::TaggedSymbol
375
+ )
376
+ UNKNOWN =
377
+ T.let(
378
+ :unknown,
379
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRoleStatus::TaggedSymbol
380
+ )
381
+
382
+ sig do
383
+ override.returns(
384
+ T::Array[
385
+ ContextDev::Models::PersonEnrichResponse::Match::Candidate::Person::CurrentRoleStatus::TaggedSymbol
386
+ ]
387
+ )
388
+ end
389
+ def self.values
390
+ end
391
+ end
392
+
306
393
  class Education < ContextDev::Internal::Type::BaseModel
307
394
  OrHash =
308
395
  T.type_alias do
@@ -14,7 +14,7 @@ module ContextDev
14
14
  )
15
15
  end
16
16
 
17
- # Identifier of the brand to prefetch. Provide exactly one of domain or email.
17
+ # Identifier of the target to prefetch. Provide exactly one of domain or email.
18
18
  sig do
19
19
  returns(
20
20
  T.any(
@@ -25,7 +25,8 @@ module ContextDev
25
25
  end
26
26
  attr_accessor :identifier
27
27
 
28
- # What to prefetch. Currently only 'brand' is supported.
28
+ # What to prefetch: 'brand' warms the brand data cache, 'styleguide' warms the
29
+ # styleguide cache.
29
30
  sig { returns(ContextDev::UtilityPrefetchParams::Type::OrSymbol) }
30
31
  attr_accessor :type
31
32
 
@@ -59,9 +60,10 @@ module ContextDev
59
60
  ).returns(T.attached_class)
60
61
  end
61
62
  def self.new(
62
- # Identifier of the brand to prefetch. Provide exactly one of domain or email.
63
+ # Identifier of the target to prefetch. Provide exactly one of domain or email.
63
64
  identifier:,
64
- # What to prefetch. Currently only 'brand' is supported.
65
+ # What to prefetch: 'brand' warms the brand data cache, 'styleguide' warms the
66
+ # styleguide cache.
65
67
  type:,
66
68
  # Optional tags for tracking usage. Up to 20 tags, each 1 to 50 characters.
67
69
  tags: nil,
@@ -91,7 +93,7 @@ module ContextDev
91
93
  def to_hash
92
94
  end
93
95
 
94
- # Identifier of the brand to prefetch. Provide exactly one of domain or email.
96
+ # Identifier of the target to prefetch. Provide exactly one of domain or email.
95
97
  module Identifier
96
98
  extend ContextDev::Internal::Type::Union
97
99
 
@@ -112,14 +114,14 @@ module ContextDev
112
114
  )
113
115
  end
114
116
 
115
- # Domain name to prefetch brand data for
117
+ # Domain name to prefetch data for
116
118
  sig { returns(String) }
117
119
  attr_accessor :domain
118
120
 
119
- # Prefetch brand data by domain.
121
+ # Prefetch by domain.
120
122
  sig { params(domain: String).returns(T.attached_class) }
121
123
  def self.new(
122
- # Domain name to prefetch brand data for
124
+ # Domain name to prefetch data for
123
125
  domain:
124
126
  )
125
127
  end
@@ -138,18 +140,18 @@ module ContextDev
138
140
  )
139
141
  end
140
142
 
141
- # Email address to prefetch brand data for. The domain will be extracted from the
142
- # email. Free email providers (gmail.com, yahoo.com, etc.) and disposable email
143
- # addresses are not allowed.
143
+ # Email address to prefetch data for. The domain will be extracted from the email.
144
+ # Free email providers (gmail.com, yahoo.com, etc.) and disposable email addresses
145
+ # are not allowed.
144
146
  sig { returns(String) }
145
147
  attr_accessor :email
146
148
 
147
- # Prefetch brand data by email. The domain will be extracted and validated.
149
+ # Prefetch by email. The domain will be extracted and validated.
148
150
  sig { params(email: String).returns(T.attached_class) }
149
151
  def self.new(
150
- # Email address to prefetch brand data for. The domain will be extracted from the
151
- # email. Free email providers (gmail.com, yahoo.com, etc.) and disposable email
152
- # addresses are not allowed.
152
+ # Email address to prefetch data for. The domain will be extracted from the email.
153
+ # Free email providers (gmail.com, yahoo.com, etc.) and disposable email addresses
154
+ # are not allowed.
153
155
  email:
154
156
  )
155
157
  end
@@ -168,7 +170,8 @@ module ContextDev
168
170
  end
169
171
  end
170
172
 
171
- # What to prefetch. Currently only 'brand' is supported.
173
+ # What to prefetch: 'brand' warms the brand data cache, 'styleguide' warms the
174
+ # styleguide cache.
172
175
  module Type
173
176
  extend ContextDev::Internal::Type::Enum
174
177
 
@@ -180,6 +183,11 @@ module ContextDev
180
183
 
181
184
  BRAND =
182
185
  T.let(:brand, ContextDev::UtilityPrefetchParams::Type::TaggedSymbol)
186
+ STYLEGUIDE =
187
+ T.let(
188
+ :styleguide,
189
+ ContextDev::UtilityPrefetchParams::Type::TaggedSymbol
190
+ )
183
191
 
184
192
  sig do
185
193
  override.returns(