retab 0.1.0 → 0.1.1

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 +3 -3
  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
@@ -2,7 +2,7 @@
2
2
 
3
3
  # This file is auto-generated by oagen. Do not edit.
4
4
 
5
- require 'json'
5
+ require "json"
6
6
 
7
7
  module Retab
8
8
  class EditTemplates
@@ -18,32 +18,32 @@ module Retab
18
18
  # @param name [String, nil]
19
19
  # @param sort_by [String, nil]
20
20
  # @param request_options [Hash] (see Retab::Types::RequestOptions)
21
- # @return [Retab::Types::ListStruct<Retab::EditTemplate>]
21
+ # @return [Retab::PaginatedList<Retab::EditTemplate>]
22
22
  def list(
23
23
  before: nil,
24
24
  after: nil,
25
25
  limit: 10,
26
- order: 'desc',
26
+ order: "desc",
27
27
  name: nil,
28
- sort_by: 'created_at',
28
+ sort_by: "created_at",
29
29
  request_options: {}
30
30
  )
31
31
  params = {
32
- 'before' => before,
33
- 'after' => after,
34
- 'limit' => limit,
35
- 'order' => order,
36
- 'name' => name,
37
- 'sort_by' => sort_by
32
+ "before" => before,
33
+ "after" => after,
34
+ "limit" => limit,
35
+ "order" => order,
36
+ "name" => name,
37
+ "sort_by" => sort_by
38
38
  }.compact
39
39
  response = @client.request(
40
40
  method: :get,
41
- path: '/v1/edits/templates',
41
+ path: "/v1/edits/templates",
42
42
  auth: true,
43
43
  params: params,
44
44
  request_options: request_options
45
45
  )
46
- fetch_next = ->(cursor) {
46
+ fetch_next = -> (cursor) {
47
47
  list(
48
48
  before: before,
49
49
  after: cursor,
@@ -54,10 +54,10 @@ module Retab
54
54
  request_options: request_options
55
55
  )
56
56
  }
57
- Retab::Types::ListStruct.from_response(
57
+ Retab::PaginatedList.from_response(
58
58
  response,
59
59
  model: Retab::EditTemplate,
60
- filters: { before: before, limit: limit, order: order, name: name, sort_by: sort_by },
60
+ filters: {before: before, limit: limit, order: order, name: name, sort_by: sort_by},
61
61
  fetch_next: fetch_next
62
62
  )
63
63
  end
@@ -76,19 +76,23 @@ module Retab
76
76
  )
77
77
  document = Retab::MimeData.coerce(document) unless document.nil?
78
78
  body = {
79
- 'name' => name,
80
- 'document' => document,
81
- 'form_fields' => form_fields
79
+ "name" => name,
80
+ "document" => document,
81
+ "form_fields" => form_fields
82
82
  }
83
83
  response = @client.request(
84
84
  method: :post,
85
- path: '/v1/edits/templates',
85
+ path: "/v1/edits/templates",
86
86
  auth: true,
87
87
  body: body,
88
88
  request_options: request_options
89
89
  )
90
90
  result = Retab::EditTemplate.new(response.body)
91
- result.last_response = Retab::Types::ApiResponse.new(http_status: response.code.to_i, http_headers: response.each_header.to_h, request_id: response["x-request-id"])
91
+ result.last_response = Retab::Types::ApiResponse.new(
92
+ http_status: response.code.to_i,
93
+ http_headers: response.each_header.to_h,
94
+ request_id: response["x-request-id"]
95
+ )
92
96
  result
93
97
  end
94
98
 
@@ -107,7 +111,11 @@ module Retab
107
111
  request_options: request_options
108
112
  )
109
113
  result = Retab::EditTemplate.new(response.body)
110
- result.last_response = Retab::Types::ApiResponse.new(http_status: response.code.to_i, http_headers: response.each_header.to_h, request_id: response["x-request-id"])
114
+ result.last_response = Retab::Types::ApiResponse.new(
115
+ http_status: response.code.to_i,
116
+ http_headers: response.each_header.to_h,
117
+ request_id: response["x-request-id"]
118
+ )
111
119
  result
