inspect-ai 0.3.87__tar.gz → 0.3.89__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 (1320) hide show
  1. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/CHANGELOG.md +31 -0
  2. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/PKG-INFO +1 -1
  3. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/_model-providers.md +3 -2
  4. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/agent-custom.qmd +12 -6
  5. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/agents.qmd +73 -27
  6. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/approval.qmd +2 -2
  7. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/datasets.qmd +2 -2
  8. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/eval-logs.qmd +21 -0
  9. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/extensions.qmd +1 -1
  10. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/models.qmd +84 -16
  11. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/providers.qmd +38 -9
  12. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/_sidebar.yml +8 -0
  13. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_ai.log.qmd +1 -0
  14. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_ai.model.qmd +1 -0
  15. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_ai.util.qmd +5 -0
  16. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/sandboxing.qmd +22 -17
  17. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/tasks.qmd +2 -0
  18. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/approval/approval.py +10 -10
  19. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/pyproject.toml +2 -1
  20. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_cli/eval.py +16 -0
  21. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_cli/score.py +1 -12
  22. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_cli/util.py +4 -2
  23. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/core/footer.py +2 -2
  24. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/plain/display.py +2 -2
  25. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/context.py +7 -1
  26. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/eval.py +51 -27
  27. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/evalset.py +27 -10
  28. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/loader.py +7 -8
  29. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/run.py +23 -31
  30. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/score.py +18 -1
  31. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/task/log.py +5 -13
  32. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/task/resolved.py +1 -0
  33. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/task/run.py +231 -244
  34. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/task/task.py +25 -2
  35. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/task/util.py +1 -8
  36. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/constants.py +1 -0
  37. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/json.py +8 -3
  38. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/registry.py +30 -13
  39. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/App.css +5 -0
  40. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/dist/assets/index.css +55 -18
  41. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/dist/assets/index.js +550 -458
  42. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/log-schema.json +84 -1
  43. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/metadata/MetaDataView.module.css +1 -1
  44. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/metadata/MetaDataView.tsx +13 -8
  45. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/metadata/RenderedContent.tsx +3 -0
  46. inspect_ai-0.3.89/src/inspect_ai/_view/www/src/plan/ModelCard.module.css +16 -0
  47. inspect_ai-0.3.89/src/inspect_ai/_view/www/src/plan/ModelCard.tsx +93 -0
  48. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/ModelEventView.tsx +5 -1
  49. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/SampleLimitEventView.tsx +3 -3
  50. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/state/StateEventView.tsx +6 -29
  51. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/types/log.d.ts +150 -129
  52. inspect_ai-0.3.89/src/inspect_ai/_view/www/src/workspace/navbar/ModelRolesView.module.css +16 -0
  53. inspect_ai-0.3.89/src/inspect_ai/_view/www/src/workspace/navbar/ModelRolesView.tsx +43 -0
  54. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/navbar/PrimaryBar.module.css +1 -1
  55. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/navbar/PrimaryBar.tsx +5 -0
  56. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/tabs/InfoTab.tsx +2 -0
  57. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_agent.py +12 -0
  58. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_as_tool.py +1 -1
  59. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_bridge/bridge.py +9 -2
  60. inspect_ai-0.3.89/src/inspect_ai/agent/_react.py +309 -0
  61. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_run.py +13 -2
  62. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_types.py +6 -0
  63. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/approval/_apply.py +6 -9
  64. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/approval/_approver.py +3 -3
  65. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/approval/_auto.py +2 -2
  66. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/approval/_call.py +20 -4
  67. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/approval/_human/approver.py +3 -3
  68. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/approval/_human/manager.py +2 -2
  69. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/approval/_human/panel.py +3 -3
  70. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/approval/_policy.py +3 -3
  71. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/__init__.py +2 -0
  72. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_log.py +23 -2
  73. inspect_ai-0.3.89/src/inspect_ai/log/_model.py +58 -0
  74. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_recorders/file.py +14 -3
  75. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_transcript.py +3 -0
  76. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/__init__.py +2 -0
  77. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_call_tools.py +15 -2
  78. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_model.py +49 -3
  79. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_openai.py +151 -21
  80. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/anthropic.py +25 -14
  81. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/bedrock.py +3 -3
  82. inspect_ai-0.3.89/src/inspect_ai/model/_providers/cloudflare.py +67 -0
  83. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/google.py +21 -10
  84. inspect_ai-0.3.89/src/inspect_ai/model/_providers/grok.py +41 -0
  85. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/groq.py +61 -37
  86. inspect_ai-0.3.89/src/inspect_ai/model/_providers/llama_cpp_python.py +20 -0
  87. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/mistral.py +8 -3
  88. inspect_ai-0.3.89/src/inspect_ai/model/_providers/ollama.py +20 -0
  89. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/openai.py +53 -157
  90. inspect_ai-0.3.89/src/inspect_ai/model/_providers/openai_compatible.py +195 -0
  91. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/openrouter.py +4 -15
  92. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/providers.py +11 -0
  93. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/together.py +25 -23
  94. inspect_ai-0.3.89/src/inspect_ai/model/_trim.py +83 -0
  95. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/solver/_plan.py +5 -3
  96. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tool_call.py +3 -0
  97. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tool_def.py +8 -2
  98. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/__init__.py +3 -0
  99. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_concurrency.py +15 -2
  100. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai.egg-info/PKG-INFO +1 -1
  101. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai.egg-info/SOURCES.txt +13 -7
  102. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/pyproject.toml +2 -0
  103. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/cdp/dom_snapshot.py +3 -1
  104. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/playwright_page_crawler.py +0 -3
  105. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/agent/test_agent_react.py +5 -3
  106. inspect_ai-0.3.89/tests/log/test_log_filename.py +8 -0
  107. inspect_ai-0.3.89/tests/model/gatsby.txt +6780 -0
  108. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/providers/test_cloudflare.py +1 -1
  109. inspect_ai-0.3.89/tests/model/providers/test_openai_compatible.py +31 -0
  110. inspect_ai-0.3.89/tests/model/test_model_length.py +147 -0
  111. inspect_ai-0.3.89/tests/model/test_model_roles.py +126 -0
  112. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/test_no_model.py +2 -1
  113. inspect_ai-0.3.89/tests/model/test_trim_messages.py +420 -0
  114. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/scorer/test_task_score.py +5 -0
  115. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/solver/test_bridge.py +9 -1
  116. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_helpers/utils.py +18 -1
  117. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_sample_limits.py +6 -6
  118. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/@types/log.d.ts +150 -129
  119. inspect_ai-0.3.87/docs/_agent-protocol.qmd +0 -458
  120. inspect_ai-0.3.87/src/inspect_ai/_eval/task/rundir.py +0 -78
  121. inspect_ai-0.3.87/src/inspect_ai/_view/www/node_modules/flatted/python/flatted.py +0 -149
  122. inspect_ai-0.3.87/src/inspect_ai/agent/_react.py +0 -241
  123. inspect_ai-0.3.87/src/inspect_ai/model/_providers/cloudflare.py +0 -146
  124. inspect_ai-0.3.87/src/inspect_ai/model/_providers/grok.py +0 -35
  125. inspect_ai-0.3.87/src/inspect_ai/model/_providers/llama_cpp_python.py +0 -21
  126. inspect_ai-0.3.87/src/inspect_ai/model/_providers/ollama.py +0 -21
  127. inspect_ai-0.3.87/tests/test_task_chdir/task1/task1.py +0 -16
  128. inspect_ai-0.3.87/tests/test_task_chdir/task2/task2.py +0 -18
  129. inspect_ai-0.3.87/tests/test_task_chdir/task3/task3.py +0 -16
  130. inspect_ai-0.3.87/tests/test_task_chdir.py +0 -43
  131. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/.github/dependabot.yml +0 -0
  132. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/.github/pull_request_template.md +0 -0
  133. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/.github/workflows/build.yml +0 -0
  134. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/.github/workflows/docker.yml +0 -0
  135. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/.github/workflows/docs.yml +0 -0
  136. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/.github/workflows/log_viewer.yml +0 -0
  137. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/.github/workflows/pypi.yml +0 -0
  138. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/.github/workflows/vscode.yml +0 -0
  139. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/.gitignore +0 -0
  140. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/.pre-commit-config.yaml +0 -0
  141. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/.pylintrc +0 -0
  142. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/.vscode/extensions.json +0 -0
  143. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/.vscode/launch.json +0 -0
  144. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/.vscode/settings.json +0 -0
  145. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/CITATION.cff +0 -0
  146. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/LICENSE +0 -0
  147. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/Makefile +0 -0
  148. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/README.md +0 -0
  149. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/.gitignore +0 -0
  150. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/CNAME +0 -0
  151. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/_container_limits.md +0 -0
  152. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/_errors_and_retries.md +0 -0
  153. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/_max_samples.md +0 -0
  154. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/_metadata_typing.md +0 -0
  155. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/_quarto.yml +0 -0
  156. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/_sample-preservation.md +0 -0
  157. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/_sandbox-dockerfile.md +0 -0
  158. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/_sandbox-image.md +0 -0
  159. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/_sandboxenv-interface.md +0 -0
  160. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/_setting_max_samples.md +0 -0
  161. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/_shuffling-choices.md +0 -0
  162. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/_store_typing.md +0 -0
  163. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/_tools-annotations-required.md +0 -0
  164. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/_tools-basics.md +0 -0
  165. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/_tools-configuration.md +0 -0
  166. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/_tools-scaffold.md +0 -0
  167. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/_tools-standard.md +0 -0
  168. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/_variables.yml +0 -0
  169. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/_vscode-viewing-logs.md +0 -0
  170. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/agent-bridge.qmd +0 -0
  171. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/caching.qmd +0 -0
  172. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/errors-and-limits.qmd +0 -0
  173. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/eval-sets.qmd +0 -0
  174. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/evals/evals.css +0 -0
  175. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/evals/evals.ejs +0 -0
  176. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/evals/evals.yml +0 -0
  177. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/evals/import.py +0 -0
  178. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/evals/index.qmd +0 -0
  179. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/evals/listing.yml +0 -0
  180. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/human-agent.qmd +0 -0
  181. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/aisi-logo.svg +0 -0
  182. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/eval-log.png +0 -0
  183. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-activity-bar.png +0 -0
  184. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-human-agent-container.png +0 -0
  185. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-human-agent.png +0 -0
  186. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-multiple-models.png +0 -0
  187. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-terminal-transcript.png +0 -0
  188. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-view-answers.png +0 -0
  189. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-view-filter.png +0 -0
  190. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-view-history.png +0 -0
  191. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-view-home.png +0 -0
  192. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-view-info.png +0 -0
  193. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-view-log-link.png +0 -0
  194. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-view-logging-console.png +0 -0
  195. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-view-logging.png +0 -0
  196. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-view-main.png +0 -0
  197. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-view-messages.png +0 -0
  198. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-view-metadata.png +0 -0
  199. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-view-scoring.png +0 -0
  200. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-view-sort.png +0 -0
  201. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-view-splash.png +0 -0
  202. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-vscode-config.png +0 -0
  203. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-vscode-install.png +0 -0
  204. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-vscode-logview.png +0 -0
  205. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-vscode-output-channel.png +0 -0
  206. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect-vscode-run-task.png +0 -0
  207. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/inspect.png +0 -0
  208. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/logs-drop-down.png +0 -0
  209. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/logs-open-button.png +0 -0
  210. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/logs.png +0 -0
  211. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/popularity.png +0 -0
  212. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/python-tool-view.png +0 -0
  213. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/rate-limit.png +0 -0
  214. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/running-theory.png +0 -0
  215. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/task-max-sandboxes.png +0 -0
  216. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/toolenv-no-cleanup.png +0 -0
  217. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/vnc-port-info.png +0 -0
  218. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/vnc-view-only.png +0 -0
  219. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/images/web-browser-tool-view.png +0 -0
  220. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/index.qmd +0 -0
  221. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/interactivity.qmd +0 -0
  222. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/llms.txt +0 -0
  223. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/log-viewer.qmd +0 -0
  224. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/multi-agent.qmd +0 -0
  225. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/multimodal.qmd +0 -0
  226. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/options.qmd +0 -0
  227. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/parallelism.qmd +0 -0
  228. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reasoning.qmd +0 -0
  229. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/.gitignore +0 -0
  230. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/_metadata.yml +0 -0
  231. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/filter/commands.py +0 -0
  232. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/filter/filter.py +0 -0
  233. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/filter/interlink.lua +0 -0
  234. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/filter/parse.py +0 -0
  235. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/filter/post.lua +0 -0
  236. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/filter/render.py +0 -0
  237. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/filter/sidebar.py +0 -0
  238. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/index.qmd +0 -0
  239. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_ai.agent.qmd +0 -0
  240. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_ai.approval.qmd +0 -0
  241. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_ai.dataset.qmd +0 -0
  242. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_ai.qmd +0 -0
  243. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_ai.scorer.qmd +0 -0
  244. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_ai.solver.qmd +0 -0
  245. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_ai.tool.qmd +0 -0
  246. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_cache.qmd +0 -0
  247. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_eval-retry.qmd +0 -0
  248. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_eval-set.qmd +0 -0
  249. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_eval.qmd +0 -0
  250. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_info.qmd +0 -0
  251. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_list.qmd +0 -0
  252. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_log.qmd +0 -0
  253. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_sandbox.qmd +0 -0
  254. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_score.qmd +0 -0
  255. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_trace.qmd +0 -0
  256. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/reference/inspect_view.qmd +0 -0
  257. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/scorers.qmd +0 -0
  258. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/scripts/post-render.sh +0 -0
  259. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/solvers.qmd +0 -0
  260. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/structured.qmd +0 -0
  261. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/theme.scss +0 -0
  262. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/tools-custom.qmd +0 -0
  263. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/tools-standard.qmd +0 -0
  264. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/tools.qmd +0 -0
  265. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/tracing.qmd +0 -0
  266. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/tutorial.qmd +0 -0
  267. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/typing.qmd +0 -0
  268. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/docs/vscode.qmd +0 -0
  269. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/approval/README.md +0 -0
  270. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/approval/approval.yaml +0 -0
  271. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/biology_qa.py +0 -0
  272. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/bridge/autogen/README.md +0 -0
  273. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/bridge/autogen/agent.py +0 -0
  274. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/bridge/autogen/dataset.json +0 -0
  275. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/bridge/autogen/task.py +0 -0
  276. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/bridge/langchain/README.md +0 -0
  277. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/bridge/langchain/agent.py +0 -0
  278. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/bridge/langchain/dataset.json +0 -0
  279. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/bridge/langchain/task.py +0 -0
  280. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/browser/browser.py +0 -0
  281. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/browser/compose.yaml +0 -0
  282. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/cache.py +0 -0
  283. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/computer/compose.yaml +0 -0
  284. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/computer/computer.py +0 -0
  285. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/computer/moonWeight.ods +0 -0
  286. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/evalset.py +0 -0
  287. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/hello_world.py +0 -0
  288. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/images/ballons.png +0 -0
  289. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/images/bike.png +0 -0
  290. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/images/images.jsonl +0 -0
  291. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/images/images.py +0 -0
  292. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/intervention/README.md +0 -0
  293. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/intervention/computer/approval.yaml +0 -0
  294. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/intervention/computer/compose.yaml +0 -0
  295. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/intervention/intervention.py +0 -0
  296. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/intervention/multi_tool/compose.yaml +0 -0
  297. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/intervention/shell/Dockerfile +0 -0
  298. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/intervention/shell/compose.yaml +0 -0
  299. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/popularity.py +0 -0
  300. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/security_guide.py +0 -0
  301. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/structured.py +0 -0
  302. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/surfer.py +0 -0
  303. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/theory_of_mind.py +0 -0
  304. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/examples/tool_use.py +0 -0
  305. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/requirements.txt +0 -0
  306. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/setup.cfg +0 -0
  307. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/__init__.py +0 -0
  308. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/__main__.py +0 -0
  309. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_cli/cache.py +0 -0
  310. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_cli/common.py +0 -0
  311. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_cli/info.py +0 -0
  312. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_cli/list.py +0 -0
  313. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_cli/log.py +0 -0
  314. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_cli/main.py +0 -0
  315. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_cli/sandbox.py +0 -0
  316. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_cli/trace.py +0 -0
  317. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_cli/view.py +0 -0
  318. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/__init__.py +0 -0
  319. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/core/active.py +0 -0
  320. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/core/config.py +0 -0
  321. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/core/display.py +0 -0
  322. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/core/group.py +0 -0
  323. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/core/panel.py +0 -0
  324. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/core/progress.py +0 -0
  325. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/core/results.py +0 -0
  326. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/core/rich.py +0 -0
  327. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/core/textual.py +0 -0
  328. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/plain/__init__.py +0 -0
  329. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/rich/__init__.py +0 -0
  330. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/rich/display.py +0 -0
  331. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/textual/app.py +0 -0
  332. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/textual/app.tcss +0 -0
  333. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/textual/display.py +0 -0
  334. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/textual/theme.py +0 -0
  335. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/textual/widgets/clock.py +0 -0
  336. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/textual/widgets/console.py +0 -0
  337. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/textual/widgets/footer.py +0 -0
  338. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/textual/widgets/port_mappings.py +0 -0
  339. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/textual/widgets/samples.py +0 -0
  340. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/textual/widgets/sandbox.py +0 -0
  341. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/textual/widgets/task_detail.py +0 -0
  342. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/textual/widgets/tasks.py +0 -0
  343. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/textual/widgets/titlebar.py +0 -0
  344. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/textual/widgets/toggle.py +0 -0
  345. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/textual/widgets/transcript.py +0 -0
  346. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_display/textual/widgets/vscode.py +0 -0
  347. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/__init__.py +0 -0
  348. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/list.py +0 -0
  349. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/registry.py +0 -0
  350. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/task/__init__.py +0 -0
  351. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/task/constants.py +0 -0
  352. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/task/epochs.py +0 -0
  353. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/task/error.py +0 -0
  354. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/task/generate.py +0 -0
  355. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/task/images.py +0 -0
  356. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/task/results.py +0 -0
  357. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/task/sandbox.py +0 -0
  358. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_eval/task/tasks.py +0 -0
  359. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/__init__.py +0 -0
  360. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/_async.py +0 -0
  361. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/ansi.py +0 -0
  362. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/appdirs.py +0 -0
  363. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/config.py +0 -0
  364. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/content.py +0 -0
  365. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/datetime.py +0 -0
  366. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/decorator.py +0 -0
  367. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/deprecation.py +0 -0
  368. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/dev.py +0 -0
  369. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/dict.py +0 -0
  370. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/dotenv.py +0 -0
  371. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/entrypoints.py +0 -0
  372. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/environ.py +0 -0
  373. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/error.py +0 -0
  374. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/file.py +0 -0
  375. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/format.py +0 -0
  376. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/future.py +0 -0
  377. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/git.py +0 -0
  378. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/hash.py +0 -0
  379. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/hooks.py +0 -0
  380. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/html.py +0 -0
  381. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/http.py +0 -0
  382. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/httpx.py +0 -0
  383. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/images.py +0 -0
  384. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/interrupt.py +0 -0
  385. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/kvstore.py +0 -0
  386. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/list.py +0 -0
  387. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/logger.py +0 -0
  388. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/notebook.py +0 -0
  389. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/notgiven.py +0 -0
  390. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/package.py +0 -0
  391. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/path.py +0 -0
  392. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/pattern.py +0 -0
  393. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/platform.py +0 -0
  394. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/port_names.py +0 -0
  395. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/retry.py +0 -0
  396. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/rich.py +0 -0
  397. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/samples.py +0 -0
  398. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/terminal.py +0 -0
  399. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/text.py +0 -0
  400. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/thread.py +0 -0
  401. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/throttle.py +0 -0
  402. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/trace.py +0 -0
  403. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/transcript.py +0 -0
  404. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/url.py +0 -0
  405. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/version.py +0 -0
  406. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/vscode.py +0 -0
  407. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_util/working.py +0 -0
  408. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/notify.py +0 -0
  409. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/schema.py +0 -0
  410. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/server.py +0 -0
  411. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/view.py +0 -0
  412. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/.gitignore +0 -0
  413. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/.prettierignore +0 -0
  414. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/.prettierrc.js +0 -0
  415. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/.tool-versions +0 -0
  416. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/.vscode/extensions.json +0 -0
  417. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/.vscode/settings.json +0 -0
  418. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/README.md +0 -0
  419. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/dist/assets/favicon.svg +0 -0
  420. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/dist/index.html +0 -0
  421. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/eslint.config.mjs +0 -0
  422. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/favicon.svg +0 -0
  423. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/index.html +0 -0
  424. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/jsconfig.json +0 -0
  425. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/package.json +0 -0
  426. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/postcss.config.cjs +0 -0
  427. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/App.tsx +0 -0
  428. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/AppErrorBoundary.tsx +0 -0
  429. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/api/api-browser.ts +0 -0
  430. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/api/api-http.ts +0 -0
  431. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/api/api-shared.ts +0 -0
  432. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/api/api-vscode.ts +0 -0
  433. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/api/client-api.ts +0 -0
  434. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/api/index.ts +0 -0
  435. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/api/jsonrpc.ts +0 -0
  436. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/api/types.ts +0 -0
  437. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/appearance/colors.ts +0 -0
  438. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/appearance/fonts.ts +0 -0
  439. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/appearance/icons.ts +0 -0
  440. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/appearance/styles.ts +0 -0
  441. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/AnsiDisplay.css +0 -0
  442. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/AnsiDisplay.tsx +0 -0
  443. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/AsciinemaPlayer.tsx +0 -0
  444. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/Card.css +0 -0
  445. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/Card.tsx +0 -0
  446. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/CopyButton.module.css +0 -0
  447. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/CopyButton.tsx +0 -0
  448. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/DownloadButton.css +0 -0
  449. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/DownloadButton.tsx +0 -0
  450. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/DownloadPanel.css +0 -0
  451. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/DownloadPanel.tsx +0 -0
  452. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/EmptyPanel.css +0 -0
  453. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/EmptyPanel.tsx +0 -0
  454. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/ErrorPanel.css +0 -0
  455. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/ErrorPanel.tsx +0 -0
  456. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/ExpandablePanel.css +0 -0
  457. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/ExpandablePanel.tsx +0 -0
  458. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/FindBand.css +0 -0
  459. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/FindBand.tsx +0 -0
  460. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/HumanBaselineView.css +0 -0
  461. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/HumanBaselineView.tsx +0 -0
  462. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/JsonPanel.css +0 -0
  463. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/JsonPanel.tsx +0 -0
  464. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/LabeledValue.css +0 -0
  465. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/LabeledValue.tsx +0 -0
  466. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/LargeModal.module.css +0 -0
  467. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/LargeModal.tsx +0 -0
  468. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/LightboxCarousel.module.css +0 -0
  469. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/LightboxCarousel.tsx +0 -0
  470. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/LinkButton.module.css +0 -0
  471. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/LinkButton.tsx +0 -0
  472. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/LiveVirtualList.module.css +0 -0
  473. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/LiveVirtualList.tsx +0 -0
  474. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/MarkdownDiv.css +0 -0
  475. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/MarkdownDiv.tsx +0 -0
  476. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/MessageBand.css +0 -0
  477. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/MessageBand.tsx +0 -0
  478. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/Modal.module.css +0 -0
  479. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/Modal.tsx +0 -0
  480. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/MorePopOver.css +0 -0
  481. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/MorePopOver.tsx +0 -0
  482. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/NavPills.module.css +0 -0
  483. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/NavPills.tsx +0 -0
  484. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/NoContentsPanel.module.css +0 -0
  485. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/NoContentsPanel.tsx +0 -0
  486. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/ProgressBar.module.css +0 -0
  487. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/ProgressBar.tsx +0 -0
  488. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/PulsingDots.module.css +0 -0
  489. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/PulsingDots.tsx +0 -0
  490. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/TabSet.module.css +0 -0
  491. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/TabSet.tsx +0 -0
  492. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/ToolButton.css +0 -0
  493. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/components/ToolButton.tsx +0 -0
  494. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/constants.ts +0 -0
  495. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/index.tsx +0 -0
  496. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/logfile/remoteLogFile.ts +0 -0
  497. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/logfile/remoteZipFile.ts +0 -0
  498. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/metadata/MetaDataGrid.tsx +0 -0
  499. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/metadata/MetadataGrid.module.css +0 -0
  500. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/metadata/RenderedContent.module.css +0 -0
  501. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/metadata/types.ts +0 -0
  502. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/plan/DatasetDetailView.module.css +0 -0
  503. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/plan/DatasetDetailView.tsx +0 -0
  504. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/plan/DetailStep.module.css +0 -0
  505. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/plan/DetailStep.tsx +0 -0
  506. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/plan/PlanCard.tsx +0 -0
  507. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/plan/PlanDetailView.module.css +0 -0
  508. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/plan/PlanDetailView.tsx +0 -0
  509. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/plan/ScorerDetailView.module.css +0 -0
  510. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/plan/ScorerDetailView.tsx +0 -0
  511. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/plan/SolverDetailView.module.css +0 -0
  512. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/plan/SolverDetailView.tsx +0 -0
  513. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/InlineSampleDisplay.module.css +0 -0
  514. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/InlineSampleDisplay.tsx +0 -0
  515. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/SampleDialog.tsx +0 -0
  516. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/SampleDisplay.module.css +0 -0
  517. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/SampleDisplay.tsx +0 -0
  518. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/SampleSummaryView.module.css +0 -0
  519. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/SampleSummaryView.tsx +0 -0
  520. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/SamplesTools.tsx +0 -0
  521. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/ChatMessage.module.css +0 -0
  522. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/ChatMessage.tsx +0 -0
  523. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/ChatMessageRenderer.tsx +0 -0
  524. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/ChatMessageRow.module.css +0 -0
  525. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/ChatMessageRow.tsx +0 -0
  526. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/ChatView.tsx +0 -0
  527. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/ChatViewVirtualList.module.css +0 -0
  528. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/ChatViewVirtualList.tsx +0 -0
  529. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/MessageContent.module.css +0 -0
  530. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/MessageContent.tsx +0 -0
  531. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/MessageContents.module.css +0 -0
  532. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/MessageContents.tsx +0 -0
  533. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/messages.ts +0 -0
  534. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/tools/ToolCallView.module.css +0 -0
  535. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/tools/ToolCallView.tsx +0 -0
  536. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/tools/ToolInput.module.css +0 -0
  537. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/tools/ToolInput.tsx +0 -0
  538. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/tools/ToolOutput.module.css +0 -0
  539. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/tools/ToolOutput.tsx +0 -0
  540. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/tools/ToolTitle.module.css +0 -0
  541. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/tools/ToolTitle.tsx +0 -0
  542. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/chat/tools/tool.ts +0 -0
  543. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/descriptor/samplesDescriptor.tsx +0 -0
  544. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/descriptor/score/BooleanScoreDescriptor.module.css +0 -0
  545. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/descriptor/score/BooleanScoreDescriptor.tsx +0 -0
  546. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/descriptor/score/CategoricalScoreDescriptor.tsx +0 -0
  547. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/descriptor/score/NumericScoreDescriptor.tsx +0 -0
  548. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/descriptor/score/ObjectScoreDescriptor.module.css +0 -0
  549. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/descriptor/score/ObjectScoreDescriptor.tsx +0 -0
  550. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/descriptor/score/OtherScoreDescriptor.tsx +0 -0
  551. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/descriptor/score/PassFailScoreDescriptor.module.css +0 -0
  552. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/descriptor/score/PassFailScoreDescriptor.tsx +0 -0
  553. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/descriptor/score/ScoreDescriptor.tsx +0 -0
  554. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/descriptor/types.ts +0 -0
  555. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/error/FlatSampleErrorView.module.css +0 -0
  556. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/error/FlatSampleErrorView.tsx +0 -0
  557. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/error/SampleErrorView.module.css +0 -0
  558. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/error/SampleErrorView.tsx +0 -0
  559. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/error/error.ts +0 -0
  560. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/list/SampleFooter.module.css +0 -0
  561. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/list/SampleFooter.tsx +0 -0
  562. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/list/SampleHeader.module.css +0 -0
  563. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/list/SampleHeader.tsx +0 -0
  564. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/list/SampleList.module.css +0 -0
  565. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/list/SampleList.tsx +0 -0
  566. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/list/SampleRow.module.css +0 -0
  567. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/list/SampleRow.tsx +0 -0
  568. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/list/SampleSeparator.module.css +0 -0
  569. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/list/SampleSeparator.tsx +0 -0
  570. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/sample-tools/EpochFilter.module.css +0 -0
  571. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/sample-tools/EpochFilter.tsx +0 -0
  572. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/sample-tools/SelectScorer.module.css +0 -0
  573. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/sample-tools/SelectScorer.tsx +0 -0
  574. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/sample-tools/SortFilter.module.css +0 -0
  575. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/sample-tools/SortFilter.tsx +0 -0
  576. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/sample-tools/filters.ts +0 -0
  577. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/sample-tools/sample-filter/SampleFilter.module.css +0 -0
  578. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/sample-tools/sample-filter/SampleFilter.tsx +0 -0
  579. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/sample-tools/sample-filter/completions.ts +0 -0
  580. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/sample-tools/sample-filter/language.ts +0 -0
  581. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/sample-tools/sample-filter/tokenize.ts +0 -0
  582. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/sampleDataAdapter.ts +0 -0
  583. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/sampleLimit.ts +0 -0
  584. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/scores/SampleScores.module.css +0 -0
  585. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/scores/SampleScores.tsx +0 -0
  586. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/scores/SampleScoresGrid.module.css +0 -0
  587. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/scores/SampleScoresGrid.tsx +0 -0
  588. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/scores/SampleScoresView.module.css +0 -0
  589. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/scores/SampleScoresView.tsx +0 -0
  590. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/ApprovalEventView.tsx +0 -0
  591. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/ErrorEventView.tsx +0 -0
  592. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/InfoEventView.module.css +0 -0
  593. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/InfoEventView.tsx +0 -0
  594. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/InputEventView.tsx +0 -0
  595. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/LoggerEventView.module.css +0 -0
  596. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/LoggerEventView.tsx +0 -0
  597. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/ModelEventView.module.css +0 -0
  598. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/SampleInitEventView.module.css +0 -0
  599. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/SampleInitEventView.tsx +0 -0
  600. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/SandboxEventView.module.css +0 -0
  601. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/SandboxEventView.tsx +0 -0
  602. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/ScoreEventView.module.css +0 -0
  603. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/ScoreEventView.tsx +0 -0
  604. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/StepEventView.tsx +0 -0
  605. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/SubtaskEventView.module.css +0 -0
  606. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/SubtaskEventView.tsx +0 -0
  607. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/ToolEventView.module.css +0 -0
  608. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/ToolEventView.tsx +0 -0
  609. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/TranscriptView.module.css +0 -0
  610. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/TranscriptView.tsx +0 -0
  611. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/TranscriptVirtualListComponent.module.css +0 -0
  612. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/TranscriptVirtualListComponent.tsx +0 -0
  613. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/event/EventNav.module.css +0 -0
  614. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/event/EventNav.tsx +0 -0
  615. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/event/EventNavs.module.css +0 -0
  616. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/event/EventNavs.tsx +0 -0
  617. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/event/EventPanel.module.css +0 -0
  618. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/event/EventPanel.tsx +0 -0
  619. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/event/EventProgressPanel.module.css +0 -0
  620. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/event/EventProgressPanel.tsx +0 -0
  621. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/event/EventRow.module.css +0 -0
  622. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/event/EventRow.tsx +0 -0
  623. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/event/EventSection.module.css +0 -0
  624. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/event/EventSection.tsx +0 -0
  625. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/event/EventTimingPanel.module.css +0 -0
  626. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/event/EventTimingPanel.tsx +0 -0
  627. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/event/utils.ts +0 -0
  628. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/state/StateDiffView.tsx +0 -0
  629. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/state/StateEventRenderers.tsx +0 -0
  630. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/state/StateEventRenders.module.css +0 -0
  631. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/state/StateEventView.module.css +0 -0
  632. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/samples/transcript/types.ts +0 -0
  633. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/scoring/utils.ts +0 -0
  634. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/state/appSlice.ts +0 -0
  635. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/state/hooks.ts +0 -0
  636. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/state/logPolling.ts +0 -0
  637. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/state/logSlice.ts +0 -0
  638. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/state/logsPolling.ts +0 -0
  639. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/state/logsSlice.ts +0 -0
  640. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/state/samplePolling.ts +0 -0
  641. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/state/sampleSlice.ts +0 -0
  642. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/state/sampleUtils.ts +0 -0
  643. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/state/scrolling.ts +0 -0
  644. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/state/store.ts +0 -0
  645. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/state/store_filter.ts +0 -0
  646. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/state/utils.ts +0 -0
  647. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/storage/index.ts +0 -0
  648. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/types/asciicinema-player.d.ts +0 -0
  649. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/types/jsondiffpatch.d.ts +0 -0
  650. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/types/markdown-it-katex.d.ts +0 -0
  651. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/types/prism.d.ts +0 -0
  652. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/types.ts +0 -0
  653. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/usage/ModelTokenTable.tsx +0 -0
  654. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/usage/ModelUsagePanel.module.css +0 -0
  655. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/usage/ModelUsagePanel.tsx +0 -0
  656. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/usage/TokenTable.module.css +0 -0
  657. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/usage/TokenTable.tsx +0 -0
  658. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/usage/UsageCard.module.css +0 -0
  659. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/usage/UsageCard.tsx +0 -0
  660. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/utils/attachments.ts +0 -0
  661. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/utils/base64.ts +0 -0
  662. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/utils/browser.ts +0 -0
  663. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/utils/debugging.ts +0 -0
  664. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/utils/dom.ts +0 -0
  665. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/utils/format.ts +0 -0
  666. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/utils/git.ts +0 -0
  667. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/utils/html.ts +0 -0
  668. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/utils/http.ts +0 -0
  669. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/utils/json-worker.ts +0 -0
  670. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/utils/json.ts +0 -0
  671. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/utils/logger.ts +0 -0
  672. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/utils/path.ts +0 -0
  673. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/utils/polling.ts +0 -0
  674. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/utils/print.ts +0 -0
  675. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/utils/queue.ts +0 -0
  676. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/utils/react.ts +0 -0
  677. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/utils/sync.ts +0 -0
  678. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/utils/type.ts +0 -0
  679. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/utils/vscode.ts +0 -0
  680. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/WorkSpace.tsx +0 -0
  681. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/WorkSpaceView.module.css +0 -0
  682. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/WorkSpaceView.tsx +0 -0
  683. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/error/TaskErrorPanel.module.css +0 -0
  684. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/error/TaskErrorPanel.tsx +0 -0
  685. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/navbar/Navbar.module.css +0 -0
  686. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/navbar/Navbar.tsx +0 -0
  687. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/navbar/ResultsPanel.module.css +0 -0
  688. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/navbar/ResultsPanel.tsx +0 -0
  689. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/navbar/RunningStatusPanel.module.css +0 -0
  690. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/navbar/RunningStatusPanel.tsx +0 -0
  691. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/navbar/ScoreGrid.module.css +0 -0
  692. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/navbar/ScoreGrid.tsx +0 -0
  693. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/navbar/SecondaryBar.module.css +0 -0
  694. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/navbar/SecondaryBar.tsx +0 -0
  695. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/navbar/StatusPanel.module.css +0 -0
  696. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/navbar/StatusPanel.tsx +0 -0
  697. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/sidebar/EvalStatus.module.css +0 -0
  698. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/sidebar/EvalStatus.tsx +0 -0
  699. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/sidebar/LogDirectoryTitleView.module.css +0 -0
  700. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/sidebar/LogDirectoryTitleView.tsx +0 -0
  701. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/sidebar/Sidebar.module.css +0 -0
  702. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/sidebar/Sidebar.tsx +0 -0
  703. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/sidebar/SidebarLogEntry.module.css +0 -0
  704. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/sidebar/SidebarLogEntry.tsx +0 -0
  705. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/sidebar/SidebarScoreView.module.css +0 -0
  706. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/sidebar/SidebarScoreView.tsx +0 -0
  707. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/sidebar/SidebarScoresView.module.css +0 -0
  708. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/sidebar/SidebarScoresView.tsx +0 -0
  709. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/tabs/InfoTab.module.css +0 -0
  710. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/tabs/JsonTab.module.css +0 -0
  711. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/tabs/JsonTab.tsx +0 -0
  712. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/tabs/RunningNoSamples.module.css +0 -0
  713. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/tabs/RunningNoSamples.tsx +0 -0
  714. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/tabs/SamplesTab.tsx +0 -0
  715. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/tabs/grouping.ts +0 -0
  716. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/tabs/types.ts +0 -0
  717. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/types.ts +0 -0
  718. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/src/workspace/utils.ts +0 -0
  719. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/tsconfig.json +0 -0
  720. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/vite.config.js +0 -0
  721. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/_view/www/yarn.lock +0 -0
  722. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/__init__.py +0 -0
  723. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_as_solver.py +0 -0
  724. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_bridge/__init__.py +0 -0
  725. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_bridge/patch.py +0 -0
  726. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_filter.py +0 -0
  727. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_handoff.py +0 -0
  728. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_human/__init__.py +0 -0
  729. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_human/agent.py +0 -0
  730. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_human/commands/__init__.py +0 -0
  731. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_human/commands/clock.py +0 -0
  732. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_human/commands/command.py +0 -0
  733. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_human/commands/instructions.py +0 -0
  734. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_human/commands/note.py +0 -0
  735. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_human/commands/score.py +0 -0
  736. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_human/commands/status.py +0 -0
  737. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_human/commands/submit.py +0 -0
  738. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_human/install.py +0 -0
  739. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_human/panel.py +0 -0
  740. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_human/service.py +0 -0
  741. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_human/state.py +0 -0
  742. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/agent/_human/view.py +0 -0
  743. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/approval/__init__.py +0 -0
  744. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/approval/_approval.py +0 -0
  745. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/approval/_human/__init__.py +0 -0
  746. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/approval/_human/console.py +0 -0
  747. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/approval/_human/util.py +0 -0
  748. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/approval/_registry.py +0 -0
  749. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/dataset/__init__.py +0 -0
  750. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/dataset/_dataset.py +0 -0
  751. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/dataset/_examples/bias_detection.jsonl +0 -0
  752. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/dataset/_examples/biology_qa.jsonl +0 -0
  753. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/dataset/_examples/popularity.jsonl +0 -0
  754. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/dataset/_examples/security_guide.jsonl +0 -0
  755. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/dataset/_examples/theory_of_mind.jsonl +0 -0
  756. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/dataset/_sources/__init__.py +0 -0
  757. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/dataset/_sources/csv.py +0 -0
  758. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/dataset/_sources/example.py +0 -0
  759. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/dataset/_sources/file.py +0 -0
  760. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/dataset/_sources/hf.py +0 -0
  761. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/dataset/_sources/json.py +0 -0
  762. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/dataset/_sources/util.py +0 -0
  763. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/dataset/_util.py +0 -0
  764. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_bundle.py +0 -0
  765. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_condense.py +0 -0
  766. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_convert.py +0 -0
  767. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_file.py +0 -0
  768. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_message.py +0 -0
  769. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_recorders/__init__.py +0 -0
  770. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_recorders/buffer/__init__.py +0 -0
  771. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_recorders/buffer/buffer.py +0 -0
  772. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_recorders/buffer/database.py +0 -0
  773. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_recorders/buffer/filestore.py +0 -0
  774. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_recorders/buffer/types.py +0 -0
  775. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_recorders/create.py +0 -0
  776. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_recorders/eval.py +0 -0
  777. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_recorders/json.py +0 -0
  778. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_recorders/recorder.py +0 -0
  779. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_recorders/types.py +0 -0
  780. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_retry.py +0 -0
  781. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/log/_samples.py +0 -0
  782. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_cache.py +0 -0
  783. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_chat_message.py +0 -0
  784. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_conversation.py +0 -0
  785. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_display.py +0 -0
  786. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_generate_config.py +0 -0
  787. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_model_call.py +0 -0
  788. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_model_output.py +0 -0
  789. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_openai_computer_use.py +0 -0
  790. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_openai_responses.py +0 -0
  791. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/azureai.py +0 -0
  792. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/hf.py +0 -0
  793. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/mockllm.py +0 -0
  794. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/none.py +0 -0
  795. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/openai_o1.py +0 -0
  796. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/openai_responses.py +0 -0
  797. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/util/__init__.py +0 -0
  798. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/util/chatapi.py +0 -0
  799. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/util/hf_handler.py +0 -0
  800. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/util/hooks.py +0 -0
  801. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/util/llama31.py +0 -0
  802. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/util/util.py +0 -0
  803. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/vertex.py +0 -0
  804. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_providers/vllm.py +0 -0
  805. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_reasoning.py +0 -0
  806. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_registry.py +0 -0
  807. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/model/_render.py +0 -0
  808. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/py.typed +0 -0
  809. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/__init__.py +0 -0
  810. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_answer.py +0 -0
  811. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_choice.py +0 -0
  812. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_classification.py +0 -0
  813. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_common.py +0 -0
  814. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_match.py +0 -0
  815. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_metric.py +0 -0
  816. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_metrics/__init__.py +0 -0
  817. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_metrics/accuracy.py +0 -0
  818. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_metrics/grouped.py +0 -0
  819. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_metrics/mean.py +0 -0
  820. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_metrics/std.py +0 -0
  821. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_model.py +0 -0
  822. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_multi.py +0 -0
  823. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_pattern.py +0 -0
  824. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_reducer/__init__.py +0 -0
  825. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_reducer/reducer.py +0 -0
  826. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_reducer/registry.py +0 -0
  827. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_reducer/types.py +0 -0
  828. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_score.py +0 -0
  829. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_scorer.py +0 -0
  830. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/scorer/_target.py +0 -0
  831. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/solver/__init__.py +0 -0
  832. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/solver/_basic_agent.py +0 -0
  833. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/solver/_bridge.py +0 -0
  834. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/solver/_chain.py +0 -0
  835. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/solver/_critique.py +0 -0
  836. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/solver/_fork.py +0 -0
  837. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/solver/_human_agent.py +0 -0
  838. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/solver/_limit.py +0 -0
  839. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/solver/_multiple_choice.py +0 -0
  840. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/solver/_prompt.py +0 -0
  841. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/solver/_run.py +0 -0
  842. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/solver/_solver.py +0 -0
  843. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/solver/_task_state.py +0 -0
  844. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/solver/_transcript.py +0 -0
  845. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/solver/_use_tools.py +0 -0
  846. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/solver/_util.py +0 -0
  847. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/__init__.py +0 -0
  848. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tool.py +0 -0
  849. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tool_choice.py +0 -0
  850. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tool_description.py +0 -0
  851. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tool_info.py +0 -0
  852. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tool_params.py +0 -0
  853. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tool_support_helpers.py +0 -0
  854. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tool_transcript.py +0 -0
  855. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tool_with.py +0 -0
  856. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/__init__.py +0 -0
  857. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_bash_session.py +0 -0
  858. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/__init__.py +0 -0
  859. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_common.py +0 -0
  860. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_computer.py +0 -0
  861. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/Dockerfile +0 -0
  862. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/README.md +0 -0
  863. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/entrypoint/entrypoint.sh +0 -0
  864. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/entrypoint/novnc_startup.sh +0 -0
  865. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/entrypoint/x11vnc_startup.sh +0 -0
  866. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/entrypoint/xfce_startup.sh +0 -0
  867. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/entrypoint/xvfb_startup.sh +0 -0
  868. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/image_home_dir/.config/Code/User/globalStorage/state.vscdb +0 -0
  869. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/image_home_dir/.config/Code/User/settings.json +0 -0
  870. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/image_home_dir/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml +0 -0
  871. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/image_home_dir/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-screensaver.xml +0 -0
  872. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/image_home_dir/.config/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xml +0 -0
  873. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/image_home_dir/Desktop/Firefox Web Browser.desktop +0 -0
  874. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/image_home_dir/Desktop/Terminal.desktop +0 -0
  875. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/image_home_dir/Desktop/Visual Studio Code.desktop +0 -0
  876. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/tool/.pylintrc +0 -0
  877. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/tool/.vscode/settings.json +0 -0
  878. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/tool/__init__.py +0 -0
  879. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/tool/_args.py +0 -0
  880. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/tool/_constants.py +0 -0
  881. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/tool/_logger.py +0 -0
  882. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/tool/_run.py +0 -0
  883. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/tool/_tool_result.py +0 -0
  884. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/tool/_x11_client.py +0 -0
  885. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/tool/computer_tool.py +0 -0
  886. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/tool/pyproject.toml +0 -0
  887. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/_resources/tool/requirements.txt +0 -0
  888. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_computer/test_args.py +0 -0
  889. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_execute.py +0 -0
  890. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_text_editor.py +0 -0
  891. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_think.py +0 -0
  892. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_web_browser/__init__.py +0 -0
  893. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_web_browser/_back_compat.py +0 -0
  894. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_web_browser/_web_browser.py +0 -0
  895. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/_tools/_web_search.py +0 -0
  896. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/tool/beta.py +0 -0
  897. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_anyio.py +0 -0
  898. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_console.py +0 -0
  899. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_conversation.py +0 -0
  900. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_display.py +0 -0
  901. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_json.py +0 -0
  902. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_panel.py +0 -0
  903. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_resource.py +0 -0
  904. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_sandbox/__init__.py +0 -0
  905. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_sandbox/context.py +0 -0
  906. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_sandbox/docker/cleanup.py +0 -0
  907. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_sandbox/docker/compose.py +0 -0
  908. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_sandbox/docker/config.py +0 -0
  909. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_sandbox/docker/docker.py +0 -0
  910. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_sandbox/docker/internal.py +0 -0
  911. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_sandbox/docker/prereqs.py +0 -0
  912. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_sandbox/docker/service.py +0 -0
  913. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_sandbox/docker/util.py +0 -0
  914. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_sandbox/environment.py +0 -0
  915. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_sandbox/events.py +0 -0
  916. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_sandbox/limits.py +0 -0
  917. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_sandbox/local.py +0 -0
  918. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_sandbox/registry.py +0 -0
  919. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_sandbox/self_check.py +0 -0
  920. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_sandbox/service.py +0 -0
  921. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_store.py +0 -0
  922. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_store_model.py +0 -0
  923. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_subprocess.py +0 -0
  924. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_subtask.py +0 -0
  925. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai/util/_throttle.py +0 -0
  926. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai.egg-info/dependency_links.txt +0 -0
  927. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai.egg-info/entry_points.txt +0 -0
  928. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai.egg-info/requires.txt +0 -0
  929. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_ai.egg-info/top_level.txt +0 -0
  930. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/.pylintrc +0 -0
  931. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/.vscode/launch.json +0 -0
  932. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/.vscode/settings.json +0 -0
  933. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/CHANGELOG.md +0 -0
  934. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/Dockerfile +0 -0
  935. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/MANIFEST.in +0 -0
  936. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/README.md +0 -0
  937. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/cspell.json +0 -0
  938. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/shared_tool_container_design.svg +0 -0
  939. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/__init__.py +0 -0
  940. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/__main__.py +0 -0
  941. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_cli/__init__.py +0 -0
  942. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_cli/_post_install.py +0 -0
  943. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_cli/main.py +0 -0
  944. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_cli/server.py +0 -0
  945. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_in_process_tools/__init__.py +0 -0
  946. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_in_process_tools/_text_editor/__init__.py +0 -0
  947. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_in_process_tools/_text_editor/_run.py +0 -0
  948. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_in_process_tools/_text_editor/json_rpc_methods.py +0 -0
  949. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_in_process_tools/_text_editor/text_editor.py +0 -0
  950. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_in_process_tools/_text_editor/tool_types.py +0 -0
  951. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/__init__.py +0 -0
  952. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_bash_session/__init__.py +0 -0
  953. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_bash_session/bash_process.py +0 -0
  954. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_bash_session/bash_session.py +0 -0
  955. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_bash_session/controller.py +0 -0
  956. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_bash_session/json_rpc_methods.py +0 -0
  957. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_bash_session/tool_types.py +0 -0
  958. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/README.md +0 -0
  959. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/__init__.py +0 -0
  960. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/accessibility_tree.py +0 -0
  961. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/accessibility_tree_node.py +0 -0
  962. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/cdp/__init__.py +0 -0
  963. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/cdp/a11y.py +0 -0
  964. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/cdp/dom.py +0 -0
  965. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/cdp/page.py +0 -0
  966. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/constants.py +0 -0
  967. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/controller.py +0 -0
  968. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/images/usage_diagram.svg +0 -0
  969. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/json_rpc_methods.py +0 -0
  970. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/mock_environment.py +0 -0
  971. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/playwright_browser.py +0 -0
  972. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/playwright_crawler.py +0 -0
  973. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/rectangle.py +0 -0
  974. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/scale_factor.py +0 -0
  975. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/test_accessibility_tree_node.py +0 -0
  976. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/test_playwright_crawler.py +0 -0
  977. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/test_rectangle.py +0 -0
  978. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/test_web_client.py +0 -0
  979. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_remote_tools/_web_browser/tool_types.py +0 -0
  980. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_util/__init__.py +0 -0
  981. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_util/_common_types.py +0 -0
  982. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_util/_constants.py +0 -0
  983. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_util/_json_rpc_helpers.py +0 -0
  984. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_util/_load_tools.py +0 -0
  985. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_util/_session_controller.py +0 -0
  986. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/src/inspect_tool_support/src/inspect_tool_support/_util/_validation.py +0 -0
  987. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/agent/_human/test_state.py +0 -0
  988. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/agent/compose.yaml +0 -0
  989. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/agent/test_agent_description.py +0 -0
  990. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/agent/test_agent_docs.py +0 -0
  991. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/agent/test_agent_execute.py +0 -0
  992. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/agent/test_agent_handoff.py +0 -0
  993. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/approval/approve.yaml +0 -0
  994. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/approval/escalate.yaml +0 -0
  995. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/approval/modify.yaml +0 -0
  996. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/approval/reject.yaml +0 -0
  997. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/approval/terminate.yaml +0 -0
  998. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/approval/test_approval.py +0 -0
  999. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/conftest.py +0 -0
  1000. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/dataset/test_dataset/dataset.jsonl +0 -0
  1001. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/dataset/test_dataset/images/ballons.png +0 -0
  1002. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/dataset/test_dataset/images.jsonl +0 -0
  1003. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/dataset/test_dataset/samples-md.csv +0 -0
  1004. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/dataset/test_dataset/samples-md.json +0 -0
  1005. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/dataset/test_dataset/samples-md.jsonl +0 -0
  1006. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/dataset/test_dataset/samples.csv +0 -0
  1007. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/dataset/test_dataset/samples.json +0 -0
  1008. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/dataset/test_dataset/samples.jsonl +0 -0
  1009. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/dataset/test_dataset.py +0 -0
  1010. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_eval_log/log_formats.eval +0 -0
  1011. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_eval_log/log_formats.json +0 -0
  1012. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_eval_log/log_images.json +0 -0
  1013. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_eval_log/log_images_tc.json +0 -0
  1014. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_eval_log/log_invalid.txt +0 -0
  1015. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_eval_log/log_length_stop_reason.txt +0 -0
  1016. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_eval_log/log_streaming.eval +0 -0
  1017. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_eval_log/log_valid.txt +0 -0
  1018. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_eval_log/log_version_3.txt +0 -0
  1019. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_eval_log/log_with_nan.txt +0 -0
  1020. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_eval_log.py +0 -0
  1021. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_list_logs/2024-11-05T13-31-45-05-00_input-task_8zXjbRzCWrL9GXiXo2vus9.json +0 -0
  1022. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_list_logs/2024-11-05T13-32-37-05-00_input-task_hxs4q9azL3ySGkjJirypKZ.eval +0 -0
  1023. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_list_logs/custom.eval +0 -0
  1024. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_list_logs/ignore.json +0 -0
  1025. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_list_logs.py +0 -0
  1026. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_log_attachments.py +0 -0
  1027. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_log_eventdb.py +0 -0
  1028. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_log_eventdb_sync.py +0 -0
  1029. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_log_formats.py +0 -0
  1030. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_log_level.py +0 -0
  1031. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_log_message_id.py +0 -0
  1032. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_log_streaming.py +0 -0
  1033. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/log/test_log_tags.py +0 -0
  1034. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/__init__.py +0 -0
  1035. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/providers/test_anthropic.py +0 -0
  1036. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/providers/test_azureai.py +0 -0
  1037. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/providers/test_google.py +0 -0
  1038. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/providers/test_grok.py +0 -0
  1039. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/providers/test_groq.py +0 -0
  1040. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/providers/test_hf.py +0 -0
  1041. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/providers/test_llama_cpp_python.py +0 -0
  1042. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/providers/test_mistral.py +0 -0
  1043. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/providers/test_openai.py +0 -0
  1044. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/providers/test_openai_o1.py +0 -0
  1045. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/providers/test_openai_responses.py +0 -0
  1046. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/providers/test_vertex.py +0 -0
  1047. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/providers/test_vllm.py +0 -0
  1048. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/test_api_key.py +0 -0
  1049. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/test_cache.py +0 -0
  1050. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/test_collapse_assistant_message.py +0 -0
  1051. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/test_collapse_user_message.py +0 -0
  1052. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/test_disable.py +0 -0
  1053. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/test_generate_loop.py +0 -0
  1054. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/test_get_model.py +0 -0
  1055. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/test_is_rate_limit.py +0 -0
  1056. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/test_logprobs.py +0 -0
  1057. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/test_mock_model_llm.py +0 -0
  1058. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/test_num_choices.py +0 -0
  1059. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/test_parse_tool_call.py +0 -0
  1060. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/test_reasoning_claude.py +0 -0
  1061. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/test_reasoning_content.py +0 -0
  1062. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/test_reasoning_parse.py +0 -0
  1063. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/test_stop_reason.py +0 -0
  1064. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/test_structured_output.py +0 -0
  1065. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/model/test_tool_result_images_as_user_message.py +0 -0
  1066. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/scorer/logs/2025-02-11T15-17-00-05-00_popularity_dPiJifoWeEQBrfWsAopzWr.eval +0 -0
  1067. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/scorer/logs/2025-02-11T15-18-04-05-00_popularity_mj7khqpMM4GBCfVQozKgzB.eval +0 -0
  1068. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/scorer/test_answer.py +0 -0
  1069. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/scorer/test_choice.py +0 -0
  1070. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/scorer/test_classification.py +0 -0
  1071. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/scorer/test_match.py +0 -0
  1072. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/scorer/test_metric.py +0 -0
  1073. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/scorer/test_model_graded.py +0 -0
  1074. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/scorer/test_multiscorer.py +0 -0
  1075. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/scorer/test_pattern.py +0 -0
  1076. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/scorer/test_reducers.py +0 -0
  1077. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/scorer/test_scorer.py +0 -0
  1078. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/scorer/test_value_to_float.py +0 -0
  1079. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/solver/test_basic_agent.py +0 -0
  1080. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/solver/test_chain.py +0 -0
  1081. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/solver/test_fork.py +0 -0
  1082. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/solver/test_multiple_choice.py +0 -0
  1083. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/solver/test_prompt.py +0 -0
  1084. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/solver/test_score.py +0 -0
  1085. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/solver/test_setup.py +0 -0
  1086. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/solver/test_solver.py +0 -0
  1087. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/solver/test_solver_decorator.py +0 -0
  1088. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/solver/test_solver_spec.py +0 -0
  1089. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/solver/test_store.py +0 -0
  1090. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/solver/test_store_model.py +0 -0
  1091. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/solver/test_subtask.py +0 -0
  1092. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/solver/test_transcript.py +0 -0
  1093. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_eval.py +0 -0
  1094. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_eval_config/model.yaml +0 -0
  1095. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_eval_config/solver.yaml +0 -0
  1096. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_eval_config/task.yaml +0 -0
  1097. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_eval_config.py +0 -0
  1098. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_eval_set/2024-08-29T15-11-17+00-00_popularity_5EAmX6wjMFqea6WY7XHzZp.json +0 -0
  1099. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_eval_set/2024-08-29T15-11-18+00-00_popularity_5EAmX6wjMFqea6WY7XHzZp.json +0 -0
  1100. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_eval_set.py +0 -0
  1101. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_examples.py +0 -0
  1102. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_extensions.py +0 -0
  1103. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_fail_on_error.py +0 -0
  1104. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_helpers/__init__.py +0 -0
  1105. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_helpers/file_runner.py +0 -0
  1106. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_helpers/tasks.py +0 -0
  1107. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_helpers/tool_call_utils.py +0 -0
  1108. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_helpers/tools.py +0 -0
  1109. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_list_task.py +0 -0
  1110. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_log_dir/example_task/example_task.py +0 -0
  1111. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_log_dir/test_log_dir.py +0 -0
  1112. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_metadata.py +0 -0
  1113. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_package/.gitignore +0 -0
  1114. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_package/inspect_package/__init__.py +0 -0
  1115. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_package/inspect_package/_registry.py +0 -0
  1116. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_package/inspect_package/approvers/renamer.py +0 -0
  1117. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_package/inspect_package/modelapi/custom.py +0 -0
  1118. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_package/inspect_package/py.typed +0 -0
  1119. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_package/inspect_package/sandboxenv/podman.py +0 -0
  1120. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_package/inspect_package/score/scorer.py +0 -0
  1121. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_package/inspect_package/solvers/cot.py +0 -0
  1122. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_package/pyproject.toml +0 -0
  1123. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_retry.py +0 -0
  1124. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_sample_id.py +0 -0
  1125. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_task_attr.py +0 -0
  1126. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_task_list/__init__.py +0 -0
  1127. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_task_list/attribs.ipynb +0 -0
  1128. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_task_list/multiple.py +0 -0
  1129. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_task_list/multiple_dir/_decoy/testit.py +0 -0
  1130. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_task_list/multiple_dir/_decoy2.py +0 -0
  1131. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_task_list/multiple_dir/bar.py +0 -0
  1132. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_task_list/multiple_dir/foo.py +0 -0
  1133. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_task_list/recurse/.folder3/epsilon.py +0 -0
  1134. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_task_list/recurse/folder1/_decoy.py +0 -0
  1135. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_task_list/recurse/folder1/theta.py +0 -0
  1136. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_task_list/recurse/folder2/.folder3/epsilon.py +0 -0
  1137. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_task_list/recurse/folder2/another.py +0 -0
  1138. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_task_list/recurse/folder2/first.py +0 -0
  1139. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_task_model.py +0 -0
  1140. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/test_task_with.py +0 -0
  1141. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/docker-compose-context/Dockerfile +0 -0
  1142. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/docker-compose-context-alpine/Dockerfile +0 -0
  1143. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_bash_tool.py +0 -0
  1144. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_max_exec_output.py +0 -0
  1145. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_max_tool_output.py +0 -0
  1146. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_python_tool.py +0 -0
  1147. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_sandbox_compose.yaml +0 -0
  1148. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_sandbox_compose_alpine.yaml +0 -0
  1149. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_sandbox_docker_and_local.py +0 -0
  1150. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_sandbox_dockerfile.py +0 -0
  1151. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_sandbox_tool_eval.py +0 -0
  1152. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_think_tool.py +0 -0
  1153. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_tool_def.py +0 -0
  1154. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_tool_images.py +0 -0
  1155. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_tool_internal_name.py +0 -0
  1156. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_tool_parse.py +0 -0
  1157. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_tool_truncate.py +0 -0
  1158. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_tool_types.py +0 -0
  1159. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_tool_view.py +0 -0
  1160. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_tool_with.py +0 -0
  1161. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_tools.py +0 -0
  1162. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_use_tools.py +0 -0
  1163. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_web_browser.py +0 -0
  1164. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/tools/test_web_browser_compose.yaml +0 -0
  1165. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/sandbox/Dockerfile +0 -0
  1166. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/sandbox/Dockerfile.debug +0 -0
  1167. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/sandbox/debug.Dockerfile +0 -0
  1168. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/sandbox/docker_compose_multiple_services/docker-compose.yaml +0 -0
  1169. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/sandbox/sandbox_setup.sh +0 -0
  1170. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/sandbox/sandbox_setup_error.sh +0 -0
  1171. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/sandbox/test_docker_compose_multiple_services.py +0 -0
  1172. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/sandbox/test_docker_filenames.py +0 -0
  1173. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/sandbox/test_docker_healthcheck.py +0 -0
  1174. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/sandbox/test_multi_sandbox_context_management.py +0 -0
  1175. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/sandbox/test_sandbox_service.py +0 -0
  1176. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/sandbox/test_sandbox_setup.py +0 -0
  1177. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/test_display_counter.py +0 -0
  1178. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/test_file.py +0 -0
  1179. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/test_format_template.py +0 -0
  1180. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/test_images/images.jsonl +0 -0
  1181. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/test_images.py +0 -0
  1182. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/test_kvstore.py +0 -0
  1183. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/test_media/audio.jsonl +0 -0
  1184. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/test_media/sample.mp3 +0 -0
  1185. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/test_media/sample.wav +0 -0
  1186. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/test_media/video.jsonl +0 -0
  1187. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/test_media/video.mp4 +0 -0
  1188. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/test_media.py +0 -0
  1189. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/test_package.py +0 -0
  1190. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/test_registry.py +0 -0
  1191. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/test_str_to_float.py +0 -0
  1192. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/test_subprocess.py +0 -0
  1193. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/util/test_truncate.py +0 -0
  1194. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tests/view/test_bundle.py +0 -0
  1195. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/.gitignore +0 -0
  1196. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/.vscode/extensions.json +0 -0
  1197. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/.vscode/launch.json +0 -0
  1198. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/.vscode/settings.json +0 -0
  1199. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/.vscode/tasks.json +0 -0
  1200. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/.vscode-test.mjs +0 -0
  1201. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/.vscodeignore +0 -0
  1202. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/.yarnrc +0 -0
  1203. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/CHANGELOG.md +0 -0
  1204. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/LICENSE +0 -0
  1205. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/README.md +0 -0
  1206. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/assets/icon/eval-treeview-cancelled.svg +0 -0
  1207. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/assets/icon/eval-treeview-error.svg +0 -0
  1208. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/assets/icon/eval-treeview-started.svg +0 -0
  1209. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/assets/icon/eval-treeview.svg +0 -0
  1210. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/assets/icon/eval.svg +0 -0
  1211. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/assets/logo/inspect.png +0 -0
  1212. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/assets/logo/inspect.svg +0 -0
  1213. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/assets/templates/task.py.template +0 -0
  1214. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/assets/www/codicon/codicon.css +0 -0
  1215. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/assets/www/codicon/codicon.ttf +0 -0
  1216. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/assets/www/view/view-overrides.css +0 -0
  1217. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/eslint.config.mjs +0 -0
  1218. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/package.json +0 -0
  1219. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/@types/hooks.d.ts +0 -0
  1220. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/components/document.ts +0 -0
  1221. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/components/error.ts +0 -0
  1222. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/components/focus.ts +0 -0
  1223. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/components/notebook.ts +0 -0
  1224. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/components/symbol.ts +0 -0
  1225. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/components/task.ts +0 -0
  1226. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/components/templates.ts +0 -0
  1227. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/components/webview.ts +0 -0
  1228. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/appdirs.ts +0 -0
  1229. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/command.ts +0 -0
  1230. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/dispose.ts +0 -0
  1231. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/env.ts +0 -0
  1232. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/file.ts +0 -0
  1233. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/git.ts +0 -0
  1234. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/jsonrpc.ts +0 -0
  1235. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/log.ts +0 -0
  1236. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/nonce.ts +0 -0
  1237. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/path.ts +0 -0
  1238. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/port.ts +0 -0
  1239. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/process.ts +0 -0
  1240. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/python/code.ts +0 -0
  1241. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/python/env.ts +0 -0
  1242. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/python/exec.ts +0 -0
  1243. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/python/index.ts +0 -0
  1244. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/python/interpreter.ts +0 -0
  1245. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/random.ts +0 -0
  1246. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/string.ts +0 -0
  1247. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/text.ts +0 -0
  1248. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/uri.ts +0 -0
  1249. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/vscode/association.ts +0 -0
  1250. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/wait.ts +0 -0
  1251. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/core/workspace.ts +0 -0
  1252. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/extension.ts +0 -0
  1253. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/hooks/hooks.ts +0 -0
  1254. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/hooks/index.ts +0 -0
  1255. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/hooks/preview.ts +0 -0
  1256. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/inspect/index.ts +0 -0
  1257. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/inspect/logs.ts +0 -0
  1258. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/inspect/props.ts +0 -0
  1259. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/inspect/version.ts +0 -0
  1260. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/active-task/active-task-command.ts +0 -0
  1261. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/active-task/active-task-provider.ts +0 -0
  1262. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/activity-bar/activity-bar-provider.ts +0 -0
  1263. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/activity-bar/env-config-provider.ts +0 -0
  1264. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/activity-bar/log-listing/log-directory-selector.ts +0 -0
  1265. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/activity-bar/log-listing/log-listing-data.ts +0 -0
  1266. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/activity-bar/log-listing/log-listing-mru.ts +0 -0
  1267. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/activity-bar/log-listing/log-listing-provider.ts +0 -0
  1268. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/activity-bar/log-listing/log-listing-server-queue.ts +0 -0
  1269. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/activity-bar/log-listing/log-listing.ts +0 -0
  1270. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/activity-bar/task-config-commands.ts +0 -0
  1271. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/activity-bar/task-config-provider.ts +0 -0
  1272. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/activity-bar/task-outline-commands.ts +0 -0
  1273. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/activity-bar/task-outline-provider.ts +0 -0
  1274. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/activity-bar/webview/env-config-webview.css +0 -0
  1275. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/activity-bar/webview/env-config-webview.ts +0 -0
  1276. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/activity-bar/webview/task-config-webview.css +0 -0
  1277. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/activity-bar/webview/task-config-webview.ts +0 -0
  1278. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/activity-bar/webview/vscode-controls.css +0 -0
  1279. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/activity-bar/webview/webview-utils.ts +0 -0
  1280. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/codelens/codelens-provider.ts +0 -0
  1281. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/inspect/inspect-commands.ts +0 -0
  1282. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/inspect/inspect-constants.ts +0 -0
  1283. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/inspect/inspect-eval-commands.ts +0 -0
  1284. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/inspect/inspect-eval.ts +0 -0
  1285. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/inspect/inspect-logs-watcher.ts +0 -0
  1286. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/inspect/inspect-manager.ts +0 -0
  1287. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/inspect/inspect-view-server.ts +0 -0
  1288. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/lognotify.ts +0 -0
  1289. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/logview/commands.ts +0 -0
  1290. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/logview/log-file-selector.ts +0 -0
  1291. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/logview/logview-editor.ts +0 -0
  1292. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/logview/logview-link-provider.ts +0 -0
  1293. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/logview/logview-panel.ts +0 -0
  1294. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/logview/logview-state.ts +0 -0
  1295. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/logview/logview-view.ts +0 -0
  1296. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/logview/logview.ts +0 -0
  1297. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/openlog.ts +0 -0
  1298. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/protocol-handler.ts +0 -0
  1299. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/settings/inspect-settings.ts +0 -0
  1300. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/settings/user-settings.ts +0 -0
  1301. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/statusbar.ts +0 -0
  1302. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/workspace/workspace-env-commands.ts +0 -0
  1303. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/workspace/workspace-env-provider.ts +0 -0
  1304. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/workspace/workspace-state-provider.ts +0 -0
  1305. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/providers/workspace/workspace-task-provider.ts +0 -0
  1306. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/test/codelens-provider.test.ts +0 -0
  1307. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/test/extension.test.ts +0 -0
  1308. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/test/runTest.ts +0 -0
  1309. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/test/suite/codelens-provider.test.ts +0 -0
  1310. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/test/suite/extension.test.ts +0 -0
  1311. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/src/test/suite/index.ts +0 -0
  1312. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/tools/ts-to-mjs/.gitignore +0 -0
  1313. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/tools/ts-to-mjs/package.json +0 -0
  1314. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/tools/ts-to-mjs/rollup.config.js +0 -0
  1315. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/tools/ts-to-mjs/src/index.ts +0 -0
  1316. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/tools/ts-to-mjs/src/jsonrpc.ts +0 -0
  1317. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/tools/ts-to-mjs/yarn.lock +0 -0
  1318. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/tsconfig.json +0 -0
  1319. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/webpack.config.js +0 -0
  1320. {inspect_ai-0.3.87 → inspect_ai-0.3.89}/tools/vscode/yarn.lock +0 -0
@@ -1,3 +1,34 @@
1
+ ## v0.3.89 (17 April 2025)
2
+
3
+ - [Model Roles](https://inspect.aisi.org.uk/models.html#model-roles) for creating aliases to models used in a task (e.g. "grader", "red_team", "blue_team", etc.)
4
+ - New [openai-api](https://inspect.aisi.org.uk/providers.html#openai-api) model provider for interfacing with arbitrary services that have Open AI API compatible endpoints.
5
+ - ReAct Agent: [truncation](https://inspect.aisi.org.uk/agents.html#truncation) option to trim conversation messages when the model context window is exceeded.
6
+ - ReAct Agent: Improve default `on_continue` message, including using a dynamic name for the submit tool.
7
+ - Agent Bridge: Add `metadata` field to bridge input for backward compatibility with solver-based bridge.
8
+ - Added `default` argument to `get_model()` to explicitly specify a fallback model if the specified model isn't found.
9
+ - Approval: Approvers now take `history` argument (rather than `TaskState`) to better handle agent conversation state.
10
+ - Anthropic: Update string matching to correctly handle BadRequestErrors related to prompt + max_tokens being too long.
11
+ - Google: Return "(no content)" when a generate call results in no completion choices.
12
+ - CloudFlare: Use OpenAI compatible REST endpoint for interface to models.
13
+ - Azure AI: Use `2025-03-01-preview` as default API version if none explicitly specified.
14
+ - Model API: `trim_messages()` function for pruning messages to fit within model context windows.
15
+ - Model API: Improved detection of context window overflow for Grok, Groq, and CloudFlare.
16
+ - Task Display: Show both provider and model name when concurrency context is not shared across all models for a given provider.
17
+ - Registry: Exported `registry_create()` function for dynamic creation of registry objects (e.g. `@task`, `@solver`, etc.).
18
+ - Remove `chdir` option from `@task` (tasks can no longer change their working directory during execution).
19
+ - `INSPECT_EVAL_LOG_FILE_PATTERN` environment variable for setting the eval log file pattern.
20
+ - Bugfix: Eval retry now works correctly for models with a service prefix (e.g. `openai/azure/model-name`).
21
+ - Bugfix: Correctly resolve approvers in the same source file as tasks.
22
+ - Bugfix: Ensure agent decorator resolves string annotations from `__future__` as needed.
23
+ - Bugfix: Correctly handle string `dict` keys that are numeric in store diffs.
24
+
25
+ ## v0.3.88 (11 April 2025)
26
+
27
+ - Tools: Restore formerly required (but now deprecated) `type` field to `ToolCall`.
28
+ - Approval: Raise operator limit exceeded error for tool approval termination action.
29
+ - Anthropic: Don't include side count of `reasoning_tokens` in `total_tokens` (they are already included).
30
+ - Anthropic: Update string matching to correctly handle BadRequestErrors related to prompts being too long.
31
+
1
32
  ## v0.3.87 (10 April 2025)
2
33
 
3
34
  - Eval: Fix an error when attempting to display realtime metrics for an evaluation.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: inspect_ai
3
- Version: 0.3.87
3
+ Version: 0.3.89
4
4
  Summary: Framework for large language model evaluations
5
5
  Author: UK AI Security Institute
6
6
  License: MIT License
@@ -10,8 +10,9 @@
10
10
 
11
11
  If the provider you are using is not listed above, you may still be able to use it if:
12
12
 
13
- 1. It is available via OpenRouter (see the docs on using [OpenRouter](providers.qmd#openrouter) with Inspect).
13
+ 1. It provides an OpenAI compatible API endpoint. In this scenario, use the Inspect [OpenAI Compatible API](providers.qmd#openai-api) interface.
14
+
15
+ 2. It is available via OpenRouter (see the docs on using [OpenRouter](providers.qmd#openrouter) with Inspect).
14
16
 
15
- 2. It provides an OpenAI compatible API endpoint. In this scenario, use the Inspect [OpenAI](providers.qmd#openai) interface and set the `OPENAI_BASE_URL` environment variable to the apprpriate value for your provider.
16
17
 
17
18
  You can also create [Model API Extensions](extensions.qmd#model-apis) to add model providers using their native interface.
@@ -94,16 +94,22 @@ def my_agent(tools: list[Tool]):
94
94
  You might then further tailor the behaviour of this loop. For example, you might want to:
95
95
 
96
96
  1. Add another termination condition for the output satisfying some criteria.
97
-
98
97
  2. Add a critique / reflection step between tool calling and generate.
99
-
100
98
  3. Urge the model to keep going after it decides to stop calling tools.
101
-
102
- 4. Handle context window overflow (`stop_reason=="model_length"`) by truncating or summarizing the `messages`.
103
-
99
+ 4. Handle context window overflow (`stop_reason=="model_length"`) by truncating or summarising the `messages`.
104
100
  5. Examine and possibly filter the tool calls before invoking `execute_tools()`
105
101
 
102
+ For example, you might implement automatic context window truncation in response to context window overflow:
103
+
104
+ ``` python
105
+ # check for context window overflow
106
+ if state.output.stop_reason == "model_length":
107
+ if overflow is not None:
108
+ state.messages = trim_messages(state.messages)
109
+ continue
110
+ ```
106
111
 
112
+ Note that the standard `react()` agent provides some of these agent loop enhancements (urging the model to continue and handling context window overflow).
107
113
 
108
114
  ## Sample Store {#agent-store}
109
115
 
@@ -347,4 +353,4 @@ searches = [
347
353
  results = await asyncio.gather(*searches)
348
354
  ```
349
355
 
350
- Note that we don't `await` the subtasks when building up our list of `searches`. Rather, we let `asyncio.gather()` await all of them, returning only when all of the results are available.
356
+ Note that we don't `await` the subtasks when building up our list of `searches`. Rather, we let `asyncio.gather()` await all of them, returning only when all of the results are available.
@@ -12,7 +12,7 @@ Agents combine planning, memory, and tool usage to pursue more complex, longer h
12
12
  4. Using the [Human Agent](human-agent.qmd) for human baselining of computing tasks.
13
13
  5. Composing any of the above agents into [Multi Agent](multi-agent.qmd) architectures.
14
14
 
15
- Below, we'll cover the basic role and function of agents in Inspect. Then, we'll describe how to use the built-in `react()` agent. Subsequent articles describe more advanced topics like multi-agent systems and creating custom agents from scratch.
15
+ Below, we'll cover the basic role and function of agents in Inspect. Then, we'll describe how to use the built-in [ReAct agent](#react-agent). Subsequent articles describe more advanced topics like multi-agent systems and creating custom agents from scratch.
16
16
 
17
17
  ## Agent Basics
18
18
 
@@ -23,29 +23,65 @@ The Inspect `Agent` protocol enables the creation of agent components that can b
23
23
  3. Delegated to in a multi-agent architecture.
24
24
  4. Provided as a standard `Tool` to a model
25
25
 
26
-
27
26
  The agents module includes a flexible, general-purpose [react agent](#react-agent), which can be used standalone or to orchestrate a [multi agent](#multi-agent) system.
28
27
 
29
28
  ### Example
30
29
 
31
- The following is a simple `web_surfer()` agent that uses the `web_browser()` tool to do open-ended web research. We build this agent on top of the standard `react()` agent (described in more depth below):
30
+ The following is a simple `web_surfer()` agent that uses the `web_browser()` tool to do open-ended web research.
32
31
 
33
32
  ``` python
34
- from inspect_ai.agent react
33
+ from inspect_ai.agent import Agent, AgentState, agent
34
+ from inspect_ai.model import ChatMessageSystem, get_model
35
+ from inspect_ai.tool import web_browser
36
+
37
+ @agent
38
+ def web_surfer() -> Agent:
39
+ async def execute(state: AgentState) -> AgentState:
40
+ """Web research assistant."""
41
+
42
+ # some general guidance for the agent
43
+ state.messages.append(
44
+ ChatMessageSystem(
45
+ content="You are an expert at using a " +
46
+ "web browser to answer questions."
47
+ )
48
+ )
49
+
50
+ # run a tool loop w/ the web_browser
51
+ messages, output = await get_model().generate_loop(
52
+ state.messages, tools=web_browser()
53
+ )
54
+
55
+ # update and return state
56
+ state.output = output
57
+ state.messages.extend(messages)
58
+ return state
59
+
60
+ return execute
61
+ ```
62
+
63
+ The agent calls the `generate_loop()` function which runs the model in a loop until it stops calling tools. In this case the model may make several calls to the [web_browser()](https://inspect.aisi.org.uk/reference/inspect_ai.tool.html#web_browser) tool to fulfil the request.
64
+
65
+ While this example illustrates the basic mechanic of agents, you generally wouldn't write a custom agent that does only this (a system prompt with a tool use loop) as the `react()` agent provides a more sophisticated and flexible version of this pattern. Here is the equivalent `react()` agent:
66
+
67
+ ``` python
68
+ from inspect_ai.agent import react
35
69
  from inspect_ai.tool import web_browser
36
70
 
37
71
  web_surfer = react(
38
72
  name="web_surfer",
39
73
  description="Web research assistant",
40
- prompt="You are a tenacious web researcher that is expert "
41
- + "at using a web browser to answer questions.",
74
+ prompt="You are an expert at using a " +
75
+ "web browser to answer questions.",
42
76
  tools=web_browser()
43
77
  )
44
78
  ```
45
79
 
46
- This agent can be used in the following ways:
80
+ ### Using Agents
47
81
 
48
- 1. It can be passed as a `Solver` to any Inspect interface that takes a solver:
82
+ Agents can be used in the following ways:
83
+
84
+ 1. Agents can be passed as a `Solver` to any Inspect interface that takes a solver:
49
85
 
50
86
  ``` python
51
87
  from inspect_ai import eval
@@ -55,7 +91,7 @@ This agent can be used in the following ways:
55
91
 
56
92
  For other interfaces that aren't aware of agents, you can use the `as_solver()` function to convert an agent to a solver.
57
93
 
58
- 2. It can be executed directly using the `run()` function (you might do this in a multi-step agent workflow):
94
+ 2. Agents can be executed directly using the `run()` function (you might do this in a multi-step agent workflow):
59
95
 
60
96
  ``` python
61
97
  from inspect_ai.agent import run
@@ -66,12 +102,11 @@ This agent can be used in the following ways:
66
102
  print(f"The most popular movies were: {state.output.completion}")
67
103
  ```
68
104
 
69
-
70
- 3. It can participate in a multi-agent system where the conversation history is shared across agents. Use the `handoff()` function to create a tool that enables handing off the conversation from one agent to another:
105
+ 3. Agents can participate in multi-agent systems where the conversation history is shared across agents. Use the `handoff()` function to create a tool that enables handing off the conversation from one agent to another:
71
106
 
72
107
  ``` python
73
108
  from inspect_ai.agent import handoff
74
- from inspect_ai.solver use_tools, generate
109
+ from inspect_ai.solver import use_tools, generate
75
110
  from math_tools import addition
76
111
 
77
112
  eval(
@@ -83,11 +118,11 @@ This agent can be used in the following ways:
83
118
  )
84
119
  ```
85
120
 
86
- 4. It can be used as a standard tool using the `as_tool()` function:
121
+ 4. Agents can be used as a standard tool using the `as_tool()` function:
87
122
 
88
123
  ``` python
89
124
  from inspect_ai.agent import as_tool
90
- from inspect_ai.solver use_tools, generate
125
+ from inspect_ai.solver import use_tools, generate
91
126
 
92
127
  eval(
93
128
  task="research_bench",
@@ -101,7 +136,6 @@ This agent can be used in the following ways:
101
136
 
102
137
  The difference between `handoff()` and `as_tool()` is that `handoff()` forwards the entire conversation history to the agent (and enables the agent to add entries to it) whereas `as_tool()` provides a simple string in, string out interface to the agent.
103
138
 
104
-
105
139
  ## ReAct Agent {#react-agent}
106
140
 
107
141
  The `react()` agent is a general purpose agent based on the paper [ReAct: Synergizing Reasoning and Acting in Language Models](https://arxiv.org/abs/2210.03629). ReAct is the most common architecture used in agent frameworks and is the baseline against which you should measure more complex agents (it can be surprisingly difficult to hand-tune agents that perform better than a ReAct agent against a diverse set of tasks!).
@@ -158,12 +192,11 @@ task = Task(
158
192
  eval(task, model="openai/gpt-4o")
159
193
  ```
160
194
 
161
-
162
195
  ### Prompt
163
196
 
164
197
  In the examples above we provide a `prompt` to the agent. This prompt is layered with other default prompt(s) to compose the final system prompt. This includes an `asssistant` prompt and a `handoff` prompt (used only when a multi-agent system with `handoff()` is running). Here is the default `assistant` prompt:
165
198
 
166
- ```python
199
+ ``` python
167
200
  DEFAULT_ASSISTANT_PROMPT = """
168
201
  You are a helpful assistant attempting to submit the best possible answer.
169
202
  You have several tools available to help with finding the answer. You will
@@ -179,7 +212,7 @@ tool to report it.
179
212
 
180
213
  You can modify the default prompts by passing an `AgentPrompt` instance rather than a `str`. For example:
181
214
 
182
- ```python
215
+ ``` python
183
216
  react(
184
217
  description="Expert at completing cybersecurity challenges.",
185
218
  prompt=AgentPrompt(
@@ -191,12 +224,11 @@ react(
191
224
  )
192
225
  ```
193
226
 
194
-
195
227
  ### Attempts
196
228
 
197
229
  By default the `react()` agent is allowed a single attempt at calling the `submit()` function. If you want to give it multiple attempts, pass another value to `attempts`:
198
230
 
199
- ```python
231
+ ``` python
200
232
  react(
201
233
  ...
202
234
  attempts=3,
@@ -207,22 +239,37 @@ Submissions are evaluated using the task's main scorer, with value of 1.0 indica
207
239
 
208
240
  ### Continuation
209
241
 
210
- In some cases models in a tool use loop will simply fail to call a tool (or just talk about calling the `submit()` tool but not actually call it!). This is typically an oversight, and models simply need to be encouraged to call `submit()` or alternatively continue if they haven't yet completed the task.
242
+ In some cases models in a tool use loop will simply fail to call a tool (or just talk about calling the `submit()` tool but not actually call it!). This is typically an oversight, and models simply need to be encouraged to call `submit()` or alternatively continue if they haven't yet completed the task.
211
243
 
212
244
  This behavior is controlled by the `on_continue` parameter, which by default yields the following user message to the model:
213
245
 
214
- ```default
215
- If you believe you have completed the task, please call the
216
- `submit()` tool with your answer.
246
+ ``` default
247
+ Please proceed to the next step using your best judgement. If you believe you
248
+ have completed the task, please call the `submit()` tool.
217
249
  ```
218
250
 
219
251
  You can pass a different continuation message, or alternative pass an `AgentContinue` function that can dynamically determine both whether to continue and what the message is.
220
252
 
253
+ ### Truncation
254
+
255
+ If your agent runs for long enough, it may end up filling the entire model context window. By default, this will cause the agent to terminate (with a log message indicating the reason). Alternatively, you can specify that the conversation should be truncated and the agent loop continue.
256
+
257
+ This behavior is controlled by the `truncation` parameter (which is `"disabled"` by default, doing no truncation). To perform truncation, specify either `"auto"` (which reduces conversation size by roughly 30%) or pass a custom `MessageFilter` function. For example:
258
+
259
+ ``` python
260
+ react(... truncation="auto")
261
+ react(..., truncation=custom_truncation)
262
+ ```
263
+
264
+ The default `"auto"` truncation scheme calls the `trim_messages()` function with a `preserve` ratio of 0.7.
265
+
266
+ Note that if you enable truncation then a [message limit](errors-and-limits.qmd#message-limit) may not work as expected because truncation will remove old messages, potentially keeping the conversation length below your message limit. In this case you can also consider applying a [time limit](errors-and-limits.qmd#time-limit) and/or [token limit](errors-and-limits.qmd#token-limit).
267
+
221
268
  ### Model
222
269
 
223
270
  The `model` parameter to `react()` agent lets you specify an alternate model to use for the agent loop (if not specified then the default model for the evaluation is used). In some cases you might want to do something fancier than just call a model (e.g. do a "best of n" sampling an pick the best response). Pass a `Agent` as the `model` parameter to implement this type of custom scheme. For example:
224
271
 
225
- ```python
272
+ ``` python
226
273
  @agent
227
274
  def best_of_n(n: int, discriminator: str | Model):
228
275
 
@@ -240,7 +287,6 @@ def best_of_n(n: int, discriminator: str | Model):
240
287
 
241
288
  Note that when you pass an `Agent` as the `model` it must include a `tools` parameter so that the ReAct agent can forward its tools.
242
289
 
243
-
244
290
  ## Learning More
245
291
 
246
292
  See these additioanl articles to learn more about creating agent evaluations with Inspect:
@@ -253,4 +299,4 @@ See these additioanl articles to learn more about creating agent evaluations wit
253
299
 
254
300
  - [Human Agent](human-agent.qmd) is a solver that enables human baselining on computing tasks.
255
301
 
256
- - [Sandboxing](sandboxing.qmd) enables you to isolate code generated by models as well as set up more complex computing environments for tasks.
302
+ - [Sandboxing](sandboxing.qmd) enables you to isolate code generated by models as well as set up more complex computing environments for tasks.
@@ -123,7 +123,7 @@ def auto_approver(decision: ApprovalDecision = "approve") -> Approver:
123
123
  message: str,
124
124
  call: ToolCall,
125
125
  view: ToolCallView,
126
- state: TaskState | None = None,
126
+ history: list[ChatMessage],
127
127
  ) -> Approval:
128
128
  return Approval(decision=decision, explanation="Automatic decision.")
129
129
 
@@ -156,7 +156,7 @@ def bash_allowlist(
156
156
  message: str,
157
157
  call: ToolCall,
158
158
  view: ToolCallView,
159
- state: TaskState | None = None,
159
+ history: list[ChatMessage],
160
160
  ) -> Approval:
161
161
 
162
162
  # Make approval decision
@@ -54,13 +54,13 @@ If your samples include `choices`, then the `target` should be a capital letter
54
54
 
55
55
  ### Files
56
56
 
57
- The `files` field maps container target file paths to file contents (where contents can be either a filesystem path, a URL, or a string with inline content). For example, to copy a local file named `flag.txt` into the container path `/shared/flag.txt` you would use this:
57
+ The `files` field maps sandbox target file paths to file contents (where contents can be either a filesystem path, a URL, or a string with inline content). For example, to copy a local file named `flag.txt` into the sandbox path `/shared/flag.txt` you would use this:
58
58
 
59
59
  ```python
60
60
  "/shared/flag.txt": "flag.txt"
61
61
  ```
62
62
 
63
- Files are copied into the default sandbox environment unless their name contains a prefix mapping them into another environment. For example, to copy into the `victim` container:
63
+ Files are copied into the default sandbox environment unless their name contains a prefix mapping them into another environment. For example, to copy into the `victim` sandbox:
64
64
 
65
65
  ```python
66
66
  "victim:/shared/flag.txt": "flag.txt"
@@ -100,6 +100,7 @@ inspect eval images.py --log-format=json --no-log-images
100
100
 
101
101
  You can also use the `INSPECT_EVAL_LOG_IMAGES` environment variable to set a global default in your `.env` configuration file.
102
102
 
103
+
103
104
  ## Log File API {#sec-log-file-api}
104
105
 
105
106
  ### EvalLog
@@ -262,6 +263,26 @@ AWS_DEFAULT_REGION=eu-west-2
262
263
 
263
264
  One thing to keep in mind if you are storing logs on S3 is that they will no longer be easily viewable using a local text editor. You will likely want to configure a [FUSE filesystem](https://github.com/s3fs-fuse/s3fs-fuse) so you can easily browse the S3 logs locally.
264
265
 
266
+
267
+ ## Log File Name
268
+
269
+ By default, log files are named using the following convention:
270
+
271
+ ```
272
+ {timestamp}_{task}_{id}
273
+ ```
274
+
275
+ Where `timestamp` is the time the log was created; `task` is the name of the task the log corresponds to; and `id` is a unique task id.
276
+
277
+ The `{timestamp}` part of the log file name is required to ensure that log files appear in sequential order in the filesystem. However, the rest of the filename can be customized using the `INSPECT_EVAL_LOG_FILE_PATTERN` environment variable, which can include any combination of `task`, `model`, and `id` fields. For example, to include the `model` in log file names:
278
+
279
+ ```bash
280
+ export INSPECT_EVAL_LOG_FILE_PATTERN={task}_{model}_{id}
281
+ inspect eval ctf.py
282
+ ```
283
+
284
+ As with other log file oriented environment variables, you may find it convenient to define this in a `.env` file from the location where you run your evals.
285
+
265
286
  ## Log Commands {#sec-log-commands}
266
287
 
267
288
  We've shown a number of Python functions that let you work with eval logs from code. However, you may be writing an orchestration or visualisation tool in another language (e.g. TypeScript) where its not particularly convenient to call the Python API. The Inspect CLI has a few commands intended to make it easier to work with Inspect logs from other languages:
@@ -296,7 +296,7 @@ def auto_approver(decision: ApprovalDecision = "approve") -> Approver:
296
296
  message: str,
297
297
  call: ToolCall,
298
298
  view: ToolCallView,
299
- state: TaskState | None = None,
299
+ history: list[ChatMessage],
300
300
  ) -> Approval:
301
301
  return Approval(
302
302
  decision=decision,
@@ -34,17 +34,17 @@ INSPECT_EVAL_MODEL=google/gemini-1.5-pro
34
34
 
35
35
  #### No Model
36
36
 
37
- Some evaluations will either not make use of models or call the lower-level `get_model()` function to explicitly access models for different roles (see the [Model API](#model-api) section below for details on this).
37
+ Some evaluations will either not make use of models or call the lower-level `get_model()` function to explicitly access models for different roles (see the [Model API](#model-api) section below for details on this).
38
38
 
39
39
  In these cases, you are not required to specify a `--model`. If you happen to have an `INSPECT_EVAL_MODEL` defined and you want to prevent your evaluation from using it, you can explcitly specify no model as follows:
40
40
 
41
- ```bash
41
+ ``` bash
42
42
  inspect eval arc.py --model none
43
43
  ```
44
44
 
45
45
  Or from Python:
46
46
 
47
- ```python
47
+ ``` python
48
48
  eval("arc.py", model=None)
49
49
  ```
50
50
 
@@ -84,11 +84,11 @@ Inspect uses an asynchronous architecture to run task samples in parallel. If yo
84
84
 
85
85
  By default, Inspect uses a `max_connections` value of 10. You can increase this consistent with your account limits. If you are experiencing rate-limit errors you will need to experiment with the `max_connections` option to find the optimal value that keeps you under the rate limit (the section on [Parallelism](parallelism.qmd) includes additional documentation on how to do this).
86
86
 
87
- ## Model API
87
+ ## Model API {#model-api}
88
88
 
89
89
  The `--model` which is set for an evaluation is automatically used by the `generate()` solver, as well as for other solvers and scorers built to use the currently evaluated model. If you are implementing a `Solver` or `Scorer` and want to use the currently evaluated model, call `get_model()` with no arguments:
90
90
 
91
- ```python
91
+ ``` python
92
92
  from inspect_ai.model import get_model
93
93
 
94
94
  model = get_model()
@@ -97,7 +97,7 @@ response = await model.generate("Say hello")
97
97
 
98
98
  If you want to use other models in your solvers and scorers, call `get_model()` with an alternate model name, along with optional generation config. For example:
99
99
 
100
- ```python
100
+ ``` python
101
101
  model = get_model("openai/gpt-4o")
102
102
 
103
103
  model = get_model(
@@ -108,7 +108,7 @@ model = get_model(
108
108
 
109
109
  You can also pass provider specific parameters as additional arguments to `get_model()`. For example:
110
110
 
111
- ```python
111
+ ``` python
112
112
  model = get_model("hf/openai-community/gpt2", device="cuda:0")
113
113
  ```
114
114
 
@@ -116,36 +116,104 @@ model = get_model("hf/openai-community/gpt2", device="cuda:0")
116
116
 
117
117
  By default, calls to `get_model()` are memoized, meaning that calls with identical parameters resolve to a cached version of the model. You can disable this by passing `memoize=False`:
118
118
 
119
- ```python
119
+ ``` python
120
120
  model = get_model("openai/gpt-4o", memoize=False)
121
121
  ```
122
122
 
123
123
  Finally, if you prefer to create and fully close model clients at their place of use, you can use the async context manager built in to the `Model` class. For example:
124
124
 
125
- ```python
125
+ ``` python
126
126
  async with get_model("openai/gpt-4o") as model:
127
127
  eval(mytask(), model=model)
128
128
  ```
129
129
 
130
130
  If you are not in an async context there is also a sync context manager available:
131
131
 
132
- ```python
132
+ ``` python
133
133
  with get_model("hf/Qwen/Qwen2.5-72B") as model:
134
134
  eval(mytask(), model=model)
135
135
  ```
136
136
 
137
137
  Note though that this *won't work* with model providers that require an async close operation (OpenAI, Anthropic, Grok, Together, Groq, Ollama, llama-cpp-python, and CloudFlare).
138
138
 
139
+ ## Model Roles
140
+
141
+ Model roles enable you to create aliases for the various models used in your tasks, and then dynamically vary those roles when running an evaluation. For example, you might have a "critic" or "monitor" role, or perhaps "red_team" and "blue_team" roles. Roles are included in the log and displayed in model events within the transcript.
142
+
143
+ Here is a scorer that utilises a "grader" role when binding to a model:
144
+
145
+ ``` python
146
+ @scorer(metrics=[accuracy(), stderr()])
147
+ def model_grader() -> Scorer:
148
+ async def score(state: TaskState, target: Target):
149
+ model = get_model(role="grader")
150
+ ...
151
+ ```
152
+
153
+ By default if there is no "grader" role specified, the default model for the evaluation will be returned. Model roles can be specified when using `inspect eval` or calling the `eval()` function:
154
+
155
+ ``` bash
156
+ inspect eval math.py --model-role grader=google/gemini-2.0-flash
157
+ ```
158
+
159
+ Or with `eval()`:
160
+
161
+ ``` python
162
+ eval("math.py", model_roles = { "grader": "google/gemini-2.0-flash" })
163
+ ```
164
+
165
+ ### Role Defaults
166
+
167
+ By default if there is a no role explicitly defined then `get_model(role="...")` will return the default model for the evaluation. You can specify an alternate default model as follows:
168
+
169
+ ``` python
170
+ model = get_model(role="grader", default="openai/gpt-4o")
171
+ ```
172
+
173
+ This means that you can use model roles as a means of external configurability even if you aren't yet explicitly taking advantage of them.
174
+
175
+ ### Roles for Tasks
176
+
177
+ In some cases it may not be convenient to specify `model_roles` in the top level call to `eval()`. For example, you might be running an [Eval Set](eval-sets.qmd) to explore the behaviour of different models for a given role. In this case, do not specify `model_roles` at the eval level, rather, specify them at the task level.
178
+
179
+ For example, imagine we have a task named `blues_clues` that we want to vary the red and blue teams for in an eval set:
180
+
181
+ ``` python
182
+ from inspect_ai import eval_set, task_with
183
+ from ctf_tasks import blues_clues
184
+
185
+ tasks = [
186
+ task_with(blues_clues(), model_roles = {
187
+ "red_team": "openai/gpt-4o",
188
+ "blue_team": "google/gemini-2.0-flash"
189
+ }),()
190
+ task_with(blues_clues, model_roles = {
191
+ "red_team": "google/gemini-2.0-flash",
192
+ "blue_team": "openai/gpt-4o"
193
+ })
194
+ ]
195
+
196
+ eval_set(tasks, log_dir="...")
197
+ ```
198
+
199
+ Note that we also don't specify a `model` for this eval (it doesn't have a main model but rather just the red and blue team roles).
200
+
201
+ As illustrated above, you can define as many named roles as you need. When using `eval()` or `Task` roles are specified using a dictionary. When using `inspect eval` you can include multiple `--model-role` options on the command line:
202
+
203
+ ``` bash
204
+ inspect eval math.py \
205
+ --model-role red_team=google/gemini-2.0-flash \
206
+ --model-role blue_team=openai/gpt-4o-mini
207
+ ```
139
208
 
140
209
  ## Learning More
141
210
 
142
- - [Providers](providers.qmd) covers usage details and available options for the various supported providers.
211
+ - [Providers](providers.qmd) covers usage details and available options for the various supported providers.
143
212
 
144
- - [Caching](caching.qmd) explains how to cache model output to reduce the number of API calls made.
213
+ - [Caching](caching.qmd) explains how to cache model output to reduce the number of API calls made.
145
214
 
146
- - [Multimodal](multimodal.qmd) describes the APIs available for creating multimodal evaluations (including images, audio, and video).
215
+ - [Multimodal](multimodal.qmd) describes the APIs available for creating multimodal evaluations (including images, audio, and video).
147
216
 
148
- - [Reasoning](reasoning.qmd) documents the additional options and data available for reasoning models.
149
-
150
- - [Structured Output](structured.qmd) explains how to constrain model output to a particular JSON schema.
217
+ - [Reasoning](reasoning.qmd) documents the additional options and data available for reasoning models.
151
218
 
219
+ - [Structured Output](structured.qmd) explains how to constrain model output to a particular JSON schema.
@@ -54,11 +54,11 @@ You can then use the normal `openai` provider with the `azure` qualifier and the
54
54
  ``` bash
55
55
  export AZUREAI_OPENAI_API_KEY=your-api-key
56
56
  export AZUREAI_OPENAI_BASE_URL=https://your-url-at.azure.com
57
- export AZUREAI_OPENAI_API_VERSION=2025-02-01-preview
57
+ export AZUREAI_OPENAI_API_VERSION=2025-03-01-preview
58
58
  inspect eval math.py --model openai/azure/gpt-4o-mini
59
59
  ```
60
60
 
61
- Note that if the `AZUREAI_OPENAI_API_VERSION` is not specified, Inspect will generally default to the latest deployed version, which as of this writing is `2025-02-01-preview`.
61
+ Note that if the `AZUREAI_OPENAI_API_VERSION` is not specified, Inspect will generally default to the latest deployed version, which as of this writing is `2025-03-01-preview`.
62
62
 
63
63
  ## Anthropic {#anthropic}
64
64
 
@@ -228,14 +228,16 @@ inspect eval math.py --model mistral/azure/Mistral-Large-2411
228
228
 
229
229
  ## DeepSeek {#deepseek}
230
230
 
231
- To use [DeepSeek](https://www.deepseek.com/) models, install the `openai` package (which DeepSeek provides a compatible backend for) and set your credentials using the `OPENAI_API_KEY` environment variable. Then, when running inspect, use the `--model-base-url` option to point to DeepSeek's base URL, and the `--model` option to specify a model:
231
+ [DeepSeek](https://www.deepseek.com/) provides an OpenAI compatible API endpoint which you can use with Inspect via the `openai-api` provider. To do this, define the `DEEPSEEK_API_KEY` and `DEEPSEEK_BASE_URL` environment variables then refer to models with `openai-api/deepseek/<model-name>`. For example:
232
232
 
233
233
  ```bash
234
234
  pip install openai
235
- export OPENAI_API_KEY=your-deepseek-api-key
236
- inspect eval arc.py --model-base-url https://api.deepseek.com --model openai/deepseek-reasoner
235
+ export DEEPSEEK_API_KEY=your-deepseek-api-key
236
+ export DEEPSEEK_BASE_URL=https://api.deepseek.com
237
+ inspect eval arc.py --model openai-api/deepseek/deepseek-reasoner
237
238
  ```
238
239
 
240
+
239
241
  ## Grok {#grok}
240
242
 
241
243
  To use the [Grok](https://x.ai/) provider, install the `openai` package (which the Grok service provides a compatible backend for), set your credentials, and specify a model using the `--model` option:
@@ -482,12 +484,13 @@ $ inspect eval arc.py --model vllm/local -M model_path=./my-model
482
484
 
483
485
  ### vLLM Server
484
486
 
485
- vLLM provides an HTTP server that implements OpenAI’s Chat API. To use this with Inspect, use the `openai` provider rather than the `vllm` provider, setting the model base URL to point to the vLLM server rather than OpenAI. For example:
487
+ vLLM provides an HTTP server that implements OpenAI’s Chat API. To use this with Inspect, use the `openai-api` provider rather than the `vllm` provider, setting the model base URL to point to the vLLM server. For example:
486
488
 
487
489
  ``` bash
488
- $ export OPENAI_BASE_URL=http://localhost:8080/v1
489
- $ export OPENAI_API_KEY=<your-server-api-key>
490
- $ inspect eval arc.py --model openai/meta-llama/Meta-Llama-3-8B-Instruct
490
+ $ export VLLM_BASE_URL=http://localhost:8080/v1
491
+ $ export VLLM_API_KEY=<your-server-api-key>
492
+ $ inspect eval arc.py \
493
+ --model openai-api/vllm/meta-llama/Meta-Llama-3-8B-Instruct
491
494
  ```
492
495
 
493
496
  See the vLLM documentation on [Server Mode](https://docs.vllm.ai/en/latest/serving/openai_compatible_server.html) for additional details.
@@ -526,6 +529,32 @@ The following environment variables are supported by the llama-cpp-python provid
526
529
  |----------------------------|--------------------------------------------|
527
530
  | `LLAMA_CPP_PYTHON_BASE_URL` | Base URL for requests (optional, defaults to `http://localhost:8000/v1`) |
528
531
 
532
+ ## OpenAI Compatible {#openai-api}
533
+
534
+
535
+ If your model provider makes an OpenAI API compatible endpoint available, you can use it with Inspect via the `openai-api` provider, which uses the following model naming convention:
536
+
537
+ ```
538
+ openai-api/<provider-name>/<model-name>
539
+ ```
540
+
541
+ Inspect will read environment variables corresponding to the api key and base url of your provider using the following convention (note that the provider name is capitalized):
542
+
543
+ ```
544
+ <PROVIDER-NAME>_API_KEY
545
+ <PROVIDER-NAME>_BASE_URL
546
+ ```
547
+
548
+ ### Example
549
+
550
+ Here is how you would access DeepSeek using the `openai-api` provider:
551
+
552
+ ```bash
553
+ export DEEPSEEK_API_KEY=your-deepseek-api-key
554
+ export DEEPSEEK_BASE_URL=https://api.deepseek.com
555
+ inspect eval arc.py --model openai-api/deepseek/deepseek-reasoner
556
+ ```
557
+
529
558
  ## OpenRouter
530
559
 
531
560
  To use the [OpenRouter](https://openrouter.ai/) provider, install the `openai` package (which the OpenRouter service provides a compatible backend for), set your credentials, and specify a model using the `--model` option: