verifiers 0.2.1.dev8__tar.gz → 0.2.1.dev11__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.
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/PKG-INFO +1 -1
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/pyproject.toml +2 -1
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/harnesses/codex/harness.py +63 -2
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/harnesses/default/harness.py +7 -4
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/harnesses/default/program.py +7 -6
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/harnesses/null/harness.py +7 -4
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/harnesses/null/program.py +8 -6
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/serve/pool.py +6 -23
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/.gitignore +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/LICENSE +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/README.md +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/AGENTS.md +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/conftest.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_browser_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_build_script.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_cli_agent_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_client_auth_errors.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_client_config.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_client_multimodal_types.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_composable_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_context_token_metrics.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_decorator_ranks.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_endpoint_registry.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_env_group.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_env_server.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_environment.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_environment_extra.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_envs.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_error_chain.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_eval_display.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_eval_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_gepa_cli.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_gepa_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_gym_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_harbor_env_mcp.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_imports.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_init_script.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_install_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_interception_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_logging.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_math_rubric.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_maybe_think_parser.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_message_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_message_utils_multimodal.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_multiturn_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_nemorl_client.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_openai_chat_completions_token_client.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_openai_responses_client.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_opencode_rlm_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_openenv_client.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_parser.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_path_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_per_turn_timing.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_pricing_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_prime_plugin.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_renderer_client.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_renderer_e2e.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_rlm_composable_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_rubric.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_rubric_group.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_sandbox_debug_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_sandbox_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_sandbox_mixin.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_save_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_setup_script.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_singleturn_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_stateful_tool_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_think_parser.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_tool_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_tool_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_trajectory_processing.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_tui_info_formatting.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_types.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_wordle_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_xml_parser.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/v1/conftest.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/v1/fixtures/counter_tool_v1.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/v1/fixtures/echo_agentic_v1.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/v1/fixtures/echo_multi_v0.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/v1/fixtures/echo_tool_v1.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/v1/fixtures/echo_user_sim_v1.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/v1/fixtures/echo_v0.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/v1/fixtures/echo_v1.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/v1/fixtures/pyproject.toml +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/v1/fixtures/tool_response_image_v1.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/v1/test_color_codeword_tasks.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/v1/test_configs.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/v1/test_e2e.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/v1/test_envs.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/v1/test_graph.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/v1/test_judges.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/v1/test_legacy.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/v1/test_scoring.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/v1/test_trace.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/cli/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/cli/commands/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/cli/commands/build.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/cli/commands/eval.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/cli/commands/gepa.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/cli/commands/init.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/cli/commands/install.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/cli/commands/setup.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/cli/plugins/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/cli/plugins/prime.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/cli/tui.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/clients/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/clients/anthropic_messages_client.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/clients/client.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/clients/nemorl_chat_completions_client.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/clients/openai_chat_completions_client.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/clients/openai_chat_completions_token_client.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/clients/openai_completions_client.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/clients/openai_responses_client.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/clients/renderer_client.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/decorators.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/AGENTS.md +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/env_group.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/environment.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/README.md +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/cli_agent_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/README.md +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/_filter.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/composable_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/harness.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/harnesses/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/harnesses/mini_swe_agent.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/harnesses/opencode.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/harnesses/prompt.txt +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/harnesses/rlm.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/sandbox_debug_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/swe_debug_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/task.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/cp/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/cp/cp_task.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/cp/test_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/harbor/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/harbor/cli_gym.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/harbor/harbor.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/harbor/terminal_lego.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/math/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/math/math_task.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/README.md +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/openseeker/README.md +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/openseeker/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/openseeker/taskset.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/quest/README.md +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/quest/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/quest/obj_task_eval/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/quest/obj_task_eval/api_tools/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/quest/obj_task_eval/api_tools/tool_pdf.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/quest/obj_task_eval/eval_toolkit.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/quest/obj_task_eval/evaluator.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/quest/obj_task_eval/llm_client/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/quest/obj_task_eval/llm_client/base_client.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/quest/obj_task_eval/prompts/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/quest/obj_task_eval/prompts/cache_prompts.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/quest/obj_task_eval/utils/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/quest/obj_task_eval/utils/cache_filesys.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/quest/obj_task_eval/utils/load_eval_script.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/quest/obj_task_eval/utils/misc.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/quest/obj_task_eval/utils/tool_visit.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/quest/obj_task_eval/utils/url_tools.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/quest/obj_task_eval/verification_tree.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/quest/open_ended.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/quest/taskset.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/redsearcher/README.md +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/redsearcher/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/redsearcher/taskset.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/search/search_tasksets.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/README.md +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/multi_swe/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/multi_swe/extract_fix_patch.sh +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/multi_swe/taskset.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/openswe/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/openswe/taskset.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/r2e_gym/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/r2e_gym/log_parser.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/r2e_gym/taskset.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/scale_swe/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/scale_swe/taskset.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/shared/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/shared/test_patch.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/swe_bench/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/swe_bench/taskset.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/swe_lego/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/swe_lego/taskset.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/swe_rebench_v2/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/swe_rebench_v2/log_parsers.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/swe_rebench_v2/taskset.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/swe_smith/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/swe_smith/taskset.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/tasksets/swe/swe_tasksets.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/gym_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/harbor_env/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/harbor_env/env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/harbor_env/mcp.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/mcp_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/opencode_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/opencode_qa_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/opencode_rlm_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/sandbox_mixin.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/utils/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/utils/file_locks.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/utils/git_checkout_cache.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/integrations/README.md +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/integrations/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/integrations/browser_env/README.md +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/integrations/browser_env/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/integrations/browser_env/browser_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/integrations/browser_env/modes/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/integrations/browser_env/modes/base.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/integrations/browser_env/modes/cua_mode.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/integrations/browser_env/modes/dom_mode.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/integrations/openenv_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/integrations/reasoninggym_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/integrations/textarena_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/multiturn_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/python_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/sandbox_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/singleturn_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/stateful_tool_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/tool_env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/errors.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/gepa/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/gepa/adapter.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/gepa/config.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/gepa/display.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/gepa/gepa_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/parsers/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/parsers/maybe_think_parser.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/parsers/parser.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/parsers/think_parser.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/parsers/xml_parser.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/rubrics/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/rubrics/experimental/hybrid_math_rubric.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/rubrics/judge_rubric.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/rubrics/math_rubric.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/rubrics/rubric.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/rubrics/rubric_group.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/scripts/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/scripts/build.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/scripts/eval.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/scripts/gepa.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/scripts/init.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/scripts/install.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/scripts/setup.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/scripts/tui.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/serve/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/serve/client/env_client.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/serve/client/zmq_env_client.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/serve/server/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/serve/server/env_router.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/serve/server/env_server.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/serve/server/env_worker.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/serve/server/zmq_env_server.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/serve/types.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/types.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/async_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/client_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/config_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/data_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/display_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/env_config_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/env_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/error_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/eval_display.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/eval_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/heartbeat.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/import_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/install_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/interception_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/logging_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/message_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/metric_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/path_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/pricing_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/process_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/response_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/save_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/serve_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/thread_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/threaded_sandbox_client.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/tool_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/usage_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/utils/version_utils.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/cli/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/cli/dashboard/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/cli/dashboard/base.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/cli/dashboard/eval.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/cli/dashboard/replay.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/cli/dashboard/validate.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/cli/debug.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/cli/eval/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/cli/eval/main.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/cli/eval/resume.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/cli/eval/runner.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/cli/gepa.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/cli/init.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/cli/output.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/cli/replay.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/cli/resolve.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/cli/serve.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/cli/validate.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/clients/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/clients/client.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/clients/config.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/clients/eval.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/clients/train.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/configs/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/configs/debug.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/configs/eval.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/configs/init.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/configs/replay.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/configs/serve.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/configs/validate.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/decorators.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/dialects/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/dialects/anthropic.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/dialects/base.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/dialects/chat.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/dialects/responses.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/env.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/episode.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/errors.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/gepa/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/gepa/adapter.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/gepa/config.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/gepa/dataset.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/gepa/reflection.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/gepa/runner.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/graph.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/harness.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/harnesses/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/harnesses/codex/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/harnesses/default/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/harnesses/kimi_code/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/harnesses/kimi_code/harness.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/harnesses/mini_swe_agent/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/harnesses/mini_swe_agent/harness.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/harnesses/mini_swe_agent/program.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/harnesses/null/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/harnesses/rlm/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/harnesses/rlm/harness.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/harnesses/terminus_2/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/harnesses/terminus_2/harness.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/harnesses/terminus_2/program.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/interception/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/interception/pool.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/interception/server.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/judge.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/judges/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/judges/reference.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/judges/reference.txt +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/judges/rubric.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/judges/rubric.txt +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/legacy.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/loaders.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/mcp/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/mcp/launch.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/mcp/server.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/mcp/toolset.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/mcp/user.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/push.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/retries.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/rollout.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/runtimes/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/runtimes/base.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/runtimes/docker.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/runtimes/limiters.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/runtimes/modal.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/runtimes/prime.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/runtimes/subprocess.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/scoring.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/serve/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/serve/client.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/serve/server.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/serve/types.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/state.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/task.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/taskset.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/tasksets/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/tasksets/harbor/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/tasksets/harbor/taskset.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/tasksets/lean/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/tasksets/lean/scoring.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/tasksets/lean/taskset.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/tasksets/textarena/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/tasksets/textarena/taskset.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/trace.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/types.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/utils/__init__.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/utils/aio.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/utils/format.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/utils/generic.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/utils/install.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/utils/interrupt.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/utils/logging.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/utils/memory.py +0 -0
- {verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/v1/utils/sampling.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: verifiers
|
|
3
|
-
Version: 0.2.1.
|
|
3
|
+
Version: 0.2.1.dev11
|
|
4
4
|
Summary: Verifiers: Environments for LLM Reinforcement Learning
|
|
5
5
|
Project-URL: Homepage, https://github.com/primeintellect-ai/verifiers
|
|
6
6
|
Project-URL: Documentation, https://github.com/primeintellect-ai/verifiers
|
|
@@ -80,7 +80,7 @@ examples = [
|
|
|
80
80
|
"compact",
|
|
81
81
|
"gsm8k-v1", "glossary-v1", "deepwiki-v1", "wiki-search-v1", "code-golf-v1",
|
|
82
82
|
"reverse-text-v1", "color-codeword-v1",
|
|
83
|
-
"wordle-v1", "alphabet-sort-v1", "scratchpad-v1",
|
|
83
|
+
"wordle-v1", "alphabet-sort-v1", "scratchpad-v1", "mmmu-v1",
|
|
84
84
|
]
|
|
85
85
|
|
|
86
86
|
[project.optional-dependencies]
|
|
@@ -148,6 +148,7 @@ wordle-v1 = { path = "environments/wordle_v1", editable = true }
|
|
|
148
148
|
color-codeword-v1 = { path = "environments/color_codeword_v1", editable = true }
|
|
149
149
|
alphabet-sort-v1 = { path = "environments/alphabet_sort_v1", editable = true }
|
|
150
150
|
scratchpad-v1 = { path = "environments/scratchpad_v1", editable = true }
|
|
151
|
+
mmmu-v1 = { path = "environments/mmmu_v1", editable = true }
|
|
151
152
|
|
|
152
153
|
[tool.uv.exclude-newer-package]
|
|
153
154
|
# PrimeIntellect-published on PyPI (trusted publisher)
|
|
@@ -3,13 +3,16 @@
|
|
|
3
3
|
The static musl binary runs in Linux containers without additional runtime dependencies.
|
|
4
4
|
"""
|
|
5
5
|
|
|
6
|
+
import base64
|
|
6
7
|
import logging
|
|
8
|
+
import re
|
|
7
9
|
import shlex
|
|
8
10
|
|
|
9
11
|
from verifiers.v1.clients import ModelContext
|
|
10
12
|
from verifiers.v1.harness import Harness, HarnessConfig
|
|
11
13
|
from verifiers.v1.runtimes import ProgramResult, Runtime
|
|
12
14
|
from verifiers.v1.trace import Trace
|
|
15
|
+
from verifiers.v1.types import TextContentPart
|
|
13
16
|
|
|
14
17
|
logger = logging.getLogger(__name__)
|
|
15
18
|
|
|
@@ -42,6 +45,7 @@ class CodexHarnessConfig(HarnessConfig):
|
|
|
42
45
|
class CodexHarness(Harness[CodexHarnessConfig]):
|
|
43
46
|
APPENDS_SYSTEM_PROMPT = False # TODO
|
|
44
47
|
SUPPORTS_MCP = False # TODO
|
|
48
|
+
SUPPORTS_MESSAGE_PROMPT = True
|
|
45
49
|
|
|
46
50
|
async def setup(self, runtime: Runtime) -> None:
|
|
47
51
|
logger.info("codex: ensuring codex %s is installed", self.config.version)
|
|
@@ -68,7 +72,53 @@ class CodexHarness(Harness[CodexHarnessConfig]):
|
|
|
68
72
|
secret: str,
|
|
69
73
|
mcp_urls: dict[str, str],
|
|
70
74
|
) -> ProgramResult:
|
|
71
|
-
|
|
75
|
+
task = trace.task.data
|
|
76
|
+
if (
|
|
77
|
+
task.system_prompt is not None
|
|
78
|
+
and task.prompt is not None
|
|
79
|
+
and not isinstance(task.prompt, str)
|
|
80
|
+
):
|
|
81
|
+
system_prompt, prompt = task.system_prompt, task.prompt
|
|
82
|
+
else:
|
|
83
|
+
system_prompt, prompt = self.resolve_prompt(task)
|
|
84
|
+
image_args: list[str] = []
|
|
85
|
+
image_dir = f".vf-codex-images-{trace.id}"
|
|
86
|
+
if prompt is not None and not isinstance(prompt, str):
|
|
87
|
+
# Codex seeds one initial turn, so Messages system text joins its prompt.
|
|
88
|
+
texts = [system_prompt] if system_prompt else []
|
|
89
|
+
image_index = 0
|
|
90
|
+
for message in prompt:
|
|
91
|
+
if message.role not in ("system", "user"):
|
|
92
|
+
raise ValueError(
|
|
93
|
+
"codex exec only supports system and user initial messages"
|
|
94
|
+
)
|
|
95
|
+
parts = (
|
|
96
|
+
[TextContentPart(text=message.content)]
|
|
97
|
+
if isinstance(message.content, str)
|
|
98
|
+
else message.content
|
|
99
|
+
)
|
|
100
|
+
for part in parts:
|
|
101
|
+
if isinstance(part, TextContentPart):
|
|
102
|
+
texts.append(part.text)
|
|
103
|
+
continue
|
|
104
|
+
metadata, separator, encoded = part.image_url.url.partition(",")
|
|
105
|
+
media_type, *parameters = metadata.removeprefix("data:").split(";")
|
|
106
|
+
if (
|
|
107
|
+
not separator
|
|
108
|
+
or not metadata.startswith("data:image/")
|
|
109
|
+
or not any(p.lower() == "base64" for p in parameters)
|
|
110
|
+
):
|
|
111
|
+
raise ValueError(
|
|
112
|
+
"codex image prompts require base64 data:image URLs"
|
|
113
|
+
)
|
|
114
|
+
extension = re.sub(
|
|
115
|
+
r"[^a-zA-Z0-9]+", "_", media_type.removeprefix("image/")
|
|
116
|
+
).strip("_")
|
|
117
|
+
path = f"{image_dir}/image_{image_index}.{extension or 'image'}"
|
|
118
|
+
await runtime.write(path, base64.b64decode(encoded))
|
|
119
|
+
image_args += ["-i", path]
|
|
120
|
+
image_index += 1
|
|
121
|
+
prompt = "\n\n".join(texts)
|
|
72
122
|
# codex authenticates to the interception server with the session secret (its provider
|
|
73
123
|
# api key) and posts Responses calls to `{endpoint}/responses`.
|
|
74
124
|
env = {**self.config.resolved_env, KEY_VAR: secret}
|
|
@@ -111,7 +161,18 @@ class CodexHarness(Harness[CodexHarnessConfig]):
|
|
|
111
161
|
"-c",
|
|
112
162
|
f"model_providers.{PROVIDER}.requires_openai_auth=false",
|
|
113
163
|
*tool_config,
|
|
164
|
+
*image_args,
|
|
114
165
|
"--",
|
|
115
166
|
prompt,
|
|
116
167
|
]
|
|
117
|
-
|
|
168
|
+
try:
|
|
169
|
+
return await runtime.run_program(argv, env)
|
|
170
|
+
finally:
|
|
171
|
+
if image_args:
|
|
172
|
+
try:
|
|
173
|
+
await runtime.run(["rm", "-rf", image_dir], {})
|
|
174
|
+
except Exception:
|
|
175
|
+
# Runtime teardown is the fallback; preserve the rollout result.
|
|
176
|
+
logger.warning(
|
|
177
|
+
"failed to clean up Codex prompt images", exc_info=True
|
|
178
|
+
)
|
|
@@ -103,13 +103,16 @@ class DefaultHarness(Harness[DefaultHarnessConfig]):
|
|
|
103
103
|
}
|
|
104
104
|
)
|
|
105
105
|
)
|
|
106
|
-
# A Messages prompt (e.g. an image-bearing prompt) seeds the chat loop directly via env
|
|
107
|
-
# (it can be large multimodal content that overflows argv); a plain string is the single
|
|
108
|
-
# first user message; None means the task has no prompt and the user simulator opens it.
|
|
109
106
|
if isinstance(prompt, str):
|
|
110
107
|
args.append(f"--prompt={prompt}")
|
|
111
108
|
elif prompt is not None:
|
|
112
|
-
|
|
109
|
+
# Base64 images can exceed exec limits, so hand Messages off through a file.
|
|
110
|
+
path = f".vf-initial-messages-{trace.id}.json"
|
|
111
|
+
await runtime.write(
|
|
112
|
+
path,
|
|
113
|
+
json.dumps([message_to_wire(m) for m in prompt]).encode(),
|
|
114
|
+
)
|
|
115
|
+
args.append(f"--initial-messages-file={path}")
|
|
113
116
|
program = await runtime.prepare_uv_script(
|
|
114
117
|
PROGRAM_SOURCE, self.config.resolved_env
|
|
115
118
|
)
|
|
@@ -7,7 +7,6 @@
|
|
|
7
7
|
import argparse
|
|
8
8
|
import asyncio
|
|
9
9
|
import json
|
|
10
|
-
import os
|
|
11
10
|
import subprocess
|
|
12
11
|
from contextlib import AsyncExitStack
|
|
13
12
|
from pathlib import Path
|
|
@@ -244,6 +243,7 @@ def parse_args() -> argparse.Namespace:
|
|
|
244
243
|
parser.add_argument("--model", required=True)
|
|
245
244
|
parser.add_argument("--system-prompt", default="")
|
|
246
245
|
parser.add_argument("--prompt", default="")
|
|
246
|
+
parser.add_argument("--initial-messages-file", default="")
|
|
247
247
|
parser.add_argument("--mcp-config", default="")
|
|
248
248
|
parser.add_argument("--edit", action="store_true")
|
|
249
249
|
parser.add_argument("--search", action="store_true")
|
|
@@ -253,6 +253,12 @@ def parse_args() -> argparse.Namespace:
|
|
|
253
253
|
|
|
254
254
|
async def main() -> None:
|
|
255
255
|
args = parse_args()
|
|
256
|
+
initial = []
|
|
257
|
+
if args.initial_messages_file:
|
|
258
|
+
path = Path(args.initial_messages_file)
|
|
259
|
+
payload = path.read_bytes()
|
|
260
|
+
path.unlink()
|
|
261
|
+
initial = json.loads(payload)
|
|
256
262
|
# No client-side retries: re-sending a request whose turn the interception already committed
|
|
257
263
|
# re-samples it and forks the trace into an extra dead-end branch. A generous timeout lets a
|
|
258
264
|
# slow turn finish instead of timing out and re-sending; genuine failures surface as error rows.
|
|
@@ -275,11 +281,6 @@ async def main() -> None:
|
|
|
275
281
|
if args.system_prompt
|
|
276
282
|
else []
|
|
277
283
|
)
|
|
278
|
-
# A Messages prompt (e.g. an image-bearing prompt) arrives pre-built as OpenAI wire dicts
|
|
279
|
-
# via INITIAL_MESSAGES (kept in env: it can be large multimodal content that overflows
|
|
280
|
-
# argv, and it's prompt content, not a credential); otherwise --prompt is the opening
|
|
281
|
-
# message. Both empty means the task has no prompt — the user simulator seeds the opening.
|
|
282
|
-
initial = json.loads(os.environ.get("INITIAL_MESSAGES", "[]"))
|
|
283
284
|
if initial:
|
|
284
285
|
messages.extend(initial)
|
|
285
286
|
elif args.prompt:
|
|
@@ -54,13 +54,16 @@ class NullHarness(Harness[NullHarnessConfig]):
|
|
|
54
54
|
}
|
|
55
55
|
)
|
|
56
56
|
)
|
|
57
|
-
# A Messages prompt (e.g. an image-bearing prompt) seeds the chat loop directly via env
|
|
58
|
-
# (it can be large multimodal content that overflows argv); a plain string is the single
|
|
59
|
-
# first user message; None means the task has no prompt and the user simulator opens it.
|
|
60
57
|
if isinstance(prompt, str):
|
|
61
58
|
args.append(f"--prompt={prompt}")
|
|
62
59
|
elif prompt is not None:
|
|
63
|
-
|
|
60
|
+
# Base64 images can exceed exec limits, so hand Messages off through a file.
|
|
61
|
+
path = f".vf-initial-messages-{trace.id}.json"
|
|
62
|
+
await runtime.write(
|
|
63
|
+
path,
|
|
64
|
+
json.dumps([message_to_wire(m) for m in prompt]).encode(),
|
|
65
|
+
)
|
|
66
|
+
args.append(f"--initial-messages-file={path}")
|
|
64
67
|
program = await runtime.prepare_uv_script(
|
|
65
68
|
PROGRAM_SOURCE, self.config.resolved_env
|
|
66
69
|
)
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
import argparse
|
|
8
8
|
import asyncio
|
|
9
9
|
import json
|
|
10
|
-
import os
|
|
11
10
|
from contextlib import AsyncExitStack
|
|
11
|
+
from pathlib import Path
|
|
12
12
|
|
|
13
13
|
from openai import AsyncOpenAI
|
|
14
14
|
|
|
@@ -88,12 +88,19 @@ def parse_args() -> argparse.Namespace:
|
|
|
88
88
|
parser.add_argument("--model", required=True)
|
|
89
89
|
parser.add_argument("--system-prompt", default="")
|
|
90
90
|
parser.add_argument("--prompt", default="")
|
|
91
|
+
parser.add_argument("--initial-messages-file", default="")
|
|
91
92
|
parser.add_argument("--mcp-config", default="")
|
|
92
93
|
return parser.parse_args()
|
|
93
94
|
|
|
94
95
|
|
|
95
96
|
async def main() -> None:
|
|
96
97
|
args = parse_args()
|
|
98
|
+
initial = []
|
|
99
|
+
if args.initial_messages_file:
|
|
100
|
+
path = Path(args.initial_messages_file)
|
|
101
|
+
payload = path.read_bytes()
|
|
102
|
+
path.unlink()
|
|
103
|
+
initial = json.loads(payload)
|
|
97
104
|
client = AsyncOpenAI(base_url=args.base_url, api_key=args.api_key)
|
|
98
105
|
config = json.loads(args.mcp_config or "{}")
|
|
99
106
|
async with AsyncExitStack() as stack:
|
|
@@ -105,11 +112,6 @@ async def main() -> None:
|
|
|
105
112
|
if args.system_prompt
|
|
106
113
|
else []
|
|
107
114
|
)
|
|
108
|
-
# A Messages prompt (e.g. an image-bearing prompt) arrives pre-built as OpenAI wire dicts
|
|
109
|
-
# via INITIAL_MESSAGES (kept in env: it can be large multimodal content that overflows
|
|
110
|
-
# argv, and it's prompt content, not a credential); otherwise --prompt is the opening
|
|
111
|
-
# message. Both empty means the task has no prompt — the user simulator seeds the opening.
|
|
112
|
-
initial = json.loads(os.environ.get("INITIAL_MESSAGES", "[]"))
|
|
113
115
|
if initial:
|
|
114
116
|
messages.extend(initial)
|
|
115
117
|
elif args.prompt:
|
|
@@ -69,27 +69,6 @@ def _arm_teardown(death_pipe=None) -> None:
|
|
|
69
69
|
threading.Thread(target=_watch, daemon=True).start()
|
|
70
70
|
|
|
71
71
|
|
|
72
|
-
def _worker_entry(
|
|
73
|
-
*, server_kwargs: dict, address: str, death_pipe, legacy: bool, log_setup=None
|
|
74
|
-
) -> None:
|
|
75
|
-
"""Spawned worker: an ordinary EnvServer/LegacyEnvServer bound to `address` (ipc).
|
|
76
|
-
A native config arrives as a dict (`config_data`): the eval/serve CLI's narrowed
|
|
77
|
-
config type is dynamic and unpicklable, so we rebuild it here via EnvConfig's
|
|
78
|
-
id-resolving validator. `log_setup` (if given) configures this fresh process's
|
|
79
|
-
logging so per-rollout logs surface — a spawned worker inherits no handlers."""
|
|
80
|
-
from verifiers.v1.legacy import LegacyEnvServer
|
|
81
|
-
|
|
82
|
-
_arm_teardown(death_pipe)
|
|
83
|
-
if log_setup is not None:
|
|
84
|
-
log_setup()
|
|
85
|
-
if "config_data" in server_kwargs:
|
|
86
|
-
server_kwargs = {
|
|
87
|
-
"config": EnvConfig.model_validate(server_kwargs["config_data"])
|
|
88
|
-
}
|
|
89
|
-
cls = LegacyEnvServer if legacy else EnvServer
|
|
90
|
-
cls.run_server(address=address, **server_kwargs)
|
|
91
|
-
|
|
92
|
-
|
|
93
72
|
class EnvServerPool:
|
|
94
73
|
"""ROUTER broker that elastically scales worker processes (least-busy dispatch).
|
|
95
74
|
|
|
@@ -138,13 +117,14 @@ class EnvServerPool:
|
|
|
138
117
|
address = f"ipc://{self._worker_path(i)}"
|
|
139
118
|
parent_conn, child_conn = self._mpctx.Pipe()
|
|
140
119
|
proc = self._mpctx.Process(
|
|
141
|
-
target=
|
|
120
|
+
target=serve_env,
|
|
142
121
|
kwargs=dict(
|
|
143
|
-
|
|
122
|
+
max_workers=1,
|
|
144
123
|
address=address,
|
|
145
124
|
death_pipe=child_conn,
|
|
146
125
|
legacy=self.legacy,
|
|
147
126
|
log_setup=self.log_setup,
|
|
127
|
+
**self.server_kwargs,
|
|
148
128
|
),
|
|
149
129
|
daemon=False,
|
|
150
130
|
)
|
|
@@ -363,3 +343,6 @@ def serve_env(
|
|
|
363
343
|
)
|
|
364
344
|
except KeyboardInterrupt:
|
|
365
345
|
pass
|
|
346
|
+
except Exception:
|
|
347
|
+
logger.exception("Env server failed")
|
|
348
|
+
raise
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/tests/test_openai_chat_completions_token_client.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/clients/anthropic_messages_client.py
RENAMED
|
File without changes
|
|
File without changes
|
{verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/clients/nemorl_chat_completions_client.py
RENAMED
|
File without changes
|
{verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/clients/openai_chat_completions_client.py
RENAMED
|
File without changes
|
|
File without changes
|
{verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/clients/openai_completions_client.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/README.md
RENAMED
|
File without changes
|
{verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/__init__.py
RENAMED
|
File without changes
|
{verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/_filter.py
RENAMED
|
File without changes
|
|
File without changes
|
{verifiers-0.2.1.dev8 → verifiers-0.2.1.dev11}/verifiers/envs/experimental/composable/harness.py
RENAMED
|
File without changes
|