112
120
  end
113
121
 
@@ -124,8 +132,8 @@ module Retab
124
132
  request_options: {}
125
133
  )
126
134
  body = {
127
- 'name' => name,
128
- 'form_fields' => form_fields
135
+ "name" => name,
136
+ "form_fields" => form_fields
129
137
  }.compact
130
138
  response = @client.request(
131
139
  method: :patch,
@@ -135,7 +143,11 @@ module Retab
135
143
  request_options: request_options
136
144
  )
137
145
  result = Retab::EditTemplate.new(response.body)
138
- result.last_response = Retab::Types::ApiResponse.new(http_status: response.code.to_i, http_headers: response.each_header.to_h, request_id: response["x-request-id"])
146
+ result.last_response = Retab::Types::ApiResponse.new(
147
+ http_status: response.code.to_i,
148
+ http_headers: response.each_header.to_h,
149
+ request_id: response["x-request-id"]
150
+ )
139
151
  result
140
152
  end
141
153
 
@@ -147,7 +159,7 @@ module Retab
147
159
  template_id:,
148
160
  request_options: {}
149
161
  )
150
- response = @client.request(
162
+ @client.request(
151
163
  method: :delete,
152
164
  path: "/v1/edits/templates/#{Retab::Util.encode_path(template_id)}",
153
165
  auth: true,
@@ -13,11 +13,12 @@ module Retab
13
13
  config: :config,
14
14
  template_id: :template_id,
15
15
  output: :output,
16
+ filled_document_ref: :filled_document_ref,
16
17
  usage: :usage,
17
18
  created_at: :created_at
18
19
  }.freeze
19
20
 
20
- attr_accessor \
21
+ attr_accessor(
21
22
  :id,
22
23
  :file,
23
24
  :model,
@@ -25,10 +26,13 @@ module Retab
25
26
  :config,
26
27
  :template_id,
27
28
  :output,
29
+ :filled_document_ref,
28
30
  :usage,
29
31
  :created_at
32
+ )
30
33
 
31
34
  def initialize(json)
35
+ super()
32
36
  hash = self.class.normalize(json)
33
37
  @id = hash[:id]
34
38
  @file = hash[:file] ? Retab::FileRef.new(hash[:file]) : nil
@@ -37,6 +41,7 @@ module Retab
37
41
  @config = hash[:config] ? Retab::EditConfig.new(hash[:config]) : nil
38
42
  @template_id = hash[:template_id]
39
43
  @output = hash[:output] ? Retab::EditResult.new(hash[:output]) : nil
44
+ @filled_document_ref = hash[:filled_document_ref] ? Retab::FileRef.new(hash[:filled_document_ref]) : nil
40
45
  @usage = hash[:usage] ? Retab::RetabUsage.new(hash[:usage]) : nil
41
46
  @created_at = hash[:created_at]
42
47
  end
@@ -14,15 +14,17 @@ module Retab
14
14
  bust_cache: :bust_cache
15
15
  }.freeze
16
16
 
17
- attr_accessor \
17
+ attr_accessor(
18
18
  :instructions,
19
19
  :document,
20
20
  :template_id,
21
21
  :model,
22
22
  :config,
23
23
  :bust_cache
24
+ )
24
25
 
25
26
  def initialize(json)
27
+ super()
26
28
  hash = self.class.normalize(json)
27
29
  @instructions = hash[:instructions]
28
30
  @document = hash[:document] ? Retab::MimeData.new(hash[:document]) : nil
data/lib/retab/edits.rb CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  # This file is auto-generated by oagen. Do not edit.
4
4
 
5
- require 'json'
5
+ require "json"
6
6
 
7
7
  module Retab
8
8
  class Edits
@@ -10,6 +10,10 @@ module Retab
10
10
  @client = client
11
11
  end
12
12
 
13
+ def templates
14
+ @templates ||= Retab::EditTemplates.new(@client)
15
+ end
16
+
13
17
  # List Edits
