runloop-api-client 0.23.0__tar.gz → 0.25.0__tar.gz
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.
- runloop_api_client-0.25.0/.release-please-manifest.json +3 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/CHANGELOG.md +42 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/PKG-INFO +20 -1
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/README.md +19 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/api.md +1 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/pyproject.toml +1 -1
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_base_client.py +8 -2
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_files.py +1 -1
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_utils/_sync.py +17 -2
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_version.py +1 -1
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/resources/benchmarks/benchmarks.py +17 -1
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/resources/scenarios/scenarios.py +186 -1
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/__init__.py +1 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/benchmark_create_params.py +4 -1
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/benchmark_run_view.py +7 -4
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/benchmark_start_run_params.py +4 -1
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/benchmark_view.py +4 -1
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenario_create_params.py +11 -1
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenario_environment.py +10 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenario_environment_param.py +11 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenario_run_view.py +4 -1
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenario_start_run_params.py +4 -1
- runloop_api_client-0.25.0/src/runloop_api_client/types/scenario_update_params.py +36 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenario_view.py +11 -1
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scoring_function.py +10 -5
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scoring_function_param.py +10 -5
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scoring_function_result_view.py +4 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/api_resources/scenarios/test_scorers.py +22 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/api_resources/test_benchmarks.py +4 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/api_resources/test_scenarios.py +274 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/test_client.py +6 -4
- runloop_api_client-0.23.0/.release-please-manifest.json +0 -3
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/.gitignore +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/CONTRIBUTING.md +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/LICENSE +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/SECURITY.md +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/bin/check-release-environment +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/bin/publish-pypi +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/examples/.keep +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/mypy.ini +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/noxfile.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/release-please-config.json +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/requirements-dev.lock +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/requirements.lock +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop/lib/.keep +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/__init__.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_client.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_compat.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_constants.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_exceptions.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_models.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_qs.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_resource.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_streaming.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_types.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_utils/__init__.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_utils/_logs.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_utils/_proxy.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_utils/_reflection.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_utils/_streams.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_utils/_transform.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_utils/_typing.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_utils/_utils.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/lib/.keep +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/lib/polling.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/lib/polling_async.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/pagination.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/py.typed +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/resources/__init__.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/resources/benchmarks/__init__.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/resources/benchmarks/runs.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/resources/blueprints.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/resources/devboxes/__init__.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/resources/devboxes/browsers.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/resources/devboxes/computers.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/resources/devboxes/devboxes.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/resources/devboxes/disk_snapshots.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/resources/devboxes/executions.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/resources/devboxes/logs.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/resources/devboxes/lsp.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/resources/repositories.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/resources/scenarios/__init__.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/resources/scenarios/runs.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/resources/scenarios/scorers.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/benchmark_list_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/benchmark_list_public_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/benchmark_list_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/benchmark_run_list_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/benchmarks/__init__.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/benchmarks/run_list_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/blueprint_build_log.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/blueprint_build_logs_list_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/blueprint_build_parameters.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/blueprint_create_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/blueprint_list_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/blueprint_list_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/blueprint_preview_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/blueprint_preview_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/blueprint_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_async_execution_detail_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_create_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_create_ssh_key_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_create_tunnel_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_download_file_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_execute_async_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_execute_sync_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_execution_detail_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_list_disk_snapshots_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_list_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_list_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_read_file_contents_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_read_file_contents_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_remove_tunnel_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_snapshot_disk_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_snapshot_list_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_snapshot_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_tunnel_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_update_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_upload_file_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devbox_write_file_contents_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/__init__.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/base_code_action.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/base_command.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/base_command_param.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/base_diagnostic.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/base_diagnostic_param.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/base_location.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/base_markup_content.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/base_parameter_information.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/base_range.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/base_range_param.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/base_signature.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/base_workspace_edit.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/base_workspace_edit_param.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/browser_create_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/browser_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/code_action_application_result.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/code_action_context_param.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/code_action_kind.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/code_action_trigger_kind.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/code_actions_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/code_description_param.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/code_segment_info_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/computer_create_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/computer_keyboard_interaction_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/computer_keyboard_interaction_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/computer_mouse_interaction_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/computer_mouse_interaction_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/computer_screen_interaction_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/computer_screen_interaction_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/computer_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/devbox_logs_list_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/diagnostic_param.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/diagnostic_related_information_param.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/diagnostic_severity.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/diagnostic_tag.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/diagnostics_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/disk_snapshot_list_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/disk_snapshot_update_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/document_symbol.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/document_symbol_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/document_uri.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/execution_execute_async_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/execution_execute_sync_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/execution_retrieve_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/file_contents_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/file_definition_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/file_path.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/file_uri.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/formatting_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/health_status_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/integer.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/l_sp_any_param.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/location_param.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/log_list_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/lsp_apply_code_action_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/lsp_code_actions_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/lsp_diagnostics_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/lsp_document_symbols_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/lsp_file_definition_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/lsp_file_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/lsp_files_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/lsp_formatting_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/lsp_get_code_actions_for_diagnostic_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/lsp_get_code_actions_for_diagnostic_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/lsp_get_code_segment_info_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/lsp_get_signature_help_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/lsp_references_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/lsp_set_watch_directory_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/lsp_set_watch_directory_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/position.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/position_param.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/range.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/range_param.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/record_string_text_edit_array.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/record_string_text_edit_array_param.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/references_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/signature_help_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/symbol_kind.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/symbol_tag.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/symbol_type.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/text_edit.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/text_edit_param.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/u_ri.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/uinteger.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/devboxes/watched_file_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/input_context.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/input_context_param.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/repository_connection_list_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/repository_connection_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/repository_create_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/repository_list_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/repository_version_details.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/repository_version_list_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenario_list_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenario_list_public_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenario_list_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenario_run_list_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenarios/__init__.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenarios/run_list_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenarios/scorer_create_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenarios/scorer_create_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenarios/scorer_list_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenarios/scorer_list_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenarios/scorer_retrieve_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenarios/scorer_update_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenarios/scorer_update_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenarios/scorer_validate_params.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scenarios/scorer_validate_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scoring_contract.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scoring_contract_param.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/scoring_contract_result_view.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/shared/__init__.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/shared/after_idle.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/shared/code_mount_parameters.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/shared/launch_parameters.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/shared_params/__init__.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/shared_params/after_idle.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/shared_params/code_mount_parameters.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/shared_params/launch_parameters.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/__init__.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/api_resources/__init__.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/api_resources/benchmarks/__init__.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/api_resources/benchmarks/test_runs.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/api_resources/devboxes/__init__.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/api_resources/devboxes/test_browsers.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/api_resources/devboxes/test_computers.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/api_resources/devboxes/test_disk_snapshots.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/api_resources/devboxes/test_executions.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/api_resources/devboxes/test_logs.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/api_resources/devboxes/test_lsp.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/api_resources/scenarios/__init__.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/api_resources/scenarios/test_runs.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/api_resources/test_blueprints.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/api_resources/test_devboxes.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/api_resources/test_repositories.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/conftest.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/sample_file.txt +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/test_deepcopy.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/test_extract_files.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/test_files.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/test_models.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/test_qs.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/test_required_args.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/test_response.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/test_streaming.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/test_transform.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/test_utils/test_proxy.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/test_utils/test_typing.py +0 -0
- {runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/tests/utils.py +0 -0
|
@@ -1,5 +1,47 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.25.0 (2025-02-26)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v0.24.0...v0.25.0](https://github.com/runloopai/api-client-python/compare/v0.24.0...v0.25.0)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* **api:** api update ([#555](https://github.com/runloopai/api-client-python/issues/555)) ([7c1d55d](https://github.com/runloopai/api-client-python/commit/7c1d55de7fe3f157a30080ddc7e7f0ea5053304a))
|
|
10
|
+
* **client:** allow passing `NotGiven` for body ([#553](https://github.com/runloopai/api-client-python/issues/553)) ([dc21cae](https://github.com/runloopai/api-client-python/commit/dc21caec97e15ccde2c396c6a2f0fce0f2bad313))
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
### Bug Fixes
|
|
14
|
+
|
|
15
|
+
* **client:** mark some request bodies as optional ([dc21cae](https://github.com/runloopai/api-client-python/commit/dc21caec97e15ccde2c396c6a2f0fce0f2bad313))
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
### Chores
|
|
19
|
+
|
|
20
|
+
* **internal:** codegen related update ([#551](https://github.com/runloopai/api-client-python/issues/551)) ([8dd01a1](https://github.com/runloopai/api-client-python/commit/8dd01a1e69d82ccbc4f05b72bd980d16cb93e5e5))
|
|
21
|
+
* **internal:** fix devcontainers setup ([#554](https://github.com/runloopai/api-client-python/issues/554)) ([9260eb4](https://github.com/runloopai/api-client-python/commit/9260eb4443fc50ecb07e99af2307896e32027158))
|
|
22
|
+
* **internal:** properly set __pydantic_private__ ([#556](https://github.com/runloopai/api-client-python/issues/556)) ([4496830](https://github.com/runloopai/api-client-python/commit/449683002d1fb31b01c4d167973058684b7ee654))
|
|
23
|
+
|
|
24
|
+
## 0.24.0 (2025-02-19)
|
|
25
|
+
|
|
26
|
+
Full Changelog: [v0.23.0...v0.24.0](https://github.com/runloopai/api-client-python/compare/v0.23.0...v0.24.0)
|
|
27
|
+
|
|
28
|
+
### Features
|
|
29
|
+
|
|
30
|
+
* **api:** api update ([#549](https://github.com/runloopai/api-client-python/issues/549)) ([3e19f41](https://github.com/runloopai/api-client-python/commit/3e19f41cf8e2b9cd225439d9df90f80b34d89660))
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
### Bug Fixes
|
|
34
|
+
|
|
35
|
+
* asyncify on non-asyncio runtimes ([#547](https://github.com/runloopai/api-client-python/issues/547)) ([8ce7003](https://github.com/runloopai/api-client-python/commit/8ce700397fc5d6755f0a95b637efad74d6dc3fe4))
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
### Chores
|
|
39
|
+
|
|
40
|
+
* **internal:** codegen related update ([#543](https://github.com/runloopai/api-client-python/issues/543)) ([5c44e84](https://github.com/runloopai/api-client-python/commit/5c44e84a8a029b22461df339c280885dc972fa96))
|
|
41
|
+
* **internal:** codegen related update ([#546](https://github.com/runloopai/api-client-python/issues/546)) ([d8b620d](https://github.com/runloopai/api-client-python/commit/d8b620d93c687d37a843262d5ac60fd4a9b815e8))
|
|
42
|
+
* **internal:** update client tests ([#545](https://github.com/runloopai/api-client-python/issues/545)) ([30307f4](https://github.com/runloopai/api-client-python/commit/30307f4b78ba76240793b851dd735a0beb835b75))
|
|
43
|
+
* **internal:** update client tests ([#548](https://github.com/runloopai/api-client-python/issues/548)) ([4e782f1](https://github.com/runloopai/api-client-python/commit/4e782f19bfa7e08ae318eca6f00fb4d5ffe5c9af))
|
|
44
|
+
|
|
3
45
|
## 0.23.0 (2025-02-11)
|
|
4
46
|
|
|
5
47
|
Full Changelog: [v0.22.0...v0.23.0](https://github.com/runloopai/api-client-python/compare/v0.22.0...v0.23.0)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: runloop_api_client
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.25.0
|
|
4
4
|
Summary: The official Python library for the runloop API
|
|
5
5
|
Project-URL: Homepage, https://github.com/runloopai/api-client-python
|
|
6
6
|
Project-URL: Repository, https://github.com/runloopai/api-client-python
|
|
@@ -168,6 +168,25 @@ for devbox in first_page.devboxes:
|
|
|
168
168
|
# Remove `await` for non-async usage.
|
|
169
169
|
```
|
|
170
170
|
|
|
171
|
+
## File uploads
|
|
172
|
+
|
|
173
|
+
Request parameters that correspond to file uploads can be passed as `bytes`, a [`PathLike`](https://docs.python.org/3/library/os.html#os.PathLike) instance or a tuple of `(filename, contents, media type)`.
|
|
174
|
+
|
|
175
|
+
```python
|
|
176
|
+
from pathlib import Path
|
|
177
|
+
from runloop_api_client import Runloop
|
|
178
|
+
|
|
179
|
+
client = Runloop()
|
|
180
|
+
|
|
181
|
+
client.devboxes.upload_file(
|
|
182
|
+
id="id",
|
|
183
|
+
path="path",
|
|
184
|
+
file=Path("/path/to/file"),
|
|
185
|
+
)
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
The async client uses the exact same interface. If you pass a [`PathLike`](https://docs.python.org/3/library/os.html#os.PathLike) instance, the file contents will be read asynchronously automatically.
|
|
189
|
+
|
|
171
190
|
## Handling errors
|
|
172
191
|
|
|
173
192
|
When the library is unable to connect to the API (for example, due to network connection problems or a timeout), a subclass of `runloop_api_client.APIConnectionError` is raised.
|
|
@@ -136,6 +136,25 @@ for devbox in first_page.devboxes:
|
|
|
136
136
|
# Remove `await` for non-async usage.
|
|
137
137
|
```
|
|
138
138
|
|
|
139
|
+
## File uploads
|
|
140
|
+
|
|
141
|
+
Request parameters that correspond to file uploads can be passed as `bytes`, a [`PathLike`](https://docs.python.org/3/library/os.html#os.PathLike) instance or a tuple of `(filename, contents, media type)`.
|
|
142
|
+
|
|
143
|
+
```python
|
|
144
|
+
from pathlib import Path
|
|
145
|
+
from runloop_api_client import Runloop
|
|
146
|
+
|
|
147
|
+
client = Runloop()
|
|
148
|
+
|
|
149
|
+
client.devboxes.upload_file(
|
|
150
|
+
id="id",
|
|
151
|
+
path="path",
|
|
152
|
+
file=Path("/path/to/file"),
|
|
153
|
+
)
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
The async client uses the exact same interface. If you pass a [`PathLike`](https://docs.python.org/3/library/os.html#os.PathLike) instance, the file contents will be read asynchronously automatically.
|
|
157
|
+
|
|
139
158
|
## Handling errors
|
|
140
159
|
|
|
141
160
|
When the library is unable to connect to the API (for example, due to network connection problems or a timeout), a subclass of `runloop_api_client.APIConnectionError` is raised.
|
|
@@ -278,6 +278,7 @@ Methods:
|
|
|
278
278
|
|
|
279
279
|
- <code title="post /v1/scenarios">client.scenarios.<a href="./src/runloop_api_client/resources/scenarios/scenarios.py">create</a>(\*\*<a href="src/runloop_api_client/types/scenario_create_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenario_view.py">ScenarioView</a></code>
|
|
280
280
|
- <code title="get /v1/scenarios/{id}">client.scenarios.<a href="./src/runloop_api_client/resources/scenarios/scenarios.py">retrieve</a>(id) -> <a href="./src/runloop_api_client/types/scenario_view.py">ScenarioView</a></code>
|
|
281
|
+
- <code title="post /v1/scenarios/{id}">client.scenarios.<a href="./src/runloop_api_client/resources/scenarios/scenarios.py">update</a>(id, \*\*<a href="src/runloop_api_client/types/scenario_update_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenario_view.py">ScenarioView</a></code>
|
|
281
282
|
- <code title="get /v1/scenarios">client.scenarios.<a href="./src/runloop_api_client/resources/scenarios/scenarios.py">list</a>(\*\*<a href="src/runloop_api_client/types/scenario_list_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenario_view.py">SyncScenariosCursorIDPage[ScenarioView]</a></code>
|
|
282
283
|
- <code title="get /v1/scenarios/list_public">client.scenarios.<a href="./src/runloop_api_client/resources/scenarios/scenarios.py">list_public</a>(\*\*<a href="src/runloop_api_client/types/scenario_list_public_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenario_view.py">SyncScenariosCursorIDPage[ScenarioView]</a></code>
|
|
283
284
|
- <code title="post /v1/scenarios/start_run">client.scenarios.<a href="./src/runloop_api_client/resources/scenarios/scenarios.py">start_run</a>(\*\*<a href="src/runloop_api_client/types/scenario_start_run_params.py">params</a>) -> <a href="./src/runloop_api_client/types/scenario_run_view.py">ScenarioRunView</a></code>
|
{runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_base_client.py
RENAMED
|
@@ -63,7 +63,7 @@ from ._types import (
|
|
|
63
63
|
ModelBuilderProtocol,
|
|
64
64
|
)
|
|
65
65
|
from ._utils import is_dict, is_list, asyncify, is_given, lru_cache, is_mapping
|
|
66
|
-
from ._compat import model_copy, model_dump
|
|
66
|
+
from ._compat import PYDANTIC_V2, model_copy, model_dump
|
|
67
67
|
from ._models import GenericModel, FinalRequestOptions, validate_type, construct_type
|
|
68
68
|
from ._response import (
|
|
69
69
|
APIResponse,
|
|
@@ -207,6 +207,9 @@ class BaseSyncPage(BasePage[_T], Generic[_T]):
|
|
|
207
207
|
model: Type[_T],
|
|
208
208
|
options: FinalRequestOptions,
|
|
209
209
|
) -> None:
|
|
210
|
+
if PYDANTIC_V2 and getattr(self, "__pydantic_private__", None) is None:
|
|
211
|
+
self.__pydantic_private__ = {}
|
|
212
|
+
|
|
210
213
|
self._model = model
|
|
211
214
|
self._client = client
|
|
212
215
|
self._options = options
|
|
@@ -292,6 +295,9 @@ class BaseAsyncPage(BasePage[_T], Generic[_T]):
|
|
|
292
295
|
client: AsyncAPIClient,
|
|
293
296
|
options: FinalRequestOptions,
|
|
294
297
|
) -> None:
|
|
298
|
+
if PYDANTIC_V2 and getattr(self, "__pydantic_private__", None) is None:
|
|
299
|
+
self.__pydantic_private__ = {}
|
|
300
|
+
|
|
295
301
|
self._model = model
|
|
296
302
|
self._client = client
|
|
297
303
|
self._options = options
|
|
@@ -518,7 +524,7 @@ class BaseClient(Generic[_HttpxClientT, _DefaultStreamT]):
|
|
|
518
524
|
# so that passing a `TypedDict` doesn't cause an error.
|
|
519
525
|
# https://github.com/microsoft/pyright/issues/3526#event-6715453066
|
|
520
526
|
params=self.qs.stringify(cast(Mapping[str, Any], params)) if params else None,
|
|
521
|
-
json=json_data,
|
|
527
|
+
json=json_data if is_given(json_data) else None,
|
|
522
528
|
files=files,
|
|
523
529
|
**kwargs,
|
|
524
530
|
)
|
|
@@ -34,7 +34,7 @@ def assert_is_file_content(obj: object, *, key: str | None = None) -> None:
|
|
|
34
34
|
if not is_file_content(obj):
|
|
35
35
|
prefix = f"Expected entry at `{key}`" if key is not None else f"Expected file input `{obj!r}`"
|
|
36
36
|
raise RuntimeError(
|
|
37
|
-
f"{prefix} to be bytes, an io.IOBase instance, PathLike or a tuple but received {type(obj)} instead."
|
|
37
|
+
f"{prefix} to be bytes, an io.IOBase instance, PathLike or a tuple but received {type(obj)} instead. See https://github.com/runloopai/api-client-python/tree/main#file-uploads"
|
|
38
38
|
) from None
|
|
39
39
|
|
|
40
40
|
|
{runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/_utils/_sync.py
RENAMED
|
@@ -7,16 +7,20 @@ import contextvars
|
|
|
7
7
|
from typing import Any, TypeVar, Callable, Awaitable
|
|
8
8
|
from typing_extensions import ParamSpec
|
|
9
9
|
|
|
10
|
+
import anyio
|
|
11
|
+
import sniffio
|
|
12
|
+
import anyio.to_thread
|
|
13
|
+
|
|
10
14
|
T_Retval = TypeVar("T_Retval")
|
|
11
15
|
T_ParamSpec = ParamSpec("T_ParamSpec")
|
|
12
16
|
|
|
13
17
|
|
|
14
18
|
if sys.version_info >= (3, 9):
|
|
15
|
-
|
|
19
|
+
_asyncio_to_thread = asyncio.to_thread
|
|
16
20
|
else:
|
|
17
21
|
# backport of https://docs.python.org/3/library/asyncio-task.html#asyncio.to_thread
|
|
18
22
|
# for Python 3.8 support
|
|
19
|
-
async def
|
|
23
|
+
async def _asyncio_to_thread(
|
|
20
24
|
func: Callable[T_ParamSpec, T_Retval], /, *args: T_ParamSpec.args, **kwargs: T_ParamSpec.kwargs
|
|
21
25
|
) -> Any:
|
|
22
26
|
"""Asynchronously run function *func* in a separate thread.
|
|
@@ -34,6 +38,17 @@ else:
|
|
|
34
38
|
return await loop.run_in_executor(None, func_call)
|
|
35
39
|
|
|
36
40
|
|
|
41
|
+
async def to_thread(
|
|
42
|
+
func: Callable[T_ParamSpec, T_Retval], /, *args: T_ParamSpec.args, **kwargs: T_ParamSpec.kwargs
|
|
43
|
+
) -> T_Retval:
|
|
44
|
+
if sniffio.current_async_library() == "asyncio":
|
|
45
|
+
return await _asyncio_to_thread(func, *args, **kwargs)
|
|
46
|
+
|
|
47
|
+
return await anyio.to_thread.run_sync(
|
|
48
|
+
functools.partial(func, *args, **kwargs),
|
|
49
|
+
)
|
|
50
|
+
|
|
51
|
+
|
|
37
52
|
# inspired by `asyncer`, https://github.com/tiangolo/asyncer
|
|
38
53
|
def asyncify(function: Callable[T_ParamSpec, T_Retval]) -> Callable[T_ParamSpec, Awaitable[T_Retval]]:
|
|
39
54
|
"""
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from typing import List, Optional
|
|
5
|
+
from typing import Dict, List, Optional
|
|
6
6
|
|
|
7
7
|
import httpx
|
|
8
8
|
|
|
@@ -69,6 +69,7 @@ class BenchmarksResource(SyncAPIResource):
|
|
|
69
69
|
self,
|
|
70
70
|
*,
|
|
71
71
|
name: str,
|
|
72
|
+
metadata: Optional[Dict[str, str]] | NotGiven = NOT_GIVEN,
|
|
72
73
|
scenario_ids: Optional[List[str]] | NotGiven = NOT_GIVEN,
|
|
73
74
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
74
75
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
@@ -84,6 +85,8 @@ class BenchmarksResource(SyncAPIResource):
|
|
|
84
85
|
Args:
|
|
85
86
|
name: The name of the Benchmark.
|
|
86
87
|
|
|
88
|
+
metadata: User defined metadata to attach to the benchmark for organization.
|
|
89
|
+
|
|
87
90
|
scenario_ids: The Scenario IDs that make up the Benchmark.
|
|
88
91
|
|
|
89
92
|
extra_headers: Send extra headers
|
|
@@ -101,6 +104,7 @@ class BenchmarksResource(SyncAPIResource):
|
|
|
101
104
|
body=maybe_transform(
|
|
102
105
|
{
|
|
103
106
|
"name": name,
|
|
107
|
+
"metadata": metadata,
|
|
104
108
|
"scenario_ids": scenario_ids,
|
|
105
109
|
},
|
|
106
110
|
benchmark_create_params.BenchmarkCreateParams,
|
|
@@ -246,6 +250,7 @@ class BenchmarksResource(SyncAPIResource):
|
|
|
246
250
|
self,
|
|
247
251
|
*,
|
|
248
252
|
benchmark_id: str,
|
|
253
|
+
metadata: Optional[Dict[str, str]] | NotGiven = NOT_GIVEN,
|
|
249
254
|
run_name: Optional[str] | NotGiven = NOT_GIVEN,
|
|
250
255
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
251
256
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
@@ -261,6 +266,8 @@ class BenchmarksResource(SyncAPIResource):
|
|
|
261
266
|
Args:
|
|
262
267
|
benchmark_id: ID of the Benchmark to run.
|
|
263
268
|
|
|
269
|
+
metadata: User defined metadata to attach to the benchmark run for organization.
|
|
270
|
+
|
|
264
271
|
run_name: Display name of the run.
|
|
265
272
|
|
|
266
273
|
extra_headers: Send extra headers
|
|
@@ -278,6 +285,7 @@ class BenchmarksResource(SyncAPIResource):
|
|
|
278
285
|
body=maybe_transform(
|
|
279
286
|
{
|
|
280
287
|
"benchmark_id": benchmark_id,
|
|
288
|
+
"metadata": metadata,
|
|
281
289
|
"run_name": run_name,
|
|
282
290
|
},
|
|
283
291
|
benchmark_start_run_params.BenchmarkStartRunParams,
|
|
@@ -321,6 +329,7 @@ class AsyncBenchmarksResource(AsyncAPIResource):
|
|
|
321
329
|
self,
|
|
322
330
|
*,
|
|
323
331
|
name: str,
|
|
332
|
+
metadata: Optional[Dict[str, str]] | NotGiven = NOT_GIVEN,
|
|
324
333
|
scenario_ids: Optional[List[str]] | NotGiven = NOT_GIVEN,
|
|
325
334
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
326
335
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
@@ -336,6 +345,8 @@ class AsyncBenchmarksResource(AsyncAPIResource):
|
|
|
336
345
|
Args:
|
|
337
346
|
name: The name of the Benchmark.
|
|
338
347
|
|
|
348
|
+
metadata: User defined metadata to attach to the benchmark for organization.
|
|
349
|
+
|
|
339
350
|
scenario_ids: The Scenario IDs that make up the Benchmark.
|
|
340
351
|
|
|
341
352
|
extra_headers: Send extra headers
|
|
@@ -353,6 +364,7 @@ class AsyncBenchmarksResource(AsyncAPIResource):
|
|
|
353
364
|
body=await async_maybe_transform(
|
|
354
365
|
{
|
|
355
366
|
"name": name,
|
|
367
|
+
"metadata": metadata,
|
|
356
368
|
"scenario_ids": scenario_ids,
|
|
357
369
|
},
|
|
358
370
|
benchmark_create_params.BenchmarkCreateParams,
|
|
@@ -498,6 +510,7 @@ class AsyncBenchmarksResource(AsyncAPIResource):
|
|
|
498
510
|
self,
|
|
499
511
|
*,
|
|
500
512
|
benchmark_id: str,
|
|
513
|
+
metadata: Optional[Dict[str, str]] | NotGiven = NOT_GIVEN,
|
|
501
514
|
run_name: Optional[str] | NotGiven = NOT_GIVEN,
|
|
502
515
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
503
516
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
@@ -513,6 +526,8 @@ class AsyncBenchmarksResource(AsyncAPIResource):
|
|
|
513
526
|
Args:
|
|
514
527
|
benchmark_id: ID of the Benchmark to run.
|
|
515
528
|
|
|
529
|
+
metadata: User defined metadata to attach to the benchmark run for organization.
|
|
530
|
+
|
|
516
531
|
run_name: Display name of the run.
|
|
517
532
|
|
|
518
533
|
extra_headers: Send extra headers
|
|
@@ -530,6 +545,7 @@ class AsyncBenchmarksResource(AsyncAPIResource):
|
|
|
530
545
|
body=await async_maybe_transform(
|
|
531
546
|
{
|
|
532
547
|
"benchmark_id": benchmark_id,
|
|
548
|
+
"metadata": metadata,
|
|
533
549
|
"run_name": run_name,
|
|
534
550
|
},
|
|
535
551
|
benchmark_start_run_params.BenchmarkStartRunParams,
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from typing import Optional
|
|
5
|
+
from typing import Dict, Optional
|
|
6
6
|
|
|
7
7
|
import httpx
|
|
8
8
|
|
|
@@ -17,6 +17,7 @@ from .runs import (
|
|
|
17
17
|
from ...types import (
|
|
18
18
|
scenario_list_params,
|
|
19
19
|
scenario_create_params,
|
|
20
|
+
scenario_update_params,
|
|
20
21
|
scenario_start_run_params,
|
|
21
22
|
scenario_list_public_params,
|
|
22
23
|
)
|
|
@@ -88,6 +89,8 @@ class ScenariosResource(SyncAPIResource):
|
|
|
88
89
|
name: str,
|
|
89
90
|
scoring_contract: ScoringContractParam,
|
|
90
91
|
environment_parameters: Optional[ScenarioEnvironmentParam] | NotGiven = NOT_GIVEN,
|
|
92
|
+
metadata: Optional[Dict[str, str]] | NotGiven = NOT_GIVEN,
|
|
93
|
+
reference_output: Optional[str] | NotGiven = NOT_GIVEN,
|
|
91
94
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
92
95
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
93
96
|
extra_headers: Headers | None = None,
|
|
@@ -109,6 +112,12 @@ class ScenariosResource(SyncAPIResource):
|
|
|
109
112
|
|
|
110
113
|
environment_parameters: The Environment in which the Scenario will run.
|
|
111
114
|
|
|
115
|
+
metadata: User defined metadata to attach to the scenario for organization.
|
|
116
|
+
|
|
117
|
+
reference_output: A string representation of the reference output to solve the scenario. Commonly
|
|
118
|
+
can be the result of a git diff or a sequence of command actions to apply to the
|
|
119
|
+
environment.
|
|
120
|
+
|
|
112
121
|
extra_headers: Send extra headers
|
|
113
122
|
|
|
114
123
|
extra_query: Add additional query parameters to the request
|
|
@@ -127,6 +136,8 @@ class ScenariosResource(SyncAPIResource):
|
|
|
127
136
|
"name": name,
|
|
128
137
|
"scoring_contract": scoring_contract,
|
|
129
138
|
"environment_parameters": environment_parameters,
|
|
139
|
+
"metadata": metadata,
|
|
140
|
+
"reference_output": reference_output,
|
|
130
141
|
},
|
|
131
142
|
scenario_create_params.ScenarioCreateParams,
|
|
132
143
|
),
|
|
@@ -173,6 +184,78 @@ class ScenariosResource(SyncAPIResource):
|
|
|
173
184
|
cast_to=ScenarioView,
|
|
174
185
|
)
|
|
175
186
|
|
|
187
|
+
def update(
|
|
188
|
+
self,
|
|
189
|
+
id: str,
|
|
190
|
+
*,
|
|
191
|
+
input_context: InputContextParam,
|
|
192
|
+
name: str,
|
|
193
|
+
scoring_contract: ScoringContractParam,
|
|
194
|
+
environment_parameters: Optional[ScenarioEnvironmentParam] | NotGiven = NOT_GIVEN,
|
|
195
|
+
metadata: Optional[Dict[str, str]] | NotGiven = NOT_GIVEN,
|
|
196
|
+
reference_output: Optional[str] | NotGiven = NOT_GIVEN,
|
|
197
|
+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
198
|
+
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
199
|
+
extra_headers: Headers | None = None,
|
|
200
|
+
extra_query: Query | None = None,
|
|
201
|
+
extra_body: Body | None = None,
|
|
202
|
+
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
|
203
|
+
idempotency_key: str | None = None,
|
|
204
|
+
) -> ScenarioView:
|
|
205
|
+
"""
|
|
206
|
+
Update a Scenario, a repeatable AI coding evaluation test that defines the
|
|
207
|
+
starting environment as well as evaluation success criteria.
|
|
208
|
+
|
|
209
|
+
Args:
|
|
210
|
+
input_context: The input context for the Scenario.
|
|
211
|
+
|
|
212
|
+
name: Name of the scenario.
|
|
213
|
+
|
|
214
|
+
scoring_contract: The scoring contract for the Scenario.
|
|
215
|
+
|
|
216
|
+
environment_parameters: The Environment in which the Scenario will run.
|
|
217
|
+
|
|
218
|
+
metadata: User defined metadata to attach to the scenario for organization.
|
|
219
|
+
|
|
220
|
+
reference_output: A string representation of the reference output to solve the scenario. Commonly
|
|
221
|
+
can be the result of a git diff or a sequence of command actions to apply to the
|
|
222
|
+
environment.
|
|
223
|
+
|
|
224
|
+
extra_headers: Send extra headers
|
|
225
|
+
|
|
226
|
+
extra_query: Add additional query parameters to the request
|
|
227
|
+
|
|
228
|
+
extra_body: Add additional JSON properties to the request
|
|
229
|
+
|
|
230
|
+
timeout: Override the client-level default timeout for this request, in seconds
|
|
231
|
+
|
|
232
|
+
idempotency_key: Specify a custom idempotency key for this request
|
|
233
|
+
"""
|
|
234
|
+
if not id:
|
|
235
|
+
raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
|
|
236
|
+
return self._post(
|
|
237
|
+
f"/v1/scenarios/{id}",
|
|
238
|
+
body=maybe_transform(
|
|
239
|
+
{
|
|
240
|
+
"input_context": input_context,
|
|
241
|
+
"name": name,
|
|
242
|
+
"scoring_contract": scoring_contract,
|
|
243
|
+
"environment_parameters": environment_parameters,
|
|
244
|
+
"metadata": metadata,
|
|
245
|
+
"reference_output": reference_output,
|
|
246
|
+
},
|
|
247
|
+
scenario_update_params.ScenarioUpdateParams,
|
|
248
|
+
),
|
|
249
|
+
options=make_request_options(
|
|
250
|
+
extra_headers=extra_headers,
|
|
251
|
+
extra_query=extra_query,
|
|
252
|
+
extra_body=extra_body,
|
|
253
|
+
timeout=timeout,
|
|
254
|
+
idempotency_key=idempotency_key,
|
|
255
|
+
),
|
|
256
|
+
cast_to=ScenarioView,
|
|
257
|
+
)
|
|
258
|
+
|
|
176
259
|
def list(
|
|
177
260
|
self,
|
|
178
261
|
*,
|
|
@@ -281,6 +364,7 @@ class ScenariosResource(SyncAPIResource):
|
|
|
281
364
|
*,
|
|
282
365
|
scenario_id: str,
|
|
283
366
|
benchmark_run_id: Optional[str] | NotGiven = NOT_GIVEN,
|
|
367
|
+
metadata: Optional[Dict[str, str]] | NotGiven = NOT_GIVEN,
|
|
284
368
|
run_name: Optional[str] | NotGiven = NOT_GIVEN,
|
|
285
369
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
286
370
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
@@ -298,6 +382,8 @@ class ScenariosResource(SyncAPIResource):
|
|
|
298
382
|
|
|
299
383
|
benchmark_run_id: Benchmark to associate the run.
|
|
300
384
|
|
|
385
|
+
metadata: User defined metadata to attach to the run for organization.
|
|
386
|
+
|
|
301
387
|
run_name: Display name of the run.
|
|
302
388
|
|
|
303
389
|
extra_headers: Send extra headers
|
|
@@ -316,6 +402,7 @@ class ScenariosResource(SyncAPIResource):
|
|
|
316
402
|
{
|
|
317
403
|
"scenario_id": scenario_id,
|
|
318
404
|
"benchmark_run_id": benchmark_run_id,
|
|
405
|
+
"metadata": metadata,
|
|
319
406
|
"run_name": run_name,
|
|
320
407
|
},
|
|
321
408
|
scenario_start_run_params.ScenarioStartRunParams,
|
|
@@ -423,6 +510,8 @@ class AsyncScenariosResource(AsyncAPIResource):
|
|
|
423
510
|
name: str,
|
|
424
511
|
scoring_contract: ScoringContractParam,
|
|
425
512
|
environment_parameters: Optional[ScenarioEnvironmentParam] | NotGiven = NOT_GIVEN,
|
|
513
|
+
metadata: Optional[Dict[str, str]] | NotGiven = NOT_GIVEN,
|
|
514
|
+
reference_output: Optional[str] | NotGiven = NOT_GIVEN,
|
|
426
515
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
427
516
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
428
517
|
extra_headers: Headers | None = None,
|
|
@@ -444,6 +533,12 @@ class AsyncScenariosResource(AsyncAPIResource):
|
|
|
444
533
|
|
|
445
534
|
environment_parameters: The Environment in which the Scenario will run.
|
|
446
535
|
|
|
536
|
+
metadata: User defined metadata to attach to the scenario for organization.
|
|
537
|
+
|
|
538
|
+
reference_output: A string representation of the reference output to solve the scenario. Commonly
|
|
539
|
+
can be the result of a git diff or a sequence of command actions to apply to the
|
|
540
|
+
environment.
|
|
541
|
+
|
|
447
542
|
extra_headers: Send extra headers
|
|
448
543
|
|
|
449
544
|
extra_query: Add additional query parameters to the request
|
|
@@ -462,6 +557,8 @@ class AsyncScenariosResource(AsyncAPIResource):
|
|
|
462
557
|
"name": name,
|
|
463
558
|
"scoring_contract": scoring_contract,
|
|
464
559
|
"environment_parameters": environment_parameters,
|
|
560
|
+
"metadata": metadata,
|
|
561
|
+
"reference_output": reference_output,
|
|
465
562
|
},
|
|
466
563
|
scenario_create_params.ScenarioCreateParams,
|
|
467
564
|
),
|
|
@@ -508,6 +605,78 @@ class AsyncScenariosResource(AsyncAPIResource):
|
|
|
508
605
|
cast_to=ScenarioView,
|
|
509
606
|
)
|
|
510
607
|
|
|
608
|
+
async def update(
|
|
609
|
+
self,
|
|
610
|
+
id: str,
|
|
611
|
+
*,
|
|
612
|
+
input_context: InputContextParam,
|
|
613
|
+
name: str,
|
|
614
|
+
scoring_contract: ScoringContractParam,
|
|
615
|
+
environment_parameters: Optional[ScenarioEnvironmentParam] | NotGiven = NOT_GIVEN,
|
|
616
|
+
metadata: Optional[Dict[str, str]] | NotGiven = NOT_GIVEN,
|
|
617
|
+
reference_output: Optional[str] | NotGiven = NOT_GIVEN,
|
|
618
|
+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
619
|
+
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
620
|
+
extra_headers: Headers | None = None,
|
|
621
|
+
extra_query: Query | None = None,
|
|
622
|
+
extra_body: Body | None = None,
|
|
623
|
+
timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
|
|
624
|
+
idempotency_key: str | None = None,
|
|
625
|
+
) -> ScenarioView:
|
|
626
|
+
"""
|
|
627
|
+
Update a Scenario, a repeatable AI coding evaluation test that defines the
|
|
628
|
+
starting environment as well as evaluation success criteria.
|
|
629
|
+
|
|
630
|
+
Args:
|
|
631
|
+
input_context: The input context for the Scenario.
|
|
632
|
+
|
|
633
|
+
name: Name of the scenario.
|
|
634
|
+
|
|
635
|
+
scoring_contract: The scoring contract for the Scenario.
|
|
636
|
+
|
|
637
|
+
environment_parameters: The Environment in which the Scenario will run.
|
|
638
|
+
|
|
639
|
+
metadata: User defined metadata to attach to the scenario for organization.
|
|
640
|
+
|
|
641
|
+
reference_output: A string representation of the reference output to solve the scenario. Commonly
|
|
642
|
+
can be the result of a git diff or a sequence of command actions to apply to the
|
|
643
|
+
environment.
|
|
644
|
+
|
|
645
|
+
extra_headers: Send extra headers
|
|
646
|
+
|
|
647
|
+
extra_query: Add additional query parameters to the request
|
|
648
|
+
|
|
649
|
+
extra_body: Add additional JSON properties to the request
|
|
650
|
+
|
|
651
|
+
timeout: Override the client-level default timeout for this request, in seconds
|
|
652
|
+
|
|
653
|
+
idempotency_key: Specify a custom idempotency key for this request
|
|
654
|
+
"""
|
|
655
|
+
if not id:
|
|
656
|
+
raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
|
|
657
|
+
return await self._post(
|
|
658
|
+
f"/v1/scenarios/{id}",
|
|
659
|
+
body=await async_maybe_transform(
|
|
660
|
+
{
|
|
661
|
+
"input_context": input_context,
|
|
662
|
+
"name": name,
|
|
663
|
+
"scoring_contract": scoring_contract,
|
|
664
|
+
"environment_parameters": environment_parameters,
|
|
665
|
+
"metadata": metadata,
|
|
666
|
+
"reference_output": reference_output,
|
|
667
|
+
},
|
|
668
|
+
scenario_update_params.ScenarioUpdateParams,
|
|
669
|
+
),
|
|
670
|
+
options=make_request_options(
|
|
671
|
+
extra_headers=extra_headers,
|
|
672
|
+
extra_query=extra_query,
|
|
673
|
+
extra_body=extra_body,
|
|
674
|
+
timeout=timeout,
|
|
675
|
+
idempotency_key=idempotency_key,
|
|
676
|
+
),
|
|
677
|
+
cast_to=ScenarioView,
|
|
678
|
+
)
|
|
679
|
+
|
|
511
680
|
def list(
|
|
512
681
|
self,
|
|
513
682
|
*,
|
|
@@ -616,6 +785,7 @@ class AsyncScenariosResource(AsyncAPIResource):
|
|
|
616
785
|
*,
|
|
617
786
|
scenario_id: str,
|
|
618
787
|
benchmark_run_id: Optional[str] | NotGiven = NOT_GIVEN,
|
|
788
|
+
metadata: Optional[Dict[str, str]] | NotGiven = NOT_GIVEN,
|
|
619
789
|
run_name: Optional[str] | NotGiven = NOT_GIVEN,
|
|
620
790
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
621
791
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
@@ -633,6 +803,8 @@ class AsyncScenariosResource(AsyncAPIResource):
|
|
|
633
803
|
|
|
634
804
|
benchmark_run_id: Benchmark to associate the run.
|
|
635
805
|
|
|
806
|
+
metadata: User defined metadata to attach to the run for organization.
|
|
807
|
+
|
|
636
808
|
run_name: Display name of the run.
|
|
637
809
|
|
|
638
810
|
extra_headers: Send extra headers
|
|
@@ -651,6 +823,7 @@ class AsyncScenariosResource(AsyncAPIResource):
|
|
|
651
823
|
{
|
|
652
824
|
"scenario_id": scenario_id,
|
|
653
825
|
"benchmark_run_id": benchmark_run_id,
|
|
826
|
+
"metadata": metadata,
|
|
654
827
|
"run_name": run_name,
|
|
655
828
|
},
|
|
656
829
|
scenario_start_run_params.ScenarioStartRunParams,
|
|
@@ -710,6 +883,9 @@ class ScenariosResourceWithRawResponse:
|
|
|
710
883
|
self.retrieve = to_raw_response_wrapper(
|
|
711
884
|
scenarios.retrieve,
|
|
712
885
|
)
|
|
886
|
+
self.update = to_raw_response_wrapper(
|
|
887
|
+
scenarios.update,
|
|
888
|
+
)
|
|
713
889
|
self.list = to_raw_response_wrapper(
|
|
714
890
|
scenarios.list,
|
|
715
891
|
)
|
|
@@ -739,6 +915,9 @@ class AsyncScenariosResourceWithRawResponse:
|
|
|
739
915
|
self.retrieve = async_to_raw_response_wrapper(
|
|
740
916
|
scenarios.retrieve,
|
|
741
917
|
)
|
|
918
|
+
self.update = async_to_raw_response_wrapper(
|
|
919
|
+
scenarios.update,
|
|
920
|
+
)
|
|
742
921
|
self.list = async_to_raw_response_wrapper(
|
|
743
922
|
scenarios.list,
|
|
744
923
|
)
|
|
@@ -768,6 +947,9 @@ class ScenariosResourceWithStreamingResponse:
|
|
|
768
947
|
self.retrieve = to_streamed_response_wrapper(
|
|
769
948
|
scenarios.retrieve,
|
|
770
949
|
)
|
|
950
|
+
self.update = to_streamed_response_wrapper(
|
|
951
|
+
scenarios.update,
|
|
952
|
+
)
|
|
771
953
|
self.list = to_streamed_response_wrapper(
|
|
772
954
|
scenarios.list,
|
|
773
955
|
)
|
|
@@ -797,6 +979,9 @@ class AsyncScenariosResourceWithStreamingResponse:
|
|
|
797
979
|
self.retrieve = async_to_streamed_response_wrapper(
|
|
798
980
|
scenarios.retrieve,
|
|
799
981
|
)
|
|
982
|
+
self.update = async_to_streamed_response_wrapper(
|
|
983
|
+
scenarios.update,
|
|
984
|
+
)
|
|
800
985
|
self.list = async_to_streamed_response_wrapper(
|
|
801
986
|
scenarios.list,
|
|
802
987
|
)
|
{runloop_api_client-0.23.0 → runloop_api_client-0.25.0}/src/runloop_api_client/types/__init__.py
RENAMED
|
@@ -35,6 +35,7 @@ from .blueprint_preview_view import BlueprintPreviewView as BlueprintPreviewView
|
|
|
35
35
|
from .repository_list_params import RepositoryListParams as RepositoryListParams
|
|
36
36
|
from .scenario_create_params import ScenarioCreateParams as ScenarioCreateParams
|
|
37
37
|
from .scenario_run_list_view import ScenarioRunListView as ScenarioRunListView
|
|
38
|
+
from .scenario_update_params import ScenarioUpdateParams as ScenarioUpdateParams
|
|
38
39
|
from .scoring_contract_param import ScoringContractParam as ScoringContractParam
|
|
39
40
|
from .scoring_function_param import ScoringFunctionParam as ScoringFunctionParam
|
|
40
41
|
from .benchmark_create_params import BenchmarkCreateParams as BenchmarkCreateParams
|