retab 0.1.0 → 0.1.2

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 (354) hide show
  1. checksums.yaml +4 -4
  2. data/lib/retab/base_client.rb +168 -33
  3. data/lib/retab/classifications/category.rb +3 -1
  4. data/lib/retab/classifications/classification.rb +3 -1
  5. data/lib/retab/classifications/classification_consensus.rb +3 -1
  6. data/lib/retab/classifications/classification_decision.rb +3 -1
  7. data/lib/retab/classifications/classification_request.rb +3 -1
  8. data/lib/retab/classifications.rb +40 -25
  9. data/lib/retab/client.rb +0 -68
  10. data/lib/retab/configuration.rb +8 -6
  11. data/lib/retab/edit_templates/create_edit_template_request.rb +3 -1
  12. data/lib/retab/edit_templates/edit_template.rb +3 -1
  13. data/lib/retab/edit_templates/update_edit_template_request.rb +3 -1
  14. data/lib/retab/edit_templates.rb +36 -24
  15. data/lib/retab/edits/edit.rb +6 -1
  16. data/lib/retab/edits/edit_request.rb +3 -1
  17. data/lib/retab/edits.rb +45 -25
  18. data/lib/retab/errors.rb +21 -4
  19. data/lib/retab/experiment_run_metrics/experiment_by_document_metrics_response.rb +3 -1
  20. data/lib/retab/experiment_run_metrics/experiment_by_document_target_metric.rb +3 -1
  21. data/lib/retab/experiment_run_metrics/experiment_by_target_document_metric.rb +3 -1
  22. data/lib/retab/experiment_run_metrics/experiment_by_target_metrics_response.rb +6 -2
  23. data/lib/retab/experiment_run_metrics/experiment_confusion_flow_metric.rb +3 -1
  24. data/lib/retab/experiment_run_metrics/experiment_confusion_summary_aggregate.rb +3 -1
  25. data/lib/retab/experiment_run_metrics/experiment_extract_summary_aggregate.rb +1 -0
  26. data/lib/retab/experiment_run_metrics/experiment_metric_document_ref.rb +3 -1
  27. data/lib/retab/experiment_run_metrics/experiment_metrics_missing_error.rb +3 -1
  28. data/lib/retab/experiment_run_metrics/experiment_metrics_stale_error.rb +3 -1
  29. data/lib/retab/experiment_run_metrics/experiment_summary_metric_document.rb +3 -1
  30. data/lib/retab/experiment_run_metrics/experiment_summary_metrics_response.rb +6 -2
  31. data/lib/retab/experiment_run_metrics/experiment_target_confusion_metric.rb +3 -1
  32. data/lib/retab/experiment_run_metrics/experiment_vote_row.rb +3 -1
  33. data/lib/retab/experiment_run_metrics/experiment_votes_metrics_response.rb +3 -1
  34. data/lib/retab/experiment_run_metrics/metrics_stale_error_last_run.rb +3 -1
  35. data/lib/retab/experiment_run_metrics.rb +9 -9
  36. data/lib/retab/experiment_run_results/error_workflow_experiment_result.rb +3 -1
  37. data/lib/retab/experiment_run_results/experiment_result.rb +21 -2
  38. data/lib/retab/experiment_run_results/experiment_result_timing.rb +3 -1
  39. data/lib/retab/experiment_run_results.rb +32 -8
  40. data/lib/retab/experiment_runs/cancel_workflow_experiment_run_response.rb +21 -2
  41. data/lib/retab/experiment_runs/create_experiment_run_request.rb +3 -1
  42. data/lib/retab/experiment_runs/experiment_run.rb +21 -2
  43. data/lib/retab/experiment_runs/experiment_run_timing.rb +3 -1
  44. data/lib/retab/experiment_runs/experiment_run_trigger.rb +1 -0
  45. data/lib/retab/experiment_runs.rb +56 -33
  46. data/lib/retab/extractions/extraction.rb +3 -1
  47. data/lib/retab/extractions/extraction_consensus.rb +3 -1
  48. data/lib/retab/extractions/extraction_request.rb +8 -3
  49. data/lib/retab/extractions/file_ref.rb +3 -1
  50. data/lib/retab/extractions/retab_usage.rb +1 -0
  51. data/lib/retab/extractions/sources_response.rb +3 -1
  52. data/lib/retab/extractions.rb +59 -33
  53. data/lib/retab/files/complete_file_upload_request.rb +1 -0
  54. data/lib/retab/files/create_upload_response.rb +3 -1
  55. data/lib/retab/files/file.rb +6 -1
  56. data/lib/retab/files/file_link.rb +3 -1
  57. data/lib/retab/files/upload_file_request.rb +3 -1
  58. data/lib/retab/files.rb +55 -29
  59. data/lib/retab/jobs/create_job_request.rb +3 -1
  60. data/lib/retab/jobs/job.rb +3 -1
  61. data/lib/retab/jobs/job_error.rb +3 -1
  62. data/lib/retab/jobs/job_response.rb +3 -1
  63. data/lib/retab/jobs.rb +73 -37
  64. data/lib/retab/mime.rb +69 -38
  65. data/lib/retab/paginated_list.rb +86 -0
  66. data/lib/retab/parses/parse.rb +3 -1
  67. data/lib/retab/parses/parse_output.rb +3 -1
  68. data/lib/retab/parses/parse_request.rb +3 -1
  69. data/lib/retab/parses.rb +39 -24
  70. data/lib/retab/partitions/partition.rb +3 -1
  71. data/lib/retab/partitions/partition_chunk.rb +3 -1
  72. data/lib/retab/partitions/partition_chunk_likelihood.rb +3 -1
  73. data/lib/retab/partitions/partition_consensus.rb +6 -2
  74. data/lib/retab/partitions/partition_request.rb +3 -1
  75. data/lib/retab/partitions.rb +40 -25
  76. data/lib/retab/schemas/generate_schema_request.rb +3 -1
  77. data/lib/retab/schemas/partial_schema.rb +3 -1
  78. data/lib/retab/schemas.rb +13 -9
  79. data/lib/retab/shared/http_validation_error.rb +1 -0
  80. data/lib/retab/shared/validation_error.rb +3 -1
  81. data/lib/retab/splits/split.rb +3 -1
  82. data/lib/retab/splits/split_consensus.rb +6 -2
  83. data/lib/retab/splits/split_request.rb +3 -1
  84. data/lib/retab/splits/split_result.rb +3 -1
  85. data/lib/retab/splits/split_subdocument_likelihood.rb +3 -1
  86. data/lib/retab/splits/subdocument.rb +3 -1
  87. data/lib/retab/splits.rb +39 -24
  88. data/lib/retab/types/actor_kind.rb +3 -3
  89. data/lib/retab/types/api_response.rb +2 -0
  90. data/lib/retab/types/assertion_drift_status.rb +3 -3
  91. data/lib/retab/types/assertion_outcome.rb +3 -3
  92. data/lib/retab/types/base_model.rb +34 -9
  93. data/lib/retab/types/cancel_workflow_response_cancellation_status.rb +3 -3
  94. data/lib/retab/types/classifications_order.rb +2 -2
  95. data/lib/retab/types/condition_evaluation_details_logical_operator.rb +2 -2
  96. data/lib/retab/types/create_experiment_request_n_consensus.rb +3 -3
  97. data/lib/retab/types/create_job_request_endpoint.rb +24 -12
  98. data/lib/retab/types/declarative_apply_response_action.rb +3 -3
  99. data/lib/retab/types/declarative_plan_field_change_action.rb +3 -3
  100. data/lib/retab/types/declarative_plan_resource_change_target.rb +3 -3
  101. data/lib/retab/types/declarative_plan_resource_change_type.rb +44 -22
  102. data/lib/retab/types/error_step_lifecycle_category.rb +3 -3
  103. data/lib/retab/types/error_step_lifecycle_stage.rb +7 -7
  104. data/lib/retab/types/experiment_block_type.rb +4 -4
  105. data/lib/retab/types/experiment_public_status.rb +5 -5
  106. data/lib/retab/types/experiment_run_metrics_view.rb +4 -4
  107. data/lib/retab/types/experiment_run_results_order.rb +9 -0
  108. data/lib/retab/types/experiment_schema_drift_status.rb +4 -4
  109. data/lib/retab/types/field_type.rb +2 -2
  110. data/lib/retab/types/generate_schema_request_reasoning_effort.rb +6 -6
  111. data/lib/retab/types/handle_payload_type.rb +3 -3
  112. data/lib/retab/types/job_status.rb +7 -7
  113. data/lib/retab/types/jobs_source.rb +3 -3
  114. data/lib/retab/types/latest_block_test_run_summary_status.rb +6 -6
  115. data/lib/retab/types/length_compare_condition_op.rb +6 -6
  116. data/lib/retab/types/list_struct.rb +13 -50
  117. data/lib/retab/types/parse_request_table_parsing_format.rb +4 -4
  118. data/lib/retab/types/request_options.rb +2 -0
  119. data/lib/retab/types/resume_status.rb +5 -4
  120. data/lib/retab/types/review_decision_status.rb +5 -5
  121. data/lib/retab/types/review_evaluation_review_decision.rb +2 -2
  122. data/lib/retab/types/similarity_gte_condition_method.rb +2 -2
  123. data/lib/retab/types/sources_response_document_type.rb +6 -6
  124. data/lib/retab/types/step_artifact_ref_operation.rb +24 -12
  125. data/lib/retab/types/submission_status.rb +3 -3
  126. data/lib/retab/types/update_workflow_block_request_config_mode.rb +2 -2
  127. data/lib/retab/types/while_loop_termination_termination_reason.rb +3 -3
  128. data/lib/retab/types/workflow_block_create_request_type.rb +30 -15
  129. data/lib/retab/types/workflow_block_executions_order.rb +9 -0
  130. data/lib/retab/types/workflow_block_type.rb +40 -20
  131. data/lib/retab/types/workflow_experiments_order.rb +9 -0
  132. data/lib/retab/types/workflow_export_payload_request_exclude_status.rb +8 -8
  133. data/lib/retab/types/workflow_export_payload_request_export_source.rb +2 -2
  134. data/lib/retab/types/workflow_export_payload_request_trigger_types.rb +6 -6
  135. data/lib/retab/types/workflow_test_run_results_order.rb +9 -0
  136. data/lib/retab/types/{workflow_config_block_type.rb → workflow_tests_order.rb} +1 -1
  137. data/lib/retab/util.rb +4 -2
  138. data/lib/retab/version.rb +3 -1
  139. data/lib/retab/workflow_artifacts/api_call_attempt.rb +3 -1
  140. data/lib/retab/workflow_artifacts/api_call_invocation.rb +3 -1
  141. data/lib/retab/workflow_artifacts/b_box.rb +3 -1
  142. data/lib/retab/workflow_artifacts/classification_workflow_artifact.rb +3 -1
  143. data/lib/retab/workflow_artifacts/condition_evaluation_details.rb +6 -2
  144. data/lib/retab/workflow_artifacts/condition_evaluation_per_item.rb +3 -1
  145. data/lib/retab/workflow_artifacts/condition_evaluation_result.rb +6 -2
  146. data/lib/retab/workflow_artifacts/condition_evaluation_sub_condition.rb +3 -1
  147. data/lib/retab/workflow_artifacts/conditional_evaluation.rb +3 -1
  148. data/lib/retab/workflow_artifacts/edit_config.rb +1 -0
  149. data/lib/retab/workflow_artifacts/edit_result.rb +3 -1
  150. data/lib/retab/workflow_artifacts/edit_workflow_artifact.rb +6 -1
  151. data/lib/retab/workflow_artifacts/extraction_workflow_artifact.rb +3 -1
  152. data/lib/retab/workflow_artifacts/form_field.rb +3 -1
  153. data/lib/retab/workflow_artifacts/function_invocation.rb +3 -1
  154. data/lib/retab/workflow_artifacts/parse_workflow_artifact.rb +3 -1
  155. data/lib/retab/workflow_artifacts/partition_workflow_artifact.rb +3 -1
  156. data/lib/retab/workflow_artifacts/review_evaluation.rb +3 -1
  157. data/lib/retab/workflow_artifacts/split_workflow_artifact.rb +3 -1
  158. data/lib/retab/workflow_artifacts/while_loop_termination.rb +3 -1
  159. data/lib/retab/workflow_artifacts/workflow_artifact.rb +3 -1
  160. data/lib/retab/workflow_artifacts.rb +20 -13
  161. data/lib/retab/workflow_block_executions/completed_block_execution_lifecycle.rb +1 -0
  162. data/lib/retab/workflow_block_executions/create_block_execution_request.rb +3 -1
  163. data/lib/retab/workflow_block_executions/error_block_execution_lifecycle.rb +3 -1
  164. data/lib/retab/workflow_block_executions/skipped_block_execution_lifecycle.rb +3 -1
  165. data/lib/retab/workflow_block_executions/stored_block_execution.rb +15 -2
  166. data/lib/retab/workflow_block_executions.rb +40 -15
  167. data/lib/retab/workflow_blocks/update_workflow_block_request.rb +3 -1
  168. data/lib/retab/workflow_blocks/workflow_block.rb +3 -1
  169. data/lib/retab/workflow_blocks/workflow_block_create_request.rb +3 -1
  170. data/lib/retab/workflow_blocks.rb +52 -36
  171. data/lib/retab/workflow_edges/workflow_edge_create_request.rb +3 -1
  172. data/lib/retab/workflow_edges/workflow_edge_doc.rb +3 -1
  173. data/lib/retab/workflow_edges.rb +36 -22
  174. data/lib/retab/workflow_experiments/create_experiment_request.rb +9 -3
  175. data/lib/retab/workflow_experiments/experiment_document_capture_request.rb +3 -1
  176. data/lib/retab/workflow_experiments/experiment_document_provenance.rb +3 -1
  177. data/lib/retab/workflow_experiments/explicit_experiment_document_request.rb +3 -1
  178. data/lib/retab/workflow_experiments/update_experiment_request.rb +9 -3
  179. data/lib/retab/workflow_experiments/workflow_experiment.rb +3 -1
  180. data/lib/retab/workflow_experiments.rb +70 -23
  181. data/lib/retab/workflow_review_versions/create_review_version_request.rb +3 -1
  182. data/lib/retab/workflow_review_versions/review_version.rb +3 -1
  183. data/lib/retab/workflow_review_versions.rb +25 -17
  184. data/lib/retab/workflow_reviews/actor.rb +3 -1
  185. data/lib/retab/workflow_reviews/approve_review_request.rb +1 -0
  186. data/lib/retab/workflow_reviews/reject_review_request.rb +3 -1
  187. data/lib/retab/workflow_reviews/review.rb +37 -2
  188. data/lib/retab/workflow_reviews/review_all_of.rb +39 -2
  189. data/lib/retab/workflow_reviews/review_always.rb +1 -0
  190. data/lib/retab/workflow_reviews/review_any_of.rb +39 -2
  191. data/lib/retab/workflow_reviews/review_any_required_field_null.rb +1 -0
  192. data/lib/retab/workflow_reviews/review_any_split_pages_lt.rb +3 -1
  193. data/lib/retab/workflow_reviews/review_boundary_confidence_lt.rb +3 -1
  194. data/lib/retab/workflow_reviews/review_branch_in.rb +3 -1
  195. data/lib/retab/workflow_reviews/review_category_in.rb +3 -1
  196. data/lib/retab/workflow_reviews/review_confidence_lt.rb +3 -1
  197. data/lib/retab/workflow_reviews/review_decision.rb +3 -1
  198. data/lib/retab/workflow_reviews/review_field_confidence_lt.rb +3 -1
  199. data/lib/retab/workflow_reviews/review_json_condition.rb +3 -1
  200. data/lib/retab/workflow_reviews/review_split_count_neq.rb +3 -1
  201. data/lib/retab/workflow_reviews/review_top_margin_lt.rb +3 -1
  202. data/lib/retab/workflow_reviews/review_validation_failed.rb +1 -0
  203. data/lib/retab/workflow_reviews/submit_decision_response.rb +3 -1
  204. data/lib/retab/workflow_reviews.rb +47 -22
  205. data/lib/retab/workflow_runs/api_trigger.rb +3 -1
  206. data/lib/retab/workflow_runs/awaiting_review_run.rb +3 -1
  207. data/lib/retab/workflow_runs/cancel_workflow_request.rb +1 -0
  208. data/lib/retab/workflow_runs/cancel_workflow_response.rb +3 -1
  209. data/lib/retab/workflow_runs/cancelled_terminal.rb +3 -1
  210. data/lib/retab/workflow_runs/create_workflow_run_request.rb +16 -0
  211. data/lib/retab/workflow_runs/email_trigger.rb +3 -1
  212. data/lib/retab/workflow_runs/error_details.rb +3 -1
  213. data/lib/retab/workflow_runs/error_terminal.rb +3 -1
  214. data/lib/retab/workflow_runs/manual_trigger.rb +3 -1
  215. data/lib/retab/workflow_runs/pending_run.rb +1 -0
  216. data/lib/retab/workflow_runs/restart_trigger.rb +3 -1
  217. data/lib/retab/workflow_runs/run_inputs.rb +3 -1
  218. data/lib/retab/workflow_runs/run_timing.rb +3 -1
  219. data/lib/retab/workflow_runs/running_run.rb +1 -0
  220. data/lib/retab/workflow_runs/schedule_trigger.rb +3 -1
  221. data/lib/retab/workflow_runs/webhook_trigger.rb +3 -1
  222. data/lib/retab/workflow_runs/workflow_export_payload_request.rb +3 -1
  223. data/lib/retab/workflow_runs/workflow_export_payload_response.rb +3 -1
  224. data/lib/retab/workflow_runs/workflow_run.rb +39 -3
  225. data/lib/retab/workflow_runs/workflow_snapshot_ref.rb +3 -1
  226. data/lib/retab/workflow_runs.rb +97 -47
  227. data/lib/retab/{workflow_specs → workflow_spec}/declarative_apply_response.rb +6 -2
  228. data/lib/retab/{workflow_specs → workflow_spec}/declarative_export_response.rb +3 -1
  229. data/lib/retab/{workflow_specs → workflow_spec}/declarative_plan_change.rb +6 -2
  230. data/lib/retab/{workflow_specs → workflow_spec}/declarative_plan_field_change.rb +3 -1
  231. data/lib/retab/{workflow_specs → workflow_spec}/declarative_plan_resource_change.rb +3 -1
  232. data/lib/retab/{workflow_specs → workflow_spec}/declarative_plan_response.rb +6 -2
  233. data/lib/retab/{workflow_specs → workflow_spec}/declarative_plan_summary.rb +3 -1
  234. data/lib/retab/{workflow_specs → workflow_spec}/declarative_validation_response.rb +3 -1
  235. data/lib/retab/{workflow_specs → workflow_spec}/declarative_workflow_request.rb +1 -0
  236. data/lib/retab/{workflow_specs.rb → workflow_spec.rb} +29 -13
  237. data/lib/retab/workflow_steps/awaiting_review_step_lifecycle.rb +1 -0
  238. data/lib/retab/workflow_steps/cancelled_step_lifecycle.rb +3 -1
  239. data/lib/retab/workflow_steps/container_context_data.rb +3 -1
  240. data/lib/retab/workflow_steps/error_step_lifecycle.rb +3 -1
  241. data/lib/retab/workflow_steps/handle_payload.rb +3 -1
  242. data/lib/retab/workflow_steps/queued_step_lifecycle.rb +1 -0
  243. data/lib/retab/workflow_steps/step_artifact_ref.rb +3 -1
  244. data/lib/retab/workflow_steps/workflow_run_step.rb +28 -3
  245. data/lib/retab/workflow_steps.rb +34 -17
  246. data/lib/retab/workflow_test_run_results/assertion_failure.rb +3 -1
  247. data/lib/retab/workflow_test_run_results/assertion_result.rb +3 -1
  248. data/lib/retab/workflow_test_run_results/file_handle_input.rb +3 -1
  249. data/lib/retab/workflow_test_run_results/json_handle_input.rb +3 -1
  250. data/lib/retab/workflow_test_run_results/manual_workflow_test_source.rb +3 -1
  251. data/lib/retab/workflow_test_run_results/materialized_document.rb +3 -1
  252. data/lib/retab/workflow_test_run_results/run_step_workflow_test_source.rb +3 -1
  253. data/lib/retab/workflow_test_run_results/verdict_summary.rb +3 -1
  254. data/lib/retab/workflow_test_run_results/workflow_test_result.rb +31 -3
  255. data/lib/retab/workflow_test_run_results.rb +35 -8
  256. data/lib/retab/workflow_test_runs/block_test_batch_execution_counts.rb +3 -1
  257. data/lib/retab/workflow_test_runs/block_test_lifecycle_counts.rb +3 -1
  258. data/lib/retab/workflow_test_runs/block_test_outcome_counts.rb +3 -1
  259. data/lib/retab/workflow_test_runs/create_workflow_test_run_request.rb +30 -1
  260. data/lib/retab/workflow_test_runs/workflow_test_block_target.rb +3 -1
  261. data/lib/retab/workflow_test_runs/workflow_test_run.rb +39 -3
  262. data/lib/retab/{workflows/workflow_diagnosis_issue.rb → workflow_test_runs/workflow_test_run_block_scope.rb} +7 -11
  263. data/lib/retab/workflow_test_runs/workflow_test_run_single_scope.rb +25 -0
  264. data/lib/retab/workflow_test_runs/workflow_test_run_timing.rb +3 -1
  265. data/lib/retab/{workflows/workflow_block_position.rb → workflow_test_runs/workflow_test_run_workflow_scope.rb} +5 -8
  266. data/lib/retab/workflow_test_runs.rb +66 -32
  267. data/lib/retab/workflow_tests/all_items_match_condition.rb +39 -2
  268. data/lib/retab/workflow_tests/any_item_matches_condition.rb +39 -2
  269. data/lib/retab/workflow_tests/array_contains_condition.rb +3 -1
  270. data/lib/retab/workflow_tests/assertion_schema_dep.rb +3 -1
  271. data/lib/retab/workflow_tests/assertion_spec.rb +39 -2
  272. data/lib/retab/workflow_tests/between_condition.rb +3 -1
  273. data/lib/retab/workflow_tests/contain_condition.rb +3 -1
  274. data/lib/retab/workflow_tests/create_workflow_test_request.rb +13 -2
  275. data/lib/retab/workflow_tests/ends_with_condition.rb +3 -1
  276. data/lib/retab/workflow_tests/equal_condition.rb +3 -1
  277. data/lib/retab/workflow_tests/exist_condition.rb +1 -0
  278. data/lib/retab/workflow_tests/json_schema_valid_condition.rb +3 -1
  279. data/lib/retab/workflow_tests/latest_block_test_run_summary.rb +3 -1
  280. data/lib/retab/workflow_tests/length_compare_condition.rb +3 -1
  281. data/lib/retab/workflow_tests/llm_judged_as_condition.rb +3 -1
  282. data/lib/retab/workflow_tests/llm_not_judged_as_condition.rb +3 -1
  283. data/lib/retab/workflow_tests/matche_regex_condition.rb +3 -1
  284. data/lib/retab/workflow_tests/not_contains_condition.rb +3 -1
  285. data/lib/retab/workflow_tests/not_equals_condition.rb +3 -1
  286. data/lib/retab/workflow_tests/not_exists_condition.rb +1 -0
  287. data/lib/retab/workflow_tests/number_compare_condition.rb +3 -1
  288. data/lib/retab/workflow_tests/object_contains_condition.rb +3 -1
  289. data/lib/retab/workflow_tests/output_target.rb +3 -1
  290. data/lib/retab/workflow_tests/similarity_gte_condition.rb +3 -1
  291. data/lib/retab/workflow_tests/split_iou_condition.rb +3 -1
  292. data/lib/retab/workflow_tests/start_with_condition.rb +3 -1
  293. data/lib/retab/workflow_tests/update_workflow_test_request.rb +13 -2
  294. data/lib/retab/workflow_tests/workflow_test.rb +19 -4
  295. data/lib/retab/workflow_tests.rb +68 -21
  296. data/lib/retab/workflows/create_workflow_request.rb +3 -1
  297. data/lib/retab/workflows/publish_workflow_request.rb +1 -0
  298. data/lib/retab/workflows/update_workflow_request.rb +3 -1
  299. data/lib/retab/workflows/workflow.rb +3 -4
  300. data/lib/retab/workflows/workflow_published.rb +3 -1
  301. data/lib/retab/workflows.rb +76 -55
  302. data/lib/retab.rb +6 -6
  303. data/rbi/retab/classifications.rbi +1 -1
  304. data/rbi/retab/client.rbi +0 -51
  305. data/rbi/retab/create_workflow_run_request.rbi +24 -0
  306. data/rbi/retab/create_workflow_test_run_request.rbi +12 -0
  307. data/rbi/retab/edit.rbi +6 -0
  308. data/rbi/retab/edit_template.rbi +4 -4
  309. data/rbi/retab/edit_templates.rbi +1 -1
  310. data/rbi/retab/edit_workflow_artifact.rbi +6 -0
  311. data/rbi/retab/edits.rbi +4 -1
  312. data/rbi/retab/email_trigger.rbi +2 -2
  313. data/rbi/retab/experiment_run_results.rbi +5 -2
  314. data/rbi/retab/experiment_runs.rbi +2 -3
  315. data/rbi/retab/extraction_request.rbi +6 -0
  316. data/rbi/retab/extractions.rbi +3 -2
  317. data/rbi/retab/file.rbi +10 -4
  318. data/rbi/retab/files.rbi +2 -2
  319. data/rbi/retab/jobs.rbi +1 -1
  320. data/rbi/retab/parses.rbi +1 -1
  321. data/rbi/retab/partitions.rbi +1 -1
  322. data/rbi/retab/splits.rbi +1 -1
  323. data/rbi/retab/workflow.rbi +0 -6
  324. data/rbi/retab/workflow_artifacts.rbi +1 -1
  325. data/rbi/retab/workflow_block_executions.rbi +5 -2
  326. data/rbi/retab/workflow_blocks.rbi +4 -1
  327. data/rbi/retab/workflow_edges.rbi +1 -1
  328. data/rbi/retab/workflow_experiments.rbi +15 -2
  329. data/rbi/retab/workflow_review_versions.rbi +1 -1
  330. data/rbi/retab/workflow_reviews.rbi +4 -1
  331. data/rbi/retab/workflow_runs.rbi +6 -2
  332. data/rbi/retab/{workflow_specs.rbi → workflow_spec.rbi} +1 -1
  333. data/rbi/retab/workflow_steps.rbi +3 -2
  334. data/rbi/retab/{workflow_diagnosis_issue.rbi → workflow_test_run_block_scope.rbi} +4 -16
  335. data/rbi/retab/workflow_test_run_results.rbi +6 -2
  336. data/rbi/retab/workflow_test_run_single_scope.rbi +30 -0
  337. data/rbi/retab/{workflow_block_position.rbi → workflow_test_run_workflow_scope.rbi} +5 -11
  338. data/rbi/retab/workflow_test_runs.rbi +5 -4
  339. data/rbi/retab/workflow_tests.rbi +11 -2
  340. data/rbi/retab/workflows.rbi +28 -12
  341. metadata +25 -31
  342. data/lib/retab/types/workflow_diagnosis_issue_severity.rb +0 -14
  343. data/lib/retab/workflows/workflow_config_block.rb +0 -44
  344. data/lib/retab/workflows/workflow_config_edge.rb +0 -35
  345. data/lib/retab/workflows/workflow_diagnosis_response.rb +0 -29
  346. data/lib/retab/workflows/workflow_diagnosis_stats.rb +0 -29
  347. data/lib/retab/workflows/workflow_email_trigger.rb +0 -23
  348. data/lib/retab/workflows/workflow_graph_diagnosis_request.rb +0 -26
  349. data/rbi/retab/workflow_config_block.rbi +0 -72
  350. data/rbi/retab/workflow_config_edge.rbi +0 -54
  351. data/rbi/retab/workflow_diagnosis_response.rbi +0 -42
  352. data/rbi/retab/workflow_diagnosis_stats.rbi +0 -42
  353. data/rbi/retab/workflow_email_trigger.rbi +0 -30
  354. data/rbi/retab/workflow_graph_diagnosis_request.rbi +0 -36
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # This file is auto-generated by oagen. Do not edit.
4
+
3
5
  # @oagen-ignore-file
4
6
  #
5
7
  # Hand-maintained BaseModel. All spec-derived model classes extend this:
@@ -18,22 +20,40 @@
18
20
  # - `to_h` / `to_json` / `inspect` — driven by the subclass's HASH_ATTRS.
19
21
  # - `last_response` — the API response wrapper attached by resource methods.
20
22
 
21
- require 'json'
23
+ require "json"
22
24
 
23
25
  module Retab
24
26
  module Types
25
27
  class BaseModel
26
28
  attr_accessor :last_response
27
29
 
28
- # Normalize incoming `json` into a Hash with symbol keys. The
29
- # spec-derived `initialize` body reads `hash[:foo]` directly.
30
+ # Normalize incoming `json` into a Hash with symbol keys (all the way
31
+ # down). The spec-derived `initialize` body reads `hash[:foo]` and
32
+ # passes nested values to other model constructors / discriminator
33
+ # `case ... when "api" then` dispatchers. The String branch already
34
+ # symbolizes deeply via `JSON.parse(..., symbolize_names: true)`; the
35
+ # Hash branch must match — otherwise list responses (which arrive as
36
+ # string-keyed Hashes from `ListStruct.from_response`'s `JSON.parse`)
37
+ # leave nested data unsymbolized and the discriminator falls through
38
+ # to the raw `else` branch instead of constructing the typed variant.
30
39
  def self.normalize(json)
31
40
  return {} if json.nil?
32
- return json.transform_keys(&:to_sym) if json.is_a?(Hash)
41
+ return deep_symbolize(json) if json.is_a?(Hash)
33
42
  return JSON.parse(json, symbolize_names: true) if json.is_a?(String)
34
43
  raise ArgumentError, "cannot normalize #{json.class} into a model hash"
35
44
  end
36
45
 
46
+ def self.deep_symbolize(value)
47
+ case value
48
+ when Hash
49
+ value.each_with_object({}) { |(k, v), h| h[k.to_sym] = deep_symbolize(v) }
50
+ when Array
51
+ value.map { |v| deep_symbolize(v) }
52
+ else
53
+ value
54
+ end
55
+ end
56
+
37
57
  def to_h
38
58
  hash_attrs = self.class.const_defined?(:HASH_ATTRS) ? self.class.const_get(:HASH_ATTRS) : {}
39
59
  out = {}
@@ -41,6 +61,7 @@ module Retab
41
61
  value = instance_variable_get("@#{attr}")
42
62
  out[wire_key] = serialize(value)
43
63
  end
64
+
44
65
  out
45
66
  end
46
67
 
@@ -49,7 +70,7 @@ module Retab
49
70
  end
50
71
 
51
72
  def inspect