14
18
  # @param before [String, nil]
15
19
  # @param after [String, nil]
@@ -20,12 +24,12 @@ module Retab
20
24
  # @param from_date [String, nil]
21
25
  # @param to_date [String, nil]
22
26
  # @param request_options [Hash] (see Retab::Types::RequestOptions)
23
- # @return [Retab::Types::ListStruct<Retab::Edit>]
27
+ # @return [Retab::PaginatedList<Retab::Edit>]
24
28
  def list(
25
29
  before: nil,
26
30
  after: nil,
27
31
  limit: 10,
28
- order: 'desc',
32
+ order: "desc",
29
33
  filename: nil,
30
34
  template_id: nil,
31
35
  from_date: nil,
@@ -33,23 +37,23 @@ module Retab
33
37
  request_options: {}
34
38
  )
35
39
  params = {
36
- 'before' => before,
37
- 'after' => after,
38
- 'limit' => limit,
39
- 'order' => order,
40
- 'filename' => filename,
41
- 'template_id' => template_id,
42
- 'from_date' => from_date,
43
- 'to_date' => to_date
40
+ "before" => before,
41
+ "after" => after,
42
+ "limit" => limit,
43
+ "order" => order,
44
+ "filename" => filename,
45
+ "template_id" => template_id,
46
+ "from_date" => from_date,
47
+ "to_date" => to_date
44
48
  }.compact
45
49
  response = @client.request(
46
50
  method: :get,
47
- path: '/v1/edits',
51
+ path: "/v1/edits",
48
52
  auth: true,
49
53
  params: params,
50
54
  request_options: request_options
51
55
  )
52
- fetch_next = ->(cursor) {
56
+ fetch_next = -> (cursor) {
53
57
  list(
54
58
  before: before,
55
59
  after: cursor,
@@ -62,10 +66,18 @@ module Retab
62
66
  request_options: request_options
63
67
  )
64
68
  }
65
- Retab::Types::ListStruct.from_response(
69
+ Retab::PaginatedList.from_response(
66
70
  response,
67
71
  model: Retab::Edit,
68
- filters: { before: before, limit: limit, order: order, filename: filename, template_id: template_id, from_date: from_date, to_date: to_date },
72
+ filters: {
73
+ before: before,
74
+ limit: limit,
75
+ order: order,
76
+ filename: filename,
77
+ template_id: template_id,
78
+ from_date: from_date,
79
+ to_date: to_date
80
+ },
69
81
  fetch_next: fetch_next
70
82
  )
71
83
  end
@@ -90,22 +102,26 @@ module Retab
90
102
  )
91
103
  document = Retab::MimeData.coerce(document) unless document.nil?
92
104
  body = {
93
- 'instructions' => instructions,
94
- 'document' => document,
95
- 'template_id' => template_id,
96
- 'model' => model,
97
- 'config' => config,
98
- 'bust_cache' => bust_cache
105
+ "instructions" => instructions,
106
+ "document" => document,
107
+ "template_id" => template_id,
108
+ "model" => model,
109
+ "config" => config,
110
+ "bust_cache" => bust_cache
99
111
  }.compact
100
112
  response = @client.request(
101
113
  method: :post,
102
- path: '/v1/edits',
114
+ path: "/v1/edits",
103
115
  auth: true,
104
116
  body: body,
105
117
  request_options: request_options
106
118
  )
107
119
  result = Retab::Edit.new(response.body)
108
- result.last_response = Retab::Types::ApiResponse.new(http_status: response.code.to_i, http_headers: response.each_header.to_h, request_id: response["x-request-id"])
120
+ result.last_response = Retab::Types::ApiResponse.new(
121
+ http_status: response.code.to_i,
122
+ http_headers: response.each_header.to_h,
123
+ request_id: response["x-request-id"]
124
+ )
109
125
  result
110
126
  end
111
127
 
@@ -124,7 +140,11 @@ module Retab
124
140
  request_options: request_options
125
141
  )
126
142
  result = Retab::Edit.new(response.body)
127
- result.last_response = Retab::Types::ApiResponse.new(http_status: response.code.to_i, http_headers: response.each_header.to_h, request_id: response["x-request-id"])
143
+ result.last_response = Retab::Types::ApiResponse.new(
144
+ http_status: response.code.to_i,
145
+ http_headers: response.each_header.to_h,
146
+ request_id: response["x-request-id"]
147
+ )
128
148
  result
129
149
  end
130
150
 
@@ -136,7 +156,7 @@ module Retab
136
156
  edit_id:,
137
157
  request_options: {}
138
158
  )
139
- response = @client.request(
159
+ @client.request(
140
160
  method: :delete,
141
161
  path: "/v1/edits/#{Retab::Util.encode_path(edit_id)}",
142
162
  auth: true,
data/lib/retab/errors.rb CHANGED
@@ -1,16 +1,24 @@
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 error hierarchy. Mirrors what the WorkOS Ruby SDK ships;
6
- # the spec-driven resources reference these class names directly.
7
+ # Hand-maintained error hierarchy. The spec-driven resources reference
8
+ # these class names directly when mapping HTTP status to exceptions.
7
9
 
8
10
  module Retab
9
11
  class Error < StandardError
10
12
  attr_reader :http_status, :request_id, :code, :message_body
11
13
 
12
- def initialize(message: nil, http_status: nil, request_id: nil, code: nil, body: nil)
13
- super(message)
14
+ # Accept both calling conventions:
15
+ # - positional: `raise Klass, "msg"` → `Klass.new("msg")` (Ruby's
16
+ # built-in re-raise pattern and what `rescue => e; raise OtherKlass,
17
+ # e.message` produces).
18
+ # - keyword: `raise Klass.new(message: 'x', http_status: 401)` —
19
+ # used by `BaseClient#raise_for_status` to attach HTTP context.
20
+ def initialize(positional_message = nil, message: nil, http_status: nil, request_id: nil, code: nil, body: nil)
21
+ super(positional_message || message)
14
22
  @http_status = http_status
15
23
  @request_id = request_id
16
24
  @code = code
@@ -51,4 +59,13 @@ module Retab
51
59
 
52
60
  class ConfigurationError < Error
53
61
  end
62
+
63
+ # Raised when the SDK cannot reach the API host at all — DNS failure,
64
+ # TCP RST, host unreachable, etc. Distinct from `TimeoutError` (which is
65
+ # raised after a connection was successfully opened but read/write didn't
66
+ # complete in time) and from any 4xx/5xx `APIError` (which means the
67
+ # server WAS reached and replied with a status). Lets callers tell
68
+ # "your network is down" apart from "your input was invalid."
69
+ class ConnectionError < Error
70
+ end
54
71
  end
@@ -16,7 +16,7 @@ module Retab
16
16
  targets: :targets
17
17
  }.freeze
18
18
 
19
- attr_accessor \
19
+ attr_accessor(
20
20
  :run_id,
21
21
  :kind,
22
22
  :view,
@@ -25,8 +25,10 @@ module Retab
25
25
  :prior_score,
26
26
  :confusion,
27
27
  :targets
28
+ )
28
29
 
29
30
  def initialize(json)
31
+ super()
30
32
  hash = self.class.normalize(json)
31
33
  @run_id = hash[:run_id]
32
34
  @kind = hash[:kind]
@@ -12,13 +12,15 @@ module Retab
12
12
  value: :value
13
13
  }.freeze
14
14
 
15
- attr_accessor \
15
+ attr_accessor(
16
16
  :path,
17
17
  :score,
18
18
  :prior_score,
19
19
  :value
20
+ )
20
21
 
21
22
  def initialize(json)
23
+ super()
22
24
  hash = self.class.normalize(json)
23
25
  @path = hash[:path]
24
26
  @score = hash[:score]
@@ -13,14 +13,16 @@ module Retab
13
13
  value: :value
14
14
  }.freeze
15
15
 
