context.dev 2.6.0 → 2.7.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 (43) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +10 -0
  3. data/README.md +1 -1
  4. data/lib/context_dev/models/batch_cancel_response.rb +70 -183
  5. data/lib/context_dev/models/batch_list_response.rb +86 -95
  6. data/lib/context_dev/models/batch_retrieve_response.rb +86 -103
  7. data/lib/context_dev/models/crawl_controls.rb +126 -0
  8. data/lib/context_dev/models/failure.rb +27 -0
  9. data/lib/context_dev/models/intake.rb +62 -0
  10. data/lib/context_dev/models/{error_count.rb → page_error_count.rb} +1 -1
  11. data/lib/context_dev/models/web_screenshot_params.rb +5 -7
  12. data/lib/context_dev/models/web_web_crawl_md_params.rb +5 -7
  13. data/lib/context_dev/models/web_web_scrape_html_params.rb +5 -7
  14. data/lib/context_dev/models/web_web_scrape_md_params.rb +5 -7
  15. data/lib/context_dev/models.rb +6 -2
  16. data/lib/context_dev/resources/batch.rb +3 -6
  17. data/lib/context_dev/resources/web.rb +4 -4
  18. data/lib/context_dev/version.rb +1 -1
  19. data/lib/context_dev.rb +4 -2
  20. data/rbi/context_dev/models/batch_cancel_response.rbi +98 -316
  21. data/rbi/context_dev/models/batch_list_response.rbi +127 -152
  22. data/rbi/context_dev/models/batch_retrieve_response.rbi +126 -161
  23. data/rbi/context_dev/models/crawl_controls.rbi +252 -0
  24. data/rbi/context_dev/models/{error.rbi → failure.rbi} +10 -7
  25. data/rbi/context_dev/models/intake.rbi +88 -0
  26. data/rbi/context_dev/models/{error_count.rbi → page_error_count.rbi} +2 -2
  27. data/rbi/context_dev/models/web_screenshot_params.rbi +6 -9
  28. data/rbi/context_dev/models/web_web_crawl_md_params.rbi +6 -9
  29. data/rbi/context_dev/models/web_web_scrape_html_params.rbi +6 -9
  30. data/rbi/context_dev/models/web_web_scrape_md_params.rbi +6 -9
  31. data/rbi/context_dev/models.rbi +6 -2
  32. data/rbi/context_dev/resources/batch.rbi +3 -6
  33. data/rbi/context_dev/resources/web.rbi +8 -12
  34. data/sig/context_dev/models/batch_cancel_response.rbs +32 -124
  35. data/sig/context_dev/models/batch_list_response.rbs +42 -63
  36. data/sig/context_dev/models/batch_retrieve_response.rbs +42 -70
  37. data/sig/context_dev/models/crawl_controls.rbs +114 -0
  38. data/sig/context_dev/models/{error.rbs → failure.rbs} +2 -2
  39. data/sig/context_dev/models/intake.rbs +40 -0
  40. data/sig/context_dev/models/{error_count.rbs → page_error_count.rbs} +2 -2
  41. data/sig/context_dev/models.rbs +6 -2
  42. metadata +14 -8
  43. data/lib/context_dev/models/error.rb +0 -26
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 624f1916305dc7e83b1cc7e40d4dbe2deb53bb14d073ae36a760317d4f65aba8
4
- data.tar.gz: 01ebeecf67e7682bfd322fb1d4359af7e3b438465c03215c85efb8fe6bd57c64
3
+ metadata.gz: e324f1e33503f55a47664f8196dc0f07abf62c1c4fed5e9d09baee669939f16f
4
+ data.tar.gz: 43c6f5ec7f3e210ec6ea287db7ffee80cbd6c6f0c8fca7438ea8625540787127
5
5
  SHA512:
6
- metadata.gz: 5942d089d87c49d8b591e5857a217a8535d9a7ec5eda8d64254f24131e9702a87f7c1fe31c5e4d1a89e6f8c95190c4e6c123857bcfd36fa6a7790e76994441e4
7
- data.tar.gz: 06c2131494e4170ca7afdef11a43edd5368327541dec98e568a3e56fa8c168d89789bafb67054873d33bc8bc3168ae50dec60a9c8174d68411330593bb119f8a
6
+ metadata.gz: a0da6fbb0005114984cc6ee0ee233ae6b0b81666442ed342937cdf93469ece8acd041d7c25560ace5adbdc5e2c8a8e921ca931c3bd8216a04d56d6f9fd721ed0
7
+ data.tar.gz: 2dea9ed22d8eac728dcb0defaebf1a345fd8c1a2e649dd0a416e59639492fd04db7d3d34f94186f3cb613161deff4ac579f9002360d5c43cab474ab63ff004b5
data/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.7.0 (2026-08-01)
4
+
5
+ Full Changelog: [v2.6.0...v2.7.0](https://github.com/context-dot-dev/context-ruby-sdk/compare/v2.6.0...v2.7.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** api update ([b0bdc3e](https://github.com/context-dot-dev/context-ruby-sdk/commit/b0bdc3ec9322ce5854177cdaff808caaba427746))
10
+ * **api:** api update ([17848b3](https://github.com/context-dot-dev/context-ruby-sdk/commit/17848b313dcbd098b21902bd2bd2cab6d9ad5ce2))
11
+ * **api:** api update ([4db7386](https://github.com/context-dot-dev/context-ruby-sdk/commit/4db7386bf6f686a33beae7817ec9122e1adad47f))
12
+
3
13
  ## 2.6.0 (2026-07-31)
4
14
 
5
15
  Full Changelog: [v2.5.0...v2.6.0](https://github.com/context-dot-dev/context-ruby-sdk/compare/v2.5.0...v2.6.0)
data/README.md CHANGED
@@ -26,7 +26,7 @@ To use this gem, install via Bundler by adding the following to your application
26
26
  <!-- x-release-please-start-version -->
27
27
 
28
28
  ```ruby
29
- gem "context.dev", "~> 2.6.0"
29
+ gem "context.dev", "~> 2.7.0"
30
30
  ```
31
31
 
32
32
  <!-- x-release-please-end -->
@@ -5,56 +5,57 @@ module ContextDev
5
5
  # @see ContextDev::Resources::Batch#cancel
6
6
  class BatchCancelResponse < ContextDev::Internal::Type::BaseModel
7
7
  # @!attribute id
8
- # Batch ID used to retrieve or cancel the job.
8
+ # Batch ID.
9
9
  #
10
10
  # @return [String]
11
11
  required :id, String
12
12
 
13
+ # @!attribute crawl
14
+ # The crawl controls as submitted, so the limits requested can be compared against
15
+ # what the crawl reached.
16
+ #
17
+ # @return [ContextDev::Models::CrawlControls, nil]
18
+ required :crawl, -> { ContextDev::CrawlControls }, nil?: true
19
+
13
20
  # @!attribute credits
14
- # Reserved and used credits.
21
+ # What this batch cost so far.
15
22
  #
16
23
  # @return [ContextDev::Models::BatchCancelResponse::Credits]
17
24
  required :credits, -> { ContextDev::Models::BatchCancelResponse::Credits }
18
25
 
19
- # @!attribute error
20
- # Why the batch failed.
21
- #
22
- # @return [ContextDev::Models::Error, nil]
23
- required :error, -> { ContextDev::Error }, nil?: true
24
-
25
- # @!attribute errors
26
- # Page failures grouped by error code.
26
+ # @!attribute format_
27
+ # What each page is returned as.
27
28
  #
28
- # @return [Array<ContextDev::Models::ErrorCount>]
29
- required :errors, -> { ContextDev::Internal::Type::ArrayOf[ContextDev::ErrorCount] }
29
+ # @return [Symbol, ContextDev::Models::BatchCancelResponse::Format]
30
+ required :format_, enum: -> { ContextDev::Models::BatchCancelResponse::Format }, api_name: :format
30
31
 
31
32
  # @!attribute input
32
- # Submission counts.
33
+ # What submission took in, and what it charged for.
33
34
  #
34
- # @return [ContextDev::Models::BatchCancelResponse::Input]
35
- required :input, -> { ContextDev::Models::BatchCancelResponse::Input }
35
+ # @return [ContextDev::Models::Intake]
36
+ required :input, -> { ContextDev::Intake }
36
37
 
37
38
  # @!attribute mode
38
- # How pages are selected.
39
+ # How pages were selected.
39
40
  #
40
41
  # @return [Symbol, ContextDev::Models::BatchCancelResponse::Mode]
41
42
  required :mode, enum: -> { ContextDev::Models::BatchCancelResponse::Mode }
42
43
 
44
+ # @!attribute page_errors
45
+ # Page failures so far, grouped by error code and sorted by count.
46
+ #
47
+ # @return [Array<ContextDev::Models::PageErrorCount>]
48
+ required :page_errors, -> { ContextDev::Internal::Type::ArrayOf[ContextDev::PageErrorCount] }
49
+
43
50
  # @!attribute progress
44
- # Current processing counts. Use `status` to check completion.
51
+ # How far the batch got before cancellation.
45
52
  #
46
53
  # @return [ContextDev::Models::BatchCancelResponse::Progress]
47
54
  required :progress, -> { ContextDev::Models::BatchCancelResponse::Progress }
48
55
 
49
- # @!attribute results
50
- # Download links available when the batch finishes. GET /batch/{batch_id}/results
51
- # serves the same records as paginated JSON.
52
- #
53
- # @return [ContextDev::Models::BatchCancelResponse::Results, nil]
54
- required :results, -> { ContextDev::Models::BatchCancelResponse::Results }, nil?: true
55
-
56
56
  # @!attribute status
57
- # Current state. `completed`, `cancelled`, and `failed` are final.
57
+ # Always `cancelling`. Work already in flight finishes; the batch reaches
58
+ # `cancelled` shortly after.
58
59
  #
59
60
  # @return [Symbol, ContextDev::Models::BatchCancelResponse::Status]
60
61
  required :status, enum: -> { ContextDev::Models::BatchCancelResponse::Status }
@@ -66,113 +67,77 @@ module ContextDev
66
67
  required :tags, ContextDev::Internal::Type::ArrayOf[String]
67
68
 
68
69
  # @!attribute timing
70
+ # There is no finish time yet — the batch is still winding down.
69
71
  #
70
72
  # @return [ContextDev::Models::BatchCancelResponse::Timing]
71
73
  required :timing, -> { ContextDev::Models::BatchCancelResponse::Timing }
72
74
 
73
- # @!attribute type
74
- # Output format.
75
- #
76
- # @return [Symbol, ContextDev::Models::BatchCancelResponse::Type]
77
- required :type, enum: -> { ContextDev::Models::BatchCancelResponse::Type }
78
-
79
75
  # @!attribute key_metadata
80
76
  # API key usage for this request.
81
77
  #
82
78
  # @return [ContextDev::Models::BatchCancelResponse::KeyMetadata, nil]
83
79
  optional :key_metadata, -> { ContextDev::Models::BatchCancelResponse::KeyMetadata }
84
80
 
85
- # @!method initialize(id:, credits:, error:, errors:, input:, mode:, progress:, results:, status:, tags:, timing:, type:, key_metadata: nil)
81
+ # @!method initialize(id:, crawl:, credits:, format_:, input:, mode:, page_errors:, progress:, status:, tags:, timing:, key_metadata: nil)
86
82
  # Some parameter documentations has been truncated, see
87
83
  # {ContextDev::Models::BatchCancelResponse} for more details.
88
84
  #
89
- # @param id [String] Batch ID used to retrieve or cancel the job.
85
+ # @param id [String] Batch ID.
90
86
  #
91
- # @param credits [ContextDev::Models::BatchCancelResponse::Credits] Reserved and used credits.
87
+ # @param crawl [ContextDev::Models::CrawlControls, nil] The crawl controls as submitted, so the limits requested can be compared against
92
88
  #
93
- # @param error [ContextDev::Models::Error, nil] Why the batch failed.
89
+ # @param credits [ContextDev::Models::BatchCancelResponse::Credits] What this batch cost so far.
94
90
  #
95
- # @param errors [Array<ContextDev::Models::ErrorCount>] Page failures grouped by error code.
91
+ # @param format_ [Symbol, ContextDev::Models::BatchCancelResponse::Format] What each page is returned as.
96
92
  #
97
- # @param input [ContextDev::Models::BatchCancelResponse::Input] Submission counts.
93
+ # @param input [ContextDev::Models::Intake] What submission took in, and what it charged for.
98
94
  #
99
- # @param mode [Symbol, ContextDev::Models::BatchCancelResponse::Mode] How pages are selected.
95
+ # @param mode [Symbol, ContextDev::Models::BatchCancelResponse::Mode] How pages were selected.
100
96
  #
101
- # @param progress [ContextDev::Models::BatchCancelResponse::Progress] Current processing counts. Use `status` to check completion.
97
+ # @param page_errors [Array<ContextDev::Models::PageErrorCount>] Page failures so far, grouped by error code and sorted by count.
102
98
  #
103
- # @param results [ContextDev::Models::BatchCancelResponse::Results, nil] Download links available when the batch finishes. GET /batch/{batch_id}/results
99
+ # @param progress [ContextDev::Models::BatchCancelResponse::Progress] How far the batch got before cancellation.
104
100
  #
105
- # @param status [Symbol, ContextDev::Models::BatchCancelResponse::Status] Current state. `completed`, `cancelled`, and `failed` are final.
101
+ # @param status [Symbol, ContextDev::Models::BatchCancelResponse::Status] Always `cancelling`. Work already in flight finishes; the batch reaches `cancell
106
102
  #
107
103
  # @param tags [Array<String>] Tags stored on the batch at submission.
108
104
  #
109
- # @param timing [ContextDev::Models::BatchCancelResponse::Timing]
110
- #
111
- # @param type [Symbol, ContextDev::Models::BatchCancelResponse::Type] Output format.
105
+ # @param timing [ContextDev::Models::BatchCancelResponse::Timing] There is no finish time yet — the batch is still winding down.
112
106
  #
113
107
  # @param key_metadata [ContextDev::Models::BatchCancelResponse::KeyMetadata] API key usage for this request.
114
108
 
115
109
  # @see ContextDev::Models::BatchCancelResponse#credits
116
110
  class Credits < ContextDev::Internal::Type::BaseModel
117
- # @!attribute charged
118
- # Credits used by successful pages.
111
+ # @!attribute reserved
112
+ # Credits debited at submission. The unspent remainder is refunded once the batch
113
+ # settles — read `credits.refunded` from GET /batch/{batch_id} then.
119
114
  #
120
115
  # @return [Integer]
121
- required :charged, Integer
116
+ required :reserved, Integer
122
117
 
123
- # @!attribute estimated
124
- # Credits reserved when the batch was accepted.
125
- #
126
- # @return [Integer]
127
- required :estimated, Integer
128
-
129
- # @!method initialize(charged:, estimated:)
130
- # Reserved and used credits.
118
+ # @!method initialize(reserved:)
119
+ # Some parameter documentations has been truncated, see
120
+ # {ContextDev::Models::BatchCancelResponse::Credits} for more details.
131
121
  #
132
- # @param charged [Integer] Credits used by successful pages.
122
+ # What this batch cost so far.
133
123
  #
134
- # @param estimated [Integer] Credits reserved when the batch was accepted.
124
+ # @param reserved [Integer] Credits debited at submission. The unspent remainder is refunded once the batch
135
125
  end
136
126
 
137
- # @see ContextDev::Models::BatchCancelResponse#input
138
- class Input < ContextDev::Internal::Type::BaseModel
139
- # @!attribute accepted
140
- # Pages accepted, or the crawl page limit. Credits are reserved for this count.
141
- #
142
- # @return [Integer]
143
- required :accepted, Integer
144
-
145
- # @!attribute duplicates
146
- # Duplicate URL and `itemId` pairs skipped. Always 0 for crawls.
147
- #
148
- # @return [Integer]
149
- required :duplicates, Integer
150
-
151
- # @!attribute invalid
152
- # Pages rejected during validation.
153
- #
154
- # @return [Integer]
155
- required :invalid, Integer
127
+ # What each page is returned as.
128
+ #
129
+ # @see ContextDev::Models::BatchCancelResponse#format_
130
+ module Format
131
+ extend ContextDev::Internal::Type::Enum
156
132
 
157
- # @!attribute submitted
158
- # Pages submitted before validation. For a crawl, the page limit.
159
- #
160
- # @return [Integer]
161
- required :submitted, Integer
133
+ MARKDOWN = :markdown
134
+ HTML = :html
162
135
 
163
- # @!method initialize(accepted:, duplicates:, invalid:, submitted:)
164
- # Submission counts.
165
- #
166
- # @param accepted [Integer] Pages accepted, or the crawl page limit. Credits are reserved for this count.
167
- #
168
- # @param duplicates [Integer] Duplicate URL and `itemId` pairs skipped. Always 0 for crawls.
169
- #
170
- # @param invalid [Integer] Pages rejected during validation.
171
- #
172
- # @param submitted [Integer] Pages submitted before validation. For a crawl, the page limit.
136
+ # @!method self.values
137
+ # @return [Array<Symbol>]
173
138
  end
174
139
 
175
- # How pages are selected.
140
+ # How pages were selected.
176
141
  #
177
142
  # @see ContextDev::Models::BatchCancelResponse#mode
178
143
  module Mode
@@ -188,100 +153,41 @@ module ContextDev
188
153
  # @see ContextDev::Models::BatchCancelResponse#progress
189
154
  class Progress < ContextDev::Internal::Type::BaseModel
190
155
  # @!attribute failed
191
- # Pages that could not be scraped.
156
+ # Pages that could not be scraped before the request landed.
192
157
  #
193
158
  # @return [Integer]
194
159
  required :failed, Integer
195
160
 
196
161
  # @!attribute pending
197
- # Accepted pages not yet attempted. Always 0 once the batch completes; a crawl can
198
- # finish under its page limit when the site has no more reachable pages.
162
+ # Reserved pages that will now be skipped, and refunded when the batch settles.
199
163
  #
200
164
  # @return [Integer]
201
165
  required :pending, Integer
202
166
 
203
167
  # @!attribute succeeded
204
- # Pages scraped successfully.
168
+ # Pages scraped successfully before the request landed.
205
169
  #
206
170
  # @return [Integer]
207
171
  required :succeeded, Integer
208
172
 
209
173
  # @!method initialize(failed:, pending:, succeeded:)
210
- # Some parameter documentations has been truncated, see
211
- # {ContextDev::Models::BatchCancelResponse::Progress} for more details.
174
+ # How far the batch got before cancellation.
212
175
  #
213
- # Current processing counts. Use `status` to check completion.
176
+ # @param failed [Integer] Pages that could not be scraped before the request landed.
214
177
  #
215
- # @param failed [Integer] Pages that could not be scraped.
178
+ # @param pending [Integer] Reserved pages that will now be skipped, and refunded when the batch settles.
216
179
  #
217
- # @param pending [Integer] Accepted pages not yet attempted. Always 0 once the batch completes; a crawl can
218
- #
219
- # @param succeeded [Integer] Pages scraped successfully.
180
+ # @param succeeded [Integer] Pages scraped successfully before the request landed.
220
181
  end
221
182
 
222
- # @see ContextDev::Models::BatchCancelResponse#results
223
- class Results < ContextDev::Internal::Type::BaseModel
224
- # @!attribute expires_at
225
- # When the download URLs expire.
226
- #
227
- # @return [String]
228
- required :expires_at, String
229
-
230
- # @!attribute files
231
- # Result files. Order is not guaranteed.
232
- #
233
- # @return [Array<ContextDev::Models::BatchCancelResponse::Results::File>]
234
- required :files,
235
- -> { ContextDev::Internal::Type::ArrayOf[ContextDev::Models::BatchCancelResponse::Results::File] }
236
-
237
- # @!method initialize(expires_at:, files:)
238
- # Download links available when the batch finishes. GET /batch/{batch_id}/results
239
- # serves the same records as paginated JSON.
240
- #
241
- # @param expires_at [String] When the download URLs expire.
242
- #
243
- # @param files [Array<ContextDev::Models::BatchCancelResponse::Results::File>] Result files. Order is not guaranteed.
244
-
245
- class File < ContextDev::Internal::Type::BaseModel
246
- # @!attribute bytes
247
- # Compressed file size in bytes.
248
- #
249
- # @return [Integer]
250
- required :bytes, Integer
251
-
252
- # @!attribute items
253
- # Results in this file.
254
- #
255
- # @return [Integer]
256
- required :items, Integer
257
-
258
- # @!attribute url
259
- # Temporary URL for a gzipped NDJSON file.
260
- #
261
- # @return [String]
262
- required :url, String
263
-
264
- # @!method initialize(bytes:, items:, url:)
265
- # @param bytes [Integer] Compressed file size in bytes.
266
- #
267
- # @param items [Integer] Results in this file.
268
- #
269
- # @param url [String] Temporary URL for a gzipped NDJSON file.
270
- end
271
- end
272
-
273
- # Current state. `completed`, `cancelled`, and `failed` are final.
183
+ # Always `cancelling`. Work already in flight finishes; the batch reaches
184
+ # `cancelled` shortly after.
274
185
  #
275
186
  # @see ContextDev::Models::BatchCancelResponse#status
276
187
  module Status
277
188
  extend ContextDev::Internal::Type::Enum
278
189
 
279
- QUEUED = :queued
280
- RUNNING = :running
281
190
  CANCELLING = :cancelling
282
- COMPLETED = :completed
283
- CANCELLED = :cancelled
284
- FAILED = :failed
285
191
 
286
192
  # @!method self.values
287
193
  # @return [Array<Symbol>]
@@ -289,12 +195,6 @@ module ContextDev
289
195
 
290
196
  # @see ContextDev::Models::BatchCancelResponse#timing
291
197
  class Timing < ContextDev::Internal::Type::BaseModel
292
- # @!attribute completed_at
293
- # When processing finished. Null while active.
294
- #
295
- # @return [String, nil]
296
- required :completed_at, String, nil?: true
297
-
298
198
  # @!attribute created_at
299
199
  # When the batch was created.
300
200
  #
@@ -302,30 +202,17 @@ module ContextDev
302
202
  required :created_at, String
303
203
 
304
204
  # @!attribute started_at
305
- # When processing started. Null while queued.
205
+ # When processing started. Null if it was cancelled while still queued.
306
206
  #
307
207
  # @return [String, nil]
308
208
  required :started_at, String, nil?: true
309
209
 
310
- # @!method initialize(completed_at:, created_at:, started_at:)
311
- # @param completed_at [String, nil] When processing finished. Null while active.
210
+ # @!method initialize(created_at:, started_at:)
211
+ # There is no finish time yet — the batch is still winding down.
312
212
  #
313
213
  # @param created_at [String] When the batch was created.
314
214
  #
315
- # @param started_at [String, nil] When processing started. Null while queued.
316
- end
317
-
318
- # Output format.
319
- #
320
- # @see ContextDev::Models::BatchCancelResponse#type
321
- module Type
322
- extend ContextDev::Internal::Type::Enum
323
-
324
- MARKDOWN = :markdown
325
- HTML = :html
326
-
327
- # @!method self.values
328
- # @return [Array<Symbol>]
215
+ # @param started_at [String, nil] When processing started. Null if it was cancelled while still queued.
329
216
  end
330
217
 
331
218
  # @see ContextDev::Models::BatchCancelResponse#key_metadata