52
- attrs = to_h.map { |k, v| "#{k}=#{v.inspect}" }.join(' ')
73
+ attrs = to_h.map { |k, v| "#{k}=#{v.inspect}" }.join(" ")
53
74
  "#<#{self.class.name} #{attrs}>"
54
75
  end
55
76
 
@@ -57,10 +78,14 @@ module Retab
57
78
 
58
79
  def serialize(value)
59
80
  case value
60
- when BaseModel then value.to_h
61
- when Array then value.map { |v| serialize(v) }
62
- when Hash then value.transform_values { |v| serialize(v) }
63
- else value
81
+ when BaseModel
82
+ value.to_h
83
+ when Array
84
+ value.map { |v| serialize(v) }
85
+ when Hash
86
+ value.transform_values { |v| serialize(v) }
87
+ else
88
+ value
64
89
  end
65
90
  end
66
91
  end
@@ -5,9 +5,9 @@
5
5
  module Retab
6
6
  module Types
7
7
  class CancelWorkflowResponseCancellationStatus
8
- CANCELLED = 'cancelled'
9
- CANCELLATION_REQUESTED = 'cancellation_requested'
10
- CANCELLATION_FAILED = 'cancellation_failed'
8
+ CANCELLED = "cancelled"
9
+ CANCELLATION_REQUESTED = "cancellation_requested"
10
+ CANCELLATION_FAILED = "cancellation_failed"
11
11
  ALL = [CANCELLED, CANCELLATION_REQUESTED, CANCELLATION_FAILED].freeze
12
12
  end
13
13
  end
@@ -5,8 +5,8 @@
5
5
  module Retab
6
6
  module Types
7
7
  class ClassificationsOrder
8
- ASC = 'asc'
9
- DESC = 'desc'
8
+ ASC = "asc"
9
+ DESC = "desc"
10
10
  ALL = [ASC, DESC].freeze
11
11
  end
12
12
  end
@@ -5,8 +5,8 @@
5
5
  module Retab
6
6
  module Types
7
7
  class ConditionEvaluationDetailsLogicalOperator
8
- AND = 'and'
9
- OR = 'or'
8
+ AND = "and"
9
+ OR = "or"
10
10
  ALL = [AND, OR].freeze
11
11
  end
12
12
  end
@@ -5,9 +5,9 @@
5
5
  module Retab
6
6
  module Types
7
7
  class CreateExperimentRequestNConsensus
8
- VALUE_3 = '3'
9
- VALUE_5 = '5'
10
- VALUE_7 = '7'
8
+ VALUE_3 = "3"
9
+ VALUE_5 = "5"
10
+ VALUE_7 = "7"
11
11
  ALL = [VALUE_3, VALUE_5, VALUE_7].freeze
12
12
  end
13
13
  end
@@ -5,18 +5,30 @@
5
5
  module Retab
6
6
  module Types
7
7
  class CreateJobRequestEndpoint
