inspect-ai 0.3.60__py3-none-any.whl → 0.3.62__py3-none-any.whl

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 (46) hide show
  1. inspect_ai/_cli/eval.py +13 -1
  2. inspect_ai/_cli/view.py +4 -0
  3. inspect_ai/_display/textual/widgets/transcript.py +15 -9
  4. inspect_ai/_eval/task/error.py +10 -14
  5. inspect_ai/_eval/task/generate.py +41 -35
  6. inspect_ai/_eval/task/run.py +20 -12
  7. inspect_ai/_util/hooks.py +17 -7
  8. inspect_ai/_util/transcript.py +11 -0
  9. inspect_ai/_view/www/dist/assets/index.css +1 -0
  10. inspect_ai/_view/www/dist/assets/index.js +100 -94
  11. inspect_ai/_view/www/log-schema.json +35 -19
  12. inspect_ai/_view/www/package.json +1 -1
  13. inspect_ai/_view/www/src/components/ChatView.mjs +23 -0
  14. inspect_ai/_view/www/src/types/log.d.ts +6 -4
  15. inspect_ai/log/_recorders/eval.py +1 -1
  16. inspect_ai/model/_chat_message.py +29 -2
  17. inspect_ai/model/_conversation.py +10 -3
  18. inspect_ai/model/_generate_config.py +6 -0
  19. inspect_ai/model/_model.py +164 -25
  20. inspect_ai/model/_openai.py +33 -1
  21. inspect_ai/model/_providers/anthropic.py +12 -3
  22. inspect_ai/model/_providers/groq.py +4 -0
  23. inspect_ai/model/_providers/openai.py +21 -9
  24. inspect_ai/model/_providers/providers.py +1 -1
  25. inspect_ai/model/_reasoning.py +17 -0
  26. inspect_ai/solver/__init__.py +2 -0
  27. inspect_ai/solver/_basic_agent.py +78 -58
  28. inspect_ai/{util → solver}/_limit.py +13 -0
  29. inspect_ai/solver/_task_state.py +37 -7
  30. inspect_ai/tool/_tools/_web_browser/_web_browser.py +3 -1
  31. inspect_ai/tool/beta/_computer/_resources/Dockerfile +5 -3
  32. inspect_ai/tool/beta/_computer/_resources/entrypoint/x11vnc_startup.sh +1 -1
  33. inspect_ai/tool/beta/_computer/_resources/image_home_dir/.config/Code/User/globalStorage/state.vscdb +0 -0
  34. inspect_ai/tool/beta/_computer/_resources/image_home_dir/.config/Code/User/settings.json +3 -0
  35. inspect_ai/tool/beta/_computer/_resources/image_home_dir/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml +61 -0
  36. inspect_ai/tool/beta/_computer/_resources/image_home_dir/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-screensaver.xml +10 -0
  37. inspect_ai/tool/beta/_computer/_resources/image_home_dir/Desktop/Terminal.desktop +10 -0
  38. inspect_ai/util/__init__.py +0 -2
  39. inspect_ai/util/_sandbox/self_check.py +51 -28
  40. {inspect_ai-0.3.60.dist-info → inspect_ai-0.3.62.dist-info}/METADATA +2 -2
  41. {inspect_ai-0.3.60.dist-info → inspect_ai-0.3.62.dist-info}/RECORD +45 -40
  42. inspect_ai/tool/beta/_computer/_resources/image_home_dir/Desktop/XPaint.desktop +0 -10
  43. {inspect_ai-0.3.60.dist-info → inspect_ai-0.3.62.dist-info}/LICENSE +0 -0
  44. {inspect_ai-0.3.60.dist-info → inspect_ai-0.3.62.dist-info}/WHEEL +0 -0
  45. {inspect_ai-0.3.60.dist-info → inspect_ai-0.3.62.dist-info}/entry_points.txt +0 -0
  46. {inspect_ai-0.3.60.dist-info → inspect_ai-0.3.62.dist-info}/top_level.txt +0 -0
@@ -32,6 +32,7 @@ async def self_check(sandbox_env: SandboxEnvironment) -> dict[str, bool | str]:
32
32
  for fn in [
33
33
  test_read_and_write_file_text,
34
34
  test_read_and_write_file_binary,
35
+ test_write_file_text_utf,
35
36
  test_read_and_write_file_including_directory_absolute,
36
37
  test_read_and_write_file_including_directory_relative,
37
38
  test_read_file_zero_length,
@@ -64,33 +65,39 @@ async def self_check(sandbox_env: SandboxEnvironment) -> dict[str, bool | str]:
64
65
 
65
66
 
66
67
  async def _cleanup_file(sandbox_env: SandboxEnvironment, filename: str) -> None:
67
- res = await sandbox_env.exec(["rm", filename])
68
+ res = await sandbox_env.exec(["rm", "-f", "--", filename])
68
69
  assert res.success
69
70
 
70
71
 
71
72
  async def test_read_and_write_file_text(sandbox_env: SandboxEnvironment) -> None:
72
- await sandbox_env.write_file(
73
- "test_read_and_write_file_text.file", "great #content\nincluding newlines"
74
- )
75
- written_file_string = await sandbox_env.read_file(
76
- "test_read_and_write_file_text.file", text=True
77
- )
73
+ file_name = "test_read_and_write_file_text.file"
74
+ await sandbox_env.write_file(file_name, "great #content\nincluding newlines")
75
+ written_file_string = await sandbox_env.read_file(file_name, text=True)
78
76
  assert "great #content\nincluding newlines" == written_file_string, (
79
77
  f"unexpected content: [{written_file_string}]"
80
78
  )
81
- await _cleanup_file(sandbox_env, "test_read_and_write_file_text.file")
79
+ await _cleanup_file(sandbox_env, file_name)
80
+
81
+
82
+ async def test_write_file_text_utf(sandbox_env: SandboxEnvironment) -> None:
83
+ utf_content = "✨☽︎✨🌞︎︎✨🚀✨"
84
+ file_name = "test_write_file_text_utf.file"
85
+ await sandbox_env.write_file(file_name, utf_content)
86
+ file_with_utf_content = await sandbox_env.read_file(file_name, text=True)
87
+ assert isinstance(file_with_utf_content, str)
88
+ assert file_with_utf_content == utf_content
89
+ await _cleanup_file(sandbox_env, file_name)
82
90
 
83
91
 
84
92
  async def test_read_and_write_file_binary(sandbox_env: SandboxEnvironment) -> None:
93
+ file_name = "test_read_and_write_file_binary.file"
85
94
  await sandbox_env.write_file(
86
- "test_read_and_write_file_binary.file", b"\xc3\x28"
95
+ file_name, b"\xc3\x28"
87
96
  ) # invalid UTF-8 from https://stackoverflow.com/a/17199164/116509
88
97
 
89
- written_file_bytes = await sandbox_env.read_file(
90
- "test_read_and_write_file_binary.file", text=False
91
- )
98
+ written_file_bytes = await sandbox_env.read_file(file_name, text=False)
92
99
  assert b"\xc3\x28" == written_file_bytes
93
- await _cleanup_file(sandbox_env, "test_read_and_write_file_binary.file")
100
+ await _cleanup_file(sandbox_env, file_name)
94
101
 
95
102
 
96
103
  async def test_read_and_write_file_including_directory_absolute(
@@ -101,6 +108,7 @@ async def test_read_and_write_file_including_directory_absolute(
101
108
  written_file_string = await sandbox_env.read_file(file_name, text=True)
102
109
  assert "absolutely enjoying being in a directory" == written_file_string
103
110
  await _cleanup_file(sandbox_env, file_name)
111
+ await sandbox_env.exec(["rmdir", "/tmp/test_rw_including_directory_absolute"])
104
112
 
105
113
 
106
114
  async def test_read_and_write_file_including_directory_relative(
@@ -111,20 +119,23 @@ async def test_read_and_write_file_including_directory_relative(
111
119
  written_file_string = await sandbox_env.read_file(file_name, text=True)
112
120
  assert "relatively enjoying being in a directory" == written_file_string
113
121
  await _cleanup_file(sandbox_env, file_name)
122
+ await sandbox_env.exec(["rmdir", "test_rw_including_directory_relative"])
114
123
 
115
124
 
116
125
  async def test_read_file_zero_length(sandbox_env: SandboxEnvironment) -> None:
117
- await sandbox_env.exec(["touch", "zero_length_file.file"])
118
- zero_length = await sandbox_env.read_file("zero_length_file.file", text=True)
126
+ file_name = "zero_length_file.file"
127
+ await sandbox_env.exec(["touch", file_name])
128
+ zero_length = await sandbox_env.read_file(file_name, text=True)
119
129
  assert isinstance(zero_length, str)
120
130
  assert zero_length == ""
131
+ await _cleanup_file(sandbox_env, file_name)
121
132
 
122
133
 
123
134
  async def test_read_file_not_found(sandbox_env: SandboxEnvironment) -> None:
124
- file = "nonexistent"
135
+ file_name = "nonexistent"
125
136
  with Raises(FileNotFoundError) as e_info:
126
- await sandbox_env.read_file(file, text=True)
127
- assert file in str(e_info.value)
137
+ await sandbox_env.read_file(file_name, text=True)
138
+ assert file_name in str(e_info.value)
128
139
 
129
140
 
130
141
  async def test_read_file_not_allowed(sandbox_env: SandboxEnvironment) -> None:
@@ -134,22 +145,23 @@ async def test_read_file_not_allowed(sandbox_env: SandboxEnvironment) -> None:
134
145
  with Raises(PermissionError) as e_info:
135
146
  await sandbox_env.read_file(file_name, text=True)
136
147
  assert file_name in str(e_info.value)
148
+ await sandbox_env.exec(["chmod", "+r", file_name])
137
149
  await _cleanup_file(sandbox_env, file_name)
138
150
 
139
151
 
140
152
  async def test_read_file_is_directory(sandbox_env: SandboxEnvironment) -> None:
141
- file = "/etc"
153
+ file_name = "/etc"
142
154
  with Raises(IsADirectoryError) as e_info:
143
- await sandbox_env.read_file(file, text=True)
155
+ await sandbox_env.read_file(file_name, text=True)
144
156
  assert "directory" in str(e_info.value)
145
157
 
146
158
 
147
159
  async def test_read_file_nonsense_name(
148
160
  sandbox_env: SandboxEnvironment,
149
161
  ) -> None:
150
- file = "https:/en.wikipedia.org/wiki/Bart%C5%82omiej_Kasprzykowski"
162
+ file_name = "https:/en.wikipedia.org/wiki/Bart%C5%82omiej_Kasprzykowski"
151
163
  with Raises(FileNotFoundError) as e_info:
152
- await sandbox_env.read_file(file, text=True)
164
+ await sandbox_env.read_file(file_name, text=True)
153
165
  assert "wikipedia" in str(e_info.value)
154
166
 
155
167
 
@@ -159,24 +171,28 @@ async def test_read_file_limit(sandbox_env: SandboxEnvironment) -> None:
159
171
  # Patch limit down to 1KiB for the test to save us from writing a 100 MiB file.
160
172
  with mock.patch.object(SandboxEnvironmentLimits, "MAX_READ_FILE_SIZE", 1024):
161
173
  with Raises(OutputLimitExceededError) as e_info:
162
- await sandbox_env.read_file("large.file", text=True)
174
+ await sandbox_env.read_file(file_name, text=True)
163
175
  assert "limit of 100 MiB was exceeded" in str(e_info.value)
164
176
  await _cleanup_file(sandbox_env, file_name)
165
177
 
166
178
 
167
179
  async def test_write_file_zero_length(sandbox_env: SandboxEnvironment) -> None:
168
- await sandbox_env.write_file("zero_length_file.file", "")
169
- zero_length = await sandbox_env.read_file("zero_length_file.file", text=True)
180
+ file_name = "zero_length_file.file"
181
+ await sandbox_env.write_file(file_name, "")
182
+ zero_length = await sandbox_env.read_file(file_name, text=True)
170
183
  assert isinstance(zero_length, str)
171
184
  assert zero_length == ""
185
+ await _cleanup_file(sandbox_env, file_name)
172
186
 
173
187
 
174
188
  async def test_write_file_space(sandbox_env: SandboxEnvironment) -> None:
175
- space = "✨☽︎✨🌞︎︎✨🚀✨"
176
- await sandbox_env.write_file("file with space.file", space)
177
- file_with_space = await sandbox_env.read_file("file with space.file", text=True)
189
+ space = "to the moon"
190
+ file_name = "file with space.file"
191
+ await sandbox_env.write_file(file_name, space)
192
+ file_with_space = await sandbox_env.read_file(file_name, text=True)
178
193
  assert isinstance(file_with_space, str)
179
194
  assert file_with_space == space
195
+ await _cleanup_file(sandbox_env, file_name)
180
196
 
181
197
 
182
198
  async def test_write_file_is_directory(
@@ -192,6 +208,9 @@ async def test_write_file_is_directory(
192
208
  "content cannot go in a directory, dummy",
193
209
  )
194
210
  assert "directory" in str(e_info.value)
211
+ await sandbox_env.exec(
212
+ ["rm", "-rf", "/tmp/inspect_ai_test_write_file_is_directory"]
213
+ )
195
214
 
196
215
 
197
216
  async def test_write_file_without_permissions(
@@ -203,6 +222,8 @@ async def test_write_file_without_permissions(
203
222
  with Raises(PermissionError) as e_info:
204
223
  await sandbox_env.write_file(file_name, "this won't stick")
205
224
  assert file_name in str(e_info.value)
225
+ await sandbox_env.exec(["chmod", "+w", file_name])
226
+ await _cleanup_file(sandbox_env, file_name)
206
227
 
207
228
 
208
229
  async def test_write_file_exists(
@@ -213,6 +234,7 @@ async def test_write_file_exists(
213
234
  await sandbox_env.write_file(file_name, "altered content")
214
235
  altered_content = await sandbox_env.read_file(file_name, text=True)
215
236
  assert altered_content == "altered content"
237
+ await _cleanup_file(sandbox_env, file_name)
216
238
 
217
239
 
218
240
  async def test_exec_output(sandbox_env: SandboxEnvironment) -> None:
@@ -305,6 +327,7 @@ async def test_cwd_absolute(sandbox_env: SandboxEnvironment) -> None:
305
327
  current_dir_contents = (await sandbox_env.exec(["ls"], cwd=cwd_directory)).stdout
306
328
  assert "test_cwd_absolute.file" in current_dir_contents
307
329
  await _cleanup_file(sandbox_env, file_name)
330
+ await sandbox_env.exec(["rmdir", cwd_directory])
308
331
 
309
332
 
310
333
  async def test_exec_stdout_is_limited(sandbox_env: SandboxEnvironment) -> None:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: inspect_ai
3
- Version: 0.3.60
3
+ Version: 0.3.62
4
4
  Summary: Framework for large language model evaluations
5
5
  Author: UK AI Safety Institute
6
6
  License: MIT License
@@ -68,7 +68,7 @@ Requires-Dist: pytest-asyncio; extra == "dev"
68
68
  Requires-Dist: pytest-cov; extra == "dev"
69
69
  Requires-Dist: pytest-dotenv; extra == "dev"
70
70
  Requires-Dist: pytest-xdist; extra == "dev"
71
- Requires-Dist: ruff==0.9.3; extra == "dev"
71
+ Requires-Dist: ruff==0.9.4; extra == "dev"
72
72
  Requires-Dist: textual-dev>=0.86.2; extra == "dev"
73
73
  Requires-Dist: types-PyYAML; extra == "dev"
74
74
  Requires-Dist: types-beautifulsoup4; extra == "dev"
@@ -3,7 +3,7 @@ inspect_ai/__main__.py,sha256=oWX4YwDZDg3GS3-IG0yPGoSEOfSzWihELg7QmrUlxjM,67
3
3
  inspect_ai/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
4
  inspect_ai/_cli/cache.py,sha256=nOX9ysB3rZ-V8b_ryTpkgpoAynNlq4Op_fIqAIl4EVg,3910
5
5
  inspect_ai/_cli/common.py,sha256=5smokbnQGpOe72WXlpDy1QWuWbjxILKnl5UPvgfW0Yk,3678
6
- inspect_ai/_cli/eval.py,sha256=xxYGk5ewUUmGPIwJ1wp8TcCjxvttp5FxovhgsPfaFL0,31992
6
+ inspect_ai/_cli/eval.py,sha256=y_lKUm5j2E6ERjvFTIgDuyQjxE1KF3BjTgtV2L0juGA,32422
7
7
  inspect_ai/_cli/info.py,sha256=d5W7VA5buinGcsdQjWqlsMM6iSNNGRUHQrr4JS2k8nk,1749
8
8
  inspect_ai/_cli/list.py,sha256=GreVEhJRpagiCpzVc3FSGhcdpTq9B8Jh--mfgs4ueFQ,2454
9
9
  inspect_ai/_cli/log.py,sha256=boSzHZkiabhnYWHLRVsZVENCryG-MDaNHIIbpSp0Mcs,5729
@@ -12,7 +12,7 @@ inspect_ai/_cli/sandbox.py,sha256=1O4glQgTzV_9TbPtQs8iUpdXfOi7OzY5S58N6cQwD-I,81
12
12
  inspect_ai/_cli/score.py,sha256=y_vrgmFMHE8BjTd6UWER3k2vtH1R9j8VKfuB7AQcYpc,2927
13
13
  inspect_ai/_cli/trace.py,sha256=fvh1SPEEozJCd0xKHCb3b3YR3Q1FleDi93kFe1762xw,8959
14
14
  inspect_ai/_cli/util.py,sha256=rOyKR5p08-04IwJdcjakNXD1Gm-dGFtzaTTx7hyArPE,1402
15
- inspect_ai/_cli/view.py,sha256=9UstZ5a1upMZlVKfQCK8L_HvTR1WgLpBp3zpSgTyrLo,2786
15
+ inspect_ai/_cli/view.py,sha256=8pGsQyEnZCi_PIqdtoyQOg3QohhL0EJgKtRQj1zXTGY,3063
16
16
  inspect_ai/_display/__init__.py,sha256=t9Xj8FbxvdBNsalnr16U0r3jSTFX9w4yXcUJwb06_6k,405
17
17
  inspect_ai/_display/core/active.py,sha256=oaOAQh8OU0TXTJCCPp8C9ZtRxW6AWvPXMmkiAeQQBfw,1260
18
18
  inspect_ai/_display/core/config.py,sha256=8hXzbqn2bQqU0_bGchLGmw1p0-HozKpPrAzJfs5jAKs,1692
@@ -42,7 +42,7 @@ inspect_ai/_display/textual/widgets/task_detail.py,sha256=UCxQZkKrG6ILacuPpiJaoE
42
42
  inspect_ai/_display/textual/widgets/tasks.py,sha256=Ari4-lsqPVsvAk4ZjdsnbO3l0JBmlifrbT9D7ykoUFA,11175
43
43
  inspect_ai/_display/textual/widgets/titlebar.py,sha256=Gh_vnsco_1lStPb34TXM9MZJffjy83-1ekoRzUQF_6w,2144
44
44
  inspect_ai/_display/textual/widgets/toggle.py,sha256=ToYs-S4n90yuxWcAW2OTg6AbRf0GhSz61XxfhE6XZ3Y,895
45
- inspect_ai/_display/textual/widgets/transcript.py,sha256=rRTM9aSNHau89mSmlH6Ni9qIckYS9_Han0RtuO6QZmk,10999
45
+ inspect_ai/_display/textual/widgets/transcript.py,sha256=3JbnqkPD6NyCBlD3F232DpNXHgerQkVkci3Yd0Ks6rE,11124
46
46
  inspect_ai/_eval/context.py,sha256=WHXM4IdkPD2edp58qCUjzpFguPDM_RcoqTJdRGccdDE,1344
47
47
  inspect_ai/_eval/eval.py,sha256=P0RNv8kuMyhn3lpvqSww97HCUtPFGECzTZ-mtgYC4Cg,37498
48
48
  inspect_ai/_eval/evalset.py,sha256=Fh_JhIgmMgT0wV1ZwifuwtEmc-hrdGcH2KSHXMzgpxk,27219
@@ -54,12 +54,12 @@ inspect_ai/_eval/score.py,sha256=w84MupDMUziPlPUBB4xwdvXxtOvmYHFwEx9FOM8bJiA,638
54
54
  inspect_ai/_eval/task/__init__.py,sha256=yhBZbjh67QfHy7IdyFGMyQIfBflQLPLkhmz5eEv78Ec,192
55
55
  inspect_ai/_eval/task/constants.py,sha256=quAKMw-4-3xKd1T_KwXCZvHYoKRXt1ZGuaHbBcWJwnA,72
56
56
  inspect_ai/_eval/task/epochs.py,sha256=Ci7T6CQniSOTChv5Im2dCdSDrP-5hq19rV6iJ2uBcH8,700
57
- inspect_ai/_eval/task/error.py,sha256=gJnd8X7LHpPz5zcOq_az6ONZICGJ0_VpSz9yhF0yRyY,1233
58
- inspect_ai/_eval/task/generate.py,sha256=Edm-_6Wp1mkb7XpGkfTAqobWPfjJeWB0sb8-76UjNrc,1999
57
+ inspect_ai/_eval/task/error.py,sha256=Vhqinfdf0eIrjn7kUY7-id8Kbdggr-fEFpAJeJrkJ1M,1244
58
+ inspect_ai/_eval/task/generate.py,sha256=lm066fbZOX7o3NB57rbwwec-ZaIFE745fiuacPCmo20,2352
59
59
  inspect_ai/_eval/task/images.py,sha256=Tg3I7d7ThCYP_Lf-H5JA7xH-sH2W-m1c1YfswDwplt4,3949
60
60
  inspect_ai/_eval/task/log.py,sha256=TjyLglP-3gMMDkfmxYbsxTvGIWY9FEyVtB09Fyrm_PA,6166
61
61
  inspect_ai/_eval/task/results.py,sha256=GkWlgHexm0BPyxrmqLY6YSXz3AqXYMVLXNnKCYfW7ic,15785
62
- inspect_ai/_eval/task/run.py,sha256=rCV98hW3Pnz9Mu6L9h8QLs79Khy9D0lXiNyrR5qW1V4,34607
62
+ inspect_ai/_eval/task/run.py,sha256=l9NrKNC7BvD-qCKbvBHRqBJ-6s9tr2UAKRG56sCWonk,35025
63
63
  inspect_ai/_eval/task/rundir.py,sha256=QXetLfqi1lRo-PcIuu7maQpVO57c2ebnsjfZk0lsAFk,2001
64
64
  inspect_ai/_eval/task/sandbox.py,sha256=kwG1SQawZFDle3hzqMe4hSdnuvShkKsmMIrcC2gnYHM,6120
65
65
  inspect_ai/_eval/task/task.py,sha256=ahlM-0MJc_4wFCWTGQIsnapUn0epka_9jRVK-xdapHY,13800
@@ -83,7 +83,7 @@ inspect_ai/_util/file.py,sha256=49NXD2R_qVDMScBfifiHKhQ6ypB4OyX6cA3ym1k0-1U,1226
83
83
  inspect_ai/_util/format.py,sha256=RWmK4JcB7NwRy4rXtUa1JJ52_KhxcvREhMMCFVHvzwQ,1179
84
84
  inspect_ai/_util/git.py,sha256=nHCtZMLjMyFjSC_9bksBXeFz4xqxZfY6lfXr_qg2n1E,760
85
85
  inspect_ai/_util/hash.py,sha256=N25e4B_Lp9ZFSQIrtMO4x-KrZopJL6gKhs-NO41pxzA,289
86
- inspect_ai/_util/hooks.py,sha256=eIvQCc3L3_sPUPHY2tsv20IanmvOvoa7cAaDuP_aiYI,3780
86
+ inspect_ai/_util/hooks.py,sha256=8QnHCQQY_2XMYPkiPvixUgFY0E_niZvQhQDMI-eCdhM,4353
87
87
  inspect_ai/_util/html.py,sha256=X62FY8gpEJ2ZQoDu2y8aQAbiBUIHKsd7DA9rWCIleo8,168
88
88
  inspect_ai/_util/http.py,sha256=c4yvH48ZkETZ7sNDuNzBR0NUS4r-6WzCaolW9my13ns,3628
89
89
  inspect_ai/_util/images.py,sha256=W7QJHyzuXhfy3VsLhKTzddSo1g69O9RxnTyhat48Wyo,1312
@@ -108,7 +108,7 @@ inspect_ai/_util/thread.py,sha256=yao8tzMkX4860ulFWTb9x4BT7aHghibxRmfIxWBnZIA,11
108
108
  inspect_ai/_util/throttle.py,sha256=JczSG_y0v60m4gQCt28uw_WPjJTbHuq8gWcxY3-vFsc,855
109
109
  inspect_ai/_util/timeouts.py,sha256=-iC1LjpNqB6Hx-i36MfSrLy819RVhKNo4KXjZDuskZQ,5193
110
110
  inspect_ai/_util/trace.py,sha256=TTgl485Ly7slVGv5m794ZQtPEH6W1dGvANnCdH-cfXg,9567
111
- inspect_ai/_util/transcript.py,sha256=BsPYWWtBNmoOV6B28LrG_KcdneRaZssOTns3QNUqk3M,3675
111
+ inspect_ai/_util/transcript.py,sha256=aDoajLE10pEOKiknOmtXoUTCQFTfJadZqgC75XhvdFk,3968
112
112
  inspect_ai/_util/url.py,sha256=Ci9I1T7hSRuA1CvgQmN9TWTSzUPO4ILMkd_8maZlO6k,622
113
113
  inspect_ai/_util/version.py,sha256=PRh1HSHD_EgRW_VYIPquOPj-gL9DM164ePQ9LL3d9lU,739
114
114
  inspect_ai/_util/vscode.py,sha256=UYQS4Do-_vPdEG5aLb50vl1txBhLQYjjEDVOJk9c2Cw,1446
@@ -126,16 +126,16 @@ inspect_ai/_view/www/eslint.config.mjs,sha256=wUi4ffMbjLKiLDBegWY6814TFu_ojR5GhA
126
126
  inspect_ai/_view/www/favicon.svg,sha256=b9AHYZaO2zBzeKH6G4PwXZMGGW_UxY0omKHam-c9MAs,1508
127
127
  inspect_ai/_view/www/index.html,sha256=LDaPH75d5TlepHfIY3wQG0aBcHTpa90Bhx0er_ES45s,910
128
128
  inspect_ai/_view/www/jsconfig.json,sha256=vt1gPPYezOFeV9nofA93CmVJAKGb1QeKGuyvEn1CXgk,383
129
- inspect_ai/_view/www/log-schema.json,sha256=4PRhm3dJvhwPhEZCDUFMwzHcIsPNLGGPuuqXHIwSUxk,95006
130
- inspect_ai/_view/www/package.json,sha256=zQ4TrahqhBIsJAiiSQ--dW9KhH61-IBNTqtPRzS3tU4,1189
129
+ inspect_ai/_view/www/log-schema.json,sha256=f37maoZGe3NSRlBi_YOMlF4iXy95I3XQZIeWPG2M96w,95400
130
+ inspect_ai/_view/www/package.json,sha256=y2cHvK7QKQcVk2v66ldn-syN649xnAjTVHju4QFJY2s,1189
131
131
  inspect_ai/_view/www/postcss.config.cjs,sha256=jQ-QIJFuBVUTZXbFpOvUJk4MsLBr_yPOQbRwHD0ZohE,340
132
132
  inspect_ai/_view/www/tsconfig.json,sha256=JjaLdpt13sgJYHDWdThRIr0gHzpRzEOKL4E2awt9r9s,277
133
133
  inspect_ai/_view/www/vite.config.js,sha256=jmSUrV0YzGCcinfyKcmy2bDRUE10mmPUxMAen0bX8jY,1103
134
134
  inspect_ai/_view/www/yarn.lock,sha256=mNwe8OBr67_9nGoPJ_sjKnRST1wc13qg8y9-74ldi4k,76882
135
135
  inspect_ai/_view/www/dist/index.html,sha256=ErXXXs-OUDOAZexWCmn_u-frxXROpg4kBt6Yvjj0a0U,998
136
136
  inspect_ai/_view/www/dist/assets/favicon.svg,sha256=b9AHYZaO2zBzeKH6G4PwXZMGGW_UxY0omKHam-c9MAs,1508
137
- inspect_ai/_view/www/dist/assets/index.css,sha256=-b1cCY-cDb5XERXkw9rY3bzFN3NDKnWkh6eQfY4Mnjg,859009
138
- inspect_ai/_view/www/dist/assets/index.js,sha256=j6GjSY_bUU24fLwTuGqJHmMRafAkT1JJ286nwaion94,2209402
137
+ inspect_ai/_view/www/dist/assets/index.css,sha256=bfZlZvfLID97haSCsITuh84QcH1fqPJK1MbkS29KBhc,859038
138
+ inspect_ai/_view/www/dist/assets/index.js,sha256=CS24veXSA8JxvDTO41rLGckBaelEcr6oVgAq_rD3fd4,2210766
139
139
  inspect_ai/_view/www/src/App.mjs,sha256=TUBm546x96R7GbtdnQp2a26MypULrmjedOWxhOkdoiM,29777
140
140
  inspect_ai/_view/www/src/Register.mjs,sha256=jpIqov7fyyLPW9Ouhc9KOy__o8s-P5h-VF9S1RDsIDU,116
141
141
  inspect_ai/_view/www/src/Types.mjs,sha256=cdJgBRahz3hH-8XB7WiHeWJVCx8jG5TW1DoO7qm6hcU,734
@@ -159,7 +159,7 @@ inspect_ai/_view/www/src/components/AppErrorBoundary.mjs,sha256=3Xx-gzbk9Gt26r_P
159
159
  inspect_ai/_view/www/src/components/AsciiCinemaPlayer.mjs,sha256=9rnw_6KYwHG83zc-r3df-uGmt2jpwIyUHt6vY-Ib9Dk,2033
160
160
  inspect_ai/_view/www/src/components/Browser.mjs,sha256=hbvCZjyCCULUoI4GppP5Y9nCksIapmuhup5tjfbr8N0,291
161
161
  inspect_ai/_view/www/src/components/Card.mjs,sha256=sIGe9Th6Jyb8hO7DWs4r_NbVTGcBdkN1O5418flBzIw,3177
162
- inspect_ai/_view/www/src/components/ChatView.mjs,sha256=_Erzh15cbYnvJmMR-K_iX0WAhwmjECc0KpuYiT1ftJ0,12681
162
+ inspect_ai/_view/www/src/components/ChatView.mjs,sha256=WLeFqPNwO1P78LMhP4eoFfy0BNX16VMNmbtOrDCJjb8,13452
163
163
  inspect_ai/_view/www/src/components/CopyButton.mjs,sha256=hRAF_GyZa84EMKm0-WBBncPe7XGFbsNE3zG1jKdkcYg,1423
164
164
  inspect_ai/_view/www/src/components/Dialog.mjs,sha256=C7vSKHelCnP-BMkX4nrrF5woas6WEtMy8rQcbtme-xk,1431
165
165
  inspect_ai/_view/www/src/components/DownloadButton.mjs,sha256=fy8uNL0lDqurFDVWvZc1QwLJ0HuaHgwE5L6J1VH_tOQ,433
@@ -236,7 +236,7 @@ inspect_ai/_view/www/src/samples/transcript/state/StateEventView.mjs,sha256=uKOm
236
236
  inspect_ai/_view/www/src/sidebar/Sidebar.mjs,sha256=4hR2BPq6WZW6-XwoeORIKOLyfOEZcVUen08zjsBIAuc,11768
237
237
  inspect_ai/_view/www/src/types/asciicinema-player.d.ts,sha256=PgM6swZ9P5pKXcdKfYfmd1dcZQDy105K60NvcQPFqVo,647
238
238
  inspect_ai/_view/www/src/types/jsondiffpatch.d.ts,sha256=QXTAwln2Z1vDiNuoG4b-VWoH0hKMJHSM1L2deXEV6ZQ,188
239
- inspect_ai/_view/www/src/types/log.d.ts,sha256=twhqUBFQm6sBQnVXtMwLcQ9yEBSZCFP2kXRFqqvT-QQ,26305
239
+ inspect_ai/_view/www/src/types/log.d.ts,sha256=P71fhs-mZ9B8i6eSBTOkdpYc1BENuzwQ1g7BACYSpyU,26423
240
240
  inspect_ai/_view/www/src/types/prism.d.ts,sha256=2HLpvrJ8USii20GT9DS8Z7de3vZw-ZjUEvQrybiFQ94,102
241
241
  inspect_ai/_view/www/src/usage/ModelTokenTable.mjs,sha256=ev6waMVbnQg8mM_brrLsHdO6tJePTuRIn7kmMOPVu-8,1483
242
242
  inspect_ai/_view/www/src/usage/UsageCard.mjs,sha256=rRXkwTRHBhld3LJh6DxCKFmigv19E_jusqIz9tJDiss,4088
@@ -297,39 +297,40 @@ inspect_ai/log/_samples.py,sha256=uuc9-XJ1_Ly3E1YiBaRn0-pqQ4mCN4fIsVX8f6yvg38,42
297
297
  inspect_ai/log/_transcript.py,sha256=4Fwpv6_4zDuJlc9ctjf712_wXdS1LEHbjdSDwP-y4Fg,10899
298
298
  inspect_ai/log/_recorders/__init__.py,sha256=-ECELTfjeWwDuEIBSXO2oxEtJ6Dn0ZQYUxrEy0klN34,350
299
299
  inspect_ai/log/_recorders/create.py,sha256=WB-fms0dBDHlTtTa_a_r0fFc6UPRvQZKZT7d_Inp-EU,1103
300
- inspect_ai/log/_recorders/eval.py,sha256=44Y6kp3f__LxOYFO5mjrqAVftdYAm8VKqoUA-GJHkWg,17305
300
+ inspect_ai/log/_recorders/eval.py,sha256=oEaqw3EjCoH8HSH4uFtD2jT5IzBxr6RqsqZmkWXAY1c,17330
301
301
  inspect_ai/log/_recorders/file.py,sha256=bY0fCr4_gWgLG0g2lYgts7wJYxaiKFdKEz3csu9WCwo,2457
302
302
  inspect_ai/log/_recorders/json.py,sha256=l8I1YAsjnD0fuOYV_KVIWciOCBO6FYgVVkour78_jDI,8980
303
303
  inspect_ai/log/_recorders/recorder.py,sha256=yvW_D99QxUQmnF5EiGsWIVetBXdssMUcsq5us9oRzx4,1551
304
304
  inspect_ai/model/__init__.py,sha256=gYBnBjfEEG_GQhu_lhwQ2tW9U4nXLW0GtRJNGfwYy3k,2121
305
305
  inspect_ai/model/_cache.py,sha256=IQXhMas58Pjdma894GHGTtHYpmnf_Ojz_eE0kHaQVPs,13567
306
306
  inspect_ai/model/_call_tools.py,sha256=Vy3uXVpHY9b0gQrXu3KGmvEOWXntSCxbpJ0elTAQ0So,18128
307
- inspect_ai/model/_chat_message.py,sha256=21x9MJVyAzKM_XO72X6fG6Ei1Fy8xklSdAgdmDS_RLU,4442
308
- inspect_ai/model/_conversation.py,sha256=SFumVE67sq-mgSfqaZw2xwE8kow5NxF6FU8VbXsvc8k,1988
309
- inspect_ai/model/_generate_config.py,sha256=WjlFH6WtfyIpF6TMcSFmIUxyyB0D4quZLIqMd82oEW8,8757
307
+ inspect_ai/model/_chat_message.py,sha256=Mcue0i6_By7FPrjsOdvrJ_Gpt916aTvxuWQHf0fZjgM,5813
308
+ inspect_ai/model/_conversation.py,sha256=cd5ru6lD2xsfkdB9lfWYPbuvzdqjv9geOVFl2HXSad8,2163
309
+ inspect_ai/model/_generate_config.py,sha256=bIr8u4WvyAAAqW0tLp4XpWjzdy4l5k-fiePxUpfLj8o,8991
310
310
  inspect_ai/model/_image.py,sha256=kpO2Bn_-c-dK80HuPOPH1eSNmcoc39kofwf4yTTiTFE,477
311
- inspect_ai/model/_model.py,sha256=N8keDFLPXps-3O07GrPC1ZocjdOnaaNI6tbkUsN5clQ,34114
311
+ inspect_ai/model/_model.py,sha256=IQh187Ed9B_fl9CDJVn4kvXx87UKDaQim5K6DAvIAVM,39654
312
312
  inspect_ai/model/_model_call.py,sha256=r6ObHZwm7jy1qX2qxvAP6iPV3BhdGThL-VH-QEawQhA,2017
313
313
  inspect_ai/model/_model_output.py,sha256=X6dEH3L4XPs5H8cWQeVF8tlkDMNRqP3StJlPA_z140E,7029
314
- inspect_ai/model/_openai.py,sha256=XhYu_Rdc5jLGkrgdIkbniNWlQVBx9iYj2DdDTK1U12o,12871
314
+ inspect_ai/model/_openai.py,sha256=0iRRwFwsqFCTZ0OHPcZl_O__Z8nuu5nlpx2RGyHKOPs,13772
315
+ inspect_ai/model/_reasoning.py,sha256=i1xUArctTefcvmwxcU4kK26PvgULYvvMn25P1GQJP08,440
315
316
  inspect_ai/model/_registry.py,sha256=Cr2y32EqLnOqLbSWoXHVK4ivTTzCUhJuACxoTyPt8kY,2032
316
317
  inspect_ai/model/_render.py,sha256=rWypNUjgrH4NGp0r-ESAze9gZz7lYNjheEP438vRYZE,922
317
- inspect_ai/model/_providers/anthropic.py,sha256=OJPjOutTTkgMU54bfEIRVbnweGa4UwXsZgYkacYt20M,24752
318
+ inspect_ai/model/_providers/anthropic.py,sha256=ZDX-CSEKDZJ2j5UItEMEyHNvgLbabjkHqc8FaI5vOko,25063
318
319
  inspect_ai/model/_providers/azureai.py,sha256=moIC4-um_Qs3iXbr4DlP6LUL924aF-s5YyQqF0V5ye4,14037
319
320
  inspect_ai/model/_providers/bedrock.py,sha256=BiSEQYlGLKqaadGUJxSQuule3JPLZbAIjfhJ36DYQ8k,23357
320
321
  inspect_ai/model/_providers/cloudflare.py,sha256=h6ubjf0kxyMM7Aj2tm68tWa-2R7RAXNGp1O6KMvi0Gw,4143
321
322
  inspect_ai/model/_providers/goodfire.py,sha256=Pu11d4mATDq5B750Q6Z4ZS8EC_nniFtleCQTTd-Pxm8,8690
322
323
  inspect_ai/model/_providers/google.py,sha256=j0P7DmtLtaw8lunpQla7MlG8hPWLyzrRg-iEG6vrEkI,23226
323
324
  inspect_ai/model/_providers/grok.py,sha256=dS88ueXiD-kHAFr0jCoTpTGLGa2VsUlB_TFP8L_2lBM,995
324
- inspect_ai/model/_providers/groq.py,sha256=0--gws0z5wM4q9bJa-8WUI8cmDXvhDz8VqXI-Bqdblg,9812
325
+ inspect_ai/model/_providers/groq.py,sha256=ikn3812nGvU6fGlrZcpD-LiN-EqEobo-zof8hPK9rV8,9958
325
326
  inspect_ai/model/_providers/hf.py,sha256=bgUtYZAitHxtoVyt0I0Wnz-rf6jRAqIjQ82QjZBOJAM,17468
326
327
  inspect_ai/model/_providers/llama_cpp_python.py,sha256=i2I56Damgb8VDhMuPxPca24fVhlajDHzxCTYFnT41uI,702
327
328
  inspect_ai/model/_providers/mistral.py,sha256=xTJSdb1-_hwTr3qesSbS5hyEqWrDzSQwGY__kHaQ1tc,15213
328
329
  inspect_ai/model/_providers/mockllm.py,sha256=gL9f-f5TOdE4a0GVENr3cOIIp2kv8zVXWPZ608rouGk,2440
329
330
  inspect_ai/model/_providers/ollama.py,sha256=mBPSxaEkiH_RnlHKqOyFBlXObQhc2dfjL-rCKrea5u8,675
330
- inspect_ai/model/_providers/openai.py,sha256=WIy-lCr9K8qQCqZdY_FGJyhKrg3hIYeTyo8mgyCh1sk,11338
331
+ inspect_ai/model/_providers/openai.py,sha256=WO0OsefUNPT6SKTr8WUaLVAGUriA5pOLJ68LuDlYg5c,11746
331
332
  inspect_ai/model/_providers/openai_o1.py,sha256=W790nMo6ujKcqfdyiR-Q2aA3RRT3LwToLU3OM86-xl0,12242
332
- inspect_ai/model/_providers/providers.py,sha256=-RG878Bih1wHykhVoEAver2E5GsYmLSYvPcOBKYOwkw,6192
333
+ inspect_ai/model/_providers/providers.py,sha256=XbXFuy_zZFTx56Ol7hO9m_knH71rHuzY_n1JoLmnKJw,6192
333
334
  inspect_ai/model/_providers/together.py,sha256=0KpFLKbnP_a_AH7VN18eLtlm7kGvJkBIura9drdc7BU,9483
334
335
  inspect_ai/model/_providers/vertex.py,sha256=_dvhtboSfb6uYez421vqmJrcc-SBZAIP6XYNwtHElKM,16391
335
336
  inspect_ai/model/_providers/vllm.py,sha256=cggwgDMEwdF9DKdqGxo-XMMkDte-rQoHIBf6nipZ1Pg,14093
@@ -359,16 +360,17 @@ inspect_ai/scorer/_reducer/__init__.py,sha256=ntoSXbbBia6gN3Uk3tQFQ8lSt8IBSRvwM5
359
360
  inspect_ai/scorer/_reducer/reducer.py,sha256=g8F7sTm_FmPcLdavOGv0YuvqZ5_nz2irmQVq37h2Y5A,11494
360
361
  inspect_ai/scorer/_reducer/registry.py,sha256=J2tvuuxf4jBC09_SCBZg99Qb2qQUWG8STEsw7ASWpXQ,5388
361
362
  inspect_ai/scorer/_reducer/types.py,sha256=uimvzIBRK7x1Dof77gsHYe9PU3hekB1opm9DTAa4sL4,340
362
- inspect_ai/solver/__init__.py,sha256=v3lps_q6SU4ZHklFjG-vgy92FcOK3jynk9zPs-nBwa4,3356
363
- inspect_ai/solver/_basic_agent.py,sha256=uJkjMsBP6SycnJxyXBOitU4AE8dBBCTKEbEZCz0NBuM,9607
363
+ inspect_ai/solver/__init__.py,sha256=I8lmfnohTUYyW3aR7sCQhkOBh9R75a0-QrYkR3hG76E,3433
364
+ inspect_ai/solver/_basic_agent.py,sha256=sK7S_n4iUbgh8KLSEuxwsg2hgmBUrTL8-MU6ptkqA5g,10659
364
365
  inspect_ai/solver/_chain.py,sha256=F-2ZHE2KOlDAIgH1_Q23whUMH5TjYGvCHhcOgbRxe7I,2234
365
366
  inspect_ai/solver/_critique.py,sha256=ddO8J7VqSEsT6kofawpn3PrcUpLjLUMFmJi0hocDZpI,3504
366
367
  inspect_ai/solver/_fork.py,sha256=Ge1PwpCHjeZhm2CLAWKss2uFuQd9BGzVinLOW6UOnfE,2880
368
+ inspect_ai/solver/_limit.py,sha256=zaZseJgjbJaBnGdXQHQ5MpU4tzgUyD8FzLvJMGDk3jA,1122
367
369
  inspect_ai/solver/_multiple_choice.py,sha256=tSLrwqAHuvX_eccM6OXiRmlx5bx_3g1LcB8GDWWV9C0,11024
368
370
  inspect_ai/solver/_plan.py,sha256=Dp1DDTtGe2iTo8CYWKqCOdfBFfTK_0wi2JzIr6qrikI,7042
369
371
  inspect_ai/solver/_prompt.py,sha256=PwGtLQ-dnCzxN_74H1NDT7LAhUuuiw2-c6ZSyXgBFgQ,3953
370
372
  inspect_ai/solver/_solver.py,sha256=Q-FrkfD97_TufEzuQxzr_LgziCdQipIuy778NWq7vVM,9008
371
- inspect_ai/solver/_task_state.py,sha256=D2rpC7lycJH601o6xHNrF3LIWgMGFaXkQ1b_38pF-2U,15169
373
+ inspect_ai/solver/_task_state.py,sha256=Timv9_961yPNjh07BBUL0QeHeLLKx6b-QBsN1ocnEvY,16237
372
374
  inspect_ai/solver/_transcript.py,sha256=gkH9CC5gYbz7ZzrFD0TkjtKYjWxQP5EthJOkq8NXDOc,1049
373
375
  inspect_ai/solver/_use_tools.py,sha256=W7muO8r9eThXydm1GjFF-f6gip9AhzhgAG2GHSE5EpM,2011
374
376
  inspect_ai/solver/_util.py,sha256=pthrf-CzC6FnQYSUFLXTYM4wFEJptZrh5POTmV-Jtow,446
@@ -402,7 +404,7 @@ inspect_ai/tool/_tool_with.py,sha256=YBHjhT9PuM2QyUxD_BzhgqFPFfUPoRrTIpXMBXMXlFY
402
404
  inspect_ai/tool/_tools/_execute.py,sha256=DkFlvUTvI595H1zH5IKArhbyBo8YZWqq9tvoUMdvlaw,2823
403
405
  inspect_ai/tool/_tools/_web_search.py,sha256=YqZ3E65ssdq1X2NSH9Mqt5INXdPVQOdKa3PbKi7XjAY,7828
404
406
  inspect_ai/tool/_tools/_web_browser/__init__.py,sha256=dnnzy96pcvMvxD1OGg4hG-doL7Ru7WH0i25Sb9VIXwE,65
405
- inspect_ai/tool/_tools/_web_browser/_web_browser.py,sha256=PFBXaN18HNKslJzPlMgs_p2fNgPOClbjhYzD_qa_x9M,15541
407
+ inspect_ai/tool/_tools/_web_browser/_web_browser.py,sha256=Bzb5RtxlQuxGgbkhxyaUTaj6VdNClgePBl5IuX2JJhY,15584
406
408
  inspect_ai/tool/_tools/_web_browser/_resources/Dockerfile,sha256=Sh1Ht5oBuxZC_8hLzw877CIvM9me_8Q0MxMemR5E_js,431
407
409
  inspect_ai/tool/_tools/_web_browser/_resources/README.md,sha256=RAMe6uFUYepkPSqpdCuag0nqASuFEONDI7jOHagYfuI,2607
408
410
  inspect_ai/tool/_tools/_web_browser/_resources/accessibility_node.py,sha256=PuOOeF5rDjN9tz-kRQ_UZUXj7MzrjwuFEdhVIYcCcQw,9628
@@ -423,16 +425,20 @@ inspect_ai/tool/beta/_computer/__init__.py,sha256=fq4BSM4aDhtEtE4279xm47NiO6vyiZ
423
425
  inspect_ai/tool/beta/_computer/_common.py,sha256=6XK6MBu2ZiRCao_eMlZdjXEvTmbeKQRN0K-8MtBPsk4,4059
424
426
  inspect_ai/tool/beta/_computer/_computer.py,sha256=2R-3GLoSvQn8b0rVPur3jMzaRK4nS6i_sDwzicj5XJ8,7433
425
427
  inspect_ai/tool/beta/_computer/_computer_split.py,sha256=H3DVCJqpHp_2ra85W_z9s5r-oHTVWwctuEq5fDdy2T4,5588
426
- inspect_ai/tool/beta/_computer/_resources/Dockerfile,sha256=CsmxeL8nO58fzKKpjFaAKiMVyMcZxWVbLUQsqXOvKNo,3545
428
+ inspect_ai/tool/beta/_computer/_resources/Dockerfile,sha256=DA1ZzOqO3vEySSfoDV9bCBl_iVmpzhiNz_s1Oyd1gO0,3568
427
429
  inspect_ai/tool/beta/_computer/_resources/README.md,sha256=5JDNaGJ-Ebq6Io57ANFIqgjPoh11aGDSrrgrhyfiqxU,1657
428
430
  inspect_ai/tool/beta/_computer/_resources/entrypoint/entrypoint.sh,sha256=IR8sE-b22YO7lwzdDiyjhLTJWIf0X__wA8WE98dwkwM,394
429
431
  inspect_ai/tool/beta/_computer/_resources/entrypoint/novnc_startup.sh,sha256=PAbMgSvprnLvbj8A8a59o_yDfm-jiCXxBxsPb004Bf8,383
430
- inspect_ai/tool/beta/_computer/_resources/entrypoint/x11vnc_startup.sh,sha256=NRTMEL5TTrEFjKK82ZMEqkHrhYIGIlos80CoElQgWoU,996
432
+ inspect_ai/tool/beta/_computer/_resources/entrypoint/x11vnc_startup.sh,sha256=JFcW46u2ioDpGLptmUOMaqtt2YvuFhCTB42cyWRmo8c,993
431
433
  inspect_ai/tool/beta/_computer/_resources/entrypoint/xfce_startup.sh,sha256=w_27I4o7usP8SUMzP3lrXeNuISslyy1aywkgpm_2l4Q,209
432
434
  inspect_ai/tool/beta/_computer/_resources/entrypoint/xvfb_startup.sh,sha256=hd2naWFFpm3S0cWZ6Lhlpm6KD3L6-g8Zw2dgxchXMUg,1118
435
+ inspect_ai/tool/beta/_computer/_resources/image_home_dir/.config/Code/User/settings.json,sha256=n4B3q9qIcPnku_LXa3s0c87rtS7rpYRRMRrZfQuef3M,48
436
+ inspect_ai/tool/beta/_computer/_resources/image_home_dir/.config/Code/User/globalStorage/state.vscdb,sha256=IywnS_kbluMmzEigds2Leg1r_uoIQEDX1eWKtYy4fQc,155648
437
+ inspect_ai/tool/beta/_computer/_resources/image_home_dir/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml,sha256=dIUGsB1BFK37S1ahbyhCiFsyGlGS4yT_paViPwXBW_g,2725
438
+ inspect_ai/tool/beta/_computer/_resources/image_home_dir/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-screensaver.xml,sha256=jNgaNqBCngQlykTlLhmmdc_LLOrH2AMk7pUpLkbCjMY,312
433
439
  inspect_ai/tool/beta/_computer/_resources/image_home_dir/Desktop/Firefox Web Browser.desktop,sha256=Odm77RSEiTlMx7cY8odUCO2a8fvIUwHcpEUanpHzbL0,181
440
+ inspect_ai/tool/beta/_computer/_resources/image_home_dir/Desktop/Terminal.desktop,sha256=Kq3CHhYP-YjwEIUS90TJVib_LoQ-9Tq0-3VIGYj6urM,195
434
441
  inspect_ai/tool/beta/_computer/_resources/image_home_dir/Desktop/Visual Studio Code.desktop,sha256=jYYu8pcdIhFCC_3cEgO-0z0A6eQO2WQkIVViebSBbpA,184
435
- inspect_ai/tool/beta/_computer/_resources/image_home_dir/Desktop/XPaint.desktop,sha256=T093gZ3B2aXNd0yo6J31rJ0HeE3ROXPCbgAWxZqtjDA,158
436
442
  inspect_ai/tool/beta/_computer/_resources/tool/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
437
443
  inspect_ai/tool/beta/_computer/_resources/tool/_logger.py,sha256=owkNYe9lyShTLXoMqhK4Qtzacnt5FvSxN8Wqf2MO5XM,652
438
444
  inspect_ai/tool/beta/_computer/_resources/tool/_run.py,sha256=xhXdnBK1di9muaO44CEirL9hpGy3NmKbjfMpyeVmn8Y,1595
@@ -440,12 +446,11 @@ inspect_ai/tool/beta/_computer/_resources/tool/_tool_result.py,sha256=cd6JNFhwyI
440
446
  inspect_ai/tool/beta/_computer/_resources/tool/_x11_client.py,sha256=rLduqd6JduoM9nMQk2-q7lpK4TCasz2F6_6mexquInI,9566
441
447
  inspect_ai/tool/beta/_computer/_resources/tool/computer_tool.py,sha256=0ehJuuUO6AlWUZKt3TyUbWQuwyBmkpsBbHxizZI_0GQ,2574
442
448
  inspect_ai/tool/beta/_computer/_resources/tool/requirements.txt,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
443
- inspect_ai/util/__init__.py,sha256=4I9qA1900NIJNYjnGtHFHVoXkWv89pO6h10ePQ2Ohe8,1465
449
+ inspect_ai/util/__init__.py,sha256=Nbr5h9EDqnUFqj1SSm5hJccHp_sz2YB1SCZgFS0NYDk,1388
444
450
  inspect_ai/util/_concurrency.py,sha256=Olzk259NPeSXIy5LzID_WEVGnaW6p5CBCBrmlZUYufM,2227
445
451
  inspect_ai/util/_console.py,sha256=V1XkIoKcNZo0SgRUOv15zJAWz6-zV6267hC4Oldj8oY,1237
446
452
  inspect_ai/util/_conversation.py,sha256=KzqvKfj1tB14cgARZjYyIVG2EpuE-EZKqLGAPIXv1Xs,784
447
453
  inspect_ai/util/_display.py,sha256=IUVyzS0PtFo9LeRW_EWvDv7tkGy1rsZGBjqg63uOPOs,1591
448
- inspect_ai/util/_limit.py,sha256=HMgembPprMvJFeFQy82Gw_BkPX4mqYBP1mGu-aA0n5g,751
449
454
  inspect_ai/util/_panel.py,sha256=bSXXV1LDVMt8DeGWEYTfEm3iMz9I02sX5xpBSVUVRdQ,3072
450
455
  inspect_ai/util/_resource.py,sha256=MMmtTKtt78pDIp9Uc_OxJom_q8mcKozVqt8kosKRJt0,3420
451
456
  inspect_ai/util/_store.py,sha256=QemJe2M-RK6zSFNcd07_92XFjvNtWKgHzBr5eT3KF1I,3786
@@ -459,7 +464,7 @@ inspect_ai/util/_sandbox/environment.py,sha256=Qo7ne28L6fn3igo2Gd0H1lz4vP60IdJGS
459
464
  inspect_ai/util/_sandbox/limits.py,sha256=K-GjKfSugOq8KP0wW_oF6qFrXsOnMV0C88QUWkjPJ9o,2164
460
465
  inspect_ai/util/_sandbox/local.py,sha256=NkHnR_e7s7RFsBdwfaSR7Yzp6lSUc7Em0Pc9_CFuN4c,3534
461
466
  inspect_ai/util/_sandbox/registry.py,sha256=mQwWwqzaCXF1FZ2fcVujpp3WMA35GWnh1w43SoIJAVM,2145
462
- inspect_ai/util/_sandbox/self_check.py,sha256=o-5skGZzzT1HCh9R6gf_D9J-PmCl0VRbriX4rqUjZ60,14101
467
+ inspect_ai/util/_sandbox/self_check.py,sha256=ZRb2wMRnyiUBJPJqTfLlUO2_ctxBoJ-4soyERfn583A,15222
463
468
  inspect_ai/util/_sandbox/service.py,sha256=2os7W8NYBDcaBoaHVfZ1YrI9hvldksmiwqkUYrCRCPo,11258
464
469
  inspect_ai/util/_sandbox/docker/cleanup.py,sha256=MK6UlADcWtTDotppeVJga2ibf9Ud-e4V-5ReoNbmhqg,4793
465
470
  inspect_ai/util/_sandbox/docker/compose.py,sha256=4aIWWTaTUY9ZWrfSynkRqrUbKlYWrRYoSDX9WrjdHFQ,11473
@@ -468,9 +473,9 @@ inspect_ai/util/_sandbox/docker/docker.py,sha256=sx4PNv_4PDuKlkeYV6ASaZbo0XT-I_V
468
473
  inspect_ai/util/_sandbox/docker/internal.py,sha256=fATyk2pdtjSl-D0VPT4dmkXV-gOc5HrPH0EQDW4IAJY,1446
469
474
  inspect_ai/util/_sandbox/docker/prereqs.py,sha256=0j6_OauBBnVlpBleADcZavIAAQZy4WewVjbRn9c0stg,3355
470
475
  inspect_ai/util/_sandbox/docker/util.py,sha256=pSPsRGymrTmTnEUHiHoQSNqeurPP1mL5kB-105O6EWo,2794
471
- inspect_ai-0.3.60.dist-info/LICENSE,sha256=aYPffOl9TwBXDQ8g33Jh6AsBhobb3A76qNm7r2HZsps,1079
472
- inspect_ai-0.3.60.dist-info/METADATA,sha256=xzklRJs-p-vYq21ksrYIVA2XCUvMVksqx5Gvtdpz6T8,4528
473
- inspect_ai-0.3.60.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
474
- inspect_ai-0.3.60.dist-info/entry_points.txt,sha256=WGGLmzTzDWLzYfiyovSY6oEKuf-gqzSDNOb5V-hk3fM,54
475
- inspect_ai-0.3.60.dist-info/top_level.txt,sha256=Tp3za30CHXJEKLk8xLe9qGsW4pBzJpEIOMHOHNCXiVo,11
476
- inspect_ai-0.3.60.dist-info/RECORD,,
476
+ inspect_ai-0.3.62.dist-info/LICENSE,sha256=aYPffOl9TwBXDQ8g33Jh6AsBhobb3A76qNm7r2HZsps,1079
477
+ inspect_ai-0.3.62.dist-info/METADATA,sha256=xqS7VNd17-q7V7R0BL_0Ddl5awi9OZQeKepW5iuQmd8,4528
478
+ inspect_ai-0.3.62.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
479
+ inspect_ai-0.3.62.dist-info/entry_points.txt,sha256=WGGLmzTzDWLzYfiyovSY6oEKuf-gqzSDNOb5V-hk3fM,54
480
+ inspect_ai-0.3.62.dist-info/top_level.txt,sha256=Tp3za30CHXJEKLk8xLe9qGsW4pBzJpEIOMHOHNCXiVo,11
481
+ inspect_ai-0.3.62.dist-info/RECORD,,
@@ -1,10 +0,0 @@
1
- [Desktop Entry]
2
- Version=1.0
3
- Type=Application
4
- Name=XPaint
5
- Comment=Xpaint painting application
6
- Exec=xpaint
7
- Icon=xpaint
8
- Path=
9
- Terminal=false
10
- StartupNotify=false