verifiers 0.4.1.dev19__tar.gz → 0.4.1.dev21__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.
Files changed (260) hide show
  1. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/PKG-INFO +1 -1
  2. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/conftest.py +8 -4
  3. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/fixtures/echo_acp_resume_v1.py +9 -9
  4. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/fixtures/network_policy_v1.py +4 -2
  5. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/grid.py +11 -1
  6. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/test_examples.py +26 -5
  7. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/test_resume_tool.py +0 -4
  8. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/test_rubric_judge.py +5 -1
  9. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/.gitignore +0 -0
  10. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/LICENSE +0 -0
  11. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/README.md +0 -0
  12. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/pyproject.toml +0 -0
  13. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/fixtures/agent_user_harness_v1.py +0 -0
  14. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/fixtures/agent_user_v1.py +0 -0
  15. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/fixtures/counter_tool_v1.py +0 -0
  16. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/fixtures/duet_v1.py +0 -0
  17. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/fixtures/echo_agentic_v1.py +0 -0
  18. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/fixtures/echo_tool_v1.py +0 -0
  19. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/fixtures/echo_user_sim_v1.py +0 -0
  20. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/fixtures/echo_v1.py +0 -0
  21. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/fixtures/pyproject.toml +0 -0
  22. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/fixtures/skill_codeword_v1.py +0 -0
  23. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/fixtures/skills/project-codeword/SKILL.md +0 -0
  24. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/fixtures/tool_response_image_v1.py +0 -0
  25. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/test_agent_user.py +0 -0
  26. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/test_agentic_judge.py +0 -0
  27. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/test_compose_scoring.py +0 -0
  28. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/test_limits.py +0 -0
  29. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/test_multi_agent.py +0 -0
  30. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/test_multi_turn.py +0 -0
  31. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/test_multi_turn_tool.py +0 -0
  32. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/test_multimodal_tool.py +0 -0
  33. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/test_network_policy.py +0 -0
  34. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/test_shared_tool.py +0 -0
  35. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/test_single_turn.py +0 -0
  36. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/test_skills.py +0 -0
  37. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/test_stateful_tool.py +0 -0
  38. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/test_user_echo.py +0 -0
  39. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/integration/test_user_sim.py +0 -0
  40. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/cli/test_replay.py +0 -0
  41. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/conftest.py +0 -0
  42. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/harnesses/test_core.py +0 -0
  43. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/harnesses/test_rlm.py +0 -0
  44. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/interception/test_tunnel.py +0 -0
  45. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/judges/conftest.py +0 -0
  46. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/judges/test_judge.py +0 -0
  47. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/judges/test_reference.py +0 -0
  48. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/judges/test_rubric.py +0 -0
  49. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/runtimes/test_e2b.py +0 -0
  50. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/serve/test_client.py +0 -0
  51. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/serve/test_delta.py +0 -0
  52. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/serve/test_pool.py +0 -0
  53. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/test_agent.py +0 -0
  54. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/test_graph.py +0 -0
  55. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/test_semantic.py +0 -0
  56. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/test_task.py +0 -0
  57. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/test_taskset.py +0 -0
  58. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/test_trace.py +0 -0
  59. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/utils/test_compile.py +0 -0
  60. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/utils/test_loaders.py +0 -0
  61. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/utils/test_platform.py +0 -0
  62. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/tests/unit/utils/test_score.py +0 -0
  63. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/__init__.py +0 -0
  64. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/__init__.py +0 -0
  65. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/acp/__init__.py +0 -0
  66. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/acp/runner.py +0 -0
  67. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/agent.py +0 -0
  68. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/cli/__init__.py +0 -0
  69. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/cli/dashboard/__init__.py +0 -0
  70. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/cli/dashboard/base.py +0 -0
  71. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/cli/dashboard/eval.py +0 -0
  72. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/cli/dashboard/replay.py +0 -0
  73. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/cli/dashboard/validate.py +0 -0
  74. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/cli/debug.py +0 -0
  75. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/cli/eval/__init__.py +0 -0
  76. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/cli/eval/hint.py +0 -0
  77. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/cli/eval/main.py +0 -0
  78. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/cli/eval/resume.py +0 -0
  79. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/cli/eval/runner.py +0 -0
  80. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/cli/gepa.py +0 -0
  81. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/cli/output.py +0 -0
  82. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/cli/replay.py +0 -0
  83. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/cli/resolve.py +0 -0
  84. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/cli/resume.py +0 -0
  85. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/cli/validate.py +0 -0
  86. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/clients/__init__.py +0 -0
  87. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/clients/base.py +0 -0
  88. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/clients/client.py +0 -0
  89. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/clients/eval.py +0 -0
  90. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/clients/train.py +0 -0
  91. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/configs/__init__.py +0 -0
  92. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/configs/agent.py +0 -0
  93. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/configs/cli/__init__.py +0 -0
  94. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/configs/cli/debug.py +0 -0
  95. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/configs/cli/env.py +0 -0
  96. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/configs/cli/eval.py +0 -0
  97. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/configs/cli/replay.py +0 -0
  98. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/configs/cli/validate.py +0 -0
  99. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/configs/client.py +0 -0
  100. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/configs/env.py +0 -0
  101. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/configs/harness.py +0 -0
  102. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/configs/judge.py +0 -0
  103. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/configs/retries.py +0 -0
  104. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/configs/runtime.py +0 -0
  105. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/configs/scoring.py +0 -0
  106. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/configs/select.py +0 -0
  107. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/configs/serve.py +0 -0
  108. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/configs/task.py +0 -0
  109. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/configs/taskset.py +0 -0
  110. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/dialects/__init__.py +0 -0
  111. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/dialects/anthropic.py +0 -0
  112. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/dialects/base.py +0 -0
  113. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/dialects/chat.py +0 -0
  114. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/dialects/responses.py +0 -0
  115. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/env.py +0 -0
  116. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/envs/__init__.py +0 -0
  117. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/envs/agentic_judge/__init__.py +0 -0
  118. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/envs/agentic_judge/env.py +0 -0
  119. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/envs/best_of_n/__init__.py +0 -0
  120. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/envs/best_of_n/env.py +0 -0
  121. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/envs/single_agent/__init__.py +0 -0
  122. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/envs/single_agent/env.py +0 -0
  123. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/envs/user_sim/__init__.py +0 -0
  124. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/envs/user_sim/env.py +0 -0
  125. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/episode.py +0 -0
  126. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/errors.py +0 -0
  127. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/gepa/__init__.py +0 -0
  128. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/gepa/adapter.py +0 -0
  129. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/gepa/config.py +0 -0
  130. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/gepa/dataset.py +0 -0
  131. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/gepa/reflection.py +0 -0
  132. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/gepa/runner.py +0 -0
  133. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/grading.py +0 -0
  134. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/graph.py +0 -0
  135. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harness.py +0 -0
  136. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/__init__.py +0 -0
  137. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/bash/__init__.py +0 -0
  138. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/bash/harness.py +0 -0
  139. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/browser_use/__init__.py +0 -0
  140. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/browser_use/harness.py +0 -0
  141. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/browser_use/program.py +0 -0
  142. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/claude_code/__init__.py +0 -0
  143. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/claude_code/harness.py +0 -0
  144. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/codex/__init__.py +0 -0
  145. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/codex/gate.mjs +0 -0
  146. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/codex/harness.py +0 -0
  147. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/hermes_agent/__init__.py +0 -0
  148. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/hermes_agent/harness.py +0 -0
  149. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/hermes_agent/program.py +0 -0
  150. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/kimi_code/__init__.py +0 -0
  151. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/kimi_code/harness.py +0 -0
  152. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/mini_swe_agent/__init__.py +0 -0
  153. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/mini_swe_agent/harness.py +0 -0
  154. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/mini_swe_agent/program.py +0 -0
  155. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/node.py +0 -0
  156. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/null/__init__.py +0 -0
  157. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/null/harness.py +0 -0
  158. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/openclaw/__init__.py +0 -0
  159. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/openclaw/harness.py +0 -0
  160. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/pi/__init__.py +0 -0
  161. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/pi/gate.mjs +0 -0
  162. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/pi/harness.py +0 -0
  163. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/prime_agent/__init__.py +0 -0
  164. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/prime_agent/harness.py +0 -0
  165. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/rlm/__init__.py +0 -0
  166. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/rlm/harness.py +0 -0
  167. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/terminus_2/__init__.py +0 -0
  168. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/terminus_2/harness.py +0 -0
  169. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/terminus_2/program.py +0 -0
  170. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/utils/__init__.py +0 -0
  171. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/utils/compaction.py +0 -0
  172. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/utils/core.py +0 -0
  173. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/utils/install.py +0 -0
  174. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/utils/launch.py +0 -0
  175. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/harnesses/utils/mcp.py +0 -0
  176. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/interception/__init__.py +0 -0
  177. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/interception/base.py +0 -0
  178. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/interception/pool.py +0 -0
  179. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/interception/server.py +0 -0
  180. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/interception/tunnel/__init__.py +0 -0
  181. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/interception/tunnel/base.py +0 -0
  182. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/interception/tunnel/custom.py +0 -0
  183. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/interception/tunnel/prime.py +0 -0
  184. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/judge.py +0 -0
  185. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/judges/__init__.py +0 -0
  186. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/judges/decision.py +0 -0
  187. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/judges/reference.py +0 -0
  188. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/judges/reference.txt +0 -0
  189. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/judges/rubric.py +0 -0
  190. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/judges/rubric.txt +0 -0
  191. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/mcp/__init__.py +0 -0
  192. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/mcp/launch.py +0 -0
  193. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/mcp/server.py +0 -0
  194. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/mcp/toolset.py +0 -0
  195. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/rollout.py +0 -0
  196. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/runtimes/__init__.py +0 -0
  197. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/runtimes/apptainer.py +0 -0
  198. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/runtimes/base.py +0 -0
  199. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/runtimes/compose.py +0 -0
  200. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/runtimes/container.py +0 -0
  201. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/runtimes/deployment.py +0 -0
  202. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/runtimes/docker/__init__.py +0 -0
  203. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/runtimes/docker/egress.py +0 -0
  204. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/runtimes/e2b.py +0 -0
  205. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/runtimes/limiters.py +0 -0
  206. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/runtimes/modal.py +0 -0
  207. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/runtimes/prime.py +0 -0
  208. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/runtimes/runtime.py +0 -0
  209. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/runtimes/strategies.py +0 -0
  210. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/runtimes/subprocess.py +0 -0
  211. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/semantic.py +0 -0
  212. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/serve/__init__.py +0 -0
  213. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/serve/client.py +0 -0
  214. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/serve/delta.py +0 -0
  215. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/serve/encoding.py +0 -0
  216. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/serve/pool.py +0 -0
  217. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/serve/server.py +0 -0
  218. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/serve/types.py +0 -0
  219. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/session.py +0 -0
  220. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/state.py +0 -0
  221. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/task.py +0 -0
  222. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/taskset.py +0 -0
  223. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/tasksets/__init__.py +0 -0
  224. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/tasksets/harbor/__init__.py +0 -0
  225. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/tasksets/harbor/taskset.py +0 -0
  226. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/tasksets/harbor/toolset.py +0 -0
  227. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/tasksets/nemo_gym/__init__.py +0 -0
  228. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/tasksets/nemo_gym/response.py +0 -0
  229. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/tasksets/nemo_gym/server.py +0 -0
  230. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/tasksets/nemo_gym/taskset.py +0 -0
  231. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/tasksets/nemo_gym/toolset.py +0 -0
  232. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/tasksets/openenv/__init__.py +0 -0
  233. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/tasksets/openenv/taskset.py +0 -0
  234. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/tasksets/textarena/__init__.py +0 -0
  235. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/tasksets/textarena/taskset.py +0 -0
  236. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/trace.py +0 -0
  237. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/types.py +0 -0
  238. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/__init__.py +0 -0
  239. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/aio.py +0 -0
  240. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/artifacts.py +0 -0
  241. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/compile.py +0 -0
  242. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/decorators.py +0 -0
  243. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/env.py +0 -0
  244. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/eval.py +0 -0
  245. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/format.py +0 -0
  246. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/generic.py +0 -0
  247. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/git.py +0 -0
  248. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/image.py +0 -0
  249. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/interrupt.py +0 -0
  250. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/loaders.py +0 -0
  251. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/logging.py +0 -0
  252. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/memory.py +0 -0
  253. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/paths.py +0 -0
  254. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/platform.py +0 -0
  255. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/prime.py +0 -0
  256. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/retries.py +0 -0
  257. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/scope.py +0 -0
  258. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/score.py +0 -0
  259. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/trace_store.py +0 -0
  260. {verifiers-0.4.1.dev19 → verifiers-0.4.1.dev21}/verifiers/v1/utils/version.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: verifiers
