verifiers 0.3.2.dev39__tar.gz → 0.3.2.dev40__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.dev39 → verifiers-0.3.2.dev40}/PKG-INFO +1 -1
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/tests/v1/test_e2e.py +22 -3
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/tests/v1/test_judges.py +62 -6
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/cli/replay.py +1 -1
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/judge.py +10 -2
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/judges/rubric.py +1 -1
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/trace.py +21 -2
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/.gitignore +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/LICENSE +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/README.md +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/pyproject.toml +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/tests/v1/conftest.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/tests/v1/fixtures/counter_tool_v1.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/tests/v1/fixtures/duet_v1.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/tests/v1/fixtures/echo_acp_resume_v1.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/tests/v1/fixtures/echo_agentic_v1.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/tests/v1/fixtures/echo_tool_v1.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/tests/v1/fixtures/echo_user_sim_v1.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/tests/v1/fixtures/echo_v1.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/tests/v1/fixtures/pyproject.toml +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/tests/v1/fixtures/tool_response_image_v1.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/tests/v1/test_color_codeword_tasks.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/tests/v1/test_configs.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/tests/v1/test_envs.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/tests/v1/test_graph.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/tests/v1/test_scoring.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/tests/v1/test_taskset.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/tests/v1/test_trace.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/acp/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/acp/runner.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/agent.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/cli/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/cli/dashboard/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/cli/dashboard/base.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/cli/dashboard/eval.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/cli/dashboard/replay.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/cli/dashboard/validate.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/cli/debug.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/cli/eval/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/cli/eval/main.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/cli/eval/resume.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/cli/eval/runner.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/cli/gepa.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/cli/init.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/cli/output.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/cli/resolve.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/cli/resume.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/cli/validate.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/clients/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/clients/base.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/clients/client.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/clients/eval.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/clients/train.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/configs/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/configs/agent.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/configs/cli/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/configs/cli/debug.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/configs/cli/env.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/configs/cli/eval.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/configs/cli/init.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/configs/cli/replay.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/configs/cli/validate.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/configs/client.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/configs/env.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/configs/harness.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/configs/judge.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/configs/retries.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/configs/runtime.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/configs/serve.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/configs/task.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/configs/taskset.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/dialects/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/dialects/anthropic.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/dialects/base.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/dialects/chat.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/dialects/responses.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/env.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/envs/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/envs/agentic_judge/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/envs/agentic_judge/env.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/envs/best_of_n/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/envs/best_of_n/env.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/envs/shared_agentic_judge/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/envs/single_agent/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/envs/single_agent/env.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/envs/user_sim/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/envs/user_sim/env.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/episode.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/errors.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/gepa/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/gepa/adapter.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/gepa/config.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/gepa/dataset.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/gepa/reflection.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/gepa/runner.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/graph.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harness.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/bash/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/bash/harness.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/browser_use/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/browser_use/harness.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/browser_use/program.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/claude_code/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/claude_code/harness.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/codex/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/codex/harness.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/hermes_agent/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/hermes_agent/harness.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/hermes_agent/program.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/kimi_code/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/kimi_code/harness.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/mini_swe_agent/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/mini_swe_agent/harness.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/mini_swe_agent/program.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/node.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/null/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/null/harness.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/openclaw/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/openclaw/harness.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/pi/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/pi/harness.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/pool/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/pool/harness.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/prime_agent/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/prime_agent/harness.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/rlm/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/rlm/harness.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/terminus_2/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/terminus_2/harness.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/terminus_2/program.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/utils/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/utils/compaction.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/utils/core.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/utils/launch.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/utils/mcp.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/interception/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/interception/base.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/interception/pool.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/interception/server.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/interception/tool.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/interception/tunnel/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/interception/tunnel/base.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/interception/tunnel/custom.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/interception/tunnel/prime.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/judges/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/judges/reference.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/judges/reference.txt +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/judges/rubric.txt +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/mcp/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/mcp/launch.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/mcp/server.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/mcp/toolset.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/rollout.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/runtimes/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/runtimes/base.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/runtimes/docker/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/runtimes/docker/egress.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/runtimes/limiters.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/runtimes/modal.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/runtimes/prime.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/runtimes/subprocess.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/semantic.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/serve/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/serve/client.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/serve/encoding.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/serve/pool.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/serve/server.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/serve/types.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/session.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/state.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/task.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/taskset.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/tasksets/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/tasksets/harbor/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/tasksets/harbor/env.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/tasksets/harbor/taskset.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/tasksets/lean/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/tasksets/lean/scoring.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/tasksets/lean/taskset.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/tasksets/nemo_gym/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/tasksets/nemo_gym/response.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/tasksets/nemo_gym/server.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/tasksets/nemo_gym/taskset.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/tasksets/nemo_gym/toolset.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/tasksets/openenv/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/tasksets/openenv/taskset.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/tasksets/textarena/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/tasksets/textarena/taskset.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/types.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/utils/__init__.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/utils/aio.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/utils/artifacts.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/utils/compile.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/utils/decorators.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/utils/format.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/utils/generic.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/utils/git.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/utils/image.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/utils/interrupt.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/utils/loaders.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/utils/logging.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/utils/memory.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/utils/paths.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/utils/platform.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/utils/prime.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/utils/retries.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/utils/score.py +0 -0
- {verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/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.dev40
|
|
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
|
|
@@ -404,7 +404,7 @@ async def test_rubric_judge(run_v1, tmp_path):
|
|
|
404
404
|
assert trace.ok
|
|
405
405
|
assert trace.rewards["rubric"].score > 0 # the judge's verdict landed in the reward
|
|
406
406
|
assert trace.metrics["rubric/always_yes"] == 1.0
|
|
407
|
-
assert trace.info["
|
|
407
|
+
assert trace.info["judge_calls"] # the call was recorded onto the trace
|
|
408
408
|
|
|
409
409
|
|
|
410
410
|
@pytest.mark.e2e
|
|
@@ -701,11 +701,29 @@ async def test_replay_round_trip(run_v1, tmp_path):
|
|
|
701
701
|
assert source.ok
|
|
702
702
|
assert "lcs" in source.rewards
|
|
703
703
|
|
|
704
|
+
# Replay must not mix the source run's judge transcript into newly computed
|
|
705
|
+
# judge calls. Seed a saved call directly because this task scores without a
|
|
706
|
+
# judge; cleanup happens before task scoring and therefore does not inspect it.
|
|
707
|
+
import json
|
|
708
|
+
|
|
709
|
+
stream = run_dir / "traces.jsonl"
|
|
710
|
+
record = json.loads(stream.read_text())
|
|
711
|
+
record["traces"][0]["info"]["judge_calls"] = [
|
|
712
|
+
{
|
|
713
|
+
"name": "source-judge",
|
|
714
|
+
"request": {"model": "source-model", "messages": []},
|
|
715
|
+
"response": {
|
|
716
|
+
"message": {"role": "assistant", "content": "stale"},
|
|
717
|
+
"parsed": None,
|
|
718
|
+
"usage": None,
|
|
719
|
+
},
|
|
720
|
+
}
|
|
721
|
+
]
|
|
722
|
+
stream.write_text(json.dumps(record) + "\n")
|
|
723
|
+
|
|
704
724
|
async def replay(source_dir: Path, out: Path):
|
|
705
725
|
# The CLI's layering, minus the argv plumbing: the saved run's config is the base
|
|
706
726
|
# (`ReplayConfig` ignores its eval-only keys), the source's output_dir is dropped.
|
|
707
|
-
import json
|
|
708
|
-
|
|
709
727
|
data = json.loads(saved_config_path(source_dir).read_text())
|
|
710
728
|
data.pop("output_dir", None)
|
|
711
729
|
config = ReplayConfig(**{**data, "rich": False})
|
|
@@ -720,6 +738,7 @@ async def test_replay_round_trip(run_v1, tmp_path):
|
|
|
720
738
|
# and recomputed the same value.
|
|
721
739
|
assert replayed.rewards.keys() == source.rewards.keys()
|
|
722
740
|
assert replayed.reward == pytest.approx(source.reward)
|
|
741
|
+
assert "judge_calls" not in replayed.info
|
|
723
742
|
# The wire task keeps its taskset-specific fields in the replay's own output.
|
|
724
743
|
raw = (tmp_path / "replay2" / "traces.jsonl").read_text()
|
|
725
744
|
assert '"answer"' in raw
|
|
@@ -92,7 +92,20 @@ def fake_judge_model(monkeypatch):
|
|
|
92
92
|
if parse is not None:
|
|
93
93
|
response.parsed = parse(response)
|
|
94
94
|
if trace is not None:
|
|
95
|
-
|
|
95
|
+
from verifiers.v1.dialects.chat import message_to_wire
|
|
96
|
+
|
|
97
|
+
wire = (
|
|
98
|
+
[{"role": "user", "content": messages}]
|
|
99
|
+
if isinstance(messages, str)
|
|
100
|
+
else [message_to_wire(message) for message in messages]
|
|
101
|
+
)
|
|
102
|
+
kwargs = {"model": self.config.model, "messages": wire}
|
|
103
|
+
kwargs.update(sampling)
|
|
104
|
+
trace.record_judge_call(
|
|
105
|
+
name=self.reward_name,
|
|
106
|
+
request={"model": kwargs["model"], "messages": kwargs["messages"]},
|
|
107
|
+
response=response,
|
|
108
|
+
)
|
|
96
109
|
return response
|
|
97
110
|
|
|
98
111
|
monkeypatch.setattr(Judge, "complete", fake_complete)
|
|
@@ -225,7 +238,43 @@ async def test_reference_score(fake_judge_model):
|
|
|
225
238
|
assert (
|
|
226
239
|
"Capital of France?" in fake_judge_model[0]
|
|
227
240
|
) # the task prompt is in the judge prompt
|
|
228
|
-
assert len(trace.info["
|
|
241
|
+
assert len(trace.info["judge_calls"]) == 1 # the call is recorded onto the trace
|
|
242
|
+
judge_record = trace.info["judge_calls"][0]
|
|
243
|
+
assert judge_record["name"] == "reference"
|
|
244
|
+
assert judge_record["request"]["model"] == "openai/gpt-5.4-nano"
|
|
245
|
+
assert "Capital of France?" in judge_record["request"]["messages"][0]["content"]
|
|
246
|
+
assert judge_record["response"]["message"] == {
|
|
247
|
+
"role": "assistant",
|
|
248
|
+
"content": "yes",
|
|
249
|
+
"reasoning_content": None,
|
|
250
|
+
"tool_calls": None,
|
|
251
|
+
"provider_state": None,
|
|
252
|
+
}
|
|
253
|
+
assert judge_record["response"]["parsed"] == 1.0
|
|
254
|
+
|
|
255
|
+
request_messages = [{"role": "user", "content": "original"}]
|
|
256
|
+
request = {
|
|
257
|
+
"model": "openai/gpt-5.4-nano",
|
|
258
|
+
"messages": request_messages,
|
|
259
|
+
}
|
|
260
|
+
trace.record_judge_call(
|
|
261
|
+
name="snapshot",
|
|
262
|
+
request=request,
|
|
263
|
+
response=JudgeResponse(text="yes"),
|
|
264
|
+
)
|
|
265
|
+
request_messages[0]["content"] = "mutated"
|
|
266
|
+
assert (
|
|
267
|
+
trace.info["judge_calls"][-1]["request"]["messages"][0]["content"] == "original"
|
|
268
|
+
)
|
|
269
|
+
|
|
270
|
+
override_trace = make_trace()
|
|
271
|
+
await vf.ReferenceJudge().complete(
|
|
272
|
+
"Judge this response.", trace=override_trace, model="openai/gpt-5.4-mini"
|
|
273
|
+
)
|
|
274
|
+
assert (
|
|
275
|
+
override_trace.info["judge_calls"][0]["request"]["model"]
|
|
276
|
+
== "openai/gpt-5.4-mini"
|
|
277
|
+
)
|
|
229
278
|
|
|
230
279
|
trace = make_trace(reply="It is Rome.")
|
|
231
280
|
assert await vf.ReferenceJudge().score(trace.task.data, trace) == 0.0
|
|
@@ -446,7 +495,14 @@ async def test_error_attribution(monkeypatch, tmp_path):
|
|
|
446
495
|
return response
|
|
447
496
|
finally:
|
|
448
497
|
if trace is not None:
|
|
449
|
-
trace.
|
|
498
|
+
trace.record_judge_call(
|
|
499
|
+
name=self.reward_name,
|
|
500
|
+
request={
|
|
501
|
+
"model": self.config.model,
|
|
502
|
+
"messages": [{"role": "user", "content": messages}],
|
|
503
|
+
},
|
|
504
|
+
response=response,
|
|
505
|
+
)
|
|
450
506
|
|
|
451
507
|
monkeypatch.setattr(Judge, "complete", gibberish_judge)
|
|
452
508
|
taskset = JudgedTaskset(
|
|
@@ -463,7 +519,7 @@ async def test_error_attribution(monkeypatch, tmp_path):
|
|
|
463
519
|
trace, runtime=None
|
|
464
520
|
)
|
|
465
521
|
assert trace.rewards["reference"] is None # seeded: expected but never scored
|
|
466
|
-
assert len(trace.info["
|
|
522
|
+
assert len(trace.info["judge_calls"]) == 1 # the billed call is still recorded
|
|
467
523
|
|
|
468
524
|
|
|
469
525
|
# --- rubric --------------------------------------------------------------------------------
|
|
@@ -542,7 +598,7 @@ async def test_rubric_score(tmp_path, fake_judge_model):
|
|
|
542
598
|
trace = make_trace()
|
|
543
599
|
assert await judge.score(trace.task.data, trace) == 0.75
|
|
544
600
|
assert trace.metrics == {"rubric/mentions_paris": 1.0, "rubric/is_polite": 0.0}
|
|
545
|
-
assert len(trace.info["
|
|
601
|
+
assert len(trace.info["judge_calls"]) == 1 # one call for the whole rubric
|
|
546
602
|
|
|
547
603
|
|
|
548
604
|
async def test_rubric_verdict_mismatch_raises(tmp_path, monkeypatch):
|
|
@@ -652,7 +708,7 @@ async def test_task_score_runs_plugged_judges(tmp_path, fake_judge_model):
|
|
|
652
708
|
trace.rewards["quality"].score == 0.75
|
|
653
709
|
) # the rubric's aggregate, under its `name`
|
|
654
710
|
assert (
|
|
655
|
-
len(trace.info["
|
|
711
|
+
len(trace.info["judge_calls"]) == 2
|
|
656
712
|
) # every judge call recorded (rubric = one call)
|
|
657
713
|
|
|
658
714
|
|
|
@@ -156,7 +156,7 @@ async def run_replay(config: ReplayConfig, source: Path, out: Path) -> list[Trac
|
|
|
156
156
|
else:
|
|
157
157
|
st.state = "running"
|
|
158
158
|
# Clear the recorded scores; only offline-recomputable ones come back.
|
|
159
|
-
trace.info.pop("
|
|
159
|
+
trace.info.pop("judge_calls", None)
|
|
160
160
|
trace.rewards, trace.metrics, trace.extra_usage = {}, {}, []
|
|
161
161
|
# The declared Task for a rebuilt row, the base Task for the
|
|
162
162
|
# WireTaskData fallback.
|
|
@@ -32,7 +32,8 @@ in which case `JudgeResponse.parsed` is the validated pydantic object.
|
|
|
32
32
|
A judge is cheap to construct (the HTTP client is opened per call, inside `complete`, and
|
|
33
33
|
closed when the call returns), so build it where you use it.
|
|
34
34
|
|
|
35
|
-
Passing `trace=` records the call onto it — a
|
|
35
|
+
Passing `trace=` records the call onto it — a request/response record appended to
|
|
36
|
+
`trace.info["judge_calls"]` and
|
|
36
37
|
the call's tokens + cost added to `trace.extra_usage` (kept separate from the agent's `trace.usage`),
|
|
37
38
|
so judge behaviour and spend are no longer invisible. The record lands even if the judge refuses, an
|
|
38
39
|
empty structured output comes back, or `parse` raises (the request was already billed). Omit `trace`
|
|
@@ -210,7 +211,14 @@ class Judge(Generic[ParsedT, ConfigT]):
|
|
|
210
211
|
return response
|
|
211
212
|
finally:
|
|
212
213
|
if trace is not None and response is not None:
|
|
213
|
-
trace.
|
|
214
|
+
trace.record_judge_call(
|
|
215
|
+
name=self.reward_name,
|
|
216
|
+
request={
|
|
217
|
+
"model": kwargs["model"],
|
|
218
|
+
"messages": kwargs["messages"],
|
|
219
|
+
},
|
|
220
|
+
response=response,
|
|
221
|
+
)
|
|
214
222
|
|
|
215
223
|
async def evaluate(
|
|
216
224
|
self, *, trace: Trace | None = None, **fields: Any
|
|
@@ -24,7 +24,7 @@ RUBRIC_PROMPT = (Path(__file__).resolve().parent / "rubric.txt").read_text(
|
|
|
24
24
|
|
|
25
25
|
# Appended to the prompt when `structured_output` is off, so the reply is JSON we can parse. Each
|
|
26
26
|
# criterion carries a one-sentence `reason` written *before* the verdict (chain-of-thought), so the
|
|
27
|
-
# verdict follows from it and the reasoning is auditable in `trace.info["
|
|
27
|
+
# verdict follows from it and the reasoning is auditable in `trace.info["judge_calls"]`.
|
|
28
28
|
JSON_SUFFIX = (
|
|
29
29
|
"\n\nRespond with ONLY a JSON object and nothing else, in exactly this shape:\n"
|
|
30
30
|
'{"verdicts": [{"name": "<criterion name>", "reason": "<one sentence citing specific '
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
from __future__ import annotations
|
|
2
2
|
|
|
3
|
+
import copy
|
|
3
4
|
import time
|
|
4
5
|
import traceback
|
|
5
6
|
import uuid
|
|
@@ -672,8 +673,26 @@ class Trace(BaseModel, Generic[DataT, StateT, AgentConfigT]):
|
|
|
672
673
|
reward = Reward(score=float(value), weight=float(weight))
|
|
673
674
|
self.rewards[name] = reward
|
|
674
675
|
|
|
675
|
-
def
|
|
676
|
-
self
|
|
676
|
+
def record_judge_call(
|
|
677
|
+
self,
|
|
678
|
+
*,
|
|
679
|
+
name: str,
|
|
680
|
+
request: Mapping[str, Any],
|
|
681
|
+
response: JudgeResponse,
|
|
682
|
+
) -> None:
|
|
683
|
+
"""Record one complete judge request/response exchange."""
|
|
684
|
+
response_record = response.model_dump()
|
|
685
|
+
message = AssistantMessage(content=response_record.pop("text"))
|
|
686
|
+
self.info.setdefault("judge_calls", []).append(
|
|
687
|
+
{
|
|
688
|
+
"name": name,
|
|
689
|
+
"request": copy.deepcopy(dict(request)),
|
|
690
|
+
"response": {
|
|
691
|
+
"message": message.model_dump(),
|
|
692
|
+
**response_record,
|
|
693
|
+
},
|
|
694
|
+
}
|
|
695
|
+
)
|
|
677
696
|
if response.usage is not None:
|
|
678
697
|
self.extra_usage.append(response.usage)
|
|
679
698
|
|
|
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
|
|
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.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/envs/shared_agentic_judge/__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
|
|
File without changes
|
{verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/browser_use/__init__.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/browser_use/harness.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/browser_use/program.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/claude_code/__init__.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/claude_code/harness.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/hermes_agent/__init__.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/hermes_agent/harness.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/hermes_agent/program.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/kimi_code/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/mini_swe_agent/__init__.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/mini_swe_agent/harness.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/mini_swe_agent/program.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
|
{verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/prime_agent/__init__.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/prime_agent/harness.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/terminus_2/__init__.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/terminus_2/harness.py
RENAMED
|
File without changes
|
{verifiers-0.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/harnesses/terminus_2/program.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.3.2.dev39 → verifiers-0.3.2.dev40}/verifiers/v1/interception/tunnel/__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
|
|
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
|