8
- V_1_EXTRACTIONS = '/v1/extractions'
9
- V_1_PARSES = '/v1/parses'
10
- V_1_SPLITS = '/v1/splits'
11
- V_1_PARTITIONS = '/v1/partitions'
12
- V_1_CLASSIFICATIONS = '/v1/classifications'
13
- V_1_SCHEMAS_GENERATE = '/v1/schemas/generate'
14
- V_1_EDITS = '/v1/edits'
15
- V_1_EDITS_TEMPLATES_GENERATE = '/v1/edits/templates/generate'
16
- V_1_EVALS_EXTRACT_PROCESS = '/v1/evals/extract/process'
17
- V_1_EVALS_EXTRACT_EXTRACT = '/v1/evals/extract/extract'
18
- V_1_EVALS_EXTRACT_SPLIT = '/v1/evals/extract/split'
19
- ALL = [V_1_EXTRACTIONS, V_1_PARSES, V_1_SPLITS, V_1_PARTITIONS, V_1_CLASSIFICATIONS, V_1_SCHEMAS_GENERATE, V_1_EDITS, V_1_EDITS_TEMPLATES_GENERATE, V_1_EVALS_EXTRACT_PROCESS, V_1_EVALS_EXTRACT_EXTRACT, V_1_EVALS_EXTRACT_SPLIT].freeze
8
+ V_1_EXTRACTIONS = "/v1/extractions"
9
+ V_1_PARSES = "/v1/parses"
10
+ V_1_SPLITS = "/v1/splits"
11
+ V_1_PARTITIONS = "/v1/partitions"
12
+ V_1_CLASSIFICATIONS = "/v1/classifications"
13
+ V_1_SCHEMAS_GENERATE = "/v1/schemas/generate"
14
+ V_1_EDITS = "/v1/edits"
15
+ V_1_EDITS_TEMPLATES_GENERATE = "/v1/edits/templates/generate"
16
+ V_1_EVALS_EXTRACT_PROCESS = "/v1/evals/extract/process"
17
+ V_1_EVALS_EXTRACT_EXTRACT = "/v1/evals/extract/extract"
18
+ V_1_EVALS_EXTRACT_SPLIT = "/v1/evals/extract/split"
19
+ ALL = [
20
+ V_1_EXTRACTIONS,
21
+ V_1_PARSES,
22
+ V_1_SPLITS,
23
+ V_1_PARTITIONS,
24
+ V_1_CLASSIFICATIONS,
25
+ V_1_SCHEMAS_GENERATE,
26
+ V_1_EDITS,
27
+ V_1_EDITS_TEMPLATES_GENERATE,
28
+ V_1_EVALS_EXTRACT_PROCESS,
29
+ V_1_EVALS_EXTRACT_EXTRACT,
30
+ V_1_EVALS_EXTRACT_SPLIT
31
+ ].freeze
20
32
  end
21
33
  end
22
34
  end
@@ -5,9 +5,9 @@
5
5
  module Retab
6
6
  module Types
7
7
  class DeclarativeApplyResponseAction
8
- CREATE = 'create'
9
- UPDATE = 'update'
10
- NOOP = 'noop'
8
+ CREATE = "create"
9
+ UPDATE = "update"
10
+ NOOP = "noop"
11
11
  ALL = [CREATE, UPDATE, NOOP].freeze
12
12
  end
13
13
  end
@@ -5,9 +5,9 @@
5
5
  module Retab
6
6
  module Types
7
7
  class DeclarativePlanFieldChangeAction
8
- CREATE = 'create'
9
- UPDATE = 'update'
10
- DELETE = 'delete'
8
+ CREATE = "create"
9
+ UPDATE = "update"
10
+ DELETE = "delete"
11
11
  ALL = [CREATE, UPDATE, DELETE].freeze
12
12
  end
13
13
  end
@@ -5,9 +5,9 @@
5
5
  module Retab
6
6
  module Types
7
7
  class DeclarativePlanResourceChangeTarget
8
- WORKFLOW = 'workflow'
9
- BLOCK = 'block'
10
- EDGE = 'edge'
8
+ WORKFLOW = "workflow"
9
+ BLOCK = "block"
10
+ EDGE = "edge"
11
11
  ALL = [WORKFLOW, BLOCK, EDGE].freeze
12
12
  end
13
13
  end
@@ -5,28 +5,50 @@
5
5
  module Retab
6
6
  module Types
7
7
  class DeclarativePlanResourceChangeType
8
- WORKFLOW = 'workflow'
9
- EDGE = 'edge'
10
- START_DOCUMENT = 'start_document'
11
- START_JSON = 'start_json'
12
- NOTE = 'note'
13
- PARSE = 'parse'
14
- EDIT = 'edit'
15
- EXTRACT = 'extract'
16
- SPLIT = 'split'
17
- CLASSIFIER = 'classifier'
18
- CONDITIONAL = 'conditional'
19
- API_CALL = 'api_call'
20
- REVIEW = 'review'
21
- FUNCTION = 'function'
22
- WHILE_LOOP = 'while_loop'
23
- FOR_EACH = 'for_each'
24
- MERGE_DICTS = 'merge_dicts'
25
- WHILE_LOOP_SENTINEL_START = 'while_loop_sentinel_start'
26
- WHILE_LOOP_SENTINEL_END = 'while_loop_sentinel_end'
27
- FOR_EACH_SENTINEL_START = 'for_each_sentinel_start'
28
- FOR_EACH_SENTINEL_END = 'for_each_sentinel_end'
29
- ALL = [WORKFLOW, EDGE, START_DOCUMENT, START_JSON, NOTE, PARSE, EDIT, EXTRACT, SPLIT, CLASSIFIER, CONDITIONAL, API_CALL, REVIEW, FUNCTION, WHILE_LOOP, FOR_EACH, MERGE_DICTS, WHILE_LOOP_SENTINEL_START, WHILE_LOOP_SENTINEL_END, FOR_EACH_SENTINEL_START, FOR_EACH_SENTINEL_END].freeze
8
+ WORKFLOW = "workflow"
9
+ EDGE = "edge"
10
+ START_DOCUMENT = "start_document"
11
+ START_JSON = "start_json"
12
+ NOTE = "note"
13
+ PARSE = "parse"
14
+ EDIT = "edit"
15
+ EXTRACT = "extract"
16
+ SPLIT = "split"
17
+ CLASSIFIER = "classifier"
18
+ CONDITIONAL = "conditional"
19
+ API_CALL = "api_call"
20
+ REVIEW = "review"
21
+ FUNCTION = "function"
22
+ WHILE_LOOP = "while_loop"
23
+ FOR_EACH = "for_each"
24
+ MERGE_DICTS = "merge_dicts"
25
+ WHILE_LOOP_SENTINEL_START = "while_loop_sentinel_start"
26
+ WHILE_LOOP_SENTINEL_END = "while_loop_sentinel_end"
27
+ FOR_EACH_SENTINEL_START = "for_each_sentinel_start"
28
+ FOR_EACH_SENTINEL_END = "for_each_sentinel_end"
29
+ ALL = [
30
+ WORKFLOW,
31
+ EDGE,
32
+ START_DOCUMENT,
33
+ START_JSON,
34
+ NOTE,
35
+ PARSE,
36
+ EDIT,
37
+ EXTRACT,
38
+ SPLIT,
39
+ CLASSIFIER,
40
+ CONDITIONAL,
41
+ API_CALL,
42
+ REVIEW,
43
+ FUNCTION,
44
+ WHILE_LOOP,
45
+ FOR_EACH,
46
+ MERGE_DICTS,
47
+ WHILE_LOOP_SENTINEL_START,
48
+ WHILE_LOOP_SENTINEL_END,
49
+ FOR_EACH_SENTINEL_START,
50
+ FOR_EACH_SENTINEL_END
51
+ ].freeze
30
52
  end
