@oneharness/sdk 0.6.8 → 0.6.10
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 +111 -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/registry.d.ts +17 -0
- package/dist/generated/run-stream-envelope.d.ts +111 -1
- package/dist/generated/schemas.json +808 -27
- package/dist/generated/zod.d.ts +11 -1
- package/dist/generated/zod.js +225 -37
- package/package.json +2 -2
package/dist/generated/zod.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
import type { ActionEvent, BatchReport, FailureKind, FallThrough, FallbackReport, OutputFormat, RunReport, RunResult, SessionReport, Status, TimingSource, ToolCallStatus, Usage } from "./contracts.js";
|
|
2
|
+
import type { ActionEvent, BatchReport, ControlEvent, ControlReason, ControlReport, ControlVerb, ExecutionTelemetry, FailureKind, FallThrough, FallbackReport, OutputFormat, RunReport, RunResult, SessionReport, Status, TimingSource, ToolCallStatus, Usage, UtcInstant } from "./contracts.js";
|
|
3
3
|
import type { DetectInfo, DetectReport } from "./detection.js";
|
|
4
4
|
import type { HistoryRecord } from "./history.js";
|
|
5
5
|
import type { HistoryLine } from "./history-line.js";
|
|
@@ -12,14 +12,23 @@ import type { HistoryWatchOptions } from "./history-watch-options.js";
|
|
|
12
12
|
import type { HistoryLabels, PermissionMode, RunOptions } from "./options.js";
|
|
13
13
|
import type { HarnessInfo, ListReport, ModeInfo, VariantInfo } from "./registry.js";
|
|
14
14
|
import type { RunStreamEnvelope } from "./run-stream-envelope.js";
|
|
15
|
+
export type AbsolutePath = ControlReport["socket"];
|
|
15
16
|
export type BatchStrategy = BatchReport["strategy"];
|
|
17
|
+
export type ControlShape = ControlReport["mechanism"];
|
|
16
18
|
export type ModeHeadless = ModeInfo["headless"];
|
|
17
19
|
export type SessionPhase = SessionReport["phase"];
|
|
20
|
+
export declare const AbsolutePathSchema: z.ZodType<AbsolutePath>;
|
|
18
21
|
export declare const ActionEventSchema: z.ZodType<ActionEvent>;
|
|
19
22
|
export declare const BatchReportSchema: z.ZodType<BatchReport>;
|
|
20
23
|
export declare const BatchStrategySchema: z.ZodType<BatchStrategy>;
|
|
24
|
+
export declare const ControlEventSchema: z.ZodType<ControlEvent>;
|
|
25
|
+
export declare const ControlReasonSchema: z.ZodType<ControlReason>;
|
|
26
|
+
export declare const ControlReportSchema: z.ZodType<ControlReport>;
|
|
27
|
+
export declare const ControlShapeSchema: z.ZodType<ControlShape>;
|
|
28
|
+
export declare const ControlVerbSchema: z.ZodType<ControlVerb>;
|
|
21
29
|
export declare const DetectInfoSchema: z.ZodType<DetectInfo>;
|
|
22
30
|
export declare const DetectReportSchema: z.ZodType<DetectReport>;
|
|
31
|
+
export declare const ExecutionTelemetrySchema: z.ZodType<ExecutionTelemetry>;
|
|
23
32
|
export declare const FailureKindSchema: z.ZodType<FailureKind>;
|
|
24
33
|
export declare const FallThroughSchema: z.ZodType<FallThrough>;
|
|
25
34
|
export declare const FallbackReportSchema: z.ZodType<FallbackReport>;
|
|
@@ -52,4 +61,5 @@ export declare const StatusSchema: z.ZodType<Status>;
|
|
|
52
61
|
export declare const TimingSourceSchema: z.ZodType<TimingSource>;
|
|
53
62
|
export declare const ToolCallStatusSchema: z.ZodType<ToolCallStatus>;
|
|
54
63
|
export declare const UsageSchema: z.ZodType<Usage>;
|
|
64
|
+
export declare const UtcInstantSchema: z.ZodType<UtcInstant>;
|
|
55
65
|
export declare const VariantInfoSchema: z.ZodType<VariantInfo>;
|
package/dist/generated/zod.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/* Generated from oneharness Rust JSON Schemas. Do not edit. */
|
|
2
2
|
import { z } from "zod";
|
|
3
|
+
export const AbsolutePathSchema = z.string();
|
|
3
4
|
export const ActionEventSchema = z.looseObject({
|
|
4
5
|
duration_ms: z.union([z.int().gte(0), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
5
6
|
finished_at: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
@@ -27,6 +28,37 @@ export const BatchReportSchema = z.looseObject({
|
|
|
27
28
|
strategy: z.lazy(() => BatchStrategySchema).refine((value) => value !== undefined, { message: "Required" }),
|
|
28
29
|
});
|
|
29
30
|
export const BatchStrategySchema = z.union([z.literal("speed"), z.literal("min-tokens")]);
|
|
31
|
+
export const ControlEventSchema = z.union([
|
|
32
|
+
z.looseObject({
|
|
33
|
+
at: z.lazy(() => UtcInstantSchema).refine((value) => value !== undefined, { message: "Required" }),
|
|
34
|
+
outcome: z.literal("served").refine((value) => value !== undefined, { message: "Required" }),
|
|
35
|
+
verb: z.lazy(() => ControlVerbSchema).refine((value) => value !== undefined, { message: "Required" }),
|
|
36
|
+
}),
|
|
37
|
+
z.looseObject({
|
|
38
|
+
at: z.lazy(() => UtcInstantSchema).refine((value) => value !== undefined, { message: "Required" }),
|
|
39
|
+
outcome: z.literal("refused").refine((value) => value !== undefined, { message: "Required" }),
|
|
40
|
+
reason: z.lazy(() => ControlReasonSchema).refine((value) => value !== undefined, { message: "Required" }),
|
|
41
|
+
verb: z.lazy(() => ControlVerbSchema).refine((value) => value !== undefined, { message: "Required" }),
|
|
42
|
+
}),
|
|
43
|
+
]);
|
|
44
|
+
export const ControlReasonSchema = z.union([
|
|
45
|
+
z.literal("unsupported"),
|
|
46
|
+
z.literal("no_active_turn"),
|
|
47
|
+
z.literal("not_running"),
|
|
48
|
+
]);
|
|
49
|
+
export const ControlReportSchema = z.looseObject({
|
|
50
|
+
interrupts: z.array(z.lazy(() => ControlEventSchema)).refine((value) => value !== undefined, { message: "Required" }),
|
|
51
|
+
mechanism: z.lazy(() => ControlShapeSchema).refine((value) => value !== undefined, { message: "Required" }),
|
|
52
|
+
socket: z.lazy(() => AbsolutePathSchema).refine((value) => value !== undefined, { message: "Required" }),
|
|
53
|
+
});
|
|
54
|
+
export const ControlShapeSchema = z.union([
|
|
55
|
+
z.literal("claude-control-request"),
|
|
56
|
+
z.literal("codex-app-server"),
|
|
57
|
+
z.literal("opencode-http"),
|
|
58
|
+
z.literal("acp-cancel"),
|
|
59
|
+
z.literal("crush-http"),
|
|
60
|
+
]);
|
|
61
|
+
export const ControlVerbSchema = z.literal("interrupt");
|
|
30
62
|
export const DetectInfoSchema = z.looseObject({
|
|
31
63
|
available: z.boolean().refine((value) => value !== undefined, { message: "Required" }),
|
|
32
64
|
bin: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
@@ -38,6 +70,43 @@ export const DetectReportSchema = z.looseObject({
|
|
|
38
70
|
detected: z.array(z.lazy(() => DetectInfoSchema)).refine((value) => value !== undefined, { message: "Required" }),
|
|
39
71
|
schema_version: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
40
72
|
});
|
|
73
|
+
export const ExecutionTelemetrySchema = z.union([
|
|
74
|
+
z.looseObject({
|
|
75
|
+
finished_at: z
|
|
76
|
+
.union([
|
|
77
|
+
z
|
|
78
|
+
.string()
|
|
79
|
+
.min(24)
|
|
80
|
+
.regex(new RegExp("^\\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$", "u"))
|
|
81
|
+
.refine((value) => [...value].length <= 24, { message: "Too long: expected at most 24 characters" }),
|
|
82
|
+
z.null(),
|
|
83
|
+
])
|
|
84
|
+
.refine((value) => value !== undefined, { message: "Required" }),
|
|
85
|
+
model_ms: z.union([z.int().gte(0), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
86
|
+
source: z.literal("provider_measured").refine((value) => value !== undefined, { message: "Required" }),
|
|
87
|
+
started_at: z
|
|
88
|
+
.string()
|
|
89
|
+
.min(24)
|
|
90
|
+
.regex(new RegExp("^\\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$", "u"))
|
|
91
|
+
.refine((value) => [...value].length <= 24, { message: "Too long: expected at most 24 characters" })
|
|
92
|
+
.refine((value) => value !== undefined, { message: "Required" }),
|
|
93
|
+
time_to_first_token_ms: z
|
|
94
|
+
.union([z.int().gte(0), z.null()])
|
|
95
|
+
.refine((value) => value !== undefined, { message: "Required" }),
|
|
96
|
+
tool_ms: z.union([z.int().gte(0), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
97
|
+
}),
|
|
98
|
+
z.looseObject({
|
|
99
|
+
source: z.literal("partial_invocation").refine((value) => value !== undefined, { message: "Required" }),
|
|
100
|
+
started_at: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
101
|
+
}),
|
|
102
|
+
z.looseObject({
|
|
103
|
+
source: z.literal("stdout_observed").refine((value) => value !== undefined, { message: "Required" }),
|
|
104
|
+
tool_ms: z
|
|
105
|
+
.int()
|
|
106
|
+
.gte(0)
|
|
107
|
+
.refine((value) => value !== undefined, { message: "Required" }),
|
|
108
|
+
}),
|
|
109
|
+
]);
|
|
41
110
|
export const FailureKindSchema = z.union([
|
|
42
111
|
z.literal("auth"),
|
|
43
112
|
z.literal("rate_limit"),
|
|
@@ -56,6 +125,9 @@ export const FallbackReportSchema = z.looseObject({
|
|
|
56
125
|
ran: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
57
126
|
});
|
|
58
127
|
export const HarnessInfoSchema = z.looseObject({
|
|
128
|
+
control: z
|
|
129
|
+
.union([z.lazy(() => ControlShapeSchema), z.null()])
|
|
130
|
+
.refine((value) => value !== undefined, { message: "Required" }),
|
|
59
131
|
default_bin: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
60
132
|
display: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
61
133
|
example_command: z.array(z.string()).refine((value) => value !== undefined, { message: "Required" }),
|
|
@@ -91,7 +163,7 @@ export const HistoryEventLineSchema = z.union([
|
|
|
91
163
|
.refine((value) => [...value].length <= 36, { message: "Too long: expected at most 36 characters" })
|
|
92
164
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
93
165
|
schema_version: z
|
|
94
|
-
.union([z.literal("1.2"), z.literal("1.3")])
|
|
166
|
+
.union([z.literal("1.2"), z.literal("1.3"), z.literal("1.4")])
|
|
95
167
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
96
168
|
variant: z.union([z.string(), z.null()]).optional(),
|
|
97
169
|
}),
|
|
@@ -141,7 +213,7 @@ export const HistoryLineSchema = z.union([
|
|
|
141
213
|
.refine((value) => [...value].length <= 36, { message: "Too long: expected at most 36 characters" })
|
|
142
214
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
143
215
|
schema_version: z
|
|
144
|
-
.union([z.literal("1.2"), z.literal("1.3")])
|
|
216
|
+
.union([z.literal("1.2"), z.literal("1.3"), z.literal("1.4")])
|
|
145
217
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
146
218
|
type: z.literal("event").refine((value) => value !== undefined, { message: "Required" }),
|
|
147
219
|
variant: z.union([z.string(), z.null()]).optional(),
|
|
@@ -167,7 +239,7 @@ export const HistoryLineSchema = z.union([
|
|
|
167
239
|
variant: z.union([z.string(), z.null()]).optional(),
|
|
168
240
|
}),
|
|
169
241
|
]),
|
|
170
|
-
z.intersection(z.union([
|
|
242
|
+
z.intersection(z.intersection(z.union([
|
|
171
243
|
z.looseObject({
|
|
172
244
|
duration_ms: z
|
|
173
245
|
.int()
|
|
@@ -178,7 +250,9 @@ export const HistoryLineSchema = z.union([
|
|
|
178
250
|
z
|
|
179
251
|
.string()
|
|
180
252
|
.min(1)
|
|
181
|
-
.refine((value) => [...value].length <= 2048, {
|
|
253
|
+
.refine((value) => [...value].length <= 2048, {
|
|
254
|
+
message: "Too long: expected at most 2048 characters",
|
|
255
|
+
}),
|
|
182
256
|
z.null(),
|
|
183
257
|
])
|
|
184
258
|
.optional(),
|
|
@@ -209,7 +283,7 @@ export const HistoryLineSchema = z.union([
|
|
|
209
283
|
project: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
210
284
|
prompt: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
211
285
|
schema_version: z
|
|
212
|
-
.union([z.literal("1.0"), z.literal("1.1"), z.literal("1.2"), z.literal("1.3")])
|
|
286
|
+
.union([z.literal("1.0"), z.literal("1.1"), z.literal("1.2"), z.literal("1.3"), z.literal("1.4")])
|
|
213
287
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
214
288
|
session: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
215
289
|
session_id: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
@@ -242,7 +316,9 @@ export const HistoryLineSchema = z.union([
|
|
|
242
316
|
z
|
|
243
317
|
.string()
|
|
244
318
|
.min(1)
|
|
245
|
-
.refine((value) => [...value].length <= 2048, {
|
|
319
|
+
.refine((value) => [...value].length <= 2048, {
|
|
320
|
+
message: "Too long: expected at most 2048 characters",
|
|
321
|
+
}),
|
|
246
322
|
z.null(),
|
|
247
323
|
])
|
|
248
324
|
.optional(),
|
|
@@ -273,7 +349,7 @@ export const HistoryLineSchema = z.union([
|
|
|
273
349
|
project: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
274
350
|
prompt: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
275
351
|
schema_version: z
|
|
276
|
-
.union([z.literal("1.0"), z.literal("1.1"), z.literal("1.2"), z.literal("1.3")])
|
|
352
|
+
.union([z.literal("1.0"), z.literal("1.1"), z.literal("1.2"), z.literal("1.3"), z.literal("1.4")])
|
|
277
353
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
278
354
|
session: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
279
355
|
session_id: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
@@ -282,7 +358,13 @@ export const HistoryLineSchema = z.union([
|
|
|
282
358
|
.min(1)
|
|
283
359
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
284
360
|
status: z
|
|
285
|
-
.union([
|
|
361
|
+
.union([
|
|
362
|
+
z.literal("timeout"),
|
|
363
|
+
z.literal("cancelled"),
|
|
364
|
+
z.literal("spawn-error"),
|
|
365
|
+
z.literal("skipped"),
|
|
366
|
+
z.literal("planned"),
|
|
367
|
+
])
|
|
286
368
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
287
369
|
text: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
288
370
|
text_source: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
@@ -306,7 +388,9 @@ export const HistoryLineSchema = z.union([
|
|
|
306
388
|
z
|
|
307
389
|
.string()
|
|
308
390
|
.min(1)
|
|
309
|
-
.refine((value) => [...value].length <= 2048, {
|
|
391
|
+
.refine((value) => [...value].length <= 2048, {
|
|
392
|
+
message: "Too long: expected at most 2048 characters",
|
|
393
|
+
}),
|
|
310
394
|
z.null(),
|
|
311
395
|
])
|
|
312
396
|
.optional(),
|
|
@@ -337,7 +421,7 @@ export const HistoryLineSchema = z.union([
|
|
|
337
421
|
project: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
338
422
|
prompt: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
339
423
|
schema_version: z
|
|
340
|
-
.union([z.literal("1.2"), z.literal("1.3")])
|
|
424
|
+
.union([z.literal("1.2"), z.literal("1.3"), z.literal("1.4")])
|
|
341
425
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
342
426
|
session: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
343
427
|
session_id: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
@@ -361,7 +445,9 @@ export const HistoryLineSchema = z.union([
|
|
|
361
445
|
z
|
|
362
446
|
.string()
|
|
363
447
|
.min(1)
|
|
364
|
-
.refine((value) => [...value].length <= 2048, {
|
|
448
|
+
.refine((value) => [...value].length <= 2048, {
|
|
449
|
+
message: "Too long: expected at most 2048 characters",
|
|
450
|
+
}),
|
|
365
451
|
z.null(),
|
|
366
452
|
])
|
|
367
453
|
.optional(),
|
|
@@ -389,13 +475,19 @@ export const HistoryLineSchema = z.union([
|
|
|
389
475
|
project: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
390
476
|
prompt: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
391
477
|
schema_version: z
|
|
392
|
-
.union([z.literal("1.0"), z.literal("1.1"), z.literal("1.2"), z.literal("1.3")])
|
|
478
|
+
.union([z.literal("1.0"), z.literal("1.1"), z.literal("1.2"), z.literal("1.3"), z.literal("1.4")])
|
|
393
479
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
394
480
|
session: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
395
481
|
session_id: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
396
482
|
started_at: z.never().optional(),
|
|
397
483
|
status: z
|
|
398
|
-
.union([
|
|
484
|
+
.union([
|
|
485
|
+
z.literal("nonzero"),
|
|
486
|
+
z.literal("timeout"),
|
|
487
|
+
z.literal("cancelled"),
|
|
488
|
+
z.literal("spawn-error"),
|
|
489
|
+
z.literal("skipped"),
|
|
490
|
+
])
|
|
399
491
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
400
492
|
text: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
401
493
|
text_source: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
@@ -416,7 +508,9 @@ export const HistoryLineSchema = z.union([
|
|
|
416
508
|
z
|
|
417
509
|
.string()
|
|
418
510
|
.min(1)
|
|
419
|
-
.refine((value) => [...value].length <= 2048, {
|
|
511
|
+
.refine((value) => [...value].length <= 2048, {
|
|
512
|
+
message: "Too long: expected at most 2048 characters",
|
|
513
|
+
}),
|
|
420
514
|
z.null(),
|
|
421
515
|
])
|
|
422
516
|
.optional(),
|
|
@@ -443,7 +537,9 @@ export const HistoryLineSchema = z.union([
|
|
|
443
537
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
444
538
|
project: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
445
539
|
prompt: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
446
|
-
schema_version: z
|
|
540
|
+
schema_version: z
|
|
541
|
+
.union([z.literal("1.3"), z.literal("1.4")])
|
|
542
|
+
.refine((value) => value !== undefined, { message: "Required" }),
|
|
447
543
|
session: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
448
544
|
session_id: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
449
545
|
started_at: z
|
|
@@ -451,7 +547,13 @@ export const HistoryLineSchema = z.union([
|
|
|
451
547
|
.min(1)
|
|
452
548
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
453
549
|
status: z
|
|
454
|
-
.union([
|
|
550
|
+
.union([
|
|
551
|
+
z.literal("nonzero"),
|
|
552
|
+
z.literal("timeout"),
|
|
553
|
+
z.literal("cancelled"),
|
|
554
|
+
z.literal("spawn-error"),
|
|
555
|
+
z.literal("skipped"),
|
|
556
|
+
])
|
|
455
557
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
456
558
|
text: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
457
559
|
text_source: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
@@ -471,7 +573,9 @@ export const HistoryLineSchema = z.union([
|
|
|
471
573
|
z
|
|
472
574
|
.string()
|
|
473
575
|
.min(1)
|
|
474
|
-
.refine((value) => [...value].length <= 2048, {
|
|
576
|
+
.refine((value) => [...value].length <= 2048, {
|
|
577
|
+
message: "Too long: expected at most 2048 characters",
|
|
578
|
+
}),
|
|
475
579
|
z.null(),
|
|
476
580
|
])
|
|
477
581
|
.optional(),
|
|
@@ -499,7 +603,7 @@ export const HistoryLineSchema = z.union([
|
|
|
499
603
|
project: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
500
604
|
prompt: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
501
605
|
schema_version: z
|
|
502
|
-
.union([z.literal("1.0"), z.literal("1.1"), z.literal("1.2"), z.literal("1.3")])
|
|
606
|
+
.union([z.literal("1.0"), z.literal("1.1"), z.literal("1.2"), z.literal("1.3"), z.literal("1.4")])
|
|
503
607
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
504
608
|
session: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
505
609
|
session_id: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
@@ -522,17 +626,39 @@ export const HistoryLineSchema = z.union([
|
|
|
522
626
|
}),
|
|
523
627
|
z.intersection(z.looseObject({
|
|
524
628
|
error: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
525
|
-
schema_version: z.literal("1.3").optional(),
|
|
629
|
+
schema_version: z.union([z.literal("1.3"), z.literal("1.4")]).optional(),
|
|
526
630
|
}), z.union([
|
|
527
631
|
z.looseObject({
|
|
528
632
|
status: z
|
|
529
|
-
.union([
|
|
633
|
+
.union([
|
|
634
|
+
z.literal("nonzero"),
|
|
635
|
+
z.literal("timeout"),
|
|
636
|
+
z.literal("cancelled"),
|
|
637
|
+
z.literal("spawn-error"),
|
|
638
|
+
z.literal("skipped"),
|
|
639
|
+
])
|
|
530
640
|
.optional(),
|
|
531
641
|
}),
|
|
532
642
|
z.looseObject({
|
|
533
643
|
failure_kind: z.literal("tool_deferred").refine((value) => value !== undefined, { message: "Required" }),
|
|
534
644
|
}),
|
|
535
645
|
])),
|
|
646
|
+
])), z.union([
|
|
647
|
+
z.looseObject({
|
|
648
|
+
status: z
|
|
649
|
+
.union([
|
|
650
|
+
z.literal("ok"),
|
|
651
|
+
z.literal("nonzero"),
|
|
652
|
+
z.literal("timeout"),
|
|
653
|
+
z.literal("spawn-error"),
|
|
654
|
+
z.literal("skipped"),
|
|
655
|
+
z.literal("planned"),
|
|
656
|
+
])
|
|
657
|
+
.optional(),
|
|
658
|
+
}),
|
|
659
|
+
z.looseObject({
|
|
660
|
+
schema_version: z.literal("1.4").optional(),
|
|
661
|
+
}),
|
|
536
662
|
])),
|
|
537
663
|
]);
|
|
538
664
|
export const HistoryListSchema = z.array(z.lazy(() => HistorySessionSummarySchema));
|
|
@@ -562,7 +688,7 @@ export const HistoryLookupBySessionSchema = z.strictObject({
|
|
|
562
688
|
.min(1)
|
|
563
689
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
564
690
|
});
|
|
565
|
-
export const HistoryRecordSchema = z.intersection(z.union([
|
|
691
|
+
export const HistoryRecordSchema = z.intersection(z.intersection(z.union([
|
|
566
692
|
z.looseObject({
|
|
567
693
|
duration_ms: z
|
|
568
694
|
.int()
|
|
@@ -660,7 +786,7 @@ export const HistoryRecordSchema = z.intersection(z.union([
|
|
|
660
786
|
project: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
661
787
|
prompt: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
662
788
|
schema_version: z
|
|
663
|
-
.union([z.literal("1.2"), z.literal("1.3")])
|
|
789
|
+
.union([z.literal("1.2"), z.literal("1.3"), z.literal("1.4")])
|
|
664
790
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
665
791
|
session: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
666
792
|
session_id: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
@@ -800,7 +926,9 @@ export const HistoryRecordSchema = z.intersection(z.union([
|
|
|
800
926
|
variant: z.union([z.string(), z.null()]).optional(),
|
|
801
927
|
}),
|
|
802
928
|
z.looseObject({
|
|
803
|
-
duration_ms: z
|
|
929
|
+
duration_ms: z
|
|
930
|
+
.union([z.int().gte(0), z.null()])
|
|
931
|
+
.refine((value) => value !== undefined, { message: "Required" }),
|
|
804
932
|
error: z
|
|
805
933
|
.union([
|
|
806
934
|
z
|
|
@@ -854,7 +982,7 @@ export const HistoryRecordSchema = z.intersection(z.union([
|
|
|
854
982
|
project: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
855
983
|
prompt: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
856
984
|
schema_version: z
|
|
857
|
-
.union([z.literal("1.2"), z.literal("1.3")])
|
|
985
|
+
.union([z.literal("1.2"), z.literal("1.3"), z.literal("1.4")])
|
|
858
986
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
859
987
|
session: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
860
988
|
session_id: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
@@ -914,7 +1042,7 @@ export const HistoryRecordSchema = z.intersection(z.union([
|
|
|
914
1042
|
project: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
915
1043
|
prompt: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
916
1044
|
schema_version: z
|
|
917
|
-
.union([z.literal("1.2"), z.literal("1.3")])
|
|
1045
|
+
.union([z.literal("1.2"), z.literal("1.3"), z.literal("1.4")])
|
|
918
1046
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
919
1047
|
session: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
920
1048
|
session_id: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
@@ -929,7 +1057,9 @@ export const HistoryRecordSchema = z.intersection(z.union([
|
|
|
929
1057
|
variant: z.union([z.string(), z.null()]).optional(),
|
|
930
1058
|
}),
|
|
931
1059
|
z.looseObject({
|
|
932
|
-
duration_ms: z
|
|
1060
|
+
duration_ms: z
|
|
1061
|
+
.union([z.int().gte(0), z.null()])
|
|
1062
|
+
.refine((value) => value !== undefined, { message: "Required" }),
|
|
933
1063
|
error: z
|
|
934
1064
|
.union([
|
|
935
1065
|
z
|
|
@@ -966,13 +1096,19 @@ export const HistoryRecordSchema = z.intersection(z.union([
|
|
|
966
1096
|
project: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
967
1097
|
prompt: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
968
1098
|
schema_version: z
|
|
969
|
-
.union([z.literal("1.2"), z.literal("1.3")])
|
|
1099
|
+
.union([z.literal("1.2"), z.literal("1.3"), z.literal("1.4")])
|
|
970
1100
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
971
1101
|
session: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
972
1102
|
session_id: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
973
1103
|
started_at: z.never().optional(),
|
|
974
1104
|
status: z
|
|
975
|
-
.union([
|
|
1105
|
+
.union([
|
|
1106
|
+
z.literal("nonzero"),
|
|
1107
|
+
z.literal("timeout"),
|
|
1108
|
+
z.literal("cancelled"),
|
|
1109
|
+
z.literal("spawn-error"),
|
|
1110
|
+
z.literal("skipped"),
|
|
1111
|
+
])
|
|
976
1112
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
977
1113
|
text: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
978
1114
|
text_source: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
@@ -1022,7 +1158,9 @@ export const HistoryRecordSchema = z.intersection(z.union([
|
|
|
1022
1158
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
1023
1159
|
project: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
1024
1160
|
prompt: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
1025
|
-
schema_version: z
|
|
1161
|
+
schema_version: z
|
|
1162
|
+
.union([z.literal("1.3"), z.literal("1.4")])
|
|
1163
|
+
.refine((value) => value !== undefined, { message: "Required" }),
|
|
1026
1164
|
session: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
1027
1165
|
session_id: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
1028
1166
|
started_at: z
|
|
@@ -1030,7 +1168,13 @@ export const HistoryRecordSchema = z.intersection(z.union([
|
|
|
1030
1168
|
.min(1)
|
|
1031
1169
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
1032
1170
|
status: z
|
|
1033
|
-
.union([
|
|
1171
|
+
.union([
|
|
1172
|
+
z.literal("nonzero"),
|
|
1173
|
+
z.literal("timeout"),
|
|
1174
|
+
z.literal("cancelled"),
|
|
1175
|
+
z.literal("spawn-error"),
|
|
1176
|
+
z.literal("skipped"),
|
|
1177
|
+
])
|
|
1034
1178
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
1035
1179
|
text: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
1036
1180
|
text_source: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
@@ -1041,7 +1185,9 @@ export const HistoryRecordSchema = z.intersection(z.union([
|
|
|
1041
1185
|
variant: z.union([z.string(), z.null()]).optional(),
|
|
1042
1186
|
}),
|
|
1043
1187
|
z.looseObject({
|
|
1044
|
-
duration_ms: z
|
|
1188
|
+
duration_ms: z
|
|
1189
|
+
.union([z.int().gte(0), z.null()])
|
|
1190
|
+
.refine((value) => value !== undefined, { message: "Required" }),
|
|
1045
1191
|
error: z
|
|
1046
1192
|
.union([
|
|
1047
1193
|
z
|
|
@@ -1089,7 +1235,13 @@ export const HistoryRecordSchema = z.intersection(z.union([
|
|
|
1089
1235
|
session_id: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
1090
1236
|
started_at: z.never().optional(),
|
|
1091
1237
|
status: z
|
|
1092
|
-
.union([
|
|
1238
|
+
.union([
|
|
1239
|
+
z.literal("nonzero"),
|
|
1240
|
+
z.literal("timeout"),
|
|
1241
|
+
z.literal("cancelled"),
|
|
1242
|
+
z.literal("spawn-error"),
|
|
1243
|
+
z.literal("skipped"),
|
|
1244
|
+
])
|
|
1093
1245
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
1094
1246
|
text: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
1095
1247
|
text_source: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
@@ -1100,7 +1252,9 @@ export const HistoryRecordSchema = z.intersection(z.union([
|
|
|
1100
1252
|
variant: z.union([z.string(), z.null()]).optional(),
|
|
1101
1253
|
}),
|
|
1102
1254
|
z.looseObject({
|
|
1103
|
-
duration_ms: z
|
|
1255
|
+
duration_ms: z
|
|
1256
|
+
.union([z.int().gte(0), z.null()])
|
|
1257
|
+
.refine((value) => value !== undefined, { message: "Required" }),
|
|
1104
1258
|
error: z
|
|
1105
1259
|
.union([
|
|
1106
1260
|
z
|
|
@@ -1122,7 +1276,9 @@ export const HistoryRecordSchema = z.intersection(z.union([
|
|
|
1122
1276
|
input: z.unknown().refine((value) => value !== undefined, { message: "Required" }),
|
|
1123
1277
|
kind: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
1124
1278
|
name: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
1125
|
-
output: z
|
|
1279
|
+
output: z
|
|
1280
|
+
.union([z.string(), z.null()])
|
|
1281
|
+
.refine((value) => value !== undefined, { message: "Required" }),
|
|
1126
1282
|
started_at: z.null().optional(),
|
|
1127
1283
|
status: z.null().optional(),
|
|
1128
1284
|
tool_call_id: z.union([z.string(), z.null()]).optional(),
|
|
@@ -1173,7 +1329,9 @@ export const HistoryRecordSchema = z.intersection(z.union([
|
|
|
1173
1329
|
variant: z.union([z.string(), z.null()]).optional(),
|
|
1174
1330
|
}),
|
|
1175
1331
|
z.looseObject({
|
|
1176
|
-
duration_ms: z
|
|
1332
|
+
duration_ms: z
|
|
1333
|
+
.union([z.int().gte(0), z.null()])
|
|
1334
|
+
.refine((value) => value !== undefined, { message: "Required" }),
|
|
1177
1335
|
error: z
|
|
1178
1336
|
.union([
|
|
1179
1337
|
z
|
|
@@ -1242,17 +1400,39 @@ export const HistoryRecordSchema = z.intersection(z.union([
|
|
|
1242
1400
|
}),
|
|
1243
1401
|
z.intersection(z.looseObject({
|
|
1244
1402
|
error: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
1245
|
-
schema_version: z.literal("1.3").optional(),
|
|
1403
|
+
schema_version: z.union([z.literal("1.3"), z.literal("1.4")]).optional(),
|
|
1246
1404
|
}), z.union([
|
|
1247
1405
|
z.looseObject({
|
|
1248
1406
|
status: z
|
|
1249
|
-
.union([
|
|
1407
|
+
.union([
|
|
1408
|
+
z.literal("nonzero"),
|
|
1409
|
+
z.literal("timeout"),
|
|
1410
|
+
z.literal("cancelled"),
|
|
1411
|
+
z.literal("spawn-error"),
|
|
1412
|
+
z.literal("skipped"),
|
|
1413
|
+
])
|
|
1250
1414
|
.optional(),
|
|
1251
1415
|
}),
|
|
1252
1416
|
z.looseObject({
|
|
1253
1417
|
failure_kind: z.literal("tool_deferred").refine((value) => value !== undefined, { message: "Required" }),
|
|
1254
1418
|
}),
|
|
1255
1419
|
])),
|
|
1420
|
+
])), z.union([
|
|
1421
|
+
z.looseObject({
|
|
1422
|
+
status: z
|
|
1423
|
+
.union([
|
|
1424
|
+
z.literal("ok"),
|
|
1425
|
+
z.literal("nonzero"),
|
|
1426
|
+
z.literal("timeout"),
|
|
1427
|
+
z.literal("spawn-error"),
|
|
1428
|
+
z.literal("skipped"),
|
|
1429
|
+
z.literal("planned"),
|
|
1430
|
+
])
|
|
1431
|
+
.optional(),
|
|
1432
|
+
}),
|
|
1433
|
+
z.looseObject({
|
|
1434
|
+
schema_version: z.literal("1.4").optional(),
|
|
1435
|
+
}),
|
|
1256
1436
|
]));
|
|
1257
1437
|
export const HistoryRecordsSchema = z.array(z.lazy(() => HistoryRecordSchema));
|
|
1258
1438
|
export const HistorySessionSummarySchema = z.looseObject({
|
|
@@ -1342,6 +1522,9 @@ export const RunReportSchema = z.looseObject({
|
|
|
1342
1522
|
.refine((value) => value !== undefined, { message: "Required" }),
|
|
1343
1523
|
bypass_permissions: z.boolean().refine((value) => value !== undefined, { message: "Required" }),
|
|
1344
1524
|
config_files: z.array(z.string()).refine((value) => value !== undefined, { message: "Required" }),
|
|
1525
|
+
control: z
|
|
1526
|
+
.union([z.lazy(() => ControlReportSchema), z.null()])
|
|
1527
|
+
.refine((value) => value !== undefined, { message: "Required" }),
|
|
1345
1528
|
dry_run: z.boolean().refine((value) => value !== undefined, { message: "Required" }),
|
|
1346
1529
|
fallback: z
|
|
1347
1530
|
.union([z.lazy(() => FallbackReportSchema), z.null()])
|
|
@@ -1394,6 +1577,9 @@ export const RunResultSchema = z.looseObject({
|
|
|
1394
1577
|
stderr: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
1395
1578
|
stdout: z.string().refine((value) => value !== undefined, { message: "Required" }),
|
|
1396
1579
|
structured: z.unknown().refine((value) => value !== undefined, { message: "Required" }),
|
|
1580
|
+
telemetry: z
|
|
1581
|
+
.union([z.lazy(() => ExecutionTelemetrySchema), z.null()])
|
|
1582
|
+
.refine((value) => value !== undefined, { message: "Required" }),
|
|
1397
1583
|
text: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
1398
1584
|
text_source: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
1399
1585
|
usage: z.lazy(() => UsageSchema).refine((value) => value !== undefined, { message: "Required" }),
|
|
@@ -1421,6 +1607,7 @@ export const StatusSchema = z.union([
|
|
|
1421
1607
|
z.literal("ok"),
|
|
1422
1608
|
z.literal("nonzero"),
|
|
1423
1609
|
z.literal("timeout"),
|
|
1610
|
+
z.literal("cancelled"),
|
|
1424
1611
|
z.literal("spawn-error"),
|
|
1425
1612
|
z.literal("skipped"),
|
|
1426
1613
|
z.literal("planned"),
|
|
@@ -1446,6 +1633,7 @@ export const UsageSchema = z.looseObject({
|
|
|
1446
1633
|
input_tokens: z.union([z.int().gte(0), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
1447
1634
|
output_tokens: z.union([z.int().gte(0), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
|
1448
1635
|
});
|
|
1636
|
+
export const UtcInstantSchema = z.string();
|
|
1449
1637
|
export const VariantInfoSchema = z.looseObject({
|
|
1450
1638
|
args: z.array(z.string()).refine((value) => value !== undefined, { message: "Required" }),
|
|
1451
1639
|
bin: z.union([z.string(), z.null()]).refine((value) => value !== undefined, { message: "Required" }),
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oneharness/sdk",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.10",
|
|
4
4
|
"description": "Typed Node.js SDK for oneharness",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"node": ">=20"
|
|
20
20
|
},
|
|
21
21
|
"dependencies": {
|
|
22
|
-
"oneharness-cli": "0.6.
|
|
22
|
+
"oneharness-cli": "0.6.10",
|
|
23
23
|
"zod": "^4.4.3"
|
|
24
24
|
}
|
|
25
25
|
}
|