verifiers 0.3.2.dev164__tar.gz → 0.3.2.dev166__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.3.2.dev164 → verifiers-0.3.2.dev166}/PKG-INFO +1 -1
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/conftest.py +5 -2
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/__init__.py +2 -1
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/agent.py +9 -5
- verifiers-0.3.2.dev166/verifiers/v1/configs/retries.py +48 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/dialects/responses.py +15 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/env.py +4 -1
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/retries.py +56 -39
- verifiers-0.3.2.dev164/verifiers/v1/configs/retries.py +0 -17
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/.gitignore +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/LICENSE +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/README.md +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/pyproject.toml +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/fixtures/counter_tool_v1.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/fixtures/duet_v1.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/fixtures/echo_acp_resume_v1.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/fixtures/echo_agentic_v1.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/fixtures/echo_tool_v1.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/fixtures/echo_user_sim_v1.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/fixtures/echo_v1.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/fixtures/pyproject.toml +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/fixtures/tool_response_image_v1.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/test_color_codeword_tasks.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/test_configs.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/test_e2e.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/test_envs.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/test_graph.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/test_judges.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/test_platform_run.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/test_scoring.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/test_serve_delta.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/test_taskset.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/test_trace.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/acp/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/acp/runner.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/cli/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/cli/dashboard/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/cli/dashboard/base.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/cli/dashboard/eval.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/cli/dashboard/replay.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/cli/dashboard/validate.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/cli/debug.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/cli/eval/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/cli/eval/hint.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/cli/eval/main.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/cli/eval/resume.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/cli/eval/runner.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/cli/gepa.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/cli/init.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/cli/output.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/cli/replay.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/cli/resolve.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/cli/resume.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/cli/validate.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/clients/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/clients/base.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/clients/client.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/clients/eval.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/clients/train.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/configs/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/configs/agent.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/configs/cli/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/configs/cli/debug.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/configs/cli/env.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/configs/cli/eval.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/configs/cli/init.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/configs/cli/replay.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/configs/cli/validate.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/configs/client.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/configs/env.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/configs/harness.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/configs/judge.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/configs/runtime.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/configs/select.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/configs/serve.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/configs/task.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/configs/taskset.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/dialects/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/dialects/anthropic.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/dialects/base.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/dialects/chat.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/envs/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/envs/agentic_judge/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/envs/agentic_judge/env.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/envs/best_of_n/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/envs/best_of_n/env.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/envs/isolated_verifier/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/envs/isolated_verifier/env.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/envs/shared_agentic_judge/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/envs/single_agent/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/envs/single_agent/env.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/envs/user_sim/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/envs/user_sim/env.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/episode.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/errors.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/gepa/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/gepa/adapter.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/gepa/config.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/gepa/dataset.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/gepa/reflection.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/gepa/runner.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/graph.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harness.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/bash/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/bash/harness.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/browser_use/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/browser_use/harness.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/browser_use/program.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/claude_code/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/claude_code/harness.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/codex/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/codex/gate.mjs +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/codex/harness.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/hermes_agent/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/hermes_agent/harness.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/hermes_agent/program.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/kimi_code/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/kimi_code/harness.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/mini_swe_agent/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/mini_swe_agent/harness.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/mini_swe_agent/program.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/node.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/null/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/null/harness.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/openclaw/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/openclaw/harness.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/pi/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/pi/gate.mjs +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/pi/harness.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/prime_agent/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/prime_agent/harness.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/rlm/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/rlm/harness.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/terminus_2/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/terminus_2/harness.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/terminus_2/program.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/utils/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/utils/compaction.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/utils/core.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/utils/install.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/utils/launch.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/utils/mcp.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/interception/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/interception/base.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/interception/pool.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/interception/server.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/interception/tunnel/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/interception/tunnel/base.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/interception/tunnel/custom.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/interception/tunnel/prime.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/judge.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/judges/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/judges/reference.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/judges/reference.txt +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/judges/rubric.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/judges/rubric.txt +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/mcp/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/mcp/launch.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/mcp/server.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/mcp/toolset.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/rollout.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/runtimes/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/runtimes/apptainer.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/runtimes/base.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/runtimes/container.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/runtimes/docker/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/runtimes/docker/egress.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/runtimes/limiters.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/runtimes/modal.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/runtimes/prime.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/runtimes/subprocess.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/semantic.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/serve/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/serve/client.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/serve/delta.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/serve/encoding.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/serve/pool.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/serve/server.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/serve/types.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/session.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/state.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/task.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/taskset.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/tasksets/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/tasksets/harbor/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/tasksets/harbor/compose.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/tasksets/harbor/env.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/tasksets/harbor/taskset.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/tasksets/harbor/toolset.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/tasksets/nemo_gym/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/tasksets/nemo_gym/response.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/tasksets/nemo_gym/server.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/tasksets/nemo_gym/taskset.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/tasksets/nemo_gym/toolset.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/tasksets/openenv/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/tasksets/openenv/taskset.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/tasksets/textarena/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/tasksets/textarena/taskset.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/trace.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/types.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/__init__.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/aio.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/artifacts.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/compile.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/decorators.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/format.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/generic.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/git.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/image.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/interrupt.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/loaders.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/logging.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/memory.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/paths.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/platform.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/prime.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/scope.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/score.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/trace_store.py +0 -0
- {verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/utils/version.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: verifiers
|
|
3
|
-
Version: 0.3.2.
|
|
3
|
+
Version: 0.3.2.dev166
|
|
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
|
|
@@ -156,8 +156,11 @@ def _eval_config(
|
|
|
156
156
|
_configure_prime_runtimes(runtime_cfg)
|
|
157
157
|
env_cfg.setdefault("agent", {})["runtime"] = runtime_cfg
|
|
158
158
|
retries = {
|
|
159
|
-
"max_retries":
|
|
160
|
-
"
|
|
159
|
+
"max_retries": 0,
|
|
160
|
+
"rules": [
|
|
161
|
+
{"type": error_type, "max_retries": 2}
|
|
162
|
+
for error_type in ("ProviderError", "InterceptionError", "HarnessError")
|
|
163
|
+
],
|
|
161
164
|
}
|
|
162
165
|
env_cfg.setdefault("retries", retries)
|
|
163
166
|
# Per-run caps live on the seats: resolve the env's declared roles and cap
|
|
@@ -21,7 +21,7 @@ from verifiers.v1.configs.cli.env import (
|
|
|
21
21
|
from verifiers.v1.configs.env import EnvConfig, SharedEnvConfig, default_agent_harness
|
|
22
22
|
from verifiers.v1.configs.harness import HarnessConfig
|
|
23
23
|
from verifiers.v1.configs.judge import JudgeConfig, Judges
|
|
24
|
-
from verifiers.v1.configs.retries import RetryConfig
|
|
24
|
+
from verifiers.v1.configs.retries import RetryConfig, RetryRule
|
|
25
25
|
from verifiers.v1.configs.select import SelectCLIConfig, SelectConfig, TaskMatchConfig
|
|
26
26
|
from verifiers.v1.configs.serve import (
|
|
27
27
|
ElasticPoolConfig,
|
|
@@ -330,6 +330,7 @@ __all__ = [ # noqa: RUF022 - grouped by public API area
|
|
|
330
330
|
"default_agent_harness",
|
|
331
331
|
"pool_serve_kwargs",
|
|
332
332
|
"RetryConfig",
|
|
333
|
+
"RetryRule",
|
|
333
334
|
# agent
|
|
334
335
|
"Agent",
|
|
335
336
|
"Agents",
|
|
@@ -50,7 +50,7 @@ from verifiers.v1.utils.compile import (
|
|
|
50
50
|
resolve_runtime_config,
|
|
51
51
|
validate_pairing,
|
|
52
52
|
)
|
|
53
|
-
from verifiers.v1.utils.retries import
|
|
53
|
+
from verifiers.v1.utils.retries import RetryState, backoff
|
|
54
54
|
|
|
55
55
|
__all__ = ["Agent", "AgentConfig", "Agents", "TimeoutConfig", "make_agent"]
|
|
56
56
|
|
|
@@ -400,12 +400,13 @@ class Agent:
|
|
|
400
400
|
if self._closed:
|
|
401
401
|
raise RuntimeError("Agent is closed; create a new agent")
|
|
402
402
|
retry = self.config.retries
|
|
403
|
+
retry_state = RetryState(retry)
|
|
403
404
|
history: list = []
|
|
404
|
-
for attempt in range(
|
|
405
|
+
for attempt in range(retry_state.max_retries + 1):
|
|
405
406
|
trace = await self._run_once(
|
|
406
407
|
task, runtime, tools, on_trace, collect_artifacts
|
|
407
408
|
)
|
|
408
|
-
if attempt ==
|
|
409
|
+
if attempt == retry_state.max_retries or trace.ok:
|
|
409
410
|
break
|
|
410
411
|
if runtime is not None:
|
|
411
412
|
logger.warning(
|
|
@@ -413,14 +414,17 @@ class Agent:
|
|
|
413
414
|
"longer the task's start state); the error stands"
|
|
414
415
|
)
|
|
415
416
|
break
|
|
417
|
+
cause = retry_state.next_error(trace.errors)
|
|
418
|
+
if cause is None:
|
|
419
|
+
break
|
|
416
420
|
history.extend(trace.errors)
|
|
417
421
|
delay = backoff(attempt)
|
|
418
422
|
logger.warning(
|
|
419
423
|
"retrying agent rollout (retry %d/%d) in %.1fs after error: %s",
|
|
420
424
|
attempt + 1,
|
|
421
|
-
|
|
425
|
+
retry_state.max_retries,
|
|
422
426
|
delay,
|
|
423
|
-
|
|
427
|
+
cause.type,
|
|
424
428
|
)
|
|
425
429
|
await asyncio.sleep(delay)
|
|
426
430
|
if history:
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"""Whole-rollout retry rules — each agent's own and the env's episode fallback."""
|
|
2
|
+
|
|
3
|
+
import re
|
|
4
|
+
from typing import Annotated, Literal
|
|
5
|
+
|
|
6
|
+
from pydantic import Field, StrictInt, field_validator
|
|
7
|
+
from pydantic_config import BaseConfig
|
|
8
|
+
|
|
9
|
+
StatusCode = (
|
|
10
|
+
Annotated[StrictInt, Field(ge=100, le=599)]
|
|
11
|
+
| Literal["1xx", "2xx", "3xx", "4xx", "5xx"]
|
|
12
|
+
)
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
class RetryRule(BaseConfig):
|
|
16
|
+
"""Match all specified fields. First matching rule wins for each error."""
|
|
17
|
+
|
|
18
|
+
type: str | None = None
|
|
19
|
+
"""Exact recorded exception class name, e.g. ``ProviderError``."""
|
|
20
|
+
status_code: list[StatusCode] | None = None
|
|
21
|
+
"""Match any listed HTTP status or status class; absent status never matches."""
|
|
22
|
+
message: str | None = None
|
|
23
|
+
"""Regex search of the error message; plain text matches a substring."""
|
|
24
|
+
max_retries: int = Field(ge=0)
|
|
25
|
+
"""Required retry budget across the run. Explicit zero excludes matching errors."""
|
|
26
|
+
|
|
27
|
+
@field_validator("message")
|
|
28
|
+
@classmethod
|
|
29
|
+
def validate_message(cls, value: str | None) -> str | None:
|
|
30
|
+
if value is not None:
|
|
31
|
+
try:
|
|
32
|
+
re.compile(value)
|
|
33
|
+
except re.error as exc:
|
|
34
|
+
raise ValueError(f"Invalid message regex: {exc}") from exc
|
|
35
|
+
return value
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
class RetryConfig(BaseConfig):
|
|
39
|
+
"""Ordered rules for opt-in whole-rollout retries.
|
|
40
|
+
|
|
41
|
+
Fields within a rule are ANDed. An exhausted rule never falls through to a
|
|
42
|
+
later rule for that error; another captured error can still trigger a retry.
|
|
43
|
+
"""
|
|
44
|
+
|
|
45
|
+
max_retries: int = Field(0, ge=0)
|
|
46
|
+
"""Default budget for errors that match no rule. Matching rules override it."""
|
|
47
|
+
rules: list[RetryRule] = Field(default_factory=list)
|
|
48
|
+
"""Ordered overrides; a matching rule may enable retries or deny them with zero."""
|
|
@@ -393,6 +393,21 @@ class ResponsesDialect(Dialect[OpenAIResponse]):
|
|
|
393
393
|
safe_input.append(item)
|
|
394
394
|
continue
|
|
395
395
|
kind = item.get("type")
|
|
396
|
+
if (
|
|
397
|
+
kind == "reasoning"
|
|
398
|
+
and not item.get("encrypted_content")
|
|
399
|
+
and isinstance(content := item.get("content"), list)
|
|
400
|
+
and content
|
|
401
|
+
and all(
|
|
402
|
+
isinstance(part, dict)
|
|
403
|
+
and part.get("type") == "reasoning_text"
|
|
404
|
+
and isinstance(part.get("text"), str)
|
|
405
|
+
for part in content
|
|
406
|
+
)
|
|
407
|
+
and any(part["text"] for part in content)
|
|
408
|
+
):
|
|
409
|
+
# Inline reasoning needs no provider-side history lookup.
|
|
410
|
+
item.pop("id", None)
|
|
396
411
|
if kind in ("additional_tools", "tool_search_output"):
|
|
397
412
|
if blocked := request_filter.blocked(
|
|
398
413
|
{**item, "tools": []}, item_path
|
|
@@ -43,7 +43,10 @@ def _as_error(e: Exception) -> Error:
|
|
|
43
43
|
"""`e` as an episode-level `Error`. Call inside the `except` handling `e` — the
|
|
44
44
|
traceback comes from the active exception context."""
|
|
45
45
|
return Error(
|
|
46
|
-
type=type(e).__name__,
|
|
46
|
+
type=type(e).__name__,
|
|
47
|
+
message=str(e),
|
|
48
|
+
status_code=getattr(e, "status_code", None),
|
|
49
|
+
traceback=traceback.format_exc(),
|
|
47
50
|
)
|
|
48
51
|
|
|
49
52
|
|
|
@@ -6,7 +6,7 @@ Two opt-in whole-run retry atoms sit above that: `Agent.run` reruns ITS OWN roll
|
|
|
6
6
|
while the trace ends with a retryable error (`--env.<agent>.retries` — a flaky
|
|
7
7
|
grader retries without re-burning the solver), and `run_episode_with_retry` reruns
|
|
8
8
|
the entire episode (`--env.retries`) — the coarse fallback for faults no agent
|
|
9
|
-
owns: the env's own hooks, cross-agent state. Both
|
|
9
|
+
owns: the env's own hooks, cross-agent state. Both use ordered retry rules;
|
|
10
10
|
both off by default.
|
|
11
11
|
"""
|
|
12
12
|
|
|
@@ -15,7 +15,8 @@ from __future__ import annotations
|
|
|
15
15
|
import asyncio
|
|
16
16
|
import logging
|
|
17
17
|
import random
|
|
18
|
-
|
|
18
|
+
import re
|
|
19
|
+
from collections.abc import Awaitable, Callable, Iterable
|
|
19
20
|
from typing import TYPE_CHECKING
|
|
20
21
|
|
|
21
22
|
from tenacity import (
|
|
@@ -27,7 +28,7 @@ from tenacity import (
|
|
|
27
28
|
wait_exponential_jitter,
|
|
28
29
|
)
|
|
29
30
|
|
|
30
|
-
from verifiers.v1.configs.retries import RetryConfig
|
|
31
|
+
from verifiers.v1.configs.retries import RetryConfig, RetryRule
|
|
31
32
|
|
|
32
33
|
if TYPE_CHECKING:
|
|
33
34
|
from verifiers.v1.episode import Episode
|
|
@@ -73,35 +74,47 @@ def retrying(
|
|
|
73
74
|
)
|
|
74
75
|
|
|
75
76
|
|
|
76
|
-
|
|
77
|
-
"""
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
77
|
+
class RetryState:
|
|
78
|
+
"""Per-run budgets, shared across attempts but never across concurrent runs."""
|
|
79
|
+
|
|
80
|
+
def __init__(self, config: RetryConfig) -> None:
|
|
81
|
+
self.rules = [*config.rules, RetryRule(max_retries=config.max_retries)]
|
|
82
|
+
# Each retry consumes one finite budget, so their sum bounds the run.
|
|
83
|
+
self.max_retries = sum(rule.max_retries for rule in self.rules)
|
|
84
|
+
self.used = [0] * len(self.rules)
|
|
85
|
+
self.patterns = [
|
|
86
|
+
re.compile(rule.message) if rule.message is not None else None
|
|
87
|
+
for rule in self.rules
|
|
88
|
+
]
|
|
89
|
+
|
|
90
|
+
def next_error(self, errors: Iterable[Error]) -> Error | None:
|
|
91
|
+
"""Consume one retry for the first eligible error in capture order.
|
|
92
|
+
|
|
93
|
+
A denied/exhausted first match shadows later rules for that error only.
|
|
94
|
+
Return the triggering error so logs identify the actual retry cause.
|
|
95
|
+
"""
|
|
96
|
+
for error in errors:
|
|
97
|
+
for index, rule in enumerate(self.rules):
|
|
98
|
+
if rule.type is not None and error.type != rule.type:
|
|
99
|
+
continue
|
|
100
|
+
if rule.status_code is not None and (
|
|
101
|
+
error.status_code is None
|
|
102
|
+
or not any(
|
|
103
|
+
error.status_code == status
|
|
104
|
+
if isinstance(status, int)
|
|
105
|
+
else error.status_code // 100 == int(status[0])
|
|
106
|
+
for status in rule.status_code
|
|
107
|
+
)
|
|
108
|
+
):
|
|
109
|
+
continue
|
|
110
|
+
pattern = self.patterns[index]
|
|
111
|
+
if pattern is not None and pattern.search(error.message) is None:
|
|
112
|
+
continue
|
|
113
|
+
if self.used[index] < rule.max_retries:
|
|
114
|
+
self.used[index] += 1
|
|
115
|
+
return error
|
|
116
|
+
break
|
|
117
|
+
return None
|
|
105
118
|
|
|
106
119
|
|
|
107
120
|
async def run_episode_with_retry(
|
|
@@ -113,13 +126,17 @@ async def run_episode_with_retry(
|
|
|
113
126
|
attempts' errors are prepended so the episode shows the full history; a final
|
|
114
127
|
good attempt returns clean."""
|
|
115
128
|
history: list = []
|
|
116
|
-
|
|
129
|
+
state = RetryState(retry)
|
|
130
|
+
for attempt in range(state.max_retries + 1):
|
|
117
131
|
final = await run()
|
|
118
|
-
if attempt ==
|
|
132
|
+
if attempt == state.max_retries or final.ok:
|
|
133
|
+
break
|
|
134
|
+
# Successful traces may contain recovered failures from agent retries.
|
|
135
|
+
errors = list(final.errors)
|
|
136
|
+
errors.extend(e for trace in final.traces if not trace.ok for e in trace.errors)
|
|
137
|
+
cause = state.next_error(errors)
|
|
138
|
+
if cause is None:
|
|
119
139
|
break
|
|
120
|
-
cause = final.last_error or next(
|
|
121
|
-
(t.last_error for t in final.traces if t.last_error), None
|
|
122
|
-
)
|
|
123
140
|
history.extend(final.errors)
|
|
124
141
|
for trace in final.traces:
|
|
125
142
|
history.extend(trace.errors)
|
|
@@ -128,9 +145,9 @@ async def run_episode_with_retry(
|
|
|
128
145
|
"retrying episode %s (retry %d/%d) in %.1fs after error: %s",
|
|
129
146
|
final.id,
|
|
130
147
|
attempt + 1,
|
|
131
|
-
|
|
148
|
+
state.max_retries,
|
|
132
149
|
delay,
|
|
133
|
-
cause.type
|
|
150
|
+
cause.type,
|
|
134
151
|
)
|
|
135
152
|
await asyncio.sleep(delay)
|
|
136
153
|
if history:
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"""Whole-rollout retry policy — each agent's own and the env's episode fallback."""
|
|
2
|
-
|
|
3
|
-
from pydantic import Field
|
|
4
|
-
from pydantic_config import BaseConfig
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
class RetryConfig(BaseConfig):
|
|
8
|
-
"""Retry a whole rollout when it ends with a captured error. `include`/`exclude`
|
|
9
|
-
name exception classes (e.g. ``ProviderError``, ``SandboxError``)."""
|
|
10
|
-
|
|
11
|
-
max_retries: int = Field(0, ge=0)
|
|
12
|
-
"""Whole-rollout retries beyond the first attempt. Off by default — the SDKs
|
|
13
|
-
already retry transient per-call faults; rerunning a whole trajectory is opt-in."""
|
|
14
|
-
include: list[str] = Field(default_factory=list)
|
|
15
|
-
"""Only retry errors whose type is listed. Empty = retry anything not excluded."""
|
|
16
|
-
exclude: list[str] = Field(default_factory=list)
|
|
17
|
-
"""Never retry errors whose type is listed (wins over `include`)."""
|
|
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.3.2.dev164 → verifiers-0.3.2.dev166}/tests/v1/fixtures/tool_response_image_v1.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
|
|
File without changes
|
{verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/envs/agentic_judge/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/envs/isolated_verifier/__init__.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/envs/isolated_verifier/env.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/envs/shared_agentic_judge/__init__.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/envs/single_agent/__init__.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
|
{verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/browser_use/__init__.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/browser_use/harness.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/browser_use/program.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/claude_code/__init__.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/claude_code/harness.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/hermes_agent/__init__.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/hermes_agent/harness.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/hermes_agent/program.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev164 → verifiers-0.3.2.dev166}/verifiers/v1/harnesses/kimi_code/__init__.py
RENAMED
|
File without changes
|