vis-agent 0.2.38.dev7473__tar.gz → 0.2.38.dev7554__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.
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/PKG-INFO +1 -1
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/fixtures/activity-cases.json +498 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/fixtures/activity-copy.json +47 -3
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/schema/activity.json +66 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/schema/agents.json +10 -4
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/schema/gateway.json +43 -1
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/schema/toggle.json +25 -7
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/pyproject.toml +1 -1
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/src/blockether/vis/activity.py +6 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/src/blockether/vis/engine/_council.py +3 -2
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/src/blockether/vis/extension.py +186 -9
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/src/blockether/vis/extension_package.py +47 -1
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_agents.py +2 -2
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_declarations.py +44 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_engine.py +2 -2
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_extension_package.py +45 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_tools.py +70 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/.gitignore +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/LICENSE +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/README.md +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/fixtures/activity-arguments.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/fixtures/activity-execution.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/fixtures/activity-groups.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/fixtures/activity-read-session.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/fixtures/activity-reads.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/fixtures/activity-results.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/fixtures/activity-tables.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/fixtures/activity.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/fixtures/diff.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/fixtures/live-primitives.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/fixtures/session-health.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/fixtures/view.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/schema/automations.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/schema/common.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/schema/config.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/schema/content.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/schema/council.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/schema/diff.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/schema/improve.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/schema/provider.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/schema/rooms.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/schema/symbol.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/schema/view.json +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/examples/greeter/tests/test_greeter.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/hatch_build.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/src/blockether/vis/__init__.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/src/blockether/vis/_contracts.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/src/blockether/vis/_outside.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/src/blockether/vis/_wire.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/src/blockether/vis/engine/__init__.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/src/blockether/vis/engine/_agent.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/src/blockether/vis/engine/_agents.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/src/blockether/vis/engine/_client.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/src/blockether/vis/engine/_extensions.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/src/blockether/vis/engine/_local.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/src/blockether/vis/py.typed +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/src/blockether/vis/rooms.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/src/blockether/vis/views.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/conftest.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_activity.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_agent.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_agent_extension_lifecycle.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_agent_extensions.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_api_guides.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_authoring.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_catalog.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_catalog_recipe.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_ci_report_recipe.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_client.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_client_extensions_engine.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_code_quality_recipe.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_contracts.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_council.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_engine_docstrings.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_extension_reference.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_gateway_performance.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_goals.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_live_primitives.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_live_wait.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_local.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_method_typing.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_monitor_recipe.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_namespace.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_outside.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_providers.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_record_arguments.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_registration.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_repair_hooks.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_result_sequence.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_rooms.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_scoped_settings.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_sdk_bootstrap.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_sdk_guide.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_sdk_typing.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_structured_live.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_symbol_contract.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_testing.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_text_list_arguments.py +0 -0
- {vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/tests/test_views.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: vis-agent
|
|
3
|
-
Version: 0.2.38.
|
|
3
|
+
Version: 0.2.38.dev7554
|
|
4
4
|
Summary: The Vis Python SDK — author extensions and control local or remote engines.
|
|
5
5
|
Project-URL: Homepage, https://vis.blockether.com
|
|
6
6
|
Project-URL: Documentation, https://vis.blockether.com
|
{vis_agent-0.2.38.dev7473 → vis_agent-0.2.38.dev7554}/contracts/fixtures/activity-cases.json
RENAMED
|
@@ -2148,5 +2148,503 @@
|
|
|
2148
2148
|
}
|
|
2149
2149
|
]
|
|
2150
2150
|
}
|
|
2151
|
+
},
|
|
2152
|
+
{
|
|
2153
|
+
"name": "terminal-block",
|
|
2154
|
+
"valid": true,
|
|
2155
|
+
"projection": {
|
|
2156
|
+
"state": "succeeded",
|
|
2157
|
+
"counts": {
|
|
2158
|
+
"running": 0,
|
|
2159
|
+
"succeeded": 1,
|
|
2160
|
+
"failed": 0,
|
|
2161
|
+
"cancelled": 0
|
|
2162
|
+
},
|
|
2163
|
+
"rows": [
|
|
2164
|
+
{
|
|
2165
|
+
"id": "call-1",
|
|
2166
|
+
"sequence": 1,
|
|
2167
|
+
"operation": "shell",
|
|
2168
|
+
"presenter": "shell",
|
|
2169
|
+
"signal": "verification",
|
|
2170
|
+
"state": "succeeded",
|
|
2171
|
+
"summary": "npm test",
|
|
2172
|
+
"duration_ms": 900,
|
|
2173
|
+
"resources": [],
|
|
2174
|
+
"evidence": [],
|
|
2175
|
+
"presentation": {
|
|
2176
|
+
"headline": "npm test",
|
|
2177
|
+
"summary": "",
|
|
2178
|
+
"aside": "~/vis · exit 1",
|
|
2179
|
+
"outcome": "Tests: 41 passed",
|
|
2180
|
+
"content": [
|
|
2181
|
+
{
|
|
2182
|
+
"type": "terminal",
|
|
2183
|
+
"command": [
|
|
2184
|
+
"cd apps/web",
|
|
2185
|
+
"&& npm test",
|
|
2186
|
+
"| tail -3"
|
|
2187
|
+
],
|
|
2188
|
+
"lines": [
|
|
2189
|
+
{
|
|
2190
|
+
"text": "Tests: 41 passed",
|
|
2191
|
+
"stream": "stdout"
|
|
2192
|
+
},
|
|
2193
|
+
{
|
|
2194
|
+
"text": "warning: slow test",
|
|
2195
|
+
"stream": "stderr"
|
|
2196
|
+
}
|
|
2197
|
+
],
|
|
2198
|
+
"omitted_lines": 12,
|
|
2199
|
+
"exit": 1
|
|
2200
|
+
}
|
|
2201
|
+
],
|
|
2202
|
+
"verdict": "failed"
|
|
2203
|
+
}
|
|
2204
|
+
}
|
|
2205
|
+
]
|
|
2206
|
+
}
|
|
2207
|
+
},
|
|
2208
|
+
{
|
|
2209
|
+
"name": "terminal-minimal",
|
|
2210
|
+
"valid": true,
|
|
2211
|
+
"projection": {
|
|
2212
|
+
"state": "succeeded",
|
|
2213
|
+
"counts": {
|
|
2214
|
+
"running": 0,
|
|
2215
|
+
"succeeded": 1,
|
|
2216
|
+
"failed": 0,
|
|
2217
|
+
"cancelled": 0
|
|
2218
|
+
},
|
|
2219
|
+
"rows": [
|
|
2220
|
+
{
|
|
2221
|
+
"id": "call-1",
|
|
2222
|
+
"sequence": 1,
|
|
2223
|
+
"operation": "shell",
|
|
2224
|
+
"presenter": "shell",
|
|
2225
|
+
"signal": "verification",
|
|
2226
|
+
"state": "succeeded",
|
|
2227
|
+
"summary": "npm test",
|
|
2228
|
+
"duration_ms": 900,
|
|
2229
|
+
"resources": [],
|
|
2230
|
+
"evidence": [],
|
|
2231
|
+
"presentation": {
|
|
2232
|
+
"headline": "npm test",
|
|
2233
|
+
"summary": "",
|
|
2234
|
+
"aside": "~/vis · exit 1",
|
|
2235
|
+
"outcome": "Tests: 41 passed",
|
|
2236
|
+
"content": [
|
|
2237
|
+
{
|
|
2238
|
+
"type": "terminal",
|
|
2239
|
+
"command": [
|
|
2240
|
+
"cd apps/web",
|
|
2241
|
+
"&& npm test",
|
|
2242
|
+
"| tail -3"
|
|
2243
|
+
],
|
|
2244
|
+
"lines": [
|
|
2245
|
+
{
|
|
2246
|
+
"text": "Tests: 41 passed",
|
|
2247
|
+
"stream": "stdout"
|
|
2248
|
+
},
|
|
2249
|
+
{
|
|
2250
|
+
"text": "warning: slow test",
|
|
2251
|
+
"stream": "stderr"
|
|
2252
|
+
}
|
|
2253
|
+
]
|
|
2254
|
+
}
|
|
2255
|
+
],
|
|
2256
|
+
"verdict": "failed"
|
|
2257
|
+
}
|
|
2258
|
+
}
|
|
2259
|
+
]
|
|
2260
|
+
}
|
|
2261
|
+
},
|
|
2262
|
+
{
|
|
2263
|
+
"name": "terminal-rejects-empty-command",
|
|
2264
|
+
"valid": false,
|
|
2265
|
+
"projection": {
|
|
2266
|
+
"state": "succeeded",
|
|
2267
|
+
"counts": {
|
|
2268
|
+
"running": 0,
|
|
2269
|
+
"succeeded": 1,
|
|
2270
|
+
"failed": 0,
|
|
2271
|
+
"cancelled": 0
|
|
2272
|
+
},
|
|
2273
|
+
"rows": [
|
|
2274
|
+
{
|
|
2275
|
+
"id": "call-1",
|
|
2276
|
+
"sequence": 1,
|
|
2277
|
+
"operation": "shell",
|
|
2278
|
+
"presenter": "shell",
|
|
2279
|
+
"signal": "verification",
|
|
2280
|
+
"state": "succeeded",
|
|
2281
|
+
"summary": "npm test",
|
|
2282
|
+
"duration_ms": 900,
|
|
2283
|
+
"resources": [],
|
|
2284
|
+
"evidence": [],
|
|
2285
|
+
"presentation": {
|
|
2286
|
+
"headline": "npm test",
|
|
2287
|
+
"summary": "",
|
|
2288
|
+
"aside": "~/vis · exit 1",
|
|
2289
|
+
"outcome": "Tests: 41 passed",
|
|
2290
|
+
"content": [
|
|
2291
|
+
{
|
|
2292
|
+
"type": "terminal",
|
|
2293
|
+
"command": [],
|
|
2294
|
+
"lines": [
|
|
2295
|
+
{
|
|
2296
|
+
"text": "Tests: 41 passed",
|
|
2297
|
+
"stream": "stdout"
|
|
2298
|
+
},
|
|
2299
|
+
{
|
|
2300
|
+
"text": "warning: slow test",
|
|
2301
|
+
"stream": "stderr"
|
|
2302
|
+
}
|
|
2303
|
+
],
|
|
2304
|
+
"omitted_lines": 12,
|
|
2305
|
+
"exit": 1
|
|
2306
|
+
}
|
|
2307
|
+
],
|
|
2308
|
+
"verdict": "failed"
|
|
2309
|
+
}
|
|
2310
|
+
}
|
|
2311
|
+
]
|
|
2312
|
+
}
|
|
2313
|
+
},
|
|
2314
|
+
{
|
|
2315
|
+
"name": "terminal-rejects-unknown-stream",
|
|
2316
|
+
"valid": false,
|
|
2317
|
+
"projection": {
|
|
2318
|
+
"state": "succeeded",
|
|
2319
|
+
"counts": {
|
|
2320
|
+
"running": 0,
|
|
2321
|
+
"succeeded": 1,
|
|
2322
|
+
"failed": 0,
|
|
2323
|
+
"cancelled": 0
|
|
2324
|
+
},
|
|
2325
|
+
"rows": [
|
|
2326
|
+
{
|
|
2327
|
+
"id": "call-1",
|
|
2328
|
+
"sequence": 1,
|
|
2329
|
+
"operation": "shell",
|
|
2330
|
+
"presenter": "shell",
|
|
2331
|
+
"signal": "verification",
|
|
2332
|
+
"state": "succeeded",
|
|
2333
|
+
"summary": "npm test",
|
|
2334
|
+
"duration_ms": 900,
|
|
2335
|
+
"resources": [],
|
|
2336
|
+
"evidence": [],
|
|
2337
|
+
"presentation": {
|
|
2338
|
+
"headline": "npm test",
|
|
2339
|
+
"summary": "",
|
|
2340
|
+
"aside": "~/vis · exit 1",
|
|
2341
|
+
"outcome": "Tests: 41 passed",
|
|
2342
|
+
"content": [
|
|
2343
|
+
{
|
|
2344
|
+
"type": "terminal",
|
|
2345
|
+
"command": [
|
|
2346
|
+
"cd apps/web",
|
|
2347
|
+
"&& npm test",
|
|
2348
|
+
"| tail -3"
|
|
2349
|
+
],
|
|
2350
|
+
"lines": [
|
|
2351
|
+
{
|
|
2352
|
+
"text": "Tests: 41 passed",
|
|
2353
|
+
"stream": "stdin"
|
|
2354
|
+
},
|
|
2355
|
+
{
|
|
2356
|
+
"text": "warning: slow test",
|
|
2357
|
+
"stream": "stderr"
|
|
2358
|
+
}
|
|
2359
|
+
],
|
|
2360
|
+
"omitted_lines": 12,
|
|
2361
|
+
"exit": 1
|
|
2362
|
+
}
|
|
2363
|
+
],
|
|
2364
|
+
"verdict": "failed"
|
|
2365
|
+
}
|
|
2366
|
+
}
|
|
2367
|
+
]
|
|
2368
|
+
}
|
|
2369
|
+
},
|
|
2370
|
+
{
|
|
2371
|
+
"name": "terminal-line-rejects-newline",
|
|
2372
|
+
"valid": false,
|
|
2373
|
+
"projection": {
|
|
2374
|
+
"state": "succeeded",
|
|
2375
|
+
"counts": {
|
|
2376
|
+
"running": 0,
|
|
2377
|
+
"succeeded": 1,
|
|
2378
|
+
"failed": 0,
|
|
2379
|
+
"cancelled": 0
|
|
2380
|
+
},
|
|
2381
|
+
"rows": [
|
|
2382
|
+
{
|
|
2383
|
+
"id": "call-1",
|
|
2384
|
+
"sequence": 1,
|
|
2385
|
+
"operation": "shell",
|
|
2386
|
+
"presenter": "shell",
|
|
2387
|
+
"signal": "verification",
|
|
2388
|
+
"state": "succeeded",
|
|
2389
|
+
"summary": "npm test",
|
|
2390
|
+
"duration_ms": 900,
|
|
2391
|
+
"resources": [],
|
|
2392
|
+
"evidence": [],
|
|
2393
|
+
"presentation": {
|
|
2394
|
+
"headline": "npm test",
|
|
2395
|
+
"summary": "",
|
|
2396
|
+
"aside": "~/vis · exit 1",
|
|
2397
|
+
"outcome": "Tests: 41 passed",
|
|
2398
|
+
"content": [
|
|
2399
|
+
{
|
|
2400
|
+
"type": "terminal",
|
|
2401
|
+
"command": [
|
|
2402
|
+
"cd apps/web",
|
|
2403
|
+
"&& npm test",
|
|
2404
|
+
"| tail -3"
|
|
2405
|
+
],
|
|
2406
|
+
"lines": [
|
|
2407
|
+
{
|
|
2408
|
+
"text": "a\nb",
|
|
2409
|
+
"stream": "stdout"
|
|
2410
|
+
},
|
|
2411
|
+
{
|
|
2412
|
+
"text": "warning: slow test",
|
|
2413
|
+
"stream": "stderr"
|
|
2414
|
+
}
|
|
2415
|
+
],
|
|
2416
|
+
"omitted_lines": 12,
|
|
2417
|
+
"exit": 1
|
|
2418
|
+
}
|
|
2419
|
+
],
|
|
2420
|
+
"verdict": "failed"
|
|
2421
|
+
}
|
|
2422
|
+
}
|
|
2423
|
+
]
|
|
2424
|
+
}
|
|
2425
|
+
},
|
|
2426
|
+
{
|
|
2427
|
+
"name": "terminal-rejects-negative-omitted",
|
|
2428
|
+
"valid": false,
|
|
2429
|
+
"projection": {
|
|
2430
|
+
"state": "succeeded",
|
|
2431
|
+
"counts": {
|
|
2432
|
+
"running": 0,
|
|
2433
|
+
"succeeded": 1,
|
|
2434
|
+
"failed": 0,
|
|
2435
|
+
"cancelled": 0
|
|
2436
|
+
},
|
|
2437
|
+
"rows": [
|
|
2438
|
+
{
|
|
2439
|
+
"id": "call-1",
|
|
2440
|
+
"sequence": 1,
|
|
2441
|
+
"operation": "shell",
|
|
2442
|
+
"presenter": "shell",
|
|
2443
|
+
"signal": "verification",
|
|
2444
|
+
"state": "succeeded",
|
|
2445
|
+
"summary": "npm test",
|
|
2446
|
+
"duration_ms": 900,
|
|
2447
|
+
"resources": [],
|
|
2448
|
+
"evidence": [],
|
|
2449
|
+
"presentation": {
|
|
2450
|
+
"headline": "npm test",
|
|
2451
|
+
"summary": "",
|
|
2452
|
+
"aside": "~/vis · exit 1",
|
|
2453
|
+
"outcome": "Tests: 41 passed",
|
|
2454
|
+
"content": [
|
|
2455
|
+
{
|
|
2456
|
+
"type": "terminal",
|
|
2457
|
+
"command": [
|
|
2458
|
+
"cd apps/web",
|
|
2459
|
+
"&& npm test",
|
|
2460
|
+
"| tail -3"
|
|
2461
|
+
],
|
|
2462
|
+
"lines": [
|
|
2463
|
+
{
|
|
2464
|
+
"text": "Tests: 41 passed",
|
|
2465
|
+
"stream": "stdout"
|
|
2466
|
+
},
|
|
2467
|
+
{
|
|
2468
|
+
"text": "warning: slow test",
|
|
2469
|
+
"stream": "stderr"
|
|
2470
|
+
}
|
|
2471
|
+
],
|
|
2472
|
+
"omitted_lines": -1,
|
|
2473
|
+
"exit": 1
|
|
2474
|
+
}
|
|
2475
|
+
],
|
|
2476
|
+
"verdict": "failed"
|
|
2477
|
+
}
|
|
2478
|
+
}
|
|
2479
|
+
]
|
|
2480
|
+
}
|
|
2481
|
+
},
|
|
2482
|
+
{
|
|
2483
|
+
"name": "aside-rejects-newline",
|
|
2484
|
+
"valid": false,
|
|
2485
|
+
"projection": {
|
|
2486
|
+
"state": "succeeded",
|
|
2487
|
+
"counts": {
|
|
2488
|
+
"running": 0,
|
|
2489
|
+
"succeeded": 1,
|
|
2490
|
+
"failed": 0,
|
|
2491
|
+
"cancelled": 0
|
|
2492
|
+
},
|
|
2493
|
+
"rows": [
|
|
2494
|
+
{
|
|
2495
|
+
"id": "call-1",
|
|
2496
|
+
"sequence": 1,
|
|
2497
|
+
"operation": "shell",
|
|
2498
|
+
"presenter": "shell",
|
|
2499
|
+
"signal": "verification",
|
|
2500
|
+
"state": "succeeded",
|
|
2501
|
+
"summary": "npm test",
|
|
2502
|
+
"duration_ms": 900,
|
|
2503
|
+
"resources": [],
|
|
2504
|
+
"evidence": [],
|
|
2505
|
+
"presentation": {
|
|
2506
|
+
"headline": "npm test",
|
|
2507
|
+
"summary": "",
|
|
2508
|
+
"aside": "~/vis\nexit 1",
|
|
2509
|
+
"outcome": "Tests: 41 passed",
|
|
2510
|
+
"content": [
|
|
2511
|
+
{
|
|
2512
|
+
"type": "terminal",
|
|
2513
|
+
"command": [
|
|
2514
|
+
"cd apps/web",
|
|
2515
|
+
"&& npm test",
|
|
2516
|
+
"| tail -3"
|
|
2517
|
+
],
|
|
2518
|
+
"lines": [
|
|
2519
|
+
{
|
|
2520
|
+
"text": "Tests: 41 passed",
|
|
2521
|
+
"stream": "stdout"
|
|
2522
|
+
},
|
|
2523
|
+
{
|
|
2524
|
+
"text": "warning: slow test",
|
|
2525
|
+
"stream": "stderr"
|
|
2526
|
+
}
|
|
2527
|
+
],
|
|
2528
|
+
"omitted_lines": 12,
|
|
2529
|
+
"exit": 1
|
|
2530
|
+
}
|
|
2531
|
+
],
|
|
2532
|
+
"verdict": "failed"
|
|
2533
|
+
}
|
|
2534
|
+
}
|
|
2535
|
+
]
|
|
2536
|
+
}
|
|
2537
|
+
},
|
|
2538
|
+
{
|
|
2539
|
+
"name": "aside-rejects-empty",
|
|
2540
|
+
"valid": false,
|
|
2541
|
+
"projection": {
|
|
2542
|
+
"state": "succeeded",
|
|
2543
|
+
"counts": {
|
|
2544
|
+
"running": 0,
|
|
2545
|
+
"succeeded": 1,
|
|
2546
|
+
"failed": 0,
|
|
2547
|
+
"cancelled": 0
|
|
2548
|
+
},
|
|
2549
|
+
"rows": [
|
|
2550
|
+
{
|
|
2551
|
+
"id": "call-1",
|
|
2552
|
+
"sequence": 1,
|
|
2553
|
+
"operation": "shell",
|
|
2554
|
+
"presenter": "shell",
|
|
2555
|
+
"signal": "verification",
|
|
2556
|
+
"state": "succeeded",
|
|
2557
|
+
"summary": "npm test",
|
|
2558
|
+
"duration_ms": 900,
|
|
2559
|
+
"resources": [],
|
|
2560
|
+
"evidence": [],
|
|
2561
|
+
"presentation": {
|
|
2562
|
+
"headline": "npm test",
|
|
2563
|
+
"summary": "",
|
|
2564
|
+
"aside": "",
|
|
2565
|
+
"outcome": "Tests: 41 passed",
|
|
2566
|
+
"content": [
|
|
2567
|
+
{
|
|
2568
|
+
"type": "terminal",
|
|
2569
|
+
"command": [
|
|
2570
|
+
"cd apps/web",
|
|
2571
|
+
"&& npm test",
|
|
2572
|
+
"| tail -3"
|
|
2573
|
+
],
|
|
2574
|
+
"lines": [
|
|
2575
|
+
{
|
|
2576
|
+
"text": "Tests: 41 passed",
|
|
2577
|
+
"stream": "stdout"
|
|
2578
|
+
},
|
|
2579
|
+
{
|
|
2580
|
+
"text": "warning: slow test",
|
|
2581
|
+
"stream": "stderr"
|
|
2582
|
+
}
|
|
2583
|
+
],
|
|
2584
|
+
"omitted_lines": 12,
|
|
2585
|
+
"exit": 1
|
|
2586
|
+
}
|
|
2587
|
+
],
|
|
2588
|
+
"verdict": "failed"
|
|
2589
|
+
}
|
|
2590
|
+
}
|
|
2591
|
+
]
|
|
2592
|
+
}
|
|
2593
|
+
},
|
|
2594
|
+
{
|
|
2595
|
+
"name": "outcome-rejects-newline",
|
|
2596
|
+
"valid": false,
|
|
2597
|
+
"projection": {
|
|
2598
|
+
"state": "succeeded",
|
|
2599
|
+
"counts": {
|
|
2600
|
+
"running": 0,
|
|
2601
|
+
"succeeded": 1,
|
|
2602
|
+
"failed": 0,
|
|
2603
|
+
"cancelled": 0
|
|
2604
|
+
},
|
|
2605
|
+
"rows": [
|
|
2606
|
+
{
|
|
2607
|
+
"id": "call-1",
|
|
2608
|
+
"sequence": 1,
|
|
2609
|
+
"operation": "shell",
|
|
2610
|
+
"presenter": "shell",
|
|
2611
|
+
"signal": "verification",
|
|
2612
|
+
"state": "succeeded",
|
|
2613
|
+
"summary": "npm test",
|
|
2614
|
+
"duration_ms": 900,
|
|
2615
|
+
"resources": [],
|
|
2616
|
+
"evidence": [],
|
|
2617
|
+
"presentation": {
|
|
2618
|
+
"headline": "npm test",
|
|
2619
|
+
"summary": "",
|
|
2620
|
+
"aside": "~/vis · exit 1",
|
|
2621
|
+
"outcome": "a\nb",
|
|
2622
|
+
"content": [
|
|
2623
|
+
{
|
|
2624
|
+
"type": "terminal",
|
|
2625
|
+
"command": [
|
|
2626
|
+
"cd apps/web",
|
|
2627
|
+
"&& npm test",
|
|
2628
|
+
"| tail -3"
|
|
2629
|
+
],
|
|
2630
|
+
"lines": [
|
|
2631
|
+
{
|
|
2632
|
+
"text": "Tests: 41 passed",
|
|
2633
|
+
"stream": "stdout"
|
|
2634
|
+
},
|
|
2635
|
+
{
|
|
2636
|
+
"text": "warning: slow test",
|
|
2637
|
+
"stream": "stderr"
|
|
2638
|
+
}
|
|
2639
|
+
],
|
|
2640
|
+
"omitted_lines": 12,
|
|
2641
|
+
"exit": 1
|
|
2642
|
+
}
|
|
2643
|
+
],
|
|
2644
|
+
"verdict": "failed"
|
|
2645
|
+
}
|
|
2646
|
+
}
|
|
2647
|
+
]
|
|
2648
|
+
}
|
|
2151
2649
|
}
|
|
2152
2650
|
]
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"counts": {
|
|
7
7
|
"running": 1,
|
|
8
8
|
"succeeded": 2,
|
|
9
|
-
"failed":
|
|
9
|
+
"failed": 2,
|
|
10
10
|
"cancelled": 1
|
|
11
11
|
},
|
|
12
12
|
"rows": [
|
|
@@ -45,7 +45,10 @@
|
|
|
45
45
|
"kind": "context",
|
|
46
46
|
"text": "kept"
|
|
47
47
|
},
|
|
48
|
-
{
|
|
48
|
+
{
|
|
49
|
+
"kind": "context",
|
|
50
|
+
"text": ""
|
|
51
|
+
}
|
|
49
52
|
],
|
|
50
53
|
"additions": 1,
|
|
51
54
|
"deletions": 1,
|
|
@@ -207,9 +210,50 @@
|
|
|
207
210
|
"duration_ms": 5,
|
|
208
211
|
"result_summary": "2 matches",
|
|
209
212
|
"argument_key": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
|
|
213
|
+
},
|
|
214
|
+
{
|
|
215
|
+
"id": "copy-terminal",
|
|
216
|
+
"sequence": 6,
|
|
217
|
+
"operation": "shell",
|
|
218
|
+
"presenter": "shell",
|
|
219
|
+
"signal": "generic",
|
|
220
|
+
"state": "failed",
|
|
221
|
+
"summary": "npm test",
|
|
222
|
+
"duration_ms": 1200,
|
|
223
|
+
"resources": [],
|
|
224
|
+
"evidence": [],
|
|
225
|
+
"presentation": {
|
|
226
|
+
"headline": "npm test",
|
|
227
|
+
"summary": "",
|
|
228
|
+
"aside": "~/vis · exit 1",
|
|
229
|
+
"outcome": "Tests: 41 passed",
|
|
230
|
+
"content": [
|
|
231
|
+
{
|
|
232
|
+
"type": "terminal",
|
|
233
|
+
"command": [
|
|
234
|
+
"cd apps/web",
|
|
235
|
+
"&& npm test",
|
|
236
|
+
"| tail -3"
|
|
237
|
+
],
|
|
238
|
+
"lines": [
|
|
239
|
+
{
|
|
240
|
+
"text": "Tests: 41 passed",
|
|
241
|
+
"stream": "stdout"
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
"text": "warning: slow test",
|
|
245
|
+
"stream": "stderr"
|
|
246
|
+
}
|
|
247
|
+
],
|
|
248
|
+
"omitted_lines": 12,
|
|
249
|
+
"exit": 1
|
|
250
|
+
}
|
|
251
|
+
],
|
|
252
|
+
"verdict": "failed"
|
|
253
|
+
}
|
|
210
254
|
}
|
|
211
255
|
]
|
|
212
256
|
},
|
|
213
|
-
"text": "ACTIVITY\n\ngrep [succeeded] (5ms)\n same query\n Result: 2 matches\n file: src/main.clj\n arguments:\n {\"query\":\"[REDACTED]\"}\n result:\n first result\n second result\n\ngrep [failed]\n same query\n Error: Directory unavailable\n error:\n Directory unavailable\n\n shell [running]\n command running\n\n shell [cancelled]\n cancelled command\n\npatch [succeeded]\n src/main.clj\n diff:\n src/main.clj\n --- before\n @@ -1 +1 @@\n -old\n +[REDACTED]\n kept\n \n Diff truncated\n Diff redacted\n Patched source\n Retained preview\n Verification\n Plain text\n **Ready**\n print(1)\n print(2)\n -old\n +new\n Check\tState\n Unit\tPassed\n image: Screenshot (image-1)\n video: Playback (video-1)\n audio: Recording (audio-1)\n file: Report (file-1)\n Checks: 1/2\n Waiting\n Details\n Still bounded\n Section output\n Details truncated"
|
|
257
|
+
"text": "ACTIVITY\n\ngrep [succeeded] (5ms)\n same query\n Result: 2 matches\n file: src/main.clj\n arguments:\n {\"query\":\"[REDACTED]\"}\n result:\n first result\n second result\n\ngrep [failed]\n same query\n Error: Directory unavailable\n error:\n Directory unavailable\n\n shell [running]\n command running\n\n shell [cancelled]\n cancelled command\n\npatch [succeeded]\n src/main.clj\n diff:\n src/main.clj\n --- before\n @@ -1 +1 @@\n -old\n +[REDACTED]\n kept\n \n Diff truncated\n Diff redacted\n Patched source\n Retained preview\n Verification\n Plain text\n **Ready**\n print(1)\n print(2)\n -old\n +new\n Check\tState\n Unit\tPassed\n image: Screenshot (image-1)\n video: Playback (video-1)\n audio: Recording (audio-1)\n file: Report (file-1)\n Checks: 1/2\n Waiting\n Details\n Still bounded\n Section output\n Details truncated\n\nshell [failed] (1200ms)\n npm test\n npm test\n ~/vis · exit 1\n → Tests: 41 passed\n $ cd apps/web && npm test | tail -3\n … 12 earlier lines\n Tests: 41 passed\n warning: slow test"
|
|
214
258
|
}
|
|
215
259
|
]
|
|
@@ -835,6 +835,63 @@
|
|
|
835
835
|
"value"
|
|
836
836
|
]
|
|
837
837
|
}
|
|
838
|
+
},
|
|
839
|
+
{
|
|
840
|
+
"type": "object",
|
|
841
|
+
"additionalProperties": false,
|
|
842
|
+
"properties": {
|
|
843
|
+
"type": {
|
|
844
|
+
"const": "terminal"
|
|
845
|
+
},
|
|
846
|
+
"command": {
|
|
847
|
+
"type": "array",
|
|
848
|
+
"minItems": 1,
|
|
849
|
+
"maxItems": 32,
|
|
850
|
+
"items": {
|
|
851
|
+
"type": "string",
|
|
852
|
+
"minLength": 1,
|
|
853
|
+
"maxLength": 4096
|
|
854
|
+
}
|
|
855
|
+
},
|
|
856
|
+
"lines": {
|
|
857
|
+
"type": "array",
|
|
858
|
+
"maxItems": 400,
|
|
859
|
+
"items": {
|
|
860
|
+
"type": "object",
|
|
861
|
+
"additionalProperties": false,
|
|
862
|
+
"properties": {
|
|
863
|
+
"text": {
|
|
864
|
+
"type": "string",
|
|
865
|
+
"maxLength": 4096,
|
|
866
|
+
"pattern": "^[^\\u0000-\\u0008\\u000a-\\u001f\\u007f\\u2028\\u2029]*$"
|
|
867
|
+
},
|
|
868
|
+
"stream": {
|
|
869
|
+
"type": "string",
|
|
870
|
+
"enum": [
|
|
871
|
+
"stdout",
|
|
872
|
+
"stderr"
|
|
873
|
+
]
|
|
874
|
+
}
|
|
875
|
+
},
|
|
876
|
+
"required": [
|
|
877
|
+
"text",
|
|
878
|
+
"stream"
|
|
879
|
+
]
|
|
880
|
+
}
|
|
881
|
+
},
|
|
882
|
+
"omitted_lines": {
|
|
883
|
+
"type": "integer",
|
|
884
|
+
"minimum": 0
|
|
885
|
+
},
|
|
886
|
+
"exit": {
|
|
887
|
+
"type": "integer"
|
|
888
|
+
}
|
|
889
|
+
},
|
|
890
|
+
"required": [
|
|
891
|
+
"type",
|
|
892
|
+
"command",
|
|
893
|
+
"lines"
|
|
894
|
+
]
|
|
838
895
|
}
|
|
839
896
|
]
|
|
840
897
|
}
|
|
@@ -881,6 +938,15 @@
|
|
|
881
938
|
"summary_format": {
|
|
882
939
|
"$ref": "#/$defs/section/properties/summary_format"
|
|
883
940
|
},
|
|
941
|
+
"outcome": {
|
|
942
|
+
"$ref": "#/$defs/section/properties/summary"
|
|
943
|
+
},
|
|
944
|
+
"aside": {
|
|
945
|
+
"type": "string",
|
|
946
|
+
"minLength": 1,
|
|
947
|
+
"maxLength": 128,
|
|
948
|
+
"pattern": "^[^\\u0000-\\u001f\\u007f\\u2028\\u2029]+$"
|
|
949
|
+
},
|
|
884
950
|
"content": {
|
|
885
951
|
"$ref": "#/$defs/content"
|
|
886
952
|
},
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
3
|
"$id": "https://contract.blockether.com/vis/schema/agents.json",
|
|
4
4
|
"$ref": "#/$defs/agent",
|
|
5
|
-
"x-vis-max-team-children":
|
|
6
|
-
"x-vis-max-active-children":
|
|
5
|
+
"x-vis-max-team-children": 128,
|
|
6
|
+
"x-vis-max-active-children": 16,
|
|
7
7
|
"$comment": "Child-count limits are enforced against persisted team and leader state, not one agent payload.",
|
|
8
8
|
"$defs": {
|
|
9
9
|
"spawn": {
|
|
@@ -26,8 +26,8 @@
|
|
|
26
26
|
"iteration_budget": {
|
|
27
27
|
"type": "integer",
|
|
28
28
|
"minimum": 1,
|
|
29
|
-
"maximum":
|
|
30
|
-
"default":
|
|
29
|
+
"maximum": 600,
|
|
30
|
+
"default": 64
|
|
31
31
|
},
|
|
32
32
|
"allowed_models": {
|
|
33
33
|
"type": "array",
|
|
@@ -42,6 +42,12 @@
|
|
|
42
42
|
"type": "string",
|
|
43
43
|
"minLength": 1,
|
|
44
44
|
"maxLength": 256
|
|
45
|
+
},
|
|
46
|
+
"context": {
|
|
47
|
+
"enum": [
|
|
48
|
+
"full",
|
|
49
|
+
"task"
|
|
50
|
+
]
|
|
45
51
|
}
|
|
46
52
|
},
|
|
47
53
|
"required": [
|