16
- attr_accessor \
16
+ attr_accessor(
17
17
  :id,
18
18
  :filename,
19
19
  :score,
20
20
  :prior_score,
21
21
  :value
22
+ )
22
23
 
23
24
  def initialize(json)
25
+ super()
24
26
  hash = self.class.normalize(json)
25
27
  @id = hash[:id]
26
28
  @filename = hash[:filename]
@@ -16,7 +16,7 @@ module Retab
16
16
  documents: :documents
17
17
  }.freeze
18
18
 
19
- attr_accessor \
19
+ attr_accessor(
20
20
  :run_id,
21
21
  :kind,
22
22
  :view,
@@ -25,8 +25,10 @@ module Retab
25
25
  :prior_score,
26
26
  :confusion,
27
27
  :documents
28
+ )
28
29
 
29
30
  def initialize(json)
31
+ super()
30
32
  hash = self.class.normalize(json)
31
33
  @run_id = hash[:run_id]
32
34
  @kind = hash[:kind]
@@ -35,7 +37,9 @@ module Retab
35
37
  @score = hash[:score]
36
38
  @prior_score = hash[:prior_score]
37
39
  @confusion = hash[:confusion] ? Retab::ExperimentTargetConfusionMetric.new(hash[:confusion]) : nil
38
- @documents = (hash[:documents] || []).map { |item| item ? Retab::ExperimentByTargetDocumentMetric.new(item) : nil }
40
+ @documents = (hash[:documents] || []).map { |item|
41
+ item ? Retab::ExperimentByTargetDocumentMetric.new(item) : nil
42
+ }
39
43
  end
40
44
  end
41
45
  end
@@ -11,12 +11,14 @@ module Retab
11
11
  score: :score
12
12
  }.freeze
13
13
 
14
- attr_accessor \
14
+ attr_accessor(
15
15
  :source,
16
16
  :target,
17
17
  :score
18
+ )
18
19
 
19
20
  def initialize(json)
21
+ super()
20
22
  hash = self.class.normalize(json)
21
23
  @source = hash[:source]
22
24
  @target = hash[:target]
@@ -10,11 +10,13 @@ module Retab
10
10
  flows: :flows
11
11
  }.freeze
12
12
 
13
- attr_accessor \
13
+ attr_accessor(
14
14
  :diag,
15
15
  :flows
16
+ )
16
17
 
17
18
  def initialize(json)
19
+ super()
18
20
  hash = self.class.normalize(json)
19
21
  @diag = hash[:diag] || {}
20
22
  @flows = (hash[:flows] || []).map { |item| item ? Retab::ExperimentConfusionFlowMetric.new(item) : nil }
@@ -12,6 +12,7 @@ module Retab
12
12
  attr_accessor :likelihoods
13
13
 
14
14
  def initialize(json)
15
+ super()
15
16
  hash = self.class.normalize(json)
16
17
  @likelihoods = hash[:likelihoods] || {}
17
18
  end
@@ -10,11 +10,13 @@ module Retab
10
10
  filename: :filename
11
11
  }.freeze
12
12
 
13
- attr_accessor \
13
+ attr_accessor(
14
14
  :id,
15
15
  :filename
16
+ )
16
17
 
17
18
  def initialize(json)
19
+ super()
18
20
  hash = self.class.normalize(json)
19
21
  @id = hash[:id]
20
22
  @filename = hash[:filename]
@@ -12,13 +12,15 @@ module Retab
12
12
  message: :message
13
13
  }.freeze
14
14
 
15
- attr_accessor \
15
+ attr_accessor(
16
16
  :kind,
17
17
  :error,
18
18
  :experiment_id,
19
19
  :message
20
+ )
20
21
 
21
22
  def initialize(json)
23
+ super()
22
24
  hash = self.class.normalize(json)
23
25
  @kind = hash[:kind]
24
26
  @error = hash[:error]
@@ -15,7 +15,7 @@ module Retab
15
15
  message: :message
16
16
  }.freeze
17
17
 
18
- attr_accessor \
18
+ attr_accessor(
19
19
  :kind,
20
20
  :error,
21
21
  :experiment_id,
@@ -23,8 +23,10 @@ module Retab
23
23
  :last_run,
24
24
  :current_config_fingerprint,
25
25
  :message
26
+ )
26
27
 
27
28
  def initialize(json)
29
+ super()
28
30
  hash = self.class.normalize(json)
29
31
  @kind = hash[:kind]
30
32
  @error = hash[:error]
@@ -12,13 +12,15 @@ module Retab
12
12
  prior_score: :prior_score
13
13
  }.freeze
14
14
 
15
- attr_accessor \
15
+ attr_accessor(
16
16
  :id,
17
17
  :filename,
18
18
  :score,
19
19
  :prior_score
20
+ )
20
21
 
21
22
  def initialize(json)
23
+ super()
22
24
  hash = self.class.normalize(json)
23
25
  @id = hash[:id]
24
26
  @filename = hash[:filename]
@@ -19,7 +19,7 @@ module Retab
19
19
  prior_run_id: :prior_run_id
20
20
  }.freeze
21
21
 
22
- attr_accessor \
22
+ attr_accessor(
23
23
  :experiment_id,
24
24
  :run_id,
25
25
  :kind,
@@ -31,8 +31,10 @@ module Retab
31
31
  :documents,
32
32
  :aggregate,
33
33
  :prior_run_id
34
+ )
34
35
 
35
36
  def initialize(json)
37
+ super()
36
38
  hash = self.class.normalize(json)
37
39
  @experiment_id = hash[:experiment_id]
38
40
  @run_id = hash[:run_id]
@@ -42,7 +44,9 @@ module Retab
42
44
  @block_type = hash[:block_type]
43
45
  @score = hash[:score]
44
46
  @prior_score = hash[:prior_score]
45
- @documents = (hash[:documents] || []).map { |item| item ? Retab::ExperimentSummaryMetricDocument.new(item) : nil }
47
+ @documents = (hash[:documents] || []).map { |item|
48
+ item ? Retab::ExperimentSummaryMetricDocument.new(item) : nil
49
+ }
46
50
  @aggregate = hash[:aggregate] ? Retab::ExperimentExtractSummaryAggregate.new(hash[:aggregate]) : nil
47
51
  @prior_run_id = hash[:prior_run_id]
48
52
  end
@@ -11,12 +11,14 @@ module Retab
11
11
  flow_to: :flow_to
12
12
  }.freeze
13
13
 
14
- attr_accessor \
14
+ attr_accessor(
15
15
  :self,
16
16
  :flow_from,
17
17
  :flow_to
18
+ )
18
19
 
19
20
  def initialize(json)
21
+ super()
20
22
  hash = self.class.normalize(json)
21
23
  @self = hash[:self]
22
24
  @flow_from = hash[:flow_from] || {}
@@ -14,15 +14,17 @@ module Retab
14
14
  total_voter_count: :total_voter_count
15
15
  }.freeze
16
16
 
17
- attr_accessor \
17
+ attr_accessor(
18
18
  :consensus,
19
19
  :votes,
20
20
  :score,
21
21
  :row_presence_score,
22
22
  :present_voter_count,
23
23
  :total_voter_count
24
+ )
24
25
 
25
26
  def initialize(json)
27
+ super()
26
28
  hash = self.class.normalize(json)
27
29
  @consensus = hash[:consensus]
28
30
  @votes = (hash[:votes] || [])
@@ -16,7 +16,7 @@ module Retab
16
16
  rows: :rows
17
17
  }.freeze
18
18
 
19
- attr_accessor \
19
+ attr_accessor(
20
20
  :run_id,
21
21
  :kind,
22
22
  :view,
@@ -25,8 +25,10 @@ module Retab
25
25
  :score,
26
26
  :prior_score,
27
27
  :rows
28
+ )
28
29
 
29
30
  def initialize(json)
31
+ super()
30
32
  hash = self.class.normalize(json)
31
33
  @run_id = hash[:run_id]
32
34
  @kind = hash[:kind]