31
53
  end
32
54
  end
@@ -5,9 +5,9 @@
5
5
  module Retab
6
6
  module Types
7
7
  class ErrorStepLifecycleCategory
8
- TRANSIENT = 'transient'
9
- PERMANENT = 'permanent'
10
- QUOTA = 'quota'
8
+ TRANSIENT = "transient"
9
+ PERMANENT = "permanent"
10
+ QUOTA = "quota"
11
11
  ALL = [TRANSIENT, PERMANENT, QUOTA].freeze
12
12
  end
13
13
  end
@@ -5,13 +5,13 @@
5
5
  module Retab
6
6
  module Types
7
7
  class ErrorStepLifecycleStage
8
- INPUT_COLLECTION = 'input_collection'
9
- REGISTRY_LOOKUP = 'registry_lookup'
10
- DOCUMENT_FETCH = 'document_fetch'
11
- EXECUTION = 'execution'
12
- OUTPUT_STORAGE = 'output_storage'
13
- ROUTING = 'routing'
14
- HISTORY_PAYLOAD = 'history_payload'
8
+ INPUT_COLLECTION = "input_collection"
9
+ REGISTRY_LOOKUP = "registry_lookup"
10
+ DOCUMENT_FETCH = "document_fetch"
11
+ EXECUTION = "execution"
12
+ OUTPUT_STORAGE = "output_storage"
13
+ ROUTING = "routing"
14
+ HISTORY_PAYLOAD = "history_payload"
15
15
  ALL = [INPUT_COLLECTION, REGISTRY_LOOKUP, DOCUMENT_FETCH, EXECUTION, OUTPUT_STORAGE, ROUTING, HISTORY_PAYLOAD].freeze
16
16
  end
17
17
  end
@@ -5,10 +5,10 @@
5
5
  module Retab
6
6
  module Types
7
7
  class ExperimentBlockType
8
- EXTRACT = 'extract'
9
- CLASSIFIER = 'classifier'
10
- SPLIT = 'split'
11
- FOR_EACH = 'for_each'
8
+ EXTRACT = "extract"
9
+ CLASSIFIER = "classifier"
10
+ SPLIT = "split"
11
+ FOR_EACH = "for_each"
12
12
  ALL = [EXTRACT, CLASSIFIER, SPLIT, FOR_EACH].freeze
13
13
  end
14
14
  end
@@ -5,11 +5,11 @@
5
5
  module Retab
6
6
  module Types
7
7
  class ExperimentPublicStatus
8
- DRAFT = 'draft'
9
- PROCESSING = 'processing'
10
- COMPLETED = 'completed'
11
- FAILED = 'failed'
12
- CANCELLED = 'cancelled'
8
+ DRAFT = "draft"
9
+ PROCESSING = "processing"
10
+ COMPLETED = "completed"
11
+ FAILED = "failed"
12
+ CANCELLED = "cancelled"
13
13
  ALL = [DRAFT, PROCESSING, COMPLETED, FAILED, CANCELLED].freeze
14
14
  end
15
15
  end
@@ -5,10 +5,10 @@
5
5
  module Retab
6
6
  module Types
7
7
  class ExperimentRunMetricsView
8
- SUMMARY = 'summary'
9
- BY_DOCUMENT = 'by_document'
10
- BY_TARGET = 'by_target'
11
- VOTES = 'votes'
8
+ SUMMARY = "summary"
9
+ BY_DOCUMENT = "by_document"
10
+ BY_TARGET = "by_target"
11
+ VOTES = "votes"
12
12
  ALL = [SUMMARY, BY_DOCUMENT, BY_TARGET, VOTES].freeze
13
13
  end
14
14
  end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file is auto-generated by oagen. Do not edit.
4
+
5
+ module Retab
6
+ module Types
7
+ ExperimentRunResultsOrder = ClassificationsOrder
8
+ end
9
+ end
@@ -5,10 +5,10 @@
5
5
  module Retab
6
6
  module Types
7
7
  class ExperimentSchemaDriftStatus
8
- NONE = 'none'
9
- PARTIAL = 'partial'
10
- DRIFTED = 'drifted'
11
- UNKNOWN = 'unknown'
8
+ NONE = "none"
9
+ PARTIAL = "partial"
10
+ DRIFTED = "drifted"
11
+ UNKNOWN = "unknown"
12
12
  ALL = [NONE, PARTIAL, DRIFTED, UNKNOWN].freeze
13
13
  end
14
14
  end
@@ -5,8 +5,8 @@
5
5
  module Retab
6
6
  module Types
7
7
  class FieldType
8
- TEXT = 'text'
9
- CHECKBOX = 'checkbox'
8
+ TEXT = "text"
9
+ CHECKBOX = "checkbox"
10
10
  ALL = [TEXT, CHECKBOX].freeze
11
11
  end
12
12
  end
@@ -5,12 +5,12 @@
5
5
  module Retab
6
6
  module Types
7
7
  class GenerateSchemaRequestReasoningEffort
8
- NONE = 'none'
9
- MINIMAL = 'minimal'
10
- LOW = 'low'
11
- MEDIUM = 'medium'
12
- HIGH = 'high'
13
- XHIGH = 'xhigh'
8
+ NONE = "none"
9
+ MINIMAL = "minimal"
10
+ LOW = "low"
11
+ MEDIUM = "medium"
12
+ HIGH = "high"
13
+ XHIGH = "xhigh"
14
14
  ALL = [NONE, MINIMAL, LOW, MEDIUM, HIGH, XHIGH].freeze
15
15
  end
16
16
  end
@@ -5,9 +5,9 @@
5
5
  module Retab
6
6
  module Types
7
7
  class HandlePayloadType
8
- FILE = 'file'
9
- JSON = 'json'
10
- JSON_REF = 'json_ref'
8
+ FILE = "file"
9
+ JSON = "json"
10
+ JSON_REF = "json_ref"
11
11
  ALL = [FILE, JSON, JSON_REF].freeze
12
12
  end
13
13
  end
@@ -5,13 +5,13 @@
5
5
  module Retab
6
6
  module Types
7
7
  class JobStatus
8
- VALIDATING = 'validating'
9
- QUEUED = 'queued'
10
- IN_PROGRESS = 'in_progress'
11
- COMPLETED = 'completed'
12
- FAILED = 'failed'
13
- CANCELLED = 'cancelled'
14
- EXPIRED = 'expired'
8
+ VALIDATING = "validating"
9
+ QUEUED = "queued"
10
+ IN_PROGRESS = "in_progress"
11
+ COMPLETED = "completed"
12
+ FAILED = "failed"
13
+ CANCELLED = "cancelled"
14
+ EXPIRED = "expired"
15
15
  ALL = [VALIDATING, QUEUED, IN_PROGRESS, COMPLETED, FAILED, CANCELLED, EXPIRED].freeze
16
16
  end
17
17
  end
@@ -5,9 +5,9 @@
5
5
  module Retab
6
6
  module Types
7
7
  class JobsSource
8
- API = 'api'
9
- PROJECT = 'project'
10
- WORKFLOW = 'workflow'
8
+ API = "api"
9
+ PROJECT = "project"
10
+ WORKFLOW = "workflow"
11
11
  ALL = [API, PROJECT, WORKFLOW].freeze
12
12
  end
13
13
  end
@@ -5,12 +5,12 @@
5
5
  module Retab
6
6
  module Types
7
7
  class LatestBlockTestRunSummaryStatus
8
- PENDING = 'pending'
9
- QUEUED = 'queued'
10
- RUNNING = 'running'
11
- COMPLETED = 'completed'
12
- ERROR = 'error'
13
- CANCELLED = 'cancelled'
8
+ PENDING = "pending"
9
+ QUEUED = "queued"
10
+ RUNNING = "running"
11
+ COMPLETED = "completed"
12
+ ERROR = "error"
13
+ CANCELLED = "cancelled"
14
14
  ALL = [PENDING, QUEUED, RUNNING, COMPLETED, ERROR, CANCELLED].freeze
15
15
  end
16
16
  end
@@ -5,12 +5,12 @@
5
5
  module Retab
6
6
  module Types
7
7
  class LengthCompareConditionOp
8
- GT = 'gt'
9
- GTE = 'gte'
10
- LT = 'lt'
11
- LTE = 'lte'
12
- EQ = 'eq'
13
- NEQ = 'neq'
8
+ GT = "gt"
9
+ GTE = "gte"
10
+ LT = "lt"
11
+ LTE = "lte"
12
+ EQ = "eq"
13
+ NEQ = "neq"
14
14
  ALL = [GT, GTE, LT, LTE, EQ, NEQ].freeze
15
15
  end
16
16
  end
@@ -1,59 +1,22 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # This file is auto-generated by oagen. Do not edit.
4
+
3
5
  # @oagen-ignore-file
4
6
  #
5
- # Hand-maintained pagination wrapper. Spec-derived resources that return a
6
- # `list_metadata` envelope call `ListStruct.from_response(response, model:, ...)`.
7
-
8
- require 'json'
7
+ # Backwards-compatibility alias for `Retab::PaginatedList`.
8
+ #
9
+ # Older SDK versions exposed the page wrapper as `Retab::Types::ListStruct`.
10
+ # Today every list method returns `Retab::PaginatedList` (see
11
+ # `lib/retab/paginated_list.rb`); this alias keeps the historical type
12
+ # name resolvable so existing consumer code (`assert_kind_of
13
+ # Retab::Types::ListStruct, result`, etc.) continues to compile.
14
+ #
15
+ # New code should reference `Retab::PaginatedList` directly. The alias
16
+ # itself can be retired in a future major.
9
17
 
10
18
  module Retab
11
19
  module Types
12
- class ListStruct
13
- include Enumerable
14
-
15
- attr_reader :data, :list_metadata, :last_response
16
-
17
- def initialize(data: [], list_metadata: {}, last_response: nil, fetch_next: nil)
18
- @data = data
19
- @list_metadata = list_metadata
20
- @last_response = last_response
21
- @fetch_next = fetch_next
22
- end
23
-
24
- def each(&block)
25
- @data.each(&block)
26
- end
27
-
28
- def has_next?
29
- cursor = @list_metadata.is_a?(Hash) ? (@list_metadata[:after] || @list_metadata['after']) : nil
30
- !cursor.nil? && !cursor.to_s.empty?
31
- end
32
-
33
- def next_page
34
- return nil unless has_next? && @fetch_next
35
- cursor = @list_metadata[:after] || @list_metadata['after']
36
- @fetch_next.call(cursor)
37
- end
38
-
39
- # Construct a ListStruct from an HTTP response with `{data: [...], list_metadata: {...}}`.
40
- def self.from_response(response, model: nil, filters: {}, fetch_next: nil)
41
- _ = filters
42
- body = response.respond_to?(:body) ? response.body : response
43
- parsed = body.is_a?(String) ? JSON.parse(body) : (body || {})
44
- raw_items = parsed['data'] || parsed[:data] || []
45
- items = raw_items.map { |item| model ? model.new(item) : item }
46
- meta = parsed['list_metadata'] || parsed[:list_metadata] || {}
47
- api_response =
48
- if response.respond_to?(:code)
49
- ApiResponse.new(
50
- http_status: response.code.to_i,
51
- http_headers: response.respond_to?(:each_header) ? response.each_header.to_h : {},
52
- request_id: response.respond_to?(:[]) ? response['x-request-id'] : nil,
53
- )
54
- end
55
- new(data: items, list_metadata: meta, last_response: api_response, fetch_next: fetch_next)
56
- end
57
- end
20
+ ListStruct = Retab::PaginatedList
58
21
  end
59
22
  end
@@ -5,10 +5,10 @@
5
5
  module Retab
6
6
  module Types
7
7
  class ParseRequestTableParsingFormat
8
- MARKDOWN = 'markdown'
9
- YAML = 'yaml'
10
- HTML = 'html'
11
- JSON = 'json'
8
+ MARKDOWN = "markdown"
9
+ YAML = "yaml"
10
+ HTML = "html"
11
+ JSON = "json"
12
12
  ALL = [MARKDOWN, YAML, HTML, JSON].freeze
13
13
  end
14
14
  end
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ # This file is auto-generated by oagen. Do not edit.
4
+
3
5
  # @oagen-ignore-file
4
6
  #
5
7
  # Hand-maintained RequestOptions. Spec-derived methods accept
@@ -5,10 +5,11 @@
5
5
  module Retab
6
6
  module Types
7
7
  class ResumeStatus
8
- RESUMED = 'resumed'
9
- PENDING = 'pending'
10
- SKIPPED = 'skipped'
11
- ALL = [RESUMED, PENDING, SKIPPED].freeze
8
+ RESUMED = "resumed"
9
+ PENDING = "pending"
10
+ FAILED = "failed"
11
+ SKIPPED = "skipped"
12
+ ALL = [RESUMED, PENDING, FAILED, SKIPPED].freeze
12
13
  end
13
14
  end
14
15
  end