playhead-cli 0.1.3 → 0.2.0
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/Dockerfile +9 -6
- package/README.md +43 -7
- package/action.yml +56 -2
- package/dist/audio/mux.d.ts +2 -0
- package/dist/audio/mux.d.ts.map +1 -1
- package/dist/authoring/author.d.ts +8 -2
- package/dist/authoring/author.d.ts.map +1 -1
- package/dist/authoring/catalog.d.ts.map +1 -1
- package/dist/authoring/explore.d.ts.map +1 -1
- package/dist/authoring/validate.d.ts.map +1 -1
- package/dist/bundle/types.d.ts +2 -0
- package/dist/bundle/types.d.ts.map +1 -1
- package/dist/bundle/writer.d.ts +6 -1
- package/dist/bundle/writer.d.ts.map +1 -1
- package/dist/capture/driver-api.d.ts +14 -1
- package/dist/capture/driver-api.d.ts.map +1 -1
- package/dist/capture/events.d.ts +1 -1
- package/dist/capture/events.d.ts.map +1 -1
- package/dist/capture/executor.d.ts.map +1 -1
- package/dist/capture/playwright-driver.d.ts +22 -2
- package/dist/capture/playwright-driver.d.ts.map +1 -1
- package/dist/cli/index.js +1969 -514
- package/dist/cli/index.js.map +1 -1
- package/dist/compose/camera/interpolate.d.ts +16 -3
- package/dist/compose/camera/interpolate.d.ts.map +1 -1
- package/dist/compose/camera/planner.d.ts.map +1 -1
- package/dist/compose/captions.d.ts.map +1 -1
- package/dist/compose/index.d.ts.map +1 -1
- package/dist/compose/overlays/build.d.ts.map +1 -1
- package/dist/compose/overlays/draw.d.ts.map +1 -1
- package/dist/compose/render/encoder.d.ts.map +1 -1
- package/dist/compose/render/frameStore.d.ts.map +1 -1
- package/dist/compose/render/renderer.d.ts.map +1 -1
- package/dist/compose/timeline/pacing.d.ts +4 -0
- package/dist/compose/timeline/pacing.d.ts.map +1 -1
- package/dist/compose/types.d.ts +14 -3
- package/dist/compose/types.d.ts.map +1 -1
- package/dist/index.js +1299 -382
- package/dist/index.js.map +1 -1
- package/dist/mcp/bin.js +1833 -726
- package/dist/mcp/bin.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/shared/version.d.ts +0 -2
- package/dist/shared/version.d.ts.map +1 -1
- package/dist/spec/locators.d.ts.map +1 -1
- package/dist/spec/parse.d.ts.map +1 -1
- package/dist/spec/schema.d.ts +263 -2
- package/dist/spec/schema.d.ts.map +1 -1
- package/dist/verify/checks.d.ts.map +1 -1
- package/dist/verify/report.d.ts +33 -6
- package/dist/verify/report.d.ts.map +1 -1
- package/dist/verify/runner.d.ts +1 -1
- package/dist/verify/runner.d.ts.map +1 -1
- package/dist/verify/types.d.ts +36 -4
- package/dist/verify/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/mcp/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAWpE;;;;GAIG;AACH,wBAAgB,WAAW,IAAI,SAAS,
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAWpE;;;;GAIG;AACH,wBAAgB,WAAW,IAAI,SAAS,CAsNvC;AAqBD,6DAA6D;AAC7D,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAIpD"}
|
package/dist/shared/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/shared/version.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/shared/version.ts"],"names":[],"mappings":"AAgCA,eAAO,MAAM,gBAAgB,EAAE,MAAwC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locators.d.ts","sourceRoot":"","sources":["../../src/spec/locators.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,SAAS,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,CAAC;AAEzF,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,SAAS,CAAA;CAAE,GAChD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,GACzC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtC,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,WAAW,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,6FAA6F;IAC7F,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,+DAA+D;IAC/D,GAAG,EAAE,MAAM,CAAC;CACb;AAED,qBAAa,iBAAkB,SAAQ,KAAK;CAAG;
|
|
1
|
+
{"version":3,"file":"locators.d.ts","sourceRoot":"","sources":["../../src/spec/locators.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,SAAS,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,SAAS,CAAA;CAAE,CAAC;AAEzF,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,SAAS,CAAA;CAAE,GAChD;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,GACzC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtC,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,WAAW,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,6FAA6F;IAC7F,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,+DAA+D;IAC/D,GAAG,EAAE,MAAM,CAAC;CACb;AAED,qBAAa,iBAAkB,SAAQ,KAAK;CAAG;AA4B/C,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa,CA4DzD;AA0BD,kHAAkH;AAClH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAc7D"}
|
package/dist/spec/parse.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../src/spec/parse.ts"],"names":[],"mappings":"AAIA,OAAO,EAA4B,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AAElE,qBAAa,SAAU,SAAQ,KAAK;aAGhB,MAAM,EAAE,MAAM,EAAE;IAFlC,YACE,OAAO,EAAE,MAAM,EACC,MAAM,GAAE,MAAM,EAAO,EAGtC;CACF;AA6BD;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,SAAa,GAAG,IAAI,CAYzE;AAED,4FAA4F;AAC5F,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../src/spec/parse.ts"],"names":[],"mappings":"AAIA,OAAO,EAA4B,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AAElE,qBAAa,SAAU,SAAQ,KAAK;aAGhB,MAAM,EAAE,MAAM,EAAE;IAFlC,YACE,OAAO,EAAE,MAAM,EACC,MAAM,GAAE,MAAM,EAAO,EAGtC;CACF;AA6BD;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,SAAa,GAAG,IAAI,CAYzE;AAED,4FAA4F;AAC5F,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAiB1D"}
|
package/dist/spec/schema.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
8
8
|
cut: "cut";
|
|
9
9
|
}>>;
|
|
10
10
|
timeout: z.ZodOptional<z.ZodNumber>;
|
|
11
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
11
12
|
action: z.ZodLiteral<"goto">;
|
|
12
13
|
url: z.ZodString;
|
|
13
14
|
}, z.core.$strict>, z.ZodObject<{
|
|
@@ -19,6 +20,7 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
19
20
|
cut: "cut";
|
|
20
21
|
}>>;
|
|
21
22
|
timeout: z.ZodOptional<z.ZodNumber>;
|
|
23
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
22
24
|
action: z.ZodEnum<{
|
|
23
25
|
click: "click";
|
|
24
26
|
dblclick: "dblclick";
|
|
@@ -34,10 +36,12 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
34
36
|
cut: "cut";
|
|
35
37
|
}>>;
|
|
36
38
|
timeout: z.ZodOptional<z.ZodNumber>;
|
|
39
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
37
40
|
action: z.ZodLiteral<"type">;
|
|
38
41
|
target: z.ZodString;
|
|
39
42
|
text: z.ZodString;
|
|
40
43
|
mask: z.ZodDefault<z.ZodBoolean>;
|
|
44
|
+
clear: z.ZodDefault<z.ZodBoolean>;
|
|
41
45
|
}, z.core.$strict>, z.ZodObject<{
|
|
42
46
|
caption: z.ZodOptional<z.ZodString>;
|
|
43
47
|
narration: z.ZodOptional<z.ZodString>;
|
|
@@ -47,6 +51,7 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
47
51
|
cut: "cut";
|
|
48
52
|
}>>;
|
|
49
53
|
timeout: z.ZodOptional<z.ZodNumber>;
|
|
54
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
50
55
|
action: z.ZodLiteral<"press">;
|
|
51
56
|
keys: z.ZodString;
|
|
52
57
|
}, z.core.$strict>, z.ZodObject<{
|
|
@@ -58,6 +63,45 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
58
63
|
cut: "cut";
|
|
59
64
|
}>>;
|
|
60
65
|
timeout: z.ZodOptional<z.ZodNumber>;
|
|
66
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
67
|
+
action: z.ZodLiteral<"rightclick">;
|
|
68
|
+
target: z.ZodString;
|
|
69
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
70
|
+
caption: z.ZodOptional<z.ZodString>;
|
|
71
|
+
narration: z.ZodOptional<z.ZodString>;
|
|
72
|
+
focus: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"target">, z.ZodLiteral<"wide">, z.ZodString]>>;
|
|
73
|
+
shot: z.ZodOptional<z.ZodEnum<{
|
|
74
|
+
continue: "continue";
|
|
75
|
+
cut: "cut";
|
|
76
|
+
}>>;
|
|
77
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
78
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
79
|
+
action: z.ZodLiteral<"upload">;
|
|
80
|
+
target: z.ZodString;
|
|
81
|
+
file: z.ZodString;
|
|
82
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
83
|
+
caption: z.ZodOptional<z.ZodString>;
|
|
84
|
+
narration: z.ZodOptional<z.ZodString>;
|
|
85
|
+
focus: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"target">, z.ZodLiteral<"wide">, z.ZodString]>>;
|
|
86
|
+
shot: z.ZodOptional<z.ZodEnum<{
|
|
87
|
+
continue: "continue";
|
|
88
|
+
cut: "cut";
|
|
89
|
+
}>>;
|
|
90
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
91
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
92
|
+
action: z.ZodLiteral<"drag">;
|
|
93
|
+
target: z.ZodString;
|
|
94
|
+
to: z.ZodString;
|
|
95
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
96
|
+
caption: z.ZodOptional<z.ZodString>;
|
|
97
|
+
narration: z.ZodOptional<z.ZodString>;
|
|
98
|
+
focus: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"target">, z.ZodLiteral<"wide">, z.ZodString]>>;
|
|
99
|
+
shot: z.ZodOptional<z.ZodEnum<{
|
|
100
|
+
continue: "continue";
|
|
101
|
+
cut: "cut";
|
|
102
|
+
}>>;
|
|
103
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
104
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
61
105
|
action: z.ZodLiteral<"select">;
|
|
62
106
|
target: z.ZodString;
|
|
63
107
|
value: z.ZodString;
|
|
@@ -70,6 +114,7 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
70
114
|
cut: "cut";
|
|
71
115
|
}>>;
|
|
72
116
|
timeout: z.ZodOptional<z.ZodNumber>;
|
|
117
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
73
118
|
action: z.ZodLiteral<"scroll">;
|
|
74
119
|
target: z.ZodOptional<z.ZodString>;
|
|
75
120
|
by: z.ZodOptional<z.ZodObject<{
|
|
@@ -85,11 +130,16 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
85
130
|
cut: "cut";
|
|
86
131
|
}>>;
|
|
87
132
|
timeout: z.ZodOptional<z.ZodNumber>;
|
|
133
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
88
134
|
action: z.ZodLiteral<"expect">;
|
|
89
|
-
target: z.ZodString
|
|
135
|
+
target: z.ZodOptional<z.ZodString>;
|
|
90
136
|
visible: z.ZodOptional<z.ZodBoolean>;
|
|
91
137
|
text: z.ZodOptional<z.ZodString>;
|
|
92
138
|
count: z.ZodOptional<z.ZodNumber>;
|
|
139
|
+
url: z.ZodOptional<z.ZodString>;
|
|
140
|
+
value: z.ZodOptional<z.ZodString>;
|
|
141
|
+
disabled: z.ZodOptional<z.ZodBoolean>;
|
|
142
|
+
checked: z.ZodOptional<z.ZodBoolean>;
|
|
93
143
|
}, z.core.$strict>, z.ZodObject<{
|
|
94
144
|
caption: z.ZodOptional<z.ZodString>;
|
|
95
145
|
narration: z.ZodOptional<z.ZodString>;
|
|
@@ -99,6 +149,7 @@ export declare const stepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
99
149
|
cut: "cut";
|
|
100
150
|
}>>;
|
|
101
151
|
timeout: z.ZodOptional<z.ZodNumber>;
|
|
152
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
102
153
|
action: z.ZodLiteral<"wait">;
|
|
103
154
|
ms: z.ZodOptional<z.ZodNumber>;
|
|
104
155
|
for: z.ZodOptional<z.ZodString>;
|
|
@@ -213,6 +264,165 @@ export declare const specSchema: z.ZodObject<{
|
|
|
213
264
|
solid: "solid";
|
|
214
265
|
}>>;
|
|
215
266
|
}, z.core.$strict>>>;
|
|
267
|
+
setup: z.ZodDefault<z.ZodArray<z.ZodPipe<z.ZodPipe<z.ZodRecord<z.ZodString, z.ZodUnknown>, z.ZodTransform<unknown, Record<string, unknown>>>, z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
268
|
+
caption: z.ZodOptional<z.ZodString>;
|
|
269
|
+
narration: z.ZodOptional<z.ZodString>;
|
|
270
|
+
focus: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"target">, z.ZodLiteral<"wide">, z.ZodString]>>;
|
|
271
|
+
shot: z.ZodOptional<z.ZodEnum<{
|
|
272
|
+
continue: "continue";
|
|
273
|
+
cut: "cut";
|
|
274
|
+
}>>;
|
|
275
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
276
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
277
|
+
action: z.ZodLiteral<"goto">;
|
|
278
|
+
url: z.ZodString;
|
|
279
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
280
|
+
caption: z.ZodOptional<z.ZodString>;
|
|
281
|
+
narration: z.ZodOptional<z.ZodString>;
|
|
282
|
+
focus: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"target">, z.ZodLiteral<"wide">, z.ZodString]>>;
|
|
283
|
+
shot: z.ZodOptional<z.ZodEnum<{
|
|
284
|
+
continue: "continue";
|
|
285
|
+
cut: "cut";
|
|
286
|
+
}>>;
|
|
287
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
288
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
289
|
+
action: z.ZodEnum<{
|
|
290
|
+
click: "click";
|
|
291
|
+
dblclick: "dblclick";
|
|
292
|
+
hover: "hover";
|
|
293
|
+
}>;
|
|
294
|
+
target: z.ZodString;
|
|
295
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
296
|
+
caption: z.ZodOptional<z.ZodString>;
|
|
297
|
+
narration: z.ZodOptional<z.ZodString>;
|
|
298
|
+
focus: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"target">, z.ZodLiteral<"wide">, z.ZodString]>>;
|
|
299
|
+
shot: z.ZodOptional<z.ZodEnum<{
|
|
300
|
+
continue: "continue";
|
|
301
|
+
cut: "cut";
|
|
302
|
+
}>>;
|
|
303
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
304
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
305
|
+
action: z.ZodLiteral<"type">;
|
|
306
|
+
target: z.ZodString;
|
|
307
|
+
text: z.ZodString;
|
|
308
|
+
mask: z.ZodDefault<z.ZodBoolean>;
|
|
309
|
+
clear: z.ZodDefault<z.ZodBoolean>;
|
|
310
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
311
|
+
caption: z.ZodOptional<z.ZodString>;
|
|
312
|
+
narration: z.ZodOptional<z.ZodString>;
|
|
313
|
+
focus: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"target">, z.ZodLiteral<"wide">, z.ZodString]>>;
|
|
314
|
+
shot: z.ZodOptional<z.ZodEnum<{
|
|
315
|
+
continue: "continue";
|
|
316
|
+
cut: "cut";
|
|
317
|
+
}>>;
|
|
318
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
319
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
320
|
+
action: z.ZodLiteral<"press">;
|
|
321
|
+
keys: z.ZodString;
|
|
322
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
323
|
+
caption: z.ZodOptional<z.ZodString>;
|
|
324
|
+
narration: z.ZodOptional<z.ZodString>;
|
|
325
|
+
focus: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"target">, z.ZodLiteral<"wide">, z.ZodString]>>;
|
|
326
|
+
shot: z.ZodOptional<z.ZodEnum<{
|
|
327
|
+
continue: "continue";
|
|
328
|
+
cut: "cut";
|
|
329
|
+
}>>;
|
|
330
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
331
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
332
|
+
action: z.ZodLiteral<"rightclick">;
|
|
333
|
+
target: z.ZodString;
|
|
334
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
335
|
+
caption: z.ZodOptional<z.ZodString>;
|
|
336
|
+
narration: z.ZodOptional<z.ZodString>;
|
|
337
|
+
focus: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"target">, z.ZodLiteral<"wide">, z.ZodString]>>;
|
|
338
|
+
shot: z.ZodOptional<z.ZodEnum<{
|
|
339
|
+
continue: "continue";
|
|
340
|
+
cut: "cut";
|
|
341
|
+
}>>;
|
|
342
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
343
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
344
|
+
action: z.ZodLiteral<"upload">;
|
|
345
|
+
target: z.ZodString;
|
|
346
|
+
file: z.ZodString;
|
|
347
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
348
|
+
caption: z.ZodOptional<z.ZodString>;
|
|
349
|
+
narration: z.ZodOptional<z.ZodString>;
|
|
350
|
+
focus: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"target">, z.ZodLiteral<"wide">, z.ZodString]>>;
|
|
351
|
+
shot: z.ZodOptional<z.ZodEnum<{
|
|
352
|
+
continue: "continue";
|
|
353
|
+
cut: "cut";
|
|
354
|
+
}>>;
|
|
355
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
356
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
357
|
+
action: z.ZodLiteral<"drag">;
|
|
358
|
+
target: z.ZodString;
|
|
359
|
+
to: z.ZodString;
|
|
360
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
361
|
+
caption: z.ZodOptional<z.ZodString>;
|
|
362
|
+
narration: z.ZodOptional<z.ZodString>;
|
|
363
|
+
focus: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"target">, z.ZodLiteral<"wide">, z.ZodString]>>;
|
|
364
|
+
shot: z.ZodOptional<z.ZodEnum<{
|
|
365
|
+
continue: "continue";
|
|
366
|
+
cut: "cut";
|
|
367
|
+
}>>;
|
|
368
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
369
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
370
|
+
action: z.ZodLiteral<"select">;
|
|
371
|
+
target: z.ZodString;
|
|
372
|
+
value: z.ZodString;
|
|
373
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
374
|
+
caption: z.ZodOptional<z.ZodString>;
|
|
375
|
+
narration: z.ZodOptional<z.ZodString>;
|
|
376
|
+
focus: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"target">, z.ZodLiteral<"wide">, z.ZodString]>>;
|
|
377
|
+
shot: z.ZodOptional<z.ZodEnum<{
|
|
378
|
+
continue: "continue";
|
|
379
|
+
cut: "cut";
|
|
380
|
+
}>>;
|
|
381
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
382
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
383
|
+
action: z.ZodLiteral<"scroll">;
|
|
384
|
+
target: z.ZodOptional<z.ZodString>;
|
|
385
|
+
by: z.ZodOptional<z.ZodObject<{
|
|
386
|
+
x: z.ZodDefault<z.ZodNumber>;
|
|
387
|
+
y: z.ZodNumber;
|
|
388
|
+
}, z.core.$strict>>;
|
|
389
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
390
|
+
caption: z.ZodOptional<z.ZodString>;
|
|
391
|
+
narration: z.ZodOptional<z.ZodString>;
|
|
392
|
+
focus: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"target">, z.ZodLiteral<"wide">, z.ZodString]>>;
|
|
393
|
+
shot: z.ZodOptional<z.ZodEnum<{
|
|
394
|
+
continue: "continue";
|
|
395
|
+
cut: "cut";
|
|
396
|
+
}>>;
|
|
397
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
398
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
399
|
+
action: z.ZodLiteral<"expect">;
|
|
400
|
+
target: z.ZodOptional<z.ZodString>;
|
|
401
|
+
visible: z.ZodOptional<z.ZodBoolean>;
|
|
402
|
+
text: z.ZodOptional<z.ZodString>;
|
|
403
|
+
count: z.ZodOptional<z.ZodNumber>;
|
|
404
|
+
url: z.ZodOptional<z.ZodString>;
|
|
405
|
+
value: z.ZodOptional<z.ZodString>;
|
|
406
|
+
disabled: z.ZodOptional<z.ZodBoolean>;
|
|
407
|
+
checked: z.ZodOptional<z.ZodBoolean>;
|
|
408
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
409
|
+
caption: z.ZodOptional<z.ZodString>;
|
|
410
|
+
narration: z.ZodOptional<z.ZodString>;
|
|
411
|
+
focus: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"target">, z.ZodLiteral<"wide">, z.ZodString]>>;
|
|
412
|
+
shot: z.ZodOptional<z.ZodEnum<{
|
|
413
|
+
continue: "continue";
|
|
414
|
+
cut: "cut";
|
|
415
|
+
}>>;
|
|
416
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
417
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
418
|
+
action: z.ZodLiteral<"wait">;
|
|
419
|
+
ms: z.ZodOptional<z.ZodNumber>;
|
|
420
|
+
for: z.ZodOptional<z.ZodString>;
|
|
421
|
+
state: z.ZodDefault<z.ZodEnum<{
|
|
422
|
+
hidden: "hidden";
|
|
423
|
+
visible: "visible";
|
|
424
|
+
}>>;
|
|
425
|
+
}, z.core.$strict>], "action">>>>;
|
|
216
426
|
scenes: z.ZodArray<z.ZodObject<{
|
|
217
427
|
id: z.ZodString;
|
|
218
428
|
title: z.ZodOptional<z.ZodString>;
|
|
@@ -225,6 +435,7 @@ export declare const specSchema: z.ZodObject<{
|
|
|
225
435
|
cut: "cut";
|
|
226
436
|
}>>;
|
|
227
437
|
timeout: z.ZodOptional<z.ZodNumber>;
|
|
438
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
228
439
|
action: z.ZodLiteral<"goto">;
|
|
229
440
|
url: z.ZodString;
|
|
230
441
|
}, z.core.$strict>, z.ZodObject<{
|
|
@@ -236,6 +447,7 @@ export declare const specSchema: z.ZodObject<{
|
|
|
236
447
|
cut: "cut";
|
|
237
448
|
}>>;
|
|
238
449
|
timeout: z.ZodOptional<z.ZodNumber>;
|
|
450
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
239
451
|
action: z.ZodEnum<{
|
|
240
452
|
click: "click";
|
|
241
453
|
dblclick: "dblclick";
|
|
@@ -251,10 +463,12 @@ export declare const specSchema: z.ZodObject<{
|
|
|
251
463
|
cut: "cut";
|
|
252
464
|
}>>;
|
|
253
465
|
timeout: z.ZodOptional<z.ZodNumber>;
|
|
466
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
254
467
|
action: z.ZodLiteral<"type">;
|
|
255
468
|
target: z.ZodString;
|
|
256
469
|
text: z.ZodString;
|
|
257
470
|
mask: z.ZodDefault<z.ZodBoolean>;
|
|
471
|
+
clear: z.ZodDefault<z.ZodBoolean>;
|
|
258
472
|
}, z.core.$strict>, z.ZodObject<{
|
|
259
473
|
caption: z.ZodOptional<z.ZodString>;
|
|
260
474
|
narration: z.ZodOptional<z.ZodString>;
|
|
@@ -264,6 +478,7 @@ export declare const specSchema: z.ZodObject<{
|
|
|
264
478
|
cut: "cut";
|
|
265
479
|
}>>;
|
|
266
480
|
timeout: z.ZodOptional<z.ZodNumber>;
|
|
481
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
267
482
|
action: z.ZodLiteral<"press">;
|
|
268
483
|
keys: z.ZodString;
|
|
269
484
|
}, z.core.$strict>, z.ZodObject<{
|
|
@@ -275,6 +490,45 @@ export declare const specSchema: z.ZodObject<{
|
|
|
275
490
|
cut: "cut";
|
|
276
491
|
}>>;
|
|
277
492
|
timeout: z.ZodOptional<z.ZodNumber>;
|
|
493
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
494
|
+
action: z.ZodLiteral<"rightclick">;
|
|
495
|
+
target: z.ZodString;
|
|
496
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
497
|
+
caption: z.ZodOptional<z.ZodString>;
|
|
498
|
+
narration: z.ZodOptional<z.ZodString>;
|
|
499
|
+
focus: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"target">, z.ZodLiteral<"wide">, z.ZodString]>>;
|
|
500
|
+
shot: z.ZodOptional<z.ZodEnum<{
|
|
501
|
+
continue: "continue";
|
|
502
|
+
cut: "cut";
|
|
503
|
+
}>>;
|
|
504
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
505
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
506
|
+
action: z.ZodLiteral<"upload">;
|
|
507
|
+
target: z.ZodString;
|
|
508
|
+
file: z.ZodString;
|
|
509
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
510
|
+
caption: z.ZodOptional<z.ZodString>;
|
|
511
|
+
narration: z.ZodOptional<z.ZodString>;
|
|
512
|
+
focus: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"target">, z.ZodLiteral<"wide">, z.ZodString]>>;
|
|
513
|
+
shot: z.ZodOptional<z.ZodEnum<{
|
|
514
|
+
continue: "continue";
|
|
515
|
+
cut: "cut";
|
|
516
|
+
}>>;
|
|
517
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
518
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
519
|
+
action: z.ZodLiteral<"drag">;
|
|
520
|
+
target: z.ZodString;
|
|
521
|
+
to: z.ZodString;
|
|
522
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
523
|
+
caption: z.ZodOptional<z.ZodString>;
|
|
524
|
+
narration: z.ZodOptional<z.ZodString>;
|
|
525
|
+
focus: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"target">, z.ZodLiteral<"wide">, z.ZodString]>>;
|
|
526
|
+
shot: z.ZodOptional<z.ZodEnum<{
|
|
527
|
+
continue: "continue";
|
|
528
|
+
cut: "cut";
|
|
529
|
+
}>>;
|
|
530
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
531
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
278
532
|
action: z.ZodLiteral<"select">;
|
|
279
533
|
target: z.ZodString;
|
|
280
534
|
value: z.ZodString;
|
|
@@ -287,6 +541,7 @@ export declare const specSchema: z.ZodObject<{
|
|
|
287
541
|
cut: "cut";
|
|
288
542
|
}>>;
|
|
289
543
|
timeout: z.ZodOptional<z.ZodNumber>;
|
|
544
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
290
545
|
action: z.ZodLiteral<"scroll">;
|
|
291
546
|
target: z.ZodOptional<z.ZodString>;
|
|
292
547
|
by: z.ZodOptional<z.ZodObject<{
|
|
@@ -302,11 +557,16 @@ export declare const specSchema: z.ZodObject<{
|
|
|
302
557
|
cut: "cut";
|
|
303
558
|
}>>;
|
|
304
559
|
timeout: z.ZodOptional<z.ZodNumber>;
|
|
560
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
305
561
|
action: z.ZodLiteral<"expect">;
|
|
306
|
-
target: z.ZodString
|
|
562
|
+
target: z.ZodOptional<z.ZodString>;
|
|
307
563
|
visible: z.ZodOptional<z.ZodBoolean>;
|
|
308
564
|
text: z.ZodOptional<z.ZodString>;
|
|
309
565
|
count: z.ZodOptional<z.ZodNumber>;
|
|
566
|
+
url: z.ZodOptional<z.ZodString>;
|
|
567
|
+
value: z.ZodOptional<z.ZodString>;
|
|
568
|
+
disabled: z.ZodOptional<z.ZodBoolean>;
|
|
569
|
+
checked: z.ZodOptional<z.ZodBoolean>;
|
|
310
570
|
}, z.core.$strict>, z.ZodObject<{
|
|
311
571
|
caption: z.ZodOptional<z.ZodString>;
|
|
312
572
|
narration: z.ZodOptional<z.ZodString>;
|
|
@@ -316,6 +576,7 @@ export declare const specSchema: z.ZodObject<{
|
|
|
316
576
|
cut: "cut";
|
|
317
577
|
}>>;
|
|
318
578
|
timeout: z.ZodOptional<z.ZodNumber>;
|
|
579
|
+
optional: z.ZodOptional<z.ZodBoolean>;
|
|
319
580
|
action: z.ZodLiteral<"wait">;
|
|
320
581
|
ms: z.ZodOptional<z.ZodNumber>;
|
|
321
582
|
for: z.ZodOptional<z.ZodString>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/spec/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/spec/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA0IxB,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8BAYrB,CAAC;AAEH,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAmD9C,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAazD;AA+BD,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAsLZ,CAAC;AAEZ,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAC9C,MAAM,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;AAC3C,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC5C,MAAM,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;AAC/C,MAAM,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;AAChD,MAAM,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC;AAE9C,iGAAiG;AACjG,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,QAAQ,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAAC,UAAU,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAIhH,CAAC;AAEF,sFAAsF;AACtF,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAEpE;AAED,gFAAgF;AAChF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAEtE;AAED,mGAAmG;AACnG,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,uEAAuE;IACvE,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,IAAI,CAAC;CACZ;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,aAAa,EAAE,CAUxD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checks.d.ts","sourceRoot":"","sources":["../../src/verify/checks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAiB,MAAM,YAAY,CAAC;AAmC5E,+DAA+D;AAC/D,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CA4DjF;AAED,gEAAgE;AAChE,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"checks.d.ts","sourceRoot":"","sources":["../../src/verify/checks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAiB,MAAM,YAAY,CAAC;AAmC5E,+DAA+D;AAC/D,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CA4DjF;AAED,gEAAgE;AAChE,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAyElF;AAED,qEAAqE;AACrE,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CA2FhF;AAED,+EAA+E;AAC/E,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAgG/E;AAED,oFAAoF;AACpF,wBAAsB,aAAa,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAuD5E;AAED,6EAA6E;AAC7E,wBAAsB,WAAW,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAc1E;AAED,4DAA4D;AAC5D,6GAA6G;AAC7G,wBAAsB,UAAU,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CA+FzE;AAED,wBAAsB,WAAW,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAsB1E;AAED,2FAA2F;AAC3F,wBAAsB,UAAU,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAsFzE;AAkBD;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CAwDhF"}
|
package/dist/verify/report.d.ts
CHANGED
|
@@ -1,12 +1,39 @@
|
|
|
1
|
-
import type { Verdict } from './types.js';
|
|
1
|
+
import type { Verdict, VerdictSignature } from './types.js';
|
|
2
2
|
/**
|
|
3
|
-
* The canonical signable payload
|
|
4
|
-
*
|
|
5
|
-
*
|
|
3
|
+
* The canonical signable payload. Round-2 audit: the v1 payload signed only {id, status} per
|
|
4
|
+
* check — evidence text, the contact sheet, the compose manifest, and the failure reason were
|
|
5
|
+
* all rewritable after signing. v2 covers everything a consumer relies on. Paths are excluded —
|
|
6
|
+
* moving files doesn't change what was proven.
|
|
6
7
|
*/
|
|
7
8
|
export declare function signablePayload(v: Omit<Verdict, 'signature'>): string;
|
|
8
|
-
/**
|
|
9
|
-
|
|
9
|
+
/**
|
|
10
|
+
* Sign a verdict. Two schemes, resolved from the environment:
|
|
11
|
+
* - PLAYHEAD_SIGNING_KEY_FILE → Ed25519 (asymmetric): consumers verify against the public key
|
|
12
|
+
* and PIN the key id — the producer cannot be impersonated by anyone who can merely verify.
|
|
13
|
+
* Generate a key with `playhead keygen`.
|
|
14
|
+
* - PLAYHEAD_SIGNING_KEY → HMAC-SHA256 (symmetric, zero-config): tamper-evidence only; anyone
|
|
15
|
+
* holding the key can also mint verdicts. Fine within one trust domain.
|
|
16
|
+
* Ed25519 wins when both are set. Returns null when neither is configured.
|
|
17
|
+
*/
|
|
18
|
+
export declare function signVerdict(v: Omit<Verdict, 'signature'>, env?: {
|
|
19
|
+
hmacKey?: string;
|
|
20
|
+
keyFile?: string;
|
|
21
|
+
}): VerdictSignature | null;
|
|
22
|
+
/** Verify a verdict's signature. For Ed25519 the embedded public key is used — this proves the
|
|
23
|
+
* verdict is INTACT and was signed by the holder of keyId's private key; whether that key is
|
|
24
|
+
* trusted is the consumer's pinning decision. For HS256 the shared key must be provided. */
|
|
25
|
+
export declare function verifySignature(v: Verdict, opts?: {
|
|
26
|
+
hmacKey?: string;
|
|
27
|
+
}): {
|
|
28
|
+
valid: boolean;
|
|
29
|
+
reason: string;
|
|
30
|
+
};
|
|
31
|
+
export declare function keyIdFor(material: Buffer): string;
|
|
10
32
|
/** JUnit XML: one testsuite per verdict, one testcase per check — the shape every CI ingests. */
|
|
11
33
|
export declare function toJUnit(v: Verdict, suiteName?: string): string;
|
|
34
|
+
/** JUnit for a FLOW failure (the app broke; no verdict exists) — CI still gets a report. */
|
|
35
|
+
export declare function flowFailureJUnit(failure: {
|
|
36
|
+
stepRef: string;
|
|
37
|
+
message: string;
|
|
38
|
+
}, suiteName?: string): string;
|
|
12
39
|
//# sourceMappingURL=report.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../src/verify/report.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../src/verify/report.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE5D;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,MAAM,CA4BrE;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CACzB,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,EAC7B,GAAG,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAGxC,GACA,gBAAgB,GAAG,IAAI,CAqBzB;AAED;;6FAE6F;AAC7F,wBAAgB,eAAe,CAC7B,CAAC,EAAE,OAAO,EACV,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAO,GAC9B;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAwBpC;AAOD,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED,iGAAiG;AACjG,wBAAgB,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,SAAS,SAAa,GAAG,MAAM,CAqBlE;AAED,4FAA4F;AAC5F,wBAAgB,gBAAgB,CAAC,OAAO,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAAE,SAAS,SAAa,GAAG,MAAM,CAQ9G"}
|
package/dist/verify/runner.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import type { BundleData } from '../bundle/types.js';
|
|
|
2
2
|
import type { ComposeManifest } from '../compose/types.js';
|
|
3
3
|
import type { Verdict } from './types.js';
|
|
4
4
|
/** Bumped whenever a check is added or its semantics change — part of provenance. */
|
|
5
|
-
export declare const CHECK_SUITE_VERSION = "playhead/checks@
|
|
5
|
+
export declare const CHECK_SUITE_VERSION = "playhead/checks@3";
|
|
6
6
|
export interface VerifyOptions {
|
|
7
7
|
outDir: string;
|
|
8
8
|
vision?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/verify/runner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAe,OAAO,EAAiB,MAAM,YAAY,CAAC;AAsBtE,qFAAqF;AACrF,eAAO,MAAM,mBAAmB,sBAAsB,CAAC;AAEvD,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAsB,MAAM,CAC1B,MAAM,EAAE,UAAU,EAClB,QAAQ,EAAE,eAAe,EACzB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,aAAa,GAClB,OAAO,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/verify/runner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAe,OAAO,EAAiB,MAAM,YAAY,CAAC;AAsBtE,qFAAqF;AACrF,eAAO,MAAM,mBAAmB,sBAAsB,CAAC;AAEvD,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,wBAAsB,MAAM,CAC1B,MAAM,EAAE,UAAU,EAClB,QAAQ,EAAE,eAAe,EACzB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,aAAa,GAClB,OAAO,CAAC,OAAO,CAAC,CAuFlB;AAED,mFAAmF;AACnF,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAMhF"}
|
package/dist/verify/types.d.ts
CHANGED
|
@@ -11,6 +11,13 @@ export interface CheckResult {
|
|
|
11
11
|
status: CheckStatus;
|
|
12
12
|
details: string;
|
|
13
13
|
evidence?: CheckEvidence[];
|
|
14
|
+
/** For pixel-grounded checks: how many items were actually verified against pixels vs the
|
|
15
|
+
* total in scope — feeds the verdict's coverage metric so "all skipped" can never read
|
|
16
|
+
* identically to "fully verified". */
|
|
17
|
+
coverage?: {
|
|
18
|
+
verified: number;
|
|
19
|
+
total: number;
|
|
20
|
+
};
|
|
14
21
|
}
|
|
15
22
|
export interface VerifyContext {
|
|
16
23
|
bundle: BundleData;
|
|
@@ -35,8 +42,19 @@ export interface VerdictProvenance {
|
|
|
35
42
|
message: string;
|
|
36
43
|
};
|
|
37
44
|
}
|
|
45
|
+
/** How the verdict is signed. Ed25519 (asymmetric, `playhead keygen` + PLAYHEAD_SIGNING_KEY_FILE)
|
|
46
|
+
* lets consumers pin a key id; HS256 (PLAYHEAD_SIGNING_KEY) is zero-config tamper-evidence
|
|
47
|
+
* within one trust domain. */
|
|
48
|
+
export interface VerdictSignature {
|
|
49
|
+
alg: 'Ed25519' | 'HS256';
|
|
50
|
+
/** sha256 of the key material, first 16 hex — what consumers pin. */
|
|
51
|
+
keyId: string;
|
|
52
|
+
/** Ed25519 only: SPKI DER, base64 — the verdict is self-verifiable; trust is the pin. */
|
|
53
|
+
publicKey?: string;
|
|
54
|
+
value: string;
|
|
55
|
+
}
|
|
38
56
|
export interface Verdict {
|
|
39
|
-
schema: 'playhead/verdict@
|
|
57
|
+
schema: 'playhead/verdict@3';
|
|
40
58
|
verdict: 'publishable' | 'not-publishable';
|
|
41
59
|
video: {
|
|
42
60
|
path: string;
|
|
@@ -46,6 +64,21 @@ export interface Verdict {
|
|
|
46
64
|
events: string;
|
|
47
65
|
framesIndex: string;
|
|
48
66
|
};
|
|
67
|
+
/** sha256 of the compose manifest the checks consulted — the plan is part of the evidence. */
|
|
68
|
+
manifestHash: string;
|
|
69
|
+
/** sha256 of the contact-sheet PNG bytes. */
|
|
70
|
+
contactSheetSha256: string;
|
|
71
|
+
/** What was actually pixel-verified vs merely planned — a verdict with zero coverage is
|
|
72
|
+
* visibly weaker than a fully verified one, even when both say "publishable". */
|
|
73
|
+
coverage: {
|
|
74
|
+
/** Effectful actions whose on-screen effect passed pixel verification. */
|
|
75
|
+
actionsVerified: number;
|
|
76
|
+
actionsTotal: number;
|
|
77
|
+
/** Output-frame regions that matched their planned source regions. */
|
|
78
|
+
outputSamplesVerified: number;
|
|
79
|
+
checksSkipped: number;
|
|
80
|
+
checksWarned: number;
|
|
81
|
+
};
|
|
49
82
|
provenance: VerdictProvenance;
|
|
50
83
|
checks: CheckResult[];
|
|
51
84
|
contactSheet: string;
|
|
@@ -56,8 +89,7 @@ export interface Verdict {
|
|
|
56
89
|
note: string;
|
|
57
90
|
}[];
|
|
58
91
|
} | null;
|
|
59
|
-
/**
|
|
60
|
-
|
|
61
|
-
signature: string | null;
|
|
92
|
+
/** Null when no signing key is configured — unsigned is explicit, never implied. */
|
|
93
|
+
signature: VerdictSignature | null;
|
|
62
94
|
}
|
|
63
95
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/verify/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3D,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAE5D,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/verify/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3D,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAE5D,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,WAAW,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;IAC3B;;2CAEuC;IACvC,QAAQ,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAChD;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,eAAe,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,yFAAyF;AACzF,MAAM,WAAW,iBAAiB;IAChC,eAAe,EAAE,MAAM,CAAC;IACxB,sDAAsD;IACtD,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,yFAAyF;IACzF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAChD;AAED;;+BAE+B;AAC/B,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC;IACzB,qEAAqE;IACrE,KAAK,EAAE,MAAM,CAAC;IACd,yFAAyF;IACzF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,oBAAoB,CAAC;IAC7B,OAAO,EAAE,aAAa,GAAG,iBAAiB,CAAC;IAC3C,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACxC,YAAY,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IACtD,8FAA8F;IAC9F,YAAY,EAAE,MAAM,CAAC;IACrB,6CAA6C;IAC7C,kBAAkB,EAAE,MAAM,CAAC;IAC3B;sFACkF;IAClF,QAAQ,EAAE;QACR,0EAA0E;QAC1E,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;QACrB,sEAAsE;QACtE,qBAAqB,EAAE,MAAM,CAAC;QAC9B,aAAa,EAAE,MAAM,CAAC;QACtB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,UAAU,EAAE,iBAAiB,CAAC;IAC9B,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,EAAE,CAAA;KAAE,GAAG,IAAI,CAAC;IACjF,oFAAoF;IACpF,SAAS,EAAE,gBAAgB,GAAG,IAAI,CAAC;CACpC"}
|