coder-eval 0.12.14__tar.gz → 0.12.16__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 (843) hide show
  1. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/notes/agents.md +74 -2
  2. {coder_eval-0.12.14 → coder_eval-0.12.16}/CHANGELOG.md +53 -0
  3. {coder_eval-0.12.14 → coder_eval-0.12.16}/PKG-INFO +2 -2
  4. {coder_eval-0.12.14 → coder_eval-0.12.16}/action.yml +1 -1
  5. {coder_eval-0.12.14 → coder_eval-0.12.16}/docker/Dockerfile +12 -2
  6. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/agents/CODEX.md +24 -0
  7. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/agents/HARNESS_PARITY.md +12 -0
  8. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/package.json +5 -2
  9. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/pnpm-lock.yaml +219 -186
  10. {coder_eval-0.12.14 → coder_eval-0.12.16}/plugins/coder-eval/.claude-plugin/plugin.json +1 -1
  11. {coder_eval-0.12.14 → coder_eval-0.12.16}/pyproject.toml +2 -2
  12. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/__init__.py +1 -1
  13. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/agents/codex_agent.py +356 -60
  14. coder_eval-0.12.16/tests/_fixtures/codex_rollouts.py +113 -0
  15. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_codex_agent.py +348 -56
  16. coder_eval-0.12.16/tests/test_codex_agent_unit.py +702 -0
  17. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_image_from_dockerfiles.py +27 -0
  18. {coder_eval-0.12.14 → coder_eval-0.12.16}/uv.lock +212 -157
  19. coder_eval-0.12.14/tests/test_codex_agent_unit.py +0 -350
  20. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/commands/coder-eval-code-review-full.md +0 -0
  21. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/commands/coder-eval-code-review-wf.md +0 -0
  22. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/commands/coder-eval-code-review.md +0 -0
  23. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/commands/coder-eval-create-plan.md +0 -0
  24. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/commands/coder-eval-implement-plan.md +0 -0
  25. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/commands/coder-eval-review.md +0 -0
  26. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/harness-candidates.md +0 -0
  27. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/notes/README.md +0 -0
  28. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/notes/context-window.md +0 -0
  29. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/notes/contracts.md +0 -0
  30. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/notes/isolation.md +0 -0
  31. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/notes/lint-rules.md +0 -0
  32. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/notes/orchestration.md +0 -0
  33. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/notes/permissions.md +0 -0
  34. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/notes/persistence.md +0 -0
  35. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/notes/reporting.md +0 -0
  36. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/notes/timing.md +0 -0
  37. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/shared/axes.md +0 -0
  38. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/shared/multi-model-review.md +0 -0
  39. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/shared/review-rubric.md +0 -0
  40. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/shared/run-layout.md +0 -0
  41. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/workflows/cr-axis.js +0 -0
  42. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude/workflows/cr-parent.js +0 -0
  43. {coder_eval-0.12.14 → coder_eval-0.12.16}/.claude-plugin/marketplace.json +0 -0
  44. {coder_eval-0.12.14 → coder_eval-0.12.16}/.env.example +0 -0
  45. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/CODEOWNERS +0 -0
  46. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/ISSUE_TEMPLATE/adopter.yml +0 -0
  47. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
  48. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  49. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/actionlint.yaml +0 -0
  50. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/code_review.md +0 -0
  51. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/dependabot.yml +0 -0
  52. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/pages-stub/index.html +0 -0
  53. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/scripts/diagnose_delegate_token_claims.py +0 -0
  54. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/scripts/harbor_e2e.py +0 -0
  55. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/scripts/release_notes.py +0 -0
  56. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/workflows/claude-pr-review.yml +0 -0
  57. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/workflows/codeql.yml +0 -0
  58. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/workflows/conventional-commits.yml +0 -0
  59. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/workflows/docker-publish.yml +0 -0
  60. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/workflows/docs.yml +0 -0
  61. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/workflows/harbor-e2e.yml +0 -0
  62. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/workflows/pr-checks.yml +0 -0
  63. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/workflows/publish-testpypi.yml +0 -0
  64. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/workflows/release.yml +0 -0
  65. {coder_eval-0.12.14 → coder_eval-0.12.16}/.github/workflows/verify-published-action.yml +0 -0
  66. {coder_eval-0.12.14 → coder_eval-0.12.16}/.gitignore +0 -0
  67. {coder_eval-0.12.14 → coder_eval-0.12.16}/.pre-commit-config.yaml +0 -0
  68. {coder_eval-0.12.14 → coder_eval-0.12.16}/.python-version +0 -0
  69. {coder_eval-0.12.14 → coder_eval-0.12.16}/ADOPTERS.md +0 -0
  70. {coder_eval-0.12.14 → coder_eval-0.12.16}/CLAUDE.md +0 -0
  71. {coder_eval-0.12.14 → coder_eval-0.12.16}/CODE_OF_CONDUCT.md +0 -0
  72. {coder_eval-0.12.14 → coder_eval-0.12.16}/CONTRIBUTING.md +0 -0
  73. {coder_eval-0.12.14 → coder_eval-0.12.16}/LICENSE +0 -0
  74. {coder_eval-0.12.14 → coder_eval-0.12.16}/Makefile +0 -0
  75. {coder_eval-0.12.14 → coder_eval-0.12.16}/NOTICE +0 -0
  76. {coder_eval-0.12.14 → coder_eval-0.12.16}/README.md +0 -0
  77. {coder_eval-0.12.14 → coder_eval-0.12.16}/SECURITY.md +0 -0
  78. {coder_eval-0.12.14 → coder_eval-0.12.16}/comparison.md +0 -0
  79. {coder_eval-0.12.14 → coder_eval-0.12.16}/docker/Dockerfile.runtime +0 -0
  80. {coder_eval-0.12.14 → coder_eval-0.12.16}/docker/coder_eval_entrypoint.sh +0 -0
  81. {coder_eval-0.12.14 → coder_eval-0.12.16}/docker/coder_eval_runtime_entrypoint.sh +0 -0
  82. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/AB_EXPERIMENTS.md +0 -0
  83. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/CI_GATE.md +0 -0
  84. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/DATASETS.md +0 -0
  85. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/DIALOG_MODE.md +0 -0
  86. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/DOCKER_ISOLATION.md +0 -0
  87. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/EXTENDING.md +0 -0
  88. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/PLUGIN.md +0 -0
  89. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/REPORT_SCHEMA.md +0 -0
  90. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/TASK_DEFINITION_GUIDE.md +0 -0
  91. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/USER_GUIDE.md +0 -0
  92. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/agents/ANTIGRAVITY.md +0 -0
  93. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/agents/CLAUDE_CODE.md +0 -0
  94. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/agents/DELEGATE.md +0 -0
  95. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/agents/OPENCODE.md +0 -0
  96. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/agents/PI.md +0 -0
  97. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/assets/hero.gif +0 -0
  98. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/comparison.md +0 -0
  99. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/index.md +0 -0
  100. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/llms.txt +0 -0
  101. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/tutorials/01-first-evaluation.md +0 -0
  102. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/tutorials/02-ci-pipeline.md +0 -0
  103. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/tutorials/03-evalboard-local.md +0 -0
  104. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/tutorials/04-writing-a-task.md +0 -0
  105. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/tutorials/05-comparing-models.md +0 -0
  106. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/tutorials/06-use-docker-isolation.md +0 -0
  107. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/tutorials/07-plugin-in-claude-code.md +0 -0
  108. {coder_eval-0.12.14 → coder_eval-0.12.16}/docs/tutorials/README.md +0 -0
  109. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/.gitignore +0 -0
  110. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/README.md +0 -0
  111. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_components/__tests__/harness-badge.test.tsx +0 -0
  112. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_components/__tests__/harness-selector.test.tsx +0 -0
  113. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_components/__tests__/search-box.test.tsx +0 -0
  114. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_components/__tests__/skeleton.test.tsx +0 -0
  115. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_components/col-help.tsx +0 -0
  116. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_components/collapsible-rail.tsx +0 -0
  117. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_components/harness-badge.tsx +0 -0
  118. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_components/harness-selector.tsx +0 -0
  119. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_components/scroll-table.tsx +0 -0
  120. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_components/search-box.tsx +0 -0
  121. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_components/skeleton.tsx +0 -0
  122. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_components/unit-toggle.tsx +0 -0
  123. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_components/version-list.tsx +0 -0
  124. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_lib/__tests__/source-param.test.ts +0 -0
  125. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_lib/source-param.ts +0 -0
  126. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_overview/__tests__/efficiency-charts.test.tsx +0 -0
  127. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_overview/__tests__/harness-legend.test.tsx +0 -0
  128. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_overview/__tests__/harness-series.test.ts +0 -0
  129. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_overview/daily-chart.tsx +0 -0
  130. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_overview/efficiency-charts.tsx +0 -0
  131. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_overview/harness-legend.tsx +0 -0
  132. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_overview/harness-series.ts +0 -0
  133. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_overview/tag-rail.tsx +0 -0
  134. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_overview/turn-budget-chart.tsx +0 -0
  135. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_overview/wall-clock-chart.tsx +0 -0
  136. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/_overview/window-summary.tsx +0 -0
  137. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/api/download/route.ts +0 -0
  138. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/api/file/route.ts +0 -0
  139. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/api/refresh/__tests__/route.test.ts +0 -0
  140. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/api/refresh/route.ts +0 -0
  141. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/error.tsx +0 -0
  142. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/globals.css +0 -0
  143. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/icon.png +0 -0
  144. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/layout.tsx +0 -0
  145. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/loading.tsx +0 -0
  146. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/page.tsx +0 -0
  147. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/path-to-ga/__tests__/task-table.test.tsx +0 -0
  148. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/path-to-ga/page.tsx +0 -0
  149. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/path-to-ga/task-table.tsx +0 -0
  150. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/scribe/page.tsx +0 -0
  151. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/scribe/run-table.tsx +0 -0
  152. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/trends/__tests__/trends-view.test.tsx +0 -0
  153. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/trends/actions.ts +0 -0
  154. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/trends/page.tsx +0 -0
  155. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/trends/trends-view.tsx +0 -0
  156. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/watchlist/__tests__/watchlist-view.test.tsx +0 -0
  157. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/watchlist/page.tsx +0 -0
  158. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/app/watchlist/watchlist-view.tsx +0 -0
  159. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/next-env.d.ts +0 -0
  160. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/next.config.mjs +0 -0
  161. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/postcss.config.mjs +0 -0
  162. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/public/harness/antigravity.png +0 -0
  163. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/public/harness/claude-code.png +0 -0
  164. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/public/harness/codex.png +0 -0
  165. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/public/harness/pi.png +0 -0
  166. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/public/uipath.png +0 -0
  167. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/tailwind.config.ts +0 -0
  168. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/tsconfig.json +0 -0
  169. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/vitest.config.ts +0 -0
  170. {coder_eval-0.12.14 → coder_eval-0.12.16}/evalboard/vitest.setup.ts +0 -0
  171. {coder_eval-0.12.14 → coder_eval-0.12.16}/experiments/default.yaml +0 -0
  172. {coder_eval-0.12.14 → coder_eval-0.12.16}/experiments/early-stop-ab.yaml +0 -0
  173. {coder_eval-0.12.14 → coder_eval-0.12.16}/experiments/model-comparison.yaml +0 -0
  174. {coder_eval-0.12.14 → coder_eval-0.12.16}/experiments/permissions-smoke.yaml +0 -0
  175. {coder_eval-0.12.14 → coder_eval-0.12.16}/experiments/plugin-comparison.yaml +0 -0
  176. {coder_eval-0.12.14 → coder_eval-0.12.16}/experiments/prompt-mutations-example.yaml +0 -0
  177. {coder_eval-0.12.14 → coder_eval-0.12.16}/experiments/smoke_variants.yaml +0 -0
  178. {coder_eval-0.12.14 → coder_eval-0.12.16}/litellm/README.md +0 -0
  179. {coder_eval-0.12.14 → coder_eval-0.12.16}/litellm/cost_logger.py +0 -0
  180. {coder_eval-0.12.14 → coder_eval-0.12.16}/litellm/litellm-config.yaml +0 -0
  181. {coder_eval-0.12.14 → coder_eval-0.12.16}/litellm/start-litellm.sh +0 -0
  182. {coder_eval-0.12.14 → coder_eval-0.12.16}/mkdocs.yml +0 -0
  183. {coder_eval-0.12.14 → coder_eval-0.12.16}/osv-scanner.toml +0 -0
  184. {coder_eval-0.12.14 → coder_eval-0.12.16}/plugins/coder-eval/README.md +0 -0
  185. {coder_eval-0.12.14 → coder_eval-0.12.16}/plugins/coder-eval/reference/cli-setup.md +0 -0
  186. {coder_eval-0.12.14 → coder_eval-0.12.16}/plugins/coder-eval/reference/criteria.md +0 -0
  187. {coder_eval-0.12.14 → coder_eval-0.12.16}/plugins/coder-eval/reference/repo-layout.md +0 -0
  188. {coder_eval-0.12.14 → coder_eval-0.12.16}/plugins/coder-eval/reference/run-layout.md +0 -0
  189. {coder_eval-0.12.14 → coder_eval-0.12.16}/plugins/coder-eval/reference/task-rubric.md +0 -0
  190. {coder_eval-0.12.14 → coder_eval-0.12.16}/plugins/coder-eval/reference/templates/activation-rows.jsonl +0 -0
  191. {coder_eval-0.12.14 → coder_eval-0.12.16}/plugins/coder-eval/reference/templates/activation.yaml +0 -0
  192. {coder_eval-0.12.14 → coder_eval-0.12.16}/plugins/coder-eval/skills/analyze/SKILL.md +0 -0
  193. {coder_eval-0.12.14 → coder_eval-0.12.16}/plugins/coder-eval/skills/check-skill/SKILL.md +0 -0
  194. {coder_eval-0.12.14 → coder_eval-0.12.16}/plugins/coder-eval/skills/ci/SKILL.md +0 -0
  195. {coder_eval-0.12.14 → coder_eval-0.12.16}/plugins/coder-eval/skills/init/SKILL.md +0 -0
  196. {coder_eval-0.12.14 → coder_eval-0.12.16}/plugins/coder-eval/skills/lint-tasks/SKILL.md +0 -0
  197. {coder_eval-0.12.14 → coder_eval-0.12.16}/plugins/coder-eval/skills/task/SKILL.md +0 -0
  198. {coder_eval-0.12.14 → coder_eval-0.12.16}/scripts/check_commit_msg.sh +0 -0
  199. {coder_eval-0.12.14 → coder_eval-0.12.16}/scripts/timing/corpus/README.md +0 -0
  200. {coder_eval-0.12.14 → coder_eval-0.12.16}/scripts/timing/corpus/antigravity.json +0 -0
  201. {coder_eval-0.12.14 → coder_eval-0.12.16}/scripts/timing/corpus/claude-code.json +0 -0
  202. {coder_eval-0.12.14 → coder_eval-0.12.16}/scripts/timing/corpus/codex.json +0 -0
  203. {coder_eval-0.12.14 → coder_eval-0.12.16}/scripts/timing/corpus/opencode.json +0 -0
  204. {coder_eval-0.12.14 → coder_eval-0.12.16}/scripts/timing/corpus/pi.json +0 -0
  205. {coder_eval-0.12.14 → coder_eval-0.12.16}/scripts/timing/decompose_run.py +0 -0
  206. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/.gitattributes +0 -0
  207. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/agent.py +0 -0
  208. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/agents/__init__.py +0 -0
  209. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/agents/_logging.py +0 -0
  210. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/agents/_skills.py +0 -0
  211. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/agents/antigravity_agent.py +0 -0
  212. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/agents/claude_code_agent.py +0 -0
  213. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/agents/delegate/.gitignore +0 -0
  214. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/agents/delegate/package.json +0 -0
  215. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/agents/delegate_agent.py +0 -0
  216. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/agents/noop_agent.py +0 -0
  217. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/agents/opencode_agent.py +0 -0
  218. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/agents/pi_agent.py +0 -0
  219. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/agents/registry.py +0 -0
  220. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/agents/watchdog.py +0 -0
  221. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/analysis.py +0 -0
  222. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/argv_match.py +0 -0
  223. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/cli/__init__.py +0 -0
  224. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/cli/console.py +0 -0
  225. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/cli/evaluate_command.py +0 -0
  226. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/cli/evaluate_target.py +0 -0
  227. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/cli/execute_command.py +0 -0
  228. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/cli/export_command.py +0 -0
  229. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/cli/harbor_command.py +0 -0
  230. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/cli/plan_command.py +0 -0
  231. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/cli/report_command.py +0 -0
  232. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/cli/run_command.py +0 -0
  233. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/cli/run_helpers.py +0 -0
  234. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/cli/run_task_internal_command.py +0 -0
  235. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/cli/utils.py +0 -0
  236. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/config.py +0 -0
  237. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/criteria/__init__.py +0 -0
  238. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/criteria/_classification_aggregate.py +0 -0
  239. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/criteria/agent_judge.py +0 -0
  240. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/criteria/base.py +0 -0
  241. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/criteria/classification_match.py +0 -0
  242. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/criteria/cli_called.py +0 -0
  243. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/criteria/command_executed.py +0 -0
  244. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/criteria/commands_efficiency.py +0 -0
  245. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/criteria/file_check.py +0 -0
  246. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/criteria/file_contains.py +0 -0
  247. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/criteria/file_exists.py +0 -0
  248. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/criteria/file_matches_regex.py +0 -0
  249. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/criteria/json_check.py +0 -0
  250. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/criteria/llm_judge.py +0 -0
  251. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/criteria/reference_comparison.py +0 -0
  252. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/criteria/run_command.py +0 -0
  253. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/criteria/skill_triggered.py +0 -0
  254. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/criteria/system_one_judge.py +0 -0
  255. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/criteria/uipath_eval.py +0 -0
  256. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/durations.py +0 -0
  257. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/errors/__init__.py +0 -0
  258. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/errors/agent.py +0 -0
  259. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/errors/budget.py +0 -0
  260. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/errors/categories.py +0 -0
  261. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/errors/categorization.py +0 -0
  262. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/errors/checker_misuse.py +0 -0
  263. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/errors/executor.py +0 -0
  264. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/errors/judge.py +0 -0
  265. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/errors/reference.py +0 -0
  266. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/errors/retry.py +0 -0
  267. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/errors/timeout.py +0 -0
  268. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/evaluation/__init__.py +0 -0
  269. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/evaluation/checker.py +0 -0
  270. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/evaluation/judge_anthropic.py +0 -0
  271. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/evaluation/judge_bedrock.py +0 -0
  272. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/evaluation/judge_context.py +0 -0
  273. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/evaluation/judge_litellm.py +0 -0
  274. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/evaluation/judge_models.py +0 -0
  275. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/evaluation/judge_persistence.py +0 -0
  276. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/evaluation/judge_system_one.py +0 -0
  277. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/evaluation/judge_usage.py +0 -0
  278. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/evaluation/sub_agent.py +0 -0
  279. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/evaluation/summaries.py +0 -0
  280. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/evaluation/system_one_scoring.py +0 -0
  281. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/evaluation/verdict_tool.py +0 -0
  282. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/formatting.py +0 -0
  283. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/fs_permissions.py +0 -0
  284. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/harbor/__init__.py +0 -0
  285. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/harbor/agent.py +0 -0
  286. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/harbor/agent_paths.py +0 -0
  287. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/harbor/atif_emit.py +0 -0
  288. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/harbor/atif_hydrate.py +0 -0
  289. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/harbor/atif_models.py +0 -0
  290. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/harbor/experiment_packager.py +0 -0
  291. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/harbor/packager.py +0 -0
  292. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/harbor/portability.py +0 -0
  293. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/harbor/reward.py +0 -0
  294. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/invocation_log.py +0 -0
  295. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/isolation/__init__.py +0 -0
  296. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/isolation/docker_runner.py +0 -0
  297. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/isolation/eval_material.py +0 -0
  298. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/litellm_cost.py +0 -0
  299. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/logging_config.py +0 -0
  300. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/models/__init__.py +0 -0
  301. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/models/agent_config.py +0 -0
  302. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/models/cli_match.py +0 -0
  303. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/models/container_context.py +0 -0
  304. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/models/container_paths.py +0 -0
  305. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/models/criteria.py +0 -0
  306. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/models/enums.py +0 -0
  307. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/models/experiment.py +0 -0
  308. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/models/judge.py +0 -0
  309. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/models/judge_defaults.py +0 -0
  310. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/models/limits.py +0 -0
  311. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/models/merge_strategy.py +0 -0
  312. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/models/mutations.py +0 -0
  313. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/models/results.py +0 -0
  314. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/models/routing.py +0 -0
  315. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/models/sandbox.py +0 -0
  316. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/models/system_one.py +0 -0
  317. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/models/tasks.py +0 -0
  318. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/models/telemetry.py +0 -0
  319. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/models/templates.py +0 -0
  320. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/orchestration/__init__.py +0 -0
  321. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/orchestration/batch.py +0 -0
  322. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/orchestration/config.py +0 -0
  323. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/orchestration/config_merge.py +0 -0
  324. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/orchestration/early_stop.py +0 -0
  325. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/orchestration/evaluation.py +0 -0
  326. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/orchestration/experiment.py +0 -0
  327. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/orchestration/overrides.py +0 -0
  328. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/orchestration/regrade.py +0 -0
  329. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/orchestration/run_limits.py +0 -0
  330. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/orchestration/run_summary_rebuild.py +0 -0
  331. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/orchestration/task_loader.py +0 -0
  332. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/orchestrator.py +0 -0
  333. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/path_utils.py +0 -0
  334. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/plugins.py +0 -0
  335. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/pricing.py +0 -0
  336. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/py.typed +0 -0
  337. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/reports/__init__.py +0 -0
  338. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/reports/experiment.py +0 -0
  339. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/reports/helpers.py +0 -0
  340. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/reports/html.py +0 -0
  341. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/reports/junit.py +0 -0
  342. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/reports/markdown.py +0 -0
  343. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/resources/__init__.py +0 -0
  344. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/resources/default_ignore_patterns.yaml +0 -0
  345. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/resources/tags.yaml +0 -0
  346. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/result_metrics.py +0 -0
  347. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/run_record.py +0 -0
  348. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/sandbox.py +0 -0
  349. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/scoring/__init__.py +0 -0
  350. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/scoring/ast_similarity.py +0 -0
  351. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/scoring/complexity.py +0 -0
  352. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/scoring/quality.py +0 -0
  353. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/scoring/signature_similarity.py +0 -0
  354. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/scoring/similarity.py +0 -0
  355. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/scoring/token_similarity.py +0 -0
  356. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/simulation/__init__.py +0 -0
  357. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/simulation/termination.py +0 -0
  358. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/simulation/user_simulator.py +0 -0
  359. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/simulation/utterance.py +0 -0
  360. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/stats.py +0 -0
  361. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/streaming/__init__.py +0 -0
  362. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/streaming/callbacks.py +0 -0
  363. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/streaming/collector.py +0 -0
  364. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/streaming/events.py +0 -0
  365. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/streaming/renderers.py +0 -0
  366. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/streaming/wire.py +0 -0
  367. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/telemetry.py +0 -0
  368. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/timing.py +0 -0
  369. {coder_eval-0.12.14 → coder_eval-0.12.16}/src/coder_eval/utils.py +0 -0
  370. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/README.md +0 -0
  371. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/agentless_smoke_test.yaml +0 -0
  372. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/agents/antigravity_hello_world.yaml +0 -0
  373. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/agents/antigravity_hello_world_docker.yaml +0 -0
  374. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/agents/claude_hello_world.yaml +0 -0
  375. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/agents/claude_hello_world_docker.yaml +0 -0
  376. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/agents/claude_parallel_single_gen.yaml +0 -0
  377. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/agents/claude_subagent_test.yaml +0 -0
  378. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/agents/codex_disallowed_tools_test.yaml +0 -0
  379. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/agents/codex_hello_world.yaml +0 -0
  380. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/agents/codex_parallel_commands.yaml +0 -0
  381. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/agents/codex_parallel_single_gen.yaml +0 -0
  382. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/agents/codex_skills_test.yaml +0 -0
  383. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/agents/codex_string_utils.yaml +0 -0
  384. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/agents/codex_subagent_test.yaml +0 -0
  385. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/agents/subagent_bash_long_input.yaml +0 -0
  386. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/agents/subagent_merge_sort.yaml +0 -0
  387. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/anti_cheat_reference/anti_cheat_reference.yaml +0 -0
  388. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/anti_cheat_reference/reference/solution.py +0 -0
  389. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/byod_smoke_test.yaml +0 -0
  390. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/dataset_example.yaml +0 -0
  391. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/datasets/sentiment.jsonl +0 -0
  392. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/delegate/fizzbuzz_delegate.yaml +0 -0
  393. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/delegate/hello_date_delegate.yaml +0 -0
  394. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/dockerfile_build_example/dockerfile_build_example.yaml +0 -0
  395. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/dockerfile_build_example/environment/Dockerfile +0 -0
  396. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/dockerfile_build_example/environment/Dockerfile.workdir +0 -0
  397. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/dockerfile_build_example/environment/input.txt +0 -0
  398. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/dockerfile_build_example/working_dir_auto_example.yaml +0 -0
  399. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/dockerfile_build_example/working_dir_concrete_example.yaml +0 -0
  400. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/early_stop_decision_budget_exceeded.yaml +0 -0
  401. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/early_stop_weighted_high_weight_kills_run.yaml +0 -0
  402. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/early_stop_weighted_low_weight_absorbed.yaml +0 -0
  403. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/fibonacci_with_template.yaml +0 -0
  404. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/hello_date.yaml +0 -0
  405. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/inline_starter_example.yaml +0 -0
  406. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/internal/session_resumption.yaml +0 -0
  407. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/mock_path_dirs_smoke.yaml +0 -0
  408. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/mock_path_dirs_template_dir/mock-cli-bins/README.md +0 -0
  409. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/mock_path_dirs_template_dir/mock-cli-bins/mocks/echo_args +0 -0
  410. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/mock_path_dirs_template_dir/mock-cli-bins/mocks/fixtures/config.json +0 -0
  411. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/mock_path_dirs_template_dir/mock-cli-bins/mocks/say_hello +0 -0
  412. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/mock_path_dirs_template_dir/task.yaml +0 -0
  413. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/opencode_smoke_test.yaml +0 -0
  414. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/pi_smoke_test.yaml +0 -0
  415. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/python_cli_simulated_judged/echo_simulated_judged.yaml +0 -0
  416. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/record_cli_responses.yaml +0 -0
  417. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/run_limits/max_turns_cap.yaml +0 -0
  418. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/run_limits/turn_timeout.yaml +0 -0
  419. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/samples/skillsbench/3d-scan-calc/3d-scan-calc.yaml +0 -0
  420. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/samples/skillsbench/3d-scan-calc/environment/Dockerfile +0 -0
  421. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/samples/skillsbench/3d-scan-calc/environment/material_density_table.md +0 -0
  422. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/samples/skillsbench/3d-scan-calc/environment/scan_data.stl +0 -0
  423. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/samples/skillsbench/3d-scan-calc/verifier/test.sh +0 -0
  424. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/samples/skillsbench/3d-scan-calc/verifier/test_outputs.py +0 -0
  425. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/samples/skillsbench/README.md +0 -0
  426. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/samples/skillsbench/court-form-filling/court-form-filling.yaml +0 -0
  427. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/samples/skillsbench/court-form-filling/environment/Dockerfile +0 -0
  428. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/samples/skillsbench/court-form-filling/environment/sc100-blank.pdf +0 -0
  429. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/samples/skillsbench/court-form-filling/verifier/test.sh +0 -0
  430. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/samples/skillsbench/court-form-filling/verifier/test_outputs.py +0 -0
  431. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/samples/skillsbench/dialogue-parser/dialogue-parser.yaml +0 -0
  432. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/samples/skillsbench/dialogue-parser/environment/Dockerfile +0 -0
  433. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/samples/skillsbench/dialogue-parser/environment/script.txt +0 -0
  434. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/samples/skillsbench/dialogue-parser/verifier/test.sh +0 -0
  435. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/samples/skillsbench/dialogue-parser/verifier/test_outputs.py +0 -0
  436. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/sentiment_classification.yaml +0 -0
  437. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/smoke_agent_judge.yaml +0 -0
  438. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/smoke_budget_exceeded.yaml +0 -0
  439. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/smoke_cost_budget_exceeded.yaml +0 -0
  440. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/smoke_llm_judge.yaml +0 -0
  441. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/smoke_negative_path.yaml +0 -0
  442. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/smoke_system_one_judge.yaml +0 -0
  443. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/smoke_task_timeout.yaml +0 -0
  444. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/smoke_variants.yaml +0 -0
  445. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/test_sandbox.yaml +0 -0
  446. {coder_eval-0.12.14 → coder_eval-0.12.16}/tasks/token_check.yaml +0 -0
  447. {coder_eval-0.12.14 → coder_eval-0.12.16}/templates/byod_smoke_test/Dockerfile +0 -0
  448. {coder_eval-0.12.14 → coder_eval-0.12.16}/templates/fibonacci-starter/README.md +0 -0
  449. {coder_eval-0.12.14 → coder_eval-0.12.16}/templates/fibonacci-starter/src/main.py +0 -0
  450. {coder_eval-0.12.14 → coder_eval-0.12.16}/templates/fibonacci-starter/tests/test_main.py +0 -0
  451. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/__init__.py +0 -0
  452. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_bracket_clock.py +0 -0
  453. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_container_contract.py +0 -0
  454. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/__init__.py +0 -0
  455. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/__init__.py +0 -0
  456. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/_scrub.py +0 -0
  457. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/antigravity_fixtures.py +0 -0
  458. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/claude_fixtures.py +0 -0
  459. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/codex_fixtures.py +0 -0
  460. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/delegate_fixtures.py +0 -0
  461. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/antigravity_a_single_text_turn.json +0 -0
  462. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/antigravity_b_tool_call_resolved.json +0 -0
  463. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/antigravity_c_thinking_and_tool_same_generation.json +0 -0
  464. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/antigravity_d_orphaned_tool.json +0 -0
  465. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/antigravity_e_multi_generation.json +0 -0
  466. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/claude_a_single_text_turn.json +0 -0
  467. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/claude_b_tool_use_result.json +0 -0
  468. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/claude_c_multi_emission_delta.json +0 -0
  469. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/claude_d_subagent_terminal.json +0 -0
  470. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/claude_e_model_usage_and_backfill.json +0 -0
  471. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/claude_f_orphaned_tool.json +0 -0
  472. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/claude_g_crash_format_placeholder.json +0 -0
  473. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/claude_h1_timeout_process_error.json +0 -0
  474. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/claude_h2_process_error_crash.json +0 -0
  475. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/claude_i_in_loop_deadline_break.json +0 -0
  476. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/codex_a_agent_message_only.json +0 -0
  477. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/codex_b_command_execution.json +0 -0
  478. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/codex_c_reasoning_placeholder.json +0 -0
  479. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/codex_d_cross_flush_is_error.json +0 -0
  480. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/codex_e_orphan_tool.json +0 -0
  481. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/codex_f_collab_fallback.json +0 -0
  482. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/codex_g_items_rebuild.json +0 -0
  483. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/codex_h_no_turn_completed_crash.json +0 -0
  484. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/delegate_a_tool_call.json +0 -0
  485. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/delegate_b_max_turns_cut.json +0 -0
  486. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/delegate_c_error_frame_crash.json +0 -0
  487. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/delegate_d_orphaned_tool.json +0 -0
  488. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/delegate_e_tool_only_call_crosses_cap.json +0 -0
  489. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/delegate_f_batched_tools_in_sequence.json +0 -0
  490. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/opencode_a_single_text_turn.json +0 -0
  491. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/opencode_b_tool_call_resolved.json +0 -0
  492. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/opencode_c_multi_step_tiling.json +0 -0
  493. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/opencode_d_orphaned_tool.json +0 -0
  494. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/opencode_e_error_after_generation.json +0 -0
  495. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/pi_a_single_text_turn.json +0 -0
  496. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/pi_b_tool_call_resolved.json +0 -0
  497. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/pi_c_multi_turn_tiling.json +0 -0
  498. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/pi_d_orphaned_tool.json +0 -0
  499. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/pi_e_error_after_generation.json +0 -0
  500. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/expected/pi_f_duplicate_turn_end.json +0 -0
  501. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/opencode_fixtures.py +0 -0
  502. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/golden_streams/pi_fixtures.py +0 -0
  503. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/harbor_export_golden/expected/environment/Dockerfile +0 -0
  504. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/harbor_export_golden/expected/environment/docker-compose.yaml +0 -0
  505. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/harbor_export_golden/expected/environment/task.yaml +0 -0
  506. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/harbor_export_golden/expected/instruction.md +0 -0
  507. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/harbor_export_golden/expected/task.toml +0 -0
  508. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/harbor_export_golden/expected/tests/reference/greeting.txt +0 -0
  509. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/harbor_export_golden/expected/tests/task.yaml +0 -0
  510. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/harbor_export_golden/expected/tests/test.sh +0 -0
  511. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/harbor_export_golden/source_task/environment/Dockerfile +0 -0
  512. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/harbor_export_golden/source_task/reference/greeting.txt +0 -0
  513. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/harbor_export_golden/source_task/task.yaml +0 -0
  514. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/live_criteria.py +0 -0
  515. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/report_snapshots/__init__.py +0 -0
  516. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/report_snapshots/_snapshot.py +0 -0
  517. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/report_snapshots/experiment_2variant.md +0 -0
  518. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/report_snapshots/experiment_3variant.md +0 -0
  519. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/report_snapshots/experiment_replicates.md +0 -0
  520. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/report_snapshots/run_full.md +0 -0
  521. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/report_snapshots/run_minimal.md +0 -0
  522. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_fixtures/timing_union_cases.json +0 -0
  523. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/_path_helpers.py +0 -0
  524. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/conftest.py +0 -0
  525. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/fixtures/__init__.py +0 -0
  526. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/fixtures/atif/known_good_trajectory.json +0 -0
  527. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/fixtures/byoa_demo_plugin/byoa_demo.py +0 -0
  528. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/fixtures/byoa_demo_plugin/pyproject.toml +0 -0
  529. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/fixtures/mock_agent.py +0 -0
  530. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/fixtures/pi_happy_stream.jsonl +0 -0
  531. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/fixtures/tasks/test_task_informational_criterion.yaml +0 -0
  532. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/fixtures/tasks/test_task_multiple_criteria.yaml +0 -0
  533. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/fixtures/tasks/test_task_pass.yaml +0 -0
  534. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/fixtures/text_stub_agent.py +0 -0
  535. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/harbor_e2e/fixtures/docker_baseline.yaml +0 -0
  536. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/harbor_e2e/fixtures/llm_judge.yaml +0 -0
  537. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/harbor_e2e/fixtures/template_sources.yaml +0 -0
  538. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/harbor_e2e/fixtures/trajectory_criteria.yaml +0 -0
  539. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/__init__.py +0 -0
  540. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/action_docs.py +0 -0
  541. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/agent_roster_parity.py +0 -0
  542. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/dead_config_fields.py +0 -0
  543. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/doc_env_parity.py +0 -0
  544. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/doc_examples.py +0 -0
  545. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/doc_indexes.py +0 -0
  546. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/doc_schema_parity.py +0 -0
  547. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/generated.py +0 -0
  548. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/live_verdict_contract.py +0 -0
  549. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/plugin_manifest_parity.py +0 -0
  550. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/plugin_reference.py +0 -0
  551. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/pricing_mirror.py +0 -0
  552. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/prose_budget.py +0 -0
  553. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/pyright_config.py +0 -0
  554. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/__init__.py +0 -0
  555. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/_layers.py +0 -0
  556. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/_model_ctor.py +0 -0
  557. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/base.py +0 -0
  558. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce014_merge_strategy_declared.py +0 -0
  559. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce015_create_subprocess_limit.py +0 -0
  560. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce016_no_computed_tokenusage_kwargs.py +0 -0
  561. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce017_models_lazy_agent_imports.py +0 -0
  562. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce018_no_final_status_name_denylist.py +0 -0
  563. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce019_telemetry_non_fatal.py +0 -0
  564. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce020_no_sdk_typed_base_agent_fields.py +0 -0
  565. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce021_guarded_evaluationresult_parse.py +0 -0
  566. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce022_dialog_loop_statement_cap.py +0 -0
  567. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce024_discriminated_unions.py +0 -0
  568. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce032_criteria_path_seam.py +0 -0
  569. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce037_no_dead_private_helper.py +0 -0
  570. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce038_acquire_inside_try.py +0 -0
  571. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce039_config_error_escalates.py +0 -0
  572. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce043_no_command_output_truncation.py +0 -0
  573. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce046_env_info_spreads_super.py +0 -0
  574. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce048_no_in_process_typer_command_call.py +0 -0
  575. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce049_no_score_or_zero.py +0 -0
  576. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce050_no_union_getattr_probe.py +0 -0
  577. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce051_no_driver_override.py +0 -0
  578. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce052_process_lethal_must_be_container_gated.py +0 -0
  579. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce053_run_record_filename_literal.py +0 -0
  580. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce054_env_info_key_round_trip.py +0 -0
  581. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce056_no_container_env_literal.py +0 -0
  582. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce057_sidecar_shim_stdlib_only.py +0 -0
  583. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce058_no_timing_literal.py +0 -0
  584. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce059_generation_window_is_two_reads.py +0 -0
  585. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce060_message_id_declared.py +0 -0
  586. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce061_window_via_close_window.py +0 -0
  587. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce063_no_busy_ms_in_agents.py +0 -0
  588. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce064_turn_bracket_on_the_clock.py +0 -0
  589. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/ce066_no_report_imports_in_core.py +0 -0
  590. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/no_agent_timing_access.py +0 -0
  591. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/no_blocking_io_in_async.py +0 -0
  592. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/no_cli_imports_in_core.py +0 -0
  593. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/no_silent_except.py +0 -0
  594. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/no_submodule_model_imports.py +0 -0
  595. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/no_top_level_run_limits_access.py +0 -0
  596. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/no_transcript_regex_in_eval.py +0 -0
  597. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/no_type_name_string_dispatch.py +0 -0
  598. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/open_explicit_encoding.py +0 -0
  599. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/read_text_explicit_encoding.py +0 -0
  600. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/register_criterion_required.py +0 -0
  601. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/subprocess_run_explicit_encoding.py +0 -0
  602. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/rules/yaml_models_forbid_extras.py +0 -0
  603. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/runner.py +0 -0
  604. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/violation.py +0 -0
  605. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/lint/workflow_outputs.py +0 -0
  606. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_action_inputs.py +0 -0
  607. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_action_version_pin.py +0 -0
  608. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_agent.py +0 -0
  609. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_agent_config_no_timing_fields.py +0 -0
  610. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_agent_config_optional_type.py +0 -0
  611. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_agent_config_registry_dispatch.py +0 -0
  612. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_agent_config_sdk_decoupling.py +0 -0
  613. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_agent_context_window.py +0 -0
  614. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_agent_golden_master.py +0 -0
  615. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_agent_judge_criterion.py +0 -0
  616. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_agent_telemetry.py +0 -0
  617. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_agent_telemetry_advanced.py +0 -0
  618. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_agent_timeout.py +0 -0
  619. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_agentless.py +0 -0
  620. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_antigravity_agent.py +0 -0
  621. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_atif_emit.py +0 -0
  622. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_atif_hydrate.py +0 -0
  623. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_atif_models.py +0 -0
  624. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_byoa_plugin.py +0 -0
  625. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_byoa_plugin_live.py +0 -0
  626. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_byod_feature.py +0 -0
  627. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_check_all_async.py +0 -0
  628. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_checker_logging.py +0 -0
  629. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_classification_match.py +0 -0
  630. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_claude_settings_enforcement_live.py +0 -0
  631. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_cleanup_preservation_guard.py +0 -0
  632. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_cli_backend_flag.py +0 -0
  633. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_cli_called_criterion.py +0 -0
  634. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_cli_empty_glob.py +0 -0
  635. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_cli_match_parity.py +0 -0
  636. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_cli_sdk_options.py +0 -0
  637. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_cli_set_overrides.py +0 -0
  638. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_cli_telemetry.py +0 -0
  639. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_cli_type_flag.py +0 -0
  640. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_code_review_bugs.py +0 -0
  641. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_codex_agent_live.py +0 -0
  642. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_codex_token_mapping.py +0 -0
  643. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_command_executed.py +0 -0
  644. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_command_statistics.py +0 -0
  645. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_command_telemetry_result_data.py +0 -0
  646. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_commands_efficiency.py +0 -0
  647. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_config_lineage.py +0 -0
  648. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_config_merge_engine.py +0 -0
  649. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_config_precedence.py +0 -0
  650. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_container_context.py +0 -0
  651. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_continuous_scoring.py +0 -0
  652. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_cost_accounting_paths.py +0 -0
  653. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_criterion_result_round_trip.py +0 -0
  654. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_custom_lint.py +0 -0
  655. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_dataset_expansion.py +0 -0
  656. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_debug_logging.py +0 -0
  657. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_delegate_agent.py +0 -0
  658. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_delegate_agent_config.py +0 -0
  659. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_delegate_agent_live.py +0 -0
  660. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_delegate_agent_registration.py +0 -0
  661. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_detached_grading_boundaries.py +0 -0
  662. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_detached_grading_guards.py +0 -0
  663. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_docker_build_failure.py +0 -0
  664. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_docker_litellm_env.py +0 -0
  665. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_docker_runner_container_death.py +0 -0
  666. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_docker_runner_mounts.py +0 -0
  667. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_docker_runner_stream_limit.py +0 -0
  668. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_docker_wildcard_env.py +0 -0
  669. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_docker_workdir_live.py +0 -0
  670. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_driver_resolver.py +0 -0
  671. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_durations.py +0 -0
  672. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_early_stop.py +0 -0
  673. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_error_handling.py +0 -0
  674. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_eval_material.py +0 -0
  675. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_evaluate_command.py +0 -0
  676. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_evaluate_format_harbor.py +0 -0
  677. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_evaluate_target.py +0 -0
  678. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_evaluator.py +0 -0
  679. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_event_collector.py +0 -0
  680. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_execute_command.py +0 -0
  681. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_execute_evaluate_loop.py +0 -0
  682. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_execute_format_harbor.py +0 -0
  683. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_experiment_cli.py +0 -0
  684. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_experiment_loader.py +0 -0
  685. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_experiment_models.py +0 -0
  686. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_experiment_reports.py +0 -0
  687. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_experiment_resolver.py +0 -0
  688. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_experiment_runner.py +0 -0
  689. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_file_check.py +0 -0
  690. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_file_contains_scoring.py +0 -0
  691. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_formatting.py +0 -0
  692. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_git_clone_failure.py +0 -0
  693. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_glob_paths_in_file_criteria.py +0 -0
  694. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_harbor_agent.py +0 -0
  695. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_harbor_e2e_fixtures.py +0 -0
  696. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_harbor_experiment_packager.py +0 -0
  697. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_harbor_export_golden.py +0 -0
  698. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_harbor_packager.py +0 -0
  699. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_harbor_portability.py +0 -0
  700. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_harbor_reward.py +0 -0
  701. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_heartbeat_watchdog.py +0 -0
  702. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_ignore_patterns_negation.py +0 -0
  703. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_image_skew_refusal.py +0 -0
  704. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_integration.py +0 -0
  705. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_json_check.py +0 -0
  706. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_judge_anthropic.py +0 -0
  707. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_judge_bedrock.py +0 -0
  708. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_judge_burn_in_live.py +0 -0
  709. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_judge_context_builder.py +0 -0
  710. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_judge_litellm.py +0 -0
  711. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_judge_models.py +0 -0
  712. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_judge_persistence.py +0 -0
  713. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_judge_system_one.py +0 -0
  714. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_lint_no_top_level_run_limits.py +0 -0
  715. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_lint_runner.py +0 -0
  716. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_litellm_config.py +0 -0
  717. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_litellm_cost.py +0 -0
  718. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_litellm_cost_logger.py +0 -0
  719. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_litellm_judge_live.py +0 -0
  720. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_litellm_route.py +0 -0
  721. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_llm_judge_criterion.py +0 -0
  722. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_log_tail_buffer.py +0 -0
  723. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_logging.py +0 -0
  724. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_logging_isolation.py +0 -0
  725. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_merge_characterization.py +0 -0
  726. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_merge_strategy_annotations.py +0 -0
  727. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_merge_unification.py +0 -0
  728. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_models.py +0 -0
  729. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_mutations.py +0 -0
  730. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_new_criteria.py +0 -0
  731. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_node_env_config.py +0 -0
  732. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_opencode_agent.py +0 -0
  733. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_optional_dependencies.py +0 -0
  734. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_orchestrator.py +0 -0
  735. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_orchestrator_error_log_tail.py +0 -0
  736. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_orchestrator_telemetry.py +0 -0
  737. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_overrides_engine.py +0 -0
  738. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_parallel.py +0 -0
  739. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_path_utils.py +0 -0
  740. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_pi_agent.py +0 -0
  741. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_pi_agent_config.py +0 -0
  742. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_pi_smoke_task.py +0 -0
  743. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_plan_command.py +0 -0
  744. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_plugin_processing.py +0 -0
  745. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_plugins.py +0 -0
  746. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_post_run.py +0 -0
  747. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_pr_review_workflow.py +0 -0
  748. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_pre_run.py +0 -0
  749. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_preservation_mode.py +0 -0
  750. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_pricing_mirror.py +0 -0
  751. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_pricing_registry.py +0 -0
  752. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_prose_budget.py +0 -0
  753. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_prose_budget_commands.py +0 -0
  754. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_reference_comparison_scoring.py +0 -0
  755. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_reference_evaluator.py +0 -0
  756. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_reference_missing_file.py +0 -0
  757. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_reference_models.py +0 -0
  758. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_reference_permissions.py +0 -0
  759. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_registry.py +0 -0
  760. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_regrade.py +0 -0
  761. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_release_notes.py +0 -0
  762. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_replicate_stats.py +0 -0
  763. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_report_command.py +0 -0
  764. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_reports.py +0 -0
  765. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_reports_html.py +0 -0
  766. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_reports_junit.py +0 -0
  767. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_reports_package.py +0 -0
  768. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_resolve_task_files.py +0 -0
  769. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_result_metrics.py +0 -0
  770. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_resume.py +0 -0
  771. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_retry_logic_comprehensive.py +0 -0
  772. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_route_seam_exhaustiveness.py +0 -0
  773. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_routing.py +0 -0
  774. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_run_command_junit.py +0 -0
  775. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_run_command_stdout.py +0 -0
  776. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_run_helpers.py +0 -0
  777. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_run_limits_models.py +0 -0
  778. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_run_limits_orchestrator.py +0 -0
  779. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_run_limits_resolver.py +0 -0
  780. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_run_metrics.py +0 -0
  781. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_run_record.py +0 -0
  782. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_run_summary_rebuild.py +0 -0
  783. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_run_task_internal.py +0 -0
  784. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_runtime_tool_versions.py +0 -0
  785. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_sandbox.py +0 -0
  786. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_sandbox_adopt.py +0 -0
  787. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_sandbox_layer_builder.py +0 -0
  788. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_sandbox_optional.py +0 -0
  789. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_sandbox_record_cli.py +0 -0
  790. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_sandbox_security.py +0 -0
  791. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_sandbox_symlink_preservation.py +0 -0
  792. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_sandbox_templates.py +0 -0
  793. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_sandbox_venv_live.py +0 -0
  794. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_scorers.py +0 -0
  795. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_scoring_quality.py +0 -0
  796. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_sdk_option_classification.py +0 -0
  797. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_seed_from_prior_result.py +0 -0
  798. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_simulation_config.py +0 -0
  799. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_simulation_integration.py +0 -0
  800. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_simulation_termination.py +0 -0
  801. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_simulation_trials.py +0 -0
  802. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_skill_triggered.py +0 -0
  803. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_stats.py +0 -0
  804. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_stats_nonfinite.py +0 -0
  805. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_streaming_agent_integration.py +0 -0
  806. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_streaming_batch.py +0 -0
  807. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_streaming_callbacks.py +0 -0
  808. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_streaming_cli.py +0 -0
  809. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_streaming_events.py +0 -0
  810. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_streaming_orchestrator.py +0 -0
  811. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_streaming_renderers.py +0 -0
  812. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_streaming_wire.py +0 -0
  813. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_sub_agent_runner.py +0 -0
  814. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_success_criterion_union.py +0 -0
  815. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_suite_rollup.py +0 -0
  816. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_summaries.py +0 -0
  817. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_system_one_judge.py +0 -0
  818. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_system_one_judge_live.py +0 -0
  819. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_tags.py +0 -0
  820. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_task_definition_unknown_fields.py +0 -0
  821. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_teardown_interrupt.py +0 -0
  822. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_telemetry.py +0 -0
  823. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_template_env_expansion.py +0 -0
  824. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_threshold_enforcement.py +0 -0
  825. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_timeout_batch.py +0 -0
  826. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_timeout_categorization.py +0 -0
  827. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_timeout_exceptions.py +0 -0
  828. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_timeout_models.py +0 -0
  829. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_timeout_orchestrator.py +0 -0
  830. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_timing_close_window.py +0 -0
  831. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_timing_identity_contract.py +0 -0
  832. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_timing_union_parity.py +0 -0
  833. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_token_usage.py +0 -0
  834. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_uipath_eval.py +0 -0
  835. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_ungraded_reporting.py +0 -0
  836. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_user_simulator.py +0 -0
  837. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_utils.py +0 -0
  838. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_utterance_extraction.py +0 -0
  839. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_variant_prompt_file.py +0 -0
  840. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_verdict_tool.py +0 -0
  841. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_verify_published_workflow.py +0 -0
  842. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_watchdog.py +0 -0
  843. {coder_eval-0.12.14 → coder_eval-0.12.16}/tests/test_yaml_migration.py +0 -0
@@ -267,10 +267,15 @@ matter how much the run actually billed. So the CLI harnesses crash rather than
267
267
  arm keys on a step the CLI reported as FINISHED, its own claim that a generation
268
268
  completed, rather than on `usage.is_empty()` alone, which would also condemn a stream
269
269
  cut before any step could finish.
270
- - **A terminal provider error** (Pi, OpenCode) — `pi -p` exits 0 after exhausting its
270
+ - **A terminal provider error** (Pi, OpenCode, Codex) — `pi -p` exits 0 after exhausting its
271
271
  internal retries, so without the crash the turn books as a clean COMPLETED
272
272
  (`FinalStatus.FAILURE`, category "failed"), silently depressing the measured pass rate.
273
273
  Crashing routes it to `FinalStatus.ERROR`, which is excluded from outcomes.
274
+ Codex reports the same thing differently: its `turn/completed` arrives normally but
275
+ carries `turn.status == failed` and a `TurnError` (for example `rateLimitExceeded`
276
+ after its own stream retries ran out). The harness reads that status and crashes, with
277
+ the provider's message, so `categorize_error` routes a rate limit to
278
+ `AGENT_RATE_LIMIT` and its retry budget like any other agent crash.
274
279
  - **A CLI that closed its stream but would not exit** within the grace period.
275
280
 
276
281
  Every arm is gated on `stopped_early` / `max_turns_exhausted`, because an intentional cut
@@ -373,7 +378,8 @@ Codex runs every sub-agent on its own child thread whose events never reach the
373
378
  stream, and that thread persists with *Limited* rollout policy, which drops
374
379
  `commandExecution` events. So neither the live stream nor `thread.read` surfaces the
375
380
  sub-agent's shell commands, and `thread/tokenUsage/updated` only ever reports the PARENT
376
- thread.
381
+ thread. (The commands a code-mode script runs are the exception: they persist as
382
+ `item_completed` records, below.)
377
383
 
378
384
  But the child rollout ALWAYS persists the raw `function_call` / `local_shell_call` /
379
385
  `custom_tool_call` ResponseItems and a `token_count` event with the child's cumulative
@@ -395,6 +401,72 @@ The rollout file can lag the parent's `turn/completed` by a beat (the recorder f
395
401
  a background task), so the lookup polls ~2 s — but bails immediately when
396
402
  `<home>/sessions` does not exist at all, since no flush can ever land there.
397
403
 
404
+ Codex multi-agent v2 moved the spawn off the collab item. A v1 spawn is a
405
+ `collabAgentToolCall` that names the child in `receiver_thread_ids`; a v2 spawn is a
406
+ `subAgentActivity` item with `kind: started`, `id` = the spawn call id and
407
+ `agent_thread_id` = the child, and its `wait` names no child at all. `_tool_item_root`
408
+ maps a `started` item onto the v1 spawn shape where items enter the turn state, so one
409
+ path registers both, and registers a child once: a repeated spawn item would otherwise
410
+ mine the rollout twice and double the child's rows and tokens. The other kinds
411
+ (`completed`, `interrupted`, `interacted`) are notices about a spawned child, dropped
412
+ there, so they neither become rows nor open a parent model call.
413
+
414
+ A child's tool calls come in two shapes. A direct call is a function call, and its output
415
+ header carries the exit code. A code-mode call is a custom tool `exec` whose input is a
416
+ JavaScript script, often several shell calls in a `Promise.all`. Its output tells only
417
+ whether the SCRIPT ran to the end: `tools.exec_command` hands a non-zero exit code back to
418
+ the script and does not throw, so `Script completed` is not a command result. The script
419
+ source is not parsed — a command built from a variable or a loop defeats any parser, and
420
+ the source holds no exit code. Instead, while a script runs, Codex writes an
421
+ `item_completed` record per shell command (`CommandExecution`: argv, exit code, output)
422
+ and per patch (`FileChange`), and those records ARE the script's rows, each with its own
423
+ result. A script that left no record stays one `exec` row, not a `Bash` row: its
424
+ JavaScript is not a shell command. The argv's login-shell wrapper (`/bin/zsh -lc <cmd>`)
425
+ is stripped, so a record's row reads like a direct call's.
426
+
427
+ A record names no script, so it goes to the newest script whose source holds its
428
+ command. A command can outlive its script: `tools.exec_command` returns at the call's own
429
+ `yield_time_ms` with a session id, the script ends, and a later script polls the command
430
+ with `tools.write_stdin`. The text match then gives the record to the script that started
431
+ the command, so that script is not also left as an `exec` row that repeats the command.
432
+ The match decodes the source's string escapes and then ignores backslashes. A multi-line
433
+ command is a `"a\nb"` literal in the source but holds real newlines in its record; in a
434
+ recorded 0.147 TUI thread, 3 of 10 such commands outlived their script and, undecoded,
435
+ went to a later one. The source also escapes the backslashes and double quotes that the
436
+ command holds; without ignoring backslashes, no record of a real 0.156.1 Windows e2e child
437
+ matched. A record that matches no source goes to the newest script: dropping it
438
+ would lose a command built from a variable, the miss this recovery exists to prevent,
439
+ while a wrong guess only moves the row to another generation. A record whose id is a
440
+ direct call's is dropped, so a direct call is never counted twice. Seen on real CLI
441
+ 0.156.1 runs, v1 and v2 children alike: the records sit between the script call and its
442
+ output, before the generation's `token_count`, and a 45-second command was polled as
443
+ described. Headless threads through 0.147 (the 0.144 SDK, 0.147 `codex exec`) write no
444
+ `CommandExecution` records, so there a code-mode script stays one `exec` row and its
445
+ commands are not recoverable. The 0.147 TUI and 0.155.1 (the SDK floor) write them, as do
446
+ 0.156.1 and 0.162, on Windows too.
447
+
448
+ A call with no result is `unknown`, never a success, so `require_success` does not credit
449
+ it: an interrupt cut it off, it still ran after its yield time, or `wait` stopped it. The
450
+ abort output is matched whole, so a command that prints `aborted by user` keeps its exit
451
+ code. The `wait` or `write_stdin` call that later returns the result is a row of its own
452
+ and does not change the yielded call: the records already carry each command's exit code,
453
+ so only a yielded script that ran no command, or a direct `exec_command` that a direct
454
+ `write_stdin` polls (no recorded run has one), stays `unknown`. A resuming call stays a
455
+ row because a generation that only resumed would otherwise hold no block, and the recovery
456
+ drops such a generation with its tokens; so each poll is one row, where the parent stream
457
+ records a polled command once. The abort forms come from `abort_message` in
458
+ `core/src/tools/parallel.rs` (only `exec_command` gets the wall time). A script yields
459
+ after `DEFAULT_EXEC_YIELD_TIME_MS` (10 s); about 8% of the scripts in recorded 0.144 to
460
+ 0.147 threads yielded.
461
+
462
+ A spawn with `fork_turns` copies the parent's history, tool calls included, into the head
463
+ of the child's rollout. In a forked rollout (`session_meta` carries `forked_from_id`),
464
+ parsing starts at the first `thread_settings_applied` with the child's thread id, so the
465
+ parent's commands are not credited to the child. A non-forked rollout is parsed whole:
466
+ that event also appears mid-thread on a settings change. A fork without that event is
467
+ also parsed whole, with a warning, so a format change that would credit the parent's
468
+ commands to the child shows in the logs.
469
+
398
470
  The thread-cumulative baseline is the other half. `ThreadTokenUsage.total` counts the whole
399
471
  THREAD, and the Codex thread is created once per task and reused, so by turn N it still
400
472
  carries turns 1..N-1. The orchestrator sums per-turn usages, so handing it the cumulative
@@ -2,6 +2,59 @@
2
2
 
3
3
  <!-- version list -->
4
4
 
5
+ ## v0.12.16 (2026-10-21)
6
+
7
+ ### Bug Fixes
8
+
9
+ - **codex**: Crash a turn codex ended as failed instead of grading it
10
+ ([#230](https://github.com/UiPath/coder_eval/pull/230),
11
+ [`30c62ce`](https://github.com/UiPath/coder_eval/commit/30c62ce212efd1bf517332497422327cf34bf7a7))
12
+
13
+
14
+ ## v0.12.15 (2026-10-21)
15
+
16
+ ### Bug Fixes
17
+
18
+ - **codex**: Match a multi-line command record to its exec script
19
+ ([#227](https://github.com/UiPath/coder_eval/pull/227),
20
+ [`b3242f9`](https://github.com/UiPath/coder_eval/commit/b3242f97540ac743c8c159b479a77bcac05809a7))
21
+
22
+ - **codex**: Read a sub-agent's commands from its rollout records
23
+ ([#227](https://github.com/UiPath/coder_eval/pull/227),
24
+ [`b3242f9`](https://github.com/UiPath/coder_eval/commit/b3242f97540ac743c8c159b479a77bcac05809a7))
25
+
26
+ - **codex**: Recover v2 sub-agent tool calls ([#227](https://github.com/UiPath/coder_eval/pull/227),
27
+ [`b3242f9`](https://github.com/UiPath/coder_eval/commit/b3242f97540ac743c8c159b479a77bcac05809a7))
28
+
29
+ - **deps**: Bump aiohttp 3.14.3 -> 3.14.4 for CVE-2026-111063 and CVE-2026-111064
30
+ ([#227](https://github.com/UiPath/coder_eval/pull/227),
31
+ [`b3242f9`](https://github.com/UiPath/coder_eval/commit/b3242f97540ac743c8c159b479a77bcac05809a7))
32
+
33
+ - **deps**: Bump certifi and virtualenv to clear pip-audit advisories
34
+ ([#232](https://github.com/UiPath/coder_eval/pull/232),
35
+ [`7628641`](https://github.com/UiPath/coder_eval/commit/7628641e42a743dc85dc8299178ea87297bb07e2))
36
+
37
+ - **deps**: Bump mcp 1.28.1 -> 1.30.0 for CVE-2026-59951
38
+ ([#228](https://github.com/UiPath/coder_eval/pull/228),
39
+ [`ea0e436`](https://github.com/UiPath/coder_eval/commit/ea0e436ec736f5bece0ed460f7f4c854de106d96))
40
+
41
+ - **deps**: Bump next to 15.5.28 (Next.js security update, Oct 14 2026)
42
+ ([#226](https://github.com/UiPath/coder_eval/pull/226),
43
+ [`872f857`](https://github.com/UiPath/coder_eval/commit/872f85764ad4f4d07c9b0659ee17941df0a3b9c9))
44
+
45
+ - **deps**: Bump next to patched release (Next.js security update, Oct 14 2026)
46
+ ([#226](https://github.com/UiPath/coder_eval/pull/226),
47
+ [`872f857`](https://github.com/UiPath/coder_eval/commit/872f85764ad4f4d07c9b0659ee17941df0a3b9c9))
48
+
49
+ - **deps**: Pin evalboard sharp to 0.35.5 and clear prod audit findings
50
+ ([#226](https://github.com/UiPath/coder_eval/pull/226),
51
+ [`872f857`](https://github.com/UiPath/coder_eval/commit/872f85764ad4f4d07c9b0659ee17941df0a3b9c9))
52
+
53
+ - **docker**: Pin uv in the agent image — 0.12.11+ copies cross-fs ~40x slower
54
+ ([#209](https://github.com/UiPath/coder_eval/pull/209),
55
+ [`634005d`](https://github.com/UiPath/coder_eval/commit/634005d2f0ee1848d96d08f080e79cf2bd43d56e))
56
+
57
+
5
58
  ## v0.12.14 (2026-10-15)
6
59
 
7
60
  ### Bug Fixes
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: coder-eval
3
- Version: 0.12.14
3
+ Version: 0.12.16
4
4
  Summary: Evaluate, benchmark, and A/B-test AI coding agents (Claude Code, Codex, Gemini/Antigravity, OpenCode, Pi, Delegate) with sandboxed, reproducible YAML task suites.
5
5
  Project-URL: Homepage, https://coder-eval.com
6
6
  Project-URL: Repository, https://github.com/UiPath/coder_eval
@@ -49,7 +49,7 @@ Requires-Dist: openai-codex>=0.155.1; extra == 'codex'
49
49
  Provides-Extra: dev
50
50
  Requires-Dist: bandit[toml]>=1.9.4; extra == 'dev'
51
51
  Requires-Dist: defusedxml>=0.7.1; extra == 'dev'
52
- Requires-Dist: mcp>=1.28.1; extra == 'dev'
52
+ Requires-Dist: mcp>=1.30.0; extra == 'dev'
53
53
  Requires-Dist: pip-audit>=2.10.0; extra == 'dev'
54
54
  Requires-Dist: pre-commit>=4.5.1; extra == 'dev'
55
55
  Requires-Dist: pyright>=1.1.408; extra == 'dev'
@@ -25,7 +25,7 @@ inputs:
25
25
  version:
26
26
  description: coder-eval version to install from PyPI, or "local" to install from the action checkout
27
27
  required: false
28
- default: "0.12.14" # <-- kept in sync with releases by release.yml
28
+ default: "0.12.16" # <-- kept in sync with releases by release.yml
29
29
  extras:
30
30
  description: >-
31
31
  Comma-separated coder-eval extras (`codex`, `antigravity,litellm`), composed
@@ -42,8 +42,18 @@ RUN curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \
42
42
  ARG PI_VERSION=0.87.1
43
43
  RUN npm install -g @earendil-works/pi-coding-agent@${PI_VERSION}
44
44
 
45
- # uv: matches host sandbox.py's `uv venv` + `uv pip install` fast path
46
- RUN curl -LsSf https://astral.sh/uv/install.sh | env UV_INSTALL_DIR=/usr/local/bin sh
45
+ # uv: matches host sandbox.py's `uv venv` + `uv pip install` fast path.
46
+ # Pinned for the same reason as the CLIs above: agents run `uv` themselves
47
+ # (coded-agent / function tasks build a venv in the workspace), so its speed is
48
+ # part of every such task's wall clock. The workspace is a bind mount and uv's
49
+ # cache is not, so uv cannot hardlink and copies every file instead. From 0.12.11
50
+ # that cross-filesystem copy is ~40x slower (146-package `uipath-langchain`
51
+ # install: 0.3s on 0.12.10, 10-14s on 0.12.11/.12/.19/.21; 60-130s on the CI
52
+ # host), and the unpinned install picked it up silently in the 0.12.1 image
53
+ # (2026-09-12, uv 0.12.12). Bump deliberately, after timing an install into a
54
+ # bind-mounted dir.
55
+ ARG UV_VERSION=0.12.10
56
+ RUN curl -LsSf https://astral.sh/uv/${UV_VERSION}/install.sh | env UV_INSTALL_DIR=/usr/local/bin sh
47
57
 
48
58
  WORKDIR /opt/coder_eval
49
59
 
@@ -210,6 +210,30 @@ The agent sets up SKILL.md files (Agent Skills open standard) in `.agents/skills
210
210
  5. Codex CLI auto-discovers skills in `.agents/skills/`
211
211
  6. Removes the copies when the turn ends, so criteria and run artifacts never see them
212
212
 
213
+ ### Sub-agents
214
+
215
+ A sub-agent runs on its own Codex thread, and its tool calls never reach the parent's
216
+ stream. After each turn the agent reads the child's rollout file under
217
+ `$CODEX_HOME/sessions` and records the child's calls as telemetry, nested under the
218
+ spawning `Agent` row. Spawns from multi-agent v1 (`spawnAgent`) and v2
219
+ (`subAgentActivity`) are both recovered.
220
+
221
+ - Each shell command the child ran is one `Bash` row with its own exit code, also when it
222
+ runs longer than its script. A code-mode script that runs several commands gives one row
223
+ per command.
224
+ - A non-zero exit is `result_status: error`. A call that Codex reports with no result is
225
+ `result_status: unknown`: an interrupt stopped it, or it still ran when its tool call
226
+ returned. `command_executed` with `require_success: true` counts neither. A later `wait`
227
+ or `write_stdin` call is a row of its own and does not change that status.
228
+ - Each file the child patched is a `Write` row.
229
+ - A code-mode `exec` script that ran no command and changed no file (for example, one
230
+ that only reads the tool list) is one `exec` row, not a `Bash` row.
231
+ - Headless Codex through 0.147 writes no command records; 0.155.1 (the SDK floor),
232
+ 0.156.1 and 0.162 do. On a CLI without records a code-mode script is one `exec`
233
+ row, and the commands inside it are not recovered.
234
+ - A multi-agent v2 spawn names no model, so the child's generations are priced at the
235
+ parent's model.
236
+
213
237
  ### Async Integration
214
238
 
215
239
  The Codex SDK is synchronous. The agent uses `_run_async()` helper to detect and await coroutines, preserving the async interface.
@@ -531,6 +531,18 @@ what that cell means: measured, but not placeable. On historical codex runs, thi
531
531
  moves ~8 h in aggregate out of Tool exec and into Unaccounted. No built-in agent
532
532
  writes this shape now.
533
533
 
534
+ ## Sub-agent tool calls
535
+
536
+ Only claude-code and codex nest a sub-agent's work under its spawn row
537
+ (`parent_tool_use_id`); the other harnesses record no sub-agent path.
538
+
539
+ | | claude-code | codex |
540
+ |---|---|---|
541
+ | spawn row | `Agent`, with the brief in `description` / `prompt` | `Agent` (`operation: spawnagent`), from a v1 `collabAgentToolCall` or a v2 `subAgentActivity` `started` item; on v2, no prompt (the spawn message is encrypted) and no model |
542
+ | the child's generations | nested live, with the child's real model | nested after the turn, rebuilt from the child's rollout under `$CODEX_HOME/sessions`, priced at the parent's model on v2 |
543
+ | the child's shell commands | one `Bash` row per call, status and `duration_ms` measured live | one `Bash` row per command, with its exit code, rebuilt from the child's rollout (CLI 0.156.1 and later); no `duration_ms`. See [Codex § Sub-agents](CODEX.md#sub-agents) |
544
+ | when the rows exist | during the turn, so live criteria see them | after the turn, so live criteria and `stop_early` do not see them |
545
+
534
546
  ## `max_turns` counts model API calls on every harness
535
547
 
536
548
  One turn is one main-thread model API call, the unit Claude Code's `--max-turns`
@@ -12,7 +12,7 @@
12
12
  "verify": "tsc --noEmit && vitest run && next build"
13
13
  },
14
14
  "dependencies": {
15
- "next": "^15.5.20",
15
+ "next": "^15.5.28",
16
16
  "react": "^19.0.0",
17
17
  "react-dom": "^19.0.0",
18
18
  "react-markdown": "^10.1.0",
@@ -44,7 +44,10 @@
44
44
  "postcss": "^8.5.10",
45
45
  "fast-xml-builder": "^1.1.7",
46
46
  "@babel/core": "^7.29.6",
47
- "uuid": "^11.1.1"
47
+ "uuid": "^11.1.1",
48
+ "sharp": "^0.35.5",
49
+ "nanoid": "^3.3.18",
50
+ "source-map-js": "^1.2.2"
48
51
  }
49
52
  }
50
53
  }