3
- Version: 0.4.1.dev19
3
+ Version: 0.4.1.dev21
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
@@ -23,7 +23,10 @@ from verifiers.v1.episode import Episode
23
23
  from verifiers.v1.types import SamplingConfig
24
24
  from verifiers.v1.utils.loaders import harness_config_type, load_environment
25
25
 
26
- CI_MODEL = "openai/gpt-5.6-luna"
26
+ CI_MODEL = "internal/deepseek-v4.1-flash"
27
+ CI_REASONING_EFFORT = "low"
28
+ # Judge config fields that keep config-plugged judges on the CI model and effort.
29
+ CI_JUDGE = {"model": CI_MODEL, "sampling": {"reasoning_effort": CI_REASONING_EFFORT}}
27
30
 
28
31
  # Fixture tasksets (echo-v1, echo-agentic-v1, ...) live in tests/integration/fixtures,
29
32
  # added to the path via `pythonpath` in pyproject so the loader resolves them by id.
@@ -104,7 +107,8 @@ def _eval_config(
104
107
  taskset_overrides: dict | None = None,
105
108
  runtime: dict | None = None,
106
109
  env: dict | None = None,
107
- reasoning_effort: str | None = None,
110
+ reasoning_effort: str | None = CI_REASONING_EFFORT,
111
+ model: str = CI_MODEL,
108
112
  client: dict | None = None,
109
113
  ) -> EvalConfig:
110
114
  """Build the smallest `EvalConfig` that still exercises the path, used by the `run`
@@ -156,7 +160,7 @@ def _eval_config(
156
160
  "max_tokens": max_tokens,
157
161
  "reasoning_effort": reasoning_effort,
158
162
  },
159
- model=CI_MODEL,
163
+ model=model,
160
164
  **({"client": client} if client else {}),
161
165
  )
162
166
 
@@ -196,7 +200,7 @@ async def live_ctx():
196
200
  yield ModelContext(
197
201
  model=CI_MODEL,
198
202
  client=EvalClientConfig(),
199
- sampling=SamplingConfig(max_tokens=2048),
203
+ sampling=SamplingConfig(max_tokens=2048, reasoning_effort=CI_REASONING_EFFORT),
200
204
  )
201
205
 
202
206
 
@@ -52,21 +52,21 @@ class ACPResumeTask(vf.Task[vf.TaskData, vf.State, ACPResumeTaskConfig]):
52
52
  class ACPResumeEnv(vf.SingleAgentEnv):
53
53
  async def run(self, task, agents):
54
54
  async with agents.agent.interaction(task) as interaction:
55
- # Stated as a fact, not a "do not" instruction: OpenAI's content filter
56
- # refuses "remember ... do not call tools or store it" as an injection.
55
+ # No "without tools" constraint here: models treat passing the codeword
56
+ # to a tool in the next turn as exfiltrating a secret and refuse.
57
57
  first = await interaction.turn(
58
- f"The codeword for this conversation is {CODEWORD}. Keep it in the "
59
- "conversation context only, without tools or persistent memory. "
60
- "Reply with exactly READY."
58
+ f"The codeword for this conversation is {CODEWORD}. It is not a "
59
+ "secret. In my next message I will ask you to pass it to a tool. For "
60
+ "now, reply with exactly READY."
61
61
  )
62
62
  segments = [first]
63
63
  if not first.terminated:
64
64
  segments.append(
65
65
  await interaction.turn(
66
- "Use your tools or pre-imported Python skills to call `resume`'s "
67
- "`recall` with the "
68
- "codeword from my previous message, then reply with exactly the "
69
- "tool result."
66
+ "Call the `recall` tool of the `resume` server (directly or "
67
+ "through your pre-imported Python skills) with the codeword "
68
+ "from my previous message. Then reply with exactly the tool "
69
+ "result and nothing else."
70
70
  )
71
71
  )
72
72
  interaction.trace.info["acp_segments"] = [
@@ -68,8 +68,10 @@ class NetworkPolicyTaskset(vf.Taskset[NetworkPolicyTask, vf.TasksetConfig]):
68
68
  "allow": {"network_allow": [ALLOWED]},
69
69
  }
70
70
  prompt = (
71
- f"Use your shell to run `python3 {PROBE_PATH}` once, then reply with its "
72
- "output."
71
+ f"Your only task: run the command `python3 {PROBE_PATH}` once in your "
72
+ "shell, then reply with exactly what it printed. Any network policy is "
73
+ "already enforced, so do not inspect, configure, or change the network or "
74
+ "firewall, and do not run any other command."
73
75
  )
74
76
  return [
75
77
  NetworkPolicyTask(
@@ -59,6 +59,13 @@ RUNTIMES = ["subprocess", "docker", "podman", "apptainer", "prime", "modal", "e2
59
59
  ENGINES = ("podman", "apptainer")
60
60
  HARNESS_RUNTIMES = [runtime for runtime in RUNTIMES if runtime not in ENGINES]
61
61
 
62
+ # Harnesses that cannot run against the CI model yet.
63
+ # TODO: drop each entry once its fix lands.
64
+ CI_MODEL_GAPS = {
65
+ "kimi-code": "Prime chat completions rejects kimi-code's prompt_cache_key",
66
+ "openclaw": "openclaw cannot load the custom `internal/` model provider",
67
+ }
68
+
62
69
 
63
70
  def agent_seats(taskset: str, env_id: str = "") -> list[str]:
64
71
  """The agent seats the env declares for `taskset`: `agent` for a plain taskset, its
@@ -164,7 +171,10 @@ def grid(
164
171
  for harness in harnesses:
165
172
  for runtime in runtimes:
166
173
  marks = [mark(harness_id(harness)), mark(runtime)]
167
- if reason := unsupported(harness, runtime, needs):
174
+ reason = unsupported(harness, runtime, needs) or CI_MODEL_GAPS.get(
175
+ harness_id(harness)
176
+ )
177
+ if reason:
168
178
  marks.append(pytest.mark.skip(reason=reason))
169
179
  cells.append(
170
180
  pytest.param(
@@ -11,14 +11,33 @@ import subprocess
11
11
  from pathlib import Path
12
12
 
13
13
  import pytest
14
+ from conftest import CI_JUDGE, CI_MODEL, CI_REASONING_EFFORT
14
15
  from grid import agent_seats
15
16
 
16
17
  EVAL_TIMEOUT = 600 # 10 minutes for a capped eval (-n 1 -r 1)
17
18
 
18
19
  ENVIRONMENTS = Path(__file__).parent.parent.parent / "environments"
19
20
 
20
- # V1 tasksets that aren't part of the default CI install.
21
- SKIP_EVAL = {"nemo_gym_weather"}
21
+ SKIP_EVAL = {
22
+ "nemo_gym_weather": "not part of the default CI install",
23
+ # TODO: drop once the CI model's proposer reliably finishes within the caps.
24
+ "proposer_solver": "the CI model's proposer reasons past the token cap",
25
+ }
26
+
27
+ # Point each bundled judge at the CI model and effort.
28
+ JUDGE_OVERRIDES = {
29
+ "interception": [
30
+ "--env.taskset.task.judge.model",
31
+ CI_MODEL,
32
+ "--env.taskset.task.judge.sampling.reasoning-effort",
33
+ CI_REASONING_EFFORT,
34
+ ],
35
+ "wiki_search": [
36
+ "--env.taskset.task.judges",
37
+ # The list replaces the default entry, so restate its `question_field`.
38
+ json.dumps([{"id": "wiki-search", "question_field": "question", **CI_JUDGE}]),
39
+ ],
40
+ }
22
41
 
23
42
 
24
43
  def v1_tasksets() -> list[str]:
@@ -35,13 +54,15 @@ def v1_tasksets() -> list[str]:
35
54
  def test_eval(taskset: str, tmp_path: Path):
36
55
  """Run one capped rollout of `taskset` and require every episode to finish ok; a
37
56
  taskset that bundles a harness uses it by default."""
38
- if taskset in SKIP_EVAL:
39
- pytest.skip(f"{taskset} can't run a plain-CI smoke eval")
57
+ if reason := SKIP_EVAL.get(taskset):
58
+ pytest.skip(reason)
40
59
  if os.getenv("PRIME_API_KEY"):
41
60
  model = [
42
- "-m", "openai/gpt-5.6-luna",
61
+ "-m", CI_MODEL,
62
+ "--sampling.reasoning-effort", CI_REASONING_EFFORT,
43
63
  "--client.base-url", "https://api.pinference.ai/api/v1",
44
64
  "--client.api-key-var", "PRIME_API_KEY",
65
+ *JUDGE_OVERRIDES.get(taskset, []),
45
66
  ] # fmt: skip
46
67
  elif os.getenv("OPENAI_API_KEY"):
47
68
  model = [
@@ -27,10 +27,6 @@ async def test_resume_tool(run, harness, harness_runtime):
27
27
  assert segments[0]["terminated"] is False
28
28
  assert segments[1]["terminated"] is False
29
29
  assert trace.last_reply == segments[1]["last_reply"]
30
- # Kimi Code's resumed requests replay history that differs from the turns it
31
- # sampled (seen on prime), so its graph forks instead of extending one branch.
32
- if harness.id != "kimi-code":
33
- assert trace.num_branches == 1
34
30
  assert "tool" in segments[1]["roles"]
35
31
  assert segments[1]["tool_outputs"]
36
32
  if harness.id == "pi":
@@ -1,5 +1,7 @@
1
1
  """A config-plugged rubric judge scores the rollout on top of the task's own reward."""
2
2
 
3
+ from conftest import CI_JUDGE
4
+
3
5
 
4
6
  async def test_rubric_judge(run, tmp_path):
5
7
  """A config-plugged rubric judge scores the rollout on top of the taskset's own reward.
@@ -17,7 +19,9 @@ async def test_rubric_judge(run, tmp_path):
17
19
  "echo-v1",
18
20
  harness="null",
19
21
  runtime={"type": "subprocess"},
20
- taskset_overrides={"task": {"judges": [{"id": "rubric", "path": str(rubric)}]}},
22
+ taskset_overrides={
23
+ "task": {"judges": [{"id": "rubric", "path": str(rubric), **CI_JUDGE}]}
24
+ },
21
25
  max_turns=2,
22
26
  )
23
27
  (trace,) = episode.traces
File without changes