@oneharness/sdk 0.6.8 → 0.6.9
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.
- package/dist/generated/contracts.d.ts +41 -1
- package/dist/generated/history-line.d.ts +19 -13
- package/dist/generated/history-records.d.ts +18 -12
- package/dist/generated/history-stream-envelope.d.ts +19 -13
- package/dist/generated/history.d.ts +17 -11
- package/dist/generated/run-stream-envelope.d.ts +41 -1
- package/dist/generated/schemas.json +454 -27
- package/dist/generated/zod.d.ts +2 -1
- package/dist/generated/zod.js +186 -37
- package/package.json +2 -2
|
@@ -289,6 +289,104 @@
|
|
|
289
289
|
}
|
|
290
290
|
]
|
|
291
291
|
},
|
|
292
|
+
"ExecutionTelemetry": {
|
|
293
|
+
"description": "Measured execution telemetry for one harness run: when the invocation ran,\nand — when the harness's transcript supports it — how its wall clock split\nbetween provider latency and tool work.\n\nCarried from the runner/parser to the history writer *and*, since report\nschema `0.5`, serialized on [`RunResult::telemetry`]. Exposing it there is\nwhat lets a consumer read the numbers off the run it just made instead of\nre-opening the history file the same run wrote.\n\nInternally tagged by `source`, so the variant is a value a consumer switches\non rather than a shape it has to sniff. Every variant states only what was\nactually measured — there is no variant meaning \"no telemetry\"; that is a\n`null` field.",
|
|
294
|
+
"oneOf": [
|
|
295
|
+
{
|
|
296
|
+
"description": "The harness's own transcript carried a complete provider trace, so the\ninvocation bounds *and* the model/tool split are measured.",
|
|
297
|
+
"type": "object",
|
|
298
|
+
"properties": {
|
|
299
|
+
"finished_at": {
|
|
300
|
+
"type": [
|
|
301
|
+
"string",
|
|
302
|
+
"null"
|
|
303
|
+
],
|
|
304
|
+
"maxLength": 24,
|
|
305
|
+
"minLength": 24,
|
|
306
|
+
"pattern": "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])T([01]\\d|2[0-3]):[0-5]\\d:([0-5]\\d|60)\\.\\d{3}Z$"
|
|
307
|
+
},
|
|
308
|
+
"model_ms": {
|
|
309
|
+
"type": [
|
|
310
|
+
"integer",
|
|
311
|
+
"null"
|
|
312
|
+
],
|
|
313
|
+
"format": "uint128",
|
|
314
|
+
"minimum": 0
|
|
315
|
+
},
|
|
316
|
+
"source": {
|
|
317
|
+
"type": "string",
|
|
318
|
+
"const": "provider_measured"
|
|
319
|
+
},
|
|
320
|
+
"started_at": {
|
|
321
|
+
"type": "string",
|
|
322
|
+
"maxLength": 24,
|
|
323
|
+
"minLength": 24,
|
|
324
|
+
"pattern": "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])T([01]\\d|2[0-3]):[0-5]\\d:([0-5]\\d|60)\\.\\d{3}Z$"
|
|
325
|
+
},
|
|
326
|
+
"time_to_first_token_ms": {
|
|
327
|
+
"type": [
|
|
328
|
+
"integer",
|
|
329
|
+
"null"
|
|
330
|
+
],
|
|
331
|
+
"format": "uint128",
|
|
332
|
+
"minimum": 0
|
|
333
|
+
},
|
|
334
|
+
"tool_ms": {
|
|
335
|
+
"type": [
|
|
336
|
+
"integer",
|
|
337
|
+
"null"
|
|
338
|
+
],
|
|
339
|
+
"format": "uint128",
|
|
340
|
+
"minimum": 0
|
|
341
|
+
}
|
|
342
|
+
},
|
|
343
|
+
"required": [
|
|
344
|
+
"source",
|
|
345
|
+
"started_at",
|
|
346
|
+
"finished_at",
|
|
347
|
+
"model_ms",
|
|
348
|
+
"tool_ms",
|
|
349
|
+
"time_to_first_token_ms"
|
|
350
|
+
]
|
|
351
|
+
},
|
|
352
|
+
{
|
|
353
|
+
"description": "The invocation bounds the runner observed for a run whose provider trace\nnever completed, with no model/tool split: a split read out of a\ntranscript that stopped mid-turn is not a measurement, but when the run\nitself started is, and it is what an operator reads off a failure. Typed\nas a [`UtcInstant`] so the one thing this variant claims to know cannot be\nempty or in some other offset by the time a record renders it.",
|
|
354
|
+
"type": "object",
|
|
355
|
+
"properties": {
|
|
356
|
+
"source": {
|
|
357
|
+
"type": "string",
|
|
358
|
+
"const": "partial_invocation"
|
|
359
|
+
},
|
|
360
|
+
"started_at": {
|
|
361
|
+
"type": "string"
|
|
362
|
+
}
|
|
363
|
+
},
|
|
364
|
+
"required": [
|
|
365
|
+
"source",
|
|
366
|
+
"started_at"
|
|
367
|
+
]
|
|
368
|
+
},
|
|
369
|
+
{
|
|
370
|
+
"description": "The union of tool intervals observed at the stdout pipe, for a harness\nwhose transcript carries no provider trace to split. Not provider-measured\nand with no model-latency counterpart, which is what the `source` tag tells\na consumer; per-event provenance lives on `ActionEvent`.",
|
|
371
|
+
"type": "object",
|
|
372
|
+
"properties": {
|
|
373
|
+
"source": {
|
|
374
|
+
"type": "string",
|
|
375
|
+
"const": "stdout_observed"
|
|
376
|
+
},
|
|
377
|
+
"tool_ms": {
|
|
378
|
+
"type": "integer",
|
|
379
|
+
"format": "uint128",
|
|
380
|
+
"minimum": 0
|
|
381
|
+
}
|
|
382
|
+
},
|
|
383
|
+
"required": [
|
|
384
|
+
"source",
|
|
385
|
+
"tool_ms"
|
|
386
|
+
]
|
|
387
|
+
}
|
|
388
|
+
]
|
|
389
|
+
},
|
|
292
390
|
"FailureKind": {
|
|
293
391
|
"description": "The normalized, closed set of failure reasons oneharness can classify from a\nharness's output. It is the single source for the `failure_kind` contract\nvalue: serialized as the snake_case token a consumer reads in the report\n(`auth`, `rate_limit`, `model_not_found`, `quota`, `tool_deferred`), so the\nwire shape is unchanged — modeling it as an enum keeps a misspelled or\ninvalid kind unrepresentable and gives every producer/consumer (classifier,\n`is_failure`, the fallback fall-through rule, the report, history) one\ndefinition to share instead of scattered string literals.",
|
|
294
392
|
"oneOf": [
|
|
@@ -563,6 +661,18 @@
|
|
|
563
661
|
"structured": {
|
|
564
662
|
"description": "Structured-output run only: the JSON value extracted from the final\nanswer and validated against the requested schema. `null` when no schema\nwas requested, or when no JSON value could be extracted. Carries the\nlast-attempted value even when it failed validation, so a consumer can\nsee what the harness produced."
|
|
565
663
|
},
|
|
664
|
+
"telemetry": {
|
|
665
|
+
"description": "Measured execution telemetry for this run: the invocation bounds and, when\nthe harness's transcript carried a trace to read them from, the\nmodel/tool split. `null` when nothing was measured — never estimated.\nAdded in report schema `0.5`; before that a consumer had to re-read the\nhistory file for numbers the run itself already had.",
|
|
666
|
+
"anyOf": [
|
|
667
|
+
{
|
|
668
|
+
"$ref": "#/$defs/ExecutionTelemetry"
|
|
669
|
+
},
|
|
670
|
+
{
|
|
671
|
+
"type": "null"
|
|
672
|
+
}
|
|
673
|
+
],
|
|
674
|
+
"default": null
|
|
675
|
+
},
|
|
566
676
|
"text": {
|
|
567
677
|
"description": "Best-effort final assistant text; `null` when extraction is impossible.",
|
|
568
678
|
"type": [
|
|
@@ -607,6 +717,7 @@
|
|
|
607
717
|
"model",
|
|
608
718
|
"exit_code",
|
|
609
719
|
"duration_ms",
|
|
720
|
+
"telemetry",
|
|
610
721
|
"command",
|
|
611
722
|
"output_format",
|
|
612
723
|
"text",
|
|
@@ -694,6 +805,11 @@
|
|
|
694
805
|
"type": "string",
|
|
695
806
|
"const": "timeout"
|
|
696
807
|
},
|
|
808
|
+
{
|
|
809
|
+
"description": "Terminated before it finished because the run was **cancelled** — a\nlibrary caller flipped its [`crate::io::cancel::CancelToken`], or the host\nreceived SIGINT/SIGTERM while [`crate::io::cancel::install_signal_cancel`]\nwas in force. Distinct from `timeout` (the harness was given its full\ndeadline and exceeded it) and from a consumer-driven streaming stop (which\nstays `ok`, because the consumer already got what it asked for). Any\noutput captured before the cancellation is still normalized, exactly as it\nis for a timeout.",
|
|
810
|
+
"type": "string",
|
|
811
|
+
"const": "cancelled"
|
|
812
|
+
},
|
|
697
813
|
{
|
|
698
814
|
"description": "The binary was resolved but could not be executed.",
|
|
699
815
|
"type": "string",
|
|
@@ -971,6 +1087,104 @@
|
|
|
971
1087
|
}
|
|
972
1088
|
]
|
|
973
1089
|
},
|
|
1090
|
+
"ExecutionTelemetry": {
|
|
1091
|
+
"description": "Measured execution telemetry for one harness run: when the invocation ran,\nand — when the harness's transcript supports it — how its wall clock split\nbetween provider latency and tool work.\n\nCarried from the runner/parser to the history writer *and*, since report\nschema `0.5`, serialized on [`RunResult::telemetry`]. Exposing it there is\nwhat lets a consumer read the numbers off the run it just made instead of\nre-opening the history file the same run wrote.\n\nInternally tagged by `source`, so the variant is a value a consumer switches\non rather than a shape it has to sniff. Every variant states only what was\nactually measured — there is no variant meaning \"no telemetry\"; that is a\n`null` field.",
|
|
1092
|
+
"oneOf": [
|
|
1093
|
+
{
|
|
1094
|
+
"description": "The harness's own transcript carried a complete provider trace, so the\ninvocation bounds *and* the model/tool split are measured.",
|
|
1095
|
+
"type": "object",
|
|
1096
|
+
"properties": {
|
|
1097
|
+
"finished_at": {
|
|
1098
|
+
"type": [
|
|
1099
|
+
"string",
|
|
1100
|
+
"null"
|
|
1101
|
+
],
|
|
1102
|
+
"maxLength": 24,
|
|
1103
|
+
"minLength": 24,
|
|
1104
|
+
"pattern": "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])T([01]\\d|2[0-3]):[0-5]\\d:([0-5]\\d|60)\\.\\d{3}Z$"
|
|
1105
|
+
},
|
|
1106
|
+
"model_ms": {
|
|
1107
|
+
"type": [
|
|
1108
|
+
"integer",
|
|
1109
|
+
"null"
|
|
1110
|
+
],
|
|
1111
|
+
"format": "uint128",
|
|
1112
|
+
"minimum": 0
|
|
1113
|
+
},
|
|
1114
|
+
"source": {
|
|
1115
|
+
"type": "string",
|
|
1116
|
+
"const": "provider_measured"
|
|
1117
|
+
},
|
|
1118
|
+
"started_at": {
|
|
1119
|
+
"type": "string",
|
|
1120
|
+
"maxLength": 24,
|
|
1121
|
+
"minLength": 24,
|
|
1122
|
+
"pattern": "^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])T([01]\\d|2[0-3]):[0-5]\\d:([0-5]\\d|60)\\.\\d{3}Z$"
|
|
1123
|
+
},
|
|
1124
|
+
"time_to_first_token_ms": {
|
|
1125
|
+
"type": [
|
|
1126
|
+
"integer",
|
|
1127
|
+
"null"
|
|
1128
|
+
],
|
|
1129
|
+
"format": "uint128",
|
|
1130
|
+
"minimum": 0
|
|
1131
|
+
},
|
|
1132
|
+
"tool_ms": {
|
|
1133
|
+
"type": [
|
|
1134
|
+
"integer",
|
|
1135
|
+
"null"
|
|
1136
|
+
],
|
|
1137
|
+
"format": "uint128",
|
|
1138
|
+
"minimum": 0
|
|
1139
|
+
}
|
|
1140
|
+
},
|
|
1141
|
+
"required": [
|
|
1142
|
+
"source",
|
|
1143
|
+
"started_at",
|
|
1144
|
+
"finished_at",
|
|
1145
|
+
"model_ms",
|
|
1146
|
+
"tool_ms",
|
|
1147
|
+
"time_to_first_token_ms"
|
|
1148
|
+
]
|
|
1149
|
+
},
|
|
1150
|
+
{
|
|
1151
|
+
"description": "The invocation bounds the runner observed for a run whose provider trace\nnever completed, with no model/tool split: a split read out of a\ntranscript that stopped mid-turn is not a measurement, but when the run\nitself started is, and it is what an operator reads off a failure. Typed\nas a [`UtcInstant`] so the one thing this variant claims to know cannot be\nempty or in some other offset by the time a record renders it.",
|
|
1152
|
+
"type": "object",
|
|
1153
|
+
"properties": {
|
|
1154
|
+
"source": {
|
|
1155
|
+
"type": "string",
|
|
1156
|
+
"const": "partial_invocation"
|
|
1157
|
+
},
|
|
1158
|
+
"started_at": {
|
|
1159
|
+
"type": "string"
|
|
1160
|
+
}
|
|
1161
|
+
},
|
|
1162
|
+
"required": [
|
|
1163
|
+
"source",
|
|
1164
|
+
"started_at"
|
|
1165
|
+
]
|
|
1166
|
+
},
|
|
1167
|
+
{
|
|
1168
|
+
"description": "The union of tool intervals observed at the stdout pipe, for a harness\nwhose transcript carries no provider trace to split. Not provider-measured\nand with no model-latency counterpart, which is what the `source` tag tells\na consumer; per-event provenance lives on `ActionEvent`.",
|
|
1169
|
+
"type": "object",
|
|
1170
|
+
"properties": {
|
|
1171
|
+
"source": {
|
|
1172
|
+
"type": "string",
|
|
1173
|
+
"const": "stdout_observed"
|
|
1174
|
+
},
|
|
1175
|
+
"tool_ms": {
|
|
1176
|
+
"type": "integer",
|
|
1177
|
+
"format": "uint128",
|
|
1178
|
+
"minimum": 0
|
|
1179
|
+
}
|
|
1180
|
+
},
|
|
1181
|
+
"required": [
|
|
1182
|
+
"source",
|
|
1183
|
+
"tool_ms"
|
|
1184
|
+
]
|
|
1185
|
+
}
|
|
1186
|
+
]
|
|
1187
|
+
},
|
|
974
1188
|
"FailureKind": {
|
|
975
1189
|
"description": "The normalized, closed set of failure reasons oneharness can classify from a\nharness's output. It is the single source for the `failure_kind` contract\nvalue: serialized as the snake_case token a consumer reads in the report\n(`auth`, `rate_limit`, `model_not_found`, `quota`, `tool_deferred`), so the\nwire shape is unchanged — modeling it as an enum keeps a misspelled or\ninvalid kind unrepresentable and gives every producer/consumer (classifier,\n`is_failure`, the fallback fall-through rule, the report, history) one\ndefinition to share instead of scattered string literals.",
|
|
976
1190
|
"oneOf": [
|
|
@@ -1397,6 +1611,18 @@
|
|
|
1397
1611
|
"structured": {
|
|
1398
1612
|
"description": "Structured-output run only: the JSON value extracted from the final\nanswer and validated against the requested schema. `null` when no schema\nwas requested, or when no JSON value could be extracted. Carries the\nlast-attempted value even when it failed validation, so a consumer can\nsee what the harness produced."
|
|
1399
1613
|
},
|
|
1614
|
+
"telemetry": {
|
|
1615
|
+
"description": "Measured execution telemetry for this run: the invocation bounds and, when\nthe harness's transcript carried a trace to read them from, the\nmodel/tool split. `null` when nothing was measured — never estimated.\nAdded in report schema `0.5`; before that a consumer had to re-read the\nhistory file for numbers the run itself already had.",
|
|
1616
|
+
"anyOf": [
|
|
1617
|
+
{
|
|
1618
|
+
"$ref": "#/$defs/ExecutionTelemetry"
|
|
1619
|
+
},
|
|
1620
|
+
{
|
|
1621
|
+
"type": "null"
|
|
1622
|
+
}
|
|
1623
|
+
],
|
|
1624
|
+
"default": null
|
|
1625
|
+
},
|
|
1400
1626
|
"text": {
|
|
1401
1627
|
"description": "Best-effort final assistant text; `null` when extraction is impossible.",
|
|
1402
1628
|
"type": [
|
|
@@ -1441,6 +1667,7 @@
|
|
|
1441
1667
|
"model",
|
|
1442
1668
|
"exit_code",
|
|
1443
1669
|
"duration_ms",
|
|
1670
|
+
"telemetry",
|
|
1444
1671
|
"command",
|
|
1445
1672
|
"output_format",
|
|
1446
1673
|
"text",
|
|
@@ -1528,6 +1755,11 @@
|
|
|
1528
1755
|
"type": "string",
|
|
1529
1756
|
"const": "timeout"
|
|
1530
1757
|
},
|
|
1758
|
+
{
|
|
1759
|
+
"description": "Terminated before it finished because the run was **cancelled** — a\nlibrary caller flipped its [`crate::io::cancel::CancelToken`], or the host\nreceived SIGINT/SIGTERM while [`crate::io::cancel::install_signal_cancel`]\nwas in force. Distinct from `timeout` (the harness was given its full\ndeadline and exceeded it) and from a consumer-driven streaming stop (which\nstays `ok`, because the consumer already got what it asked for). Any\noutput captured before the cancellation is still normalized, exactly as it\nis for a timeout.",
|
|
1760
|
+
"type": "string",
|
|
1761
|
+
"const": "cancelled"
|
|
1762
|
+
},
|
|
1531
1763
|
{
|
|
1532
1764
|
"description": "The binary was resolved but could not be executed.",
|
|
1533
1765
|
"type": "string",
|
|
@@ -1945,7 +2177,8 @@
|
|
|
1945
2177
|
"type": "string",
|
|
1946
2178
|
"enum": [
|
|
1947
2179
|
"1.2",
|
|
1948
|
-
"1.3"
|
|
2180
|
+
"1.3",
|
|
2181
|
+
"1.4"
|
|
1949
2182
|
]
|
|
1950
2183
|
},
|
|
1951
2184
|
"type": {
|
|
@@ -2059,7 +2292,10 @@
|
|
|
2059
2292
|
},
|
|
2060
2293
|
"schema_version": {
|
|
2061
2294
|
"type": "string",
|
|
2062
|
-
"
|
|
2295
|
+
"enum": [
|
|
2296
|
+
"1.3",
|
|
2297
|
+
"1.4"
|
|
2298
|
+
]
|
|
2063
2299
|
}
|
|
2064
2300
|
},
|
|
2065
2301
|
"required": [
|
|
@@ -2076,6 +2312,7 @@
|
|
|
2076
2312
|
"enum": [
|
|
2077
2313
|
"nonzero",
|
|
2078
2314
|
"timeout",
|
|
2315
|
+
"cancelled",
|
|
2079
2316
|
"spawn-error",
|
|
2080
2317
|
"skipped"
|
|
2081
2318
|
]
|
|
@@ -2098,6 +2335,37 @@
|
|
|
2098
2335
|
]
|
|
2099
2336
|
}
|
|
2100
2337
|
]
|
|
2338
|
+
},
|
|
2339
|
+
{
|
|
2340
|
+
"anyOf": [
|
|
2341
|
+
{
|
|
2342
|
+
"type": "object",
|
|
2343
|
+
"properties": {
|
|
2344
|
+
"status": {
|
|
2345
|
+
"type": "string",
|
|
2346
|
+
"enum": [
|
|
2347
|
+
"ok",
|
|
2348
|
+
"nonzero",
|
|
2349
|
+
"timeout",
|
|
2350
|
+
"spawn-error",
|
|
2351
|
+
"skipped",
|
|
2352
|
+
"planned"
|
|
2353
|
+
]
|
|
2354
|
+
}
|
|
2355
|
+
}
|
|
2356
|
+
},
|
|
2357
|
+
{
|
|
2358
|
+
"type": "object",
|
|
2359
|
+
"properties": {
|
|
2360
|
+
"schema_version": {
|
|
2361
|
+
"type": "string",
|
|
2362
|
+
"enum": [
|
|
2363
|
+
"1.4"
|
|
2364
|
+
]
|
|
2365
|
+
}
|
|
2366
|
+
}
|
|
2367
|
+
}
|
|
2368
|
+
]
|
|
2101
2369
|
}
|
|
2102
2370
|
],
|
|
2103
2371
|
"oneOf": [
|
|
@@ -2187,7 +2455,8 @@
|
|
|
2187
2455
|
"1.0",
|
|
2188
2456
|
"1.1",
|
|
2189
2457
|
"1.2",
|
|
2190
|
-
"1.3"
|
|
2458
|
+
"1.3",
|
|
2459
|
+
"1.4"
|
|
2191
2460
|
]
|
|
2192
2461
|
},
|
|
2193
2462
|
"session": {
|
|
@@ -2368,7 +2637,8 @@
|
|
|
2368
2637
|
"1.0",
|
|
2369
2638
|
"1.1",
|
|
2370
2639
|
"1.2",
|
|
2371
|
-
"1.3"
|
|
2640
|
+
"1.3",
|
|
2641
|
+
"1.4"
|
|
2372
2642
|
]
|
|
2373
2643
|
},
|
|
2374
2644
|
"session": {
|
|
@@ -2388,6 +2658,7 @@
|
|
|
2388
2658
|
"type": "string",
|
|
2389
2659
|
"enum": [
|
|
2390
2660
|
"timeout",
|
|
2661
|
+
"cancelled",
|
|
2391
2662
|
"spawn-error",
|
|
2392
2663
|
"skipped",
|
|
2393
2664
|
"planned"
|
|
@@ -2546,7 +2817,8 @@
|
|
|
2546
2817
|
"type": "string",
|
|
2547
2818
|
"enum": [
|
|
2548
2819
|
"1.2",
|
|
2549
|
-
"1.3"
|
|
2820
|
+
"1.3",
|
|
2821
|
+
"1.4"
|
|
2550
2822
|
]
|
|
2551
2823
|
},
|
|
2552
2824
|
"session": {
|
|
@@ -2706,7 +2978,8 @@
|
|
|
2706
2978
|
"1.0",
|
|
2707
2979
|
"1.1",
|
|
2708
2980
|
"1.2",
|
|
2709
|
-
"1.3"
|
|
2981
|
+
"1.3",
|
|
2982
|
+
"1.4"
|
|
2710
2983
|
]
|
|
2711
2984
|
},
|
|
2712
2985
|
"session": {
|
|
@@ -2724,6 +2997,7 @@
|
|
|
2724
2997
|
"enum": [
|
|
2725
2998
|
"nonzero",
|
|
2726
2999
|
"timeout",
|
|
3000
|
+
"cancelled",
|
|
2727
3001
|
"spawn-error",
|
|
2728
3002
|
"skipped"
|
|
2729
3003
|
]
|
|
@@ -2864,7 +3138,8 @@
|
|
|
2864
3138
|
"schema_version": {
|
|
2865
3139
|
"type": "string",
|
|
2866
3140
|
"enum": [
|
|
2867
|
-
"1.3"
|
|
3141
|
+
"1.3",
|
|
3142
|
+
"1.4"
|
|
2868
3143
|
]
|
|
2869
3144
|
},
|
|
2870
3145
|
"session": {
|
|
@@ -2885,6 +3160,7 @@
|
|
|
2885
3160
|
"enum": [
|
|
2886
3161
|
"nonzero",
|
|
2887
3162
|
"timeout",
|
|
3163
|
+
"cancelled",
|
|
2888
3164
|
"spawn-error",
|
|
2889
3165
|
"skipped"
|
|
2890
3166
|
]
|
|
@@ -3039,7 +3315,8 @@
|
|
|
3039
3315
|
"1.0",
|
|
3040
3316
|
"1.1",
|
|
3041
3317
|
"1.2",
|
|
3042
|
-
"1.3"
|
|
3318
|
+
"1.3",
|
|
3319
|
+
"1.4"
|
|
3043
3320
|
]
|
|
3044
3321
|
},
|
|
3045
3322
|
"session": {
|
|
@@ -3319,6 +3596,11 @@
|
|
|
3319
3596
|
"type": "string",
|
|
3320
3597
|
"const": "timeout"
|
|
3321
3598
|
},
|
|
3599
|
+
{
|
|
3600
|
+
"description": "Terminated before it finished because the run was **cancelled** — a\nlibrary caller flipped its [`crate::io::cancel::CancelToken`], or the host\nreceived SIGINT/SIGTERM while [`crate::io::cancel::install_signal_cancel`]\nwas in force. Distinct from `timeout` (the harness was given its full\ndeadline and exceeded it) and from a consumer-driven streaming stop (which\nstays `ok`, because the consumer already got what it asked for). Any\noutput captured before the cancellation is still normalized, exactly as it\nis for a timeout.",
|
|
3601
|
+
"type": "string",
|
|
3602
|
+
"const": "cancelled"
|
|
3603
|
+
},
|
|
3322
3604
|
{
|
|
3323
3605
|
"description": "The binary was resolved but could not be executed.",
|
|
3324
3606
|
"type": "string",
|
|
@@ -3444,7 +3726,10 @@
|
|
|
3444
3726
|
},
|
|
3445
3727
|
"schema_version": {
|
|
3446
3728
|
"type": "string",
|
|
3447
|
-
"
|
|
3729
|
+
"enum": [
|
|
3730
|
+
"1.3",
|
|
3731
|
+
"1.4"
|
|
3732
|
+
]
|
|
3448
3733
|
}
|
|
3449
3734
|
},
|
|
3450
3735
|
"required": [
|
|
@@ -3461,6 +3746,7 @@
|
|
|
3461
3746
|
"enum": [
|
|
3462
3747
|
"nonzero",
|
|
3463
3748
|
"timeout",
|
|
3749
|
+
"cancelled",
|
|
3464
3750
|
"spawn-error",
|
|
3465
3751
|
"skipped"
|
|
3466
3752
|
]
|
|
@@ -3483,6 +3769,37 @@
|
|
|
3483
3769
|
]
|
|
3484
3770
|
}
|
|
3485
3771
|
]
|
|
3772
|
+
},
|
|
3773
|
+
{
|
|
3774
|
+
"anyOf": [
|
|
3775
|
+
{
|
|
3776
|
+
"type": "object",
|
|
3777
|
+
"properties": {
|
|
3778
|
+
"status": {
|
|
3779
|
+
"type": "string",
|
|
3780
|
+
"enum": [
|
|
3781
|
+
"ok",
|
|
3782
|
+
"nonzero",
|
|
3783
|
+
"timeout",
|
|
3784
|
+
"spawn-error",
|
|
3785
|
+
"skipped",
|
|
3786
|
+
"planned"
|
|
3787
|
+
]
|
|
3788
|
+
}
|
|
3789
|
+
}
|
|
3790
|
+
},
|
|
3791
|
+
{
|
|
3792
|
+
"type": "object",
|
|
3793
|
+
"properties": {
|
|
3794
|
+
"schema_version": {
|
|
3795
|
+
"type": "string",
|
|
3796
|
+
"enum": [
|
|
3797
|
+
"1.4"
|
|
3798
|
+
]
|
|
3799
|
+
}
|
|
3800
|
+
}
|
|
3801
|
+
}
|
|
3802
|
+
]
|
|
3486
3803
|
}
|
|
3487
3804
|
],
|
|
3488
3805
|
"oneOf": [
|
|
@@ -3753,7 +4070,8 @@
|
|
|
3753
4070
|
"type": "string",
|
|
3754
4071
|
"enum": [
|
|
3755
4072
|
"1.2",
|
|
3756
|
-
"1.3"
|
|
4073
|
+
"1.3",
|
|
4074
|
+
"1.4"
|
|
3757
4075
|
]
|
|
3758
4076
|
},
|
|
3759
4077
|
"session": {
|
|
@@ -4352,7 +4670,8 @@
|
|
|
4352
4670
|
"type": "string",
|
|
4353
4671
|
"enum": [
|
|
4354
4672
|
"1.2",
|
|
4355
|
-
"1.3"
|
|
4673
|
+
"1.3",
|
|
4674
|
+
"1.4"
|
|
4356
4675
|
]
|
|
4357
4676
|
},
|
|
4358
4677
|
"session": {
|
|
@@ -4526,7 +4845,8 @@
|
|
|
4526
4845
|
"type": "string",
|
|
4527
4846
|
"enum": [
|
|
4528
4847
|
"1.2",
|
|
4529
|
-
"1.3"
|
|
4848
|
+
"1.3",
|
|
4849
|
+
"1.4"
|
|
4530
4850
|
]
|
|
4531
4851
|
},
|
|
4532
4852
|
"session": {
|
|
@@ -4698,7 +5018,8 @@
|
|
|
4698
5018
|
"type": "string",
|
|
4699
5019
|
"enum": [
|
|
4700
5020
|
"1.2",
|
|
4701
|
-
"1.3"
|
|
5021
|
+
"1.3",
|
|
5022
|
+
"1.4"
|
|
4702
5023
|
]
|
|
4703
5024
|
},
|
|
4704
5025
|
"session": {
|
|
@@ -4718,6 +5039,7 @@
|
|
|
4718
5039
|
"enum": [
|
|
4719
5040
|
"nonzero",
|
|
4720
5041
|
"timeout",
|
|
5042
|
+
"cancelled",
|
|
4721
5043
|
"spawn-error",
|
|
4722
5044
|
"skipped"
|
|
4723
5045
|
]
|
|
@@ -4870,7 +5192,8 @@
|
|
|
4870
5192
|
"schema_version": {
|
|
4871
5193
|
"type": "string",
|
|
4872
5194
|
"enum": [
|
|
4873
|
-
"1.3"
|
|
5195
|
+
"1.3",
|
|
5196
|
+
"1.4"
|
|
4874
5197
|
]
|
|
4875
5198
|
},
|
|
4876
5199
|
"session": {
|
|
@@ -4893,6 +5216,7 @@
|
|
|
4893
5216
|
"enum": [
|
|
4894
5217
|
"nonzero",
|
|
4895
5218
|
"timeout",
|
|
5219
|
+
"cancelled",
|
|
4896
5220
|
"spawn-error",
|
|
4897
5221
|
"skipped"
|
|
4898
5222
|
]
|
|
@@ -5087,6 +5411,7 @@
|
|
|
5087
5411
|
"enum": [
|
|
5088
5412
|
"nonzero",
|
|
5089
5413
|
"timeout",
|
|
5414
|
+
"cancelled",
|
|
5090
5415
|
"spawn-error",
|
|
5091
5416
|
"skipped"
|
|
5092
5417
|
]
|
|
@@ -5812,6 +6137,11 @@
|
|
|
5812
6137
|
"type": "string",
|
|
5813
6138
|
"const": "timeout"
|
|
5814
6139
|
},
|
|
6140
|
+
{
|
|
6141
|
+
"description": "Terminated before it finished because the run was **cancelled** — a\nlibrary caller flipped its [`crate::io::cancel::CancelToken`], or the host\nreceived SIGINT/SIGTERM while [`crate::io::cancel::install_signal_cancel`]\nwas in force. Distinct from `timeout` (the harness was given its full\ndeadline and exceeded it) and from a consumer-driven streaming stop (which\nstays `ok`, because the consumer already got what it asked for). Any\noutput captured before the cancellation is still normalized, exactly as it\nis for a timeout.",
|
|
6142
|
+
"type": "string",
|
|
6143
|
+
"const": "cancelled"
|
|
6144
|
+
},
|
|
5815
6145
|
{
|
|
5816
6146
|
"description": "The binary was resolved but could not be executed.",
|
|
5817
6147
|
"type": "string",
|
|
@@ -6109,7 +6439,8 @@
|
|
|
6109
6439
|
"type": "string",
|
|
6110
6440
|
"enum": [
|
|
6111
6441
|
"1.2",
|
|
6112
|
-
"1.3"
|
|
6442
|
+
"1.3",
|
|
6443
|
+
"1.4"
|
|
6113
6444
|
]
|
|
6114
6445
|
},
|
|
6115
6446
|
"variant": {
|
|
@@ -6229,7 +6560,10 @@
|
|
|
6229
6560
|
},
|
|
6230
6561
|
"schema_version": {
|
|
6231
6562
|
"type": "string",
|
|
6232
|
-
"
|
|
6563
|
+
"enum": [
|
|
6564
|
+
"1.3",
|
|
6565
|
+
"1.4"
|
|
6566
|
+
]
|
|
6233
6567
|
}
|
|
6234
6568
|
},
|
|
6235
6569
|
"required": [
|
|
@@ -6246,6 +6580,7 @@
|
|
|
6246
6580
|
"enum": [
|
|
6247
6581
|
"nonzero",
|
|
6248
6582
|
"timeout",
|
|
6583
|
+
"cancelled",
|
|
6249
6584
|
"spawn-error",
|
|
6250
6585
|
"skipped"
|
|
6251
6586
|
]
|
|
@@ -6268,6 +6603,37 @@
|
|
|
6268
6603
|
]
|
|
6269
6604
|
}
|
|
6270
6605
|
]
|
|
6606
|
+
},
|
|
6607
|
+
{
|
|
6608
|
+
"anyOf": [
|
|
6609
|
+
{
|
|
6610
|
+
"type": "object",
|
|
6611
|
+
"properties": {
|
|
6612
|
+
"status": {
|
|
6613
|
+
"type": "string",
|
|
6614
|
+
"enum": [
|
|
6615
|
+
"ok",
|
|
6616
|
+
"nonzero",
|
|
6617
|
+
"timeout",
|
|
6618
|
+
"spawn-error",
|
|
6619
|
+
"skipped",
|
|
6620
|
+
"planned"
|
|
6621
|
+
]
|
|
6622
|
+
}
|
|
6623
|
+
}
|
|
6624
|
+
},
|
|
6625
|
+
{
|
|
6626
|
+
"type": "object",
|
|
6627
|
+
"properties": {
|
|
6628
|
+
"schema_version": {
|
|
6629
|
+
"type": "string",
|
|
6630
|
+
"enum": [
|
|
6631
|
+
"1.4"
|
|
6632
|
+
]
|
|
6633
|
+
}
|
|
6634
|
+
}
|
|
6635
|
+
}
|
|
6636
|
+
]
|
|
6271
6637
|
}
|
|
6272
6638
|
],
|
|
6273
6639
|
"oneOf": [
|
|
@@ -6538,7 +6904,8 @@
|
|
|
6538
6904
|
"type": "string",
|
|
6539
6905
|
"enum": [
|
|
6540
6906
|
"1.2",
|
|
6541
|
-
"1.3"
|
|
6907
|
+
"1.3",
|
|
6908
|
+
"1.4"
|
|
6542
6909
|
]
|
|
6543
6910
|
},
|
|
6544
6911
|
"session": {
|
|
@@ -7137,7 +7504,8 @@
|
|
|
7137
7504
|
"type": "string",
|
|
7138
7505
|
"enum": [
|
|
7139
7506
|
"1.2",
|
|
7140
|
-
"1.3"
|
|
7507
|
+
"1.3",
|
|
7508
|
+
"1.4"
|
|
7141
7509
|
]
|
|
7142
7510
|
},
|
|
7143
7511
|
"session": {
|
|
@@ -7311,7 +7679,8 @@
|
|
|
7311
7679
|
"type": "string",
|
|
7312
7680
|
"enum": [
|
|
7313
7681
|
"1.2",
|
|
7314
|
-
"1.3"
|
|
7682
|
+
"1.3",
|
|
7683
|
+
"1.4"
|
|
7315
7684
|
]
|
|
7316
7685
|
},
|
|
7317
7686
|
"session": {
|
|
@@ -7483,7 +7852,8 @@
|
|
|
7483
7852
|
"type": "string",
|
|
7484
7853
|
"enum": [
|
|
7485
7854
|
"1.2",
|
|
7486
|
-
"1.3"
|
|
7855
|
+
"1.3",
|
|
7856
|
+
"1.4"
|
|
7487
7857
|
]
|
|
7488
7858
|
},
|
|
7489
7859
|
"session": {
|
|
@@ -7503,6 +7873,7 @@
|
|
|
7503
7873
|
"enum": [
|
|
7504
7874
|
"nonzero",
|
|
7505
7875
|
"timeout",
|
|
7876
|
+
"cancelled",
|
|
7506
7877
|
"spawn-error",
|
|
7507
7878
|
"skipped"
|
|
7508
7879
|
]
|
|
@@ -7655,7 +8026,8 @@
|
|
|
7655
8026
|
"schema_version": {
|
|
7656
8027
|
"type": "string",
|
|
7657
8028
|
"enum": [
|
|
7658
|
-
"1.3"
|
|
8029
|
+
"1.3",
|
|
8030
|
+
"1.4"
|
|
7659
8031
|
]
|
|
7660
8032
|
},
|
|
7661
8033
|
"session": {
|
|
@@ -7678,6 +8050,7 @@
|
|
|
7678
8050
|
"enum": [
|
|
7679
8051
|
"nonzero",
|
|
7680
8052
|
"timeout",
|
|
8053
|
+
"cancelled",
|
|
7681
8054
|
"spawn-error",
|
|
7682
8055
|
"skipped"
|
|
7683
8056
|
]
|
|
@@ -7872,6 +8245,7 @@
|
|
|
7872
8245
|
"enum": [
|
|
7873
8246
|
"nonzero",
|
|
7874
8247
|
"timeout",
|
|
8248
|
+
"cancelled",
|
|
7875
8249
|
"spawn-error",
|
|
7876
8250
|
"skipped"
|
|
7877
8251
|
]
|
|
@@ -8452,6 +8826,11 @@
|
|
|
8452
8826
|
"type": "string",
|
|
8453
8827
|
"const": "timeout"
|
|
8454
8828
|
},
|
|
8829
|
+
{
|
|
8830
|
+
"description": "Terminated before it finished because the run was **cancelled** — a\nlibrary caller flipped its [`crate::io::cancel::CancelToken`], or the host\nreceived SIGINT/SIGTERM while [`crate::io::cancel::install_signal_cancel`]\nwas in force. Distinct from `timeout` (the harness was given its full\ndeadline and exceeded it) and from a consumer-driven streaming stop (which\nstays `ok`, because the consumer already got what it asked for). Any\noutput captured before the cancellation is still normalized, exactly as it\nis for a timeout.",
|
|
8831
|
+
"type": "string",
|
|
8832
|
+
"const": "cancelled"
|
|
8833
|
+
},
|
|
8455
8834
|
{
|
|
8456
8835
|
"description": "The binary was resolved but could not be executed.",
|
|
8457
8836
|
"type": "string",
|
|
@@ -8728,7 +9107,10 @@
|
|
|
8728
9107
|
},
|
|
8729
9108
|
"schema_version": {
|
|
8730
9109
|
"type": "string",
|
|
8731
|
-
"
|
|
9110
|
+
"enum": [
|
|
9111
|
+
"1.3",
|
|
9112
|
+
"1.4"
|
|
9113
|
+
]
|
|
8732
9114
|
}
|
|
8733
9115
|
},
|
|
8734
9116
|
"required": [
|
|
@@ -8745,6 +9127,7 @@
|
|
|
8745
9127
|
"enum": [
|
|
8746
9128
|
"nonzero",
|
|
8747
9129
|
"timeout",
|
|
9130
|
+
"cancelled",
|
|
8748
9131
|
"spawn-error",
|
|
8749
9132
|
"skipped"
|
|
8750
9133
|
]
|
|
@@ -8767,6 +9150,37 @@
|
|
|
8767
9150
|
]
|
|
8768
9151
|
}
|
|
8769
9152
|
]
|
|
9153
|
+
},
|
|
9154
|
+
{
|
|
9155
|
+
"anyOf": [
|
|
9156
|
+
{
|
|
9157
|
+
"type": "object",
|
|
9158
|
+
"properties": {
|
|
9159
|
+
"status": {
|
|
9160
|
+
"type": "string",
|
|
9161
|
+
"enum": [
|
|
9162
|
+
"ok",
|
|
9163
|
+
"nonzero",
|
|
9164
|
+
"timeout",
|
|
9165
|
+
"spawn-error",
|
|
9166
|
+
"skipped",
|
|
9167
|
+
"planned"
|
|
9168
|
+
]
|
|
9169
|
+
}
|
|
9170
|
+
}
|
|
9171
|
+
},
|
|
9172
|
+
{
|
|
9173
|
+
"type": "object",
|
|
9174
|
+
"properties": {
|
|
9175
|
+
"schema_version": {
|
|
9176
|
+
"type": "string",
|
|
9177
|
+
"enum": [
|
|
9178
|
+
"1.4"
|
|
9179
|
+
]
|
|
9180
|
+
}
|
|
9181
|
+
}
|
|
9182
|
+
}
|
|
9183
|
+
]
|
|
8770
9184
|
}
|
|
8771
9185
|
],
|
|
8772
9186
|
"oneOf": [
|
|
@@ -9037,7 +9451,8 @@
|
|
|
9037
9451
|
"type": "string",
|
|
9038
9452
|
"enum": [
|
|
9039
9453
|
"1.2",
|
|
9040
|
-
"1.3"
|
|
9454
|
+
"1.3",
|
|
9455
|
+
"1.4"
|
|
9041
9456
|
]
|
|
9042
9457
|
},
|
|
9043
9458
|
"session": {
|
|
@@ -9636,7 +10051,8 @@
|
|
|
9636
10051
|
"type": "string",
|
|
9637
10052
|
"enum": [
|
|
9638
10053
|
"1.2",
|
|
9639
|
-
"1.3"
|
|
10054
|
+
"1.3",
|
|
10055
|
+
"1.4"
|
|
9640
10056
|
]
|
|
9641
10057
|
},
|
|
9642
10058
|
"session": {
|
|
@@ -9810,7 +10226,8 @@
|
|
|
9810
10226
|
"type": "string",
|
|
9811
10227
|
"enum": [
|
|
9812
10228
|
"1.2",
|
|
9813
|
-
"1.3"
|
|
10229
|
+
"1.3",
|
|
10230
|
+
"1.4"
|
|
9814
10231
|
]
|
|
9815
10232
|
},
|
|
9816
10233
|
"session": {
|
|
@@ -9982,7 +10399,8 @@
|
|
|
9982
10399
|
"type": "string",
|
|
9983
10400
|
"enum": [
|
|
9984
10401
|
"1.2",
|
|
9985
|
-
"1.3"
|
|
10402
|
+
"1.3",
|
|
10403
|
+
"1.4"
|
|
9986
10404
|
]
|
|
9987
10405
|
},
|
|
9988
10406
|
"session": {
|
|
@@ -10002,6 +10420,7 @@
|
|
|
10002
10420
|
"enum": [
|
|
10003
10421
|
"nonzero",
|
|
10004
10422
|
"timeout",
|
|
10423
|
+
"cancelled",
|
|
10005
10424
|
"spawn-error",
|
|
10006
10425
|
"skipped"
|
|
10007
10426
|
]
|
|
@@ -10154,7 +10573,8 @@
|
|
|
10154
10573
|
"schema_version": {
|
|
10155
10574
|
"type": "string",
|
|
10156
10575
|
"enum": [
|
|
10157
|
-
"1.3"
|
|
10576
|
+
"1.3",
|
|
10577
|
+
"1.4"
|
|
10158
10578
|
]
|
|
10159
10579
|
},
|
|
10160
10580
|
"session": {
|
|
@@ -10177,6 +10597,7 @@
|
|
|
10177
10597
|
"enum": [
|
|
10178
10598
|
"nonzero",
|
|
10179
10599
|
"timeout",
|
|
10600
|
+
"cancelled",
|
|
10180
10601
|
"spawn-error",
|
|
10181
10602
|
"skipped"
|
|
10182
10603
|
]
|
|
@@ -10371,6 +10792,7 @@
|
|
|
10371
10792
|
"enum": [
|
|
10372
10793
|
"nonzero",
|
|
10373
10794
|
"timeout",
|
|
10795
|
+
"cancelled",
|
|
10374
10796
|
"spawn-error",
|
|
10375
10797
|
"skipped"
|
|
10376
10798
|
]
|
|
@@ -10951,6 +11373,11 @@
|
|
|
10951
11373
|
"type": "string",
|
|
10952
11374
|
"const": "timeout"
|
|
10953
11375
|
},
|
|
11376
|
+
{
|
|
11377
|
+
"description": "Terminated before it finished because the run was **cancelled** — a\nlibrary caller flipped its [`crate::io::cancel::CancelToken`], or the host\nreceived SIGINT/SIGTERM while [`crate::io::cancel::install_signal_cancel`]\nwas in force. Distinct from `timeout` (the harness was given its full\ndeadline and exceeded it) and from a consumer-driven streaming stop (which\nstays `ok`, because the consumer already got what it asked for). Any\noutput captured before the cancellation is still normalized, exactly as it\nis for a timeout.",
|
|
11378
|
+
"type": "string",
|
|
11379
|
+
"const": "cancelled"
|
|
11380
|
+
},
|
|
10954
11381
|
{
|
|
10955
11382
|
"description": "The binary was resolved but could not be executed.",
|
|
10956
11383
|
"type": "string",
|