@ue-shed/protocol 0.1.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +35 -0
  3. package/contracts/asset-audits/v1/texture-preview.schema.json +74 -0
  4. package/contracts/authoring/README.md +25 -0
  5. package/contracts/authoring/v1/apply-request.schema.json +568 -0
  6. package/contracts/authoring/v1/apply-result.schema.json +1165 -0
  7. package/contracts/authoring/v1/save-request.schema.json +53 -0
  8. package/contracts/authoring/v1/save-result.schema.json +77 -0
  9. package/contracts/authoring/v1/table-list.schema.json +48 -0
  10. package/contracts/authoring/v1/table-snapshot.schema.json +497 -0
  11. package/contracts/authoring/v2/table-snapshot.schema.json +950 -0
  12. package/contracts/cameras/review/v1/README.md +39 -0
  13. package/contracts/cameras/review/v1/capture-request.schema.json +92 -0
  14. package/contracts/cameras/review/v1/capture-response.schema.json +158 -0
  15. package/contracts/cameras/review/v1/fixtures/capture-failure.json +13 -0
  16. package/contracts/cameras/review/v1/fixtures/capture-legacy.json +17 -0
  17. package/contracts/cameras/review/v1/fixtures/capture-projected.json +33 -0
  18. package/contracts/cameras/review/v1/fixtures/capture-request-valid.json +21 -0
  19. package/contracts/cameras/review/v1/fixtures/capture-unprojectable.json +22 -0
  20. package/contracts/cameras/review/v1/fixtures/invalid-capture-request-bad-fov.json +21 -0
  21. package/contracts/cameras/review/v1/fixtures/invalid-capture-response-projected-without-margins.json +27 -0
  22. package/contracts/cameras/review/v1/fixtures/invalid-selection-unknown-code.json +11 -0
  23. package/contracts/cameras/review/v1/fixtures/selection-selected.json +15 -0
  24. package/contracts/cameras/review/v1/fixtures/selection-subject-not-found.json +11 -0
  25. package/contracts/cameras/review/v1/selection-response.schema.json +103 -0
  26. package/contracts/cameras/v1/README.md +33 -0
  27. package/contracts/editor-session/v1/README.md +11 -0
  28. package/contracts/editor-session/v1/command-response.schema.json +44 -0
  29. package/contracts/editor-session/v1/fixtures/command-accepted.json +6 -0
  30. package/contracts/editor-session/v1/fixtures/command-already-satisfied.json +6 -0
  31. package/contracts/editor-session/v1/fixtures/command-rejected.json +9 -0
  32. package/contracts/editor-session/v1/fixtures/state-paused.json +4 -0
  33. package/contracts/editor-session/v1/fixtures/state-running.json +4 -0
  34. package/contracts/editor-session/v1/fixtures/state-starting.json +4 -0
  35. package/contracts/editor-session/v1/fixtures/state-stopped.json +4 -0
  36. package/contracts/editor-session/v1/fixtures/state-stopping.json +4 -0
  37. package/contracts/editor-session/v1/state-response.schema.json +64 -0
  38. package/contracts/observatory/v1/README.md +78 -0
  39. package/contracts/observatory/v1/fixtures/bad-magic-then-valid.bin +0 -0
  40. package/contracts/observatory/v1/fixtures/fragmented-concat.bin +0 -0
  41. package/contracts/observatory/v1/fixtures/heartbeat.bin +0 -0
  42. package/contracts/observatory/v1/fixtures/mismatched-payload-length.bin +0 -0
  43. package/contracts/observatory/v1/fixtures/oversized-record-count.bin +0 -0
  44. package/contracts/observatory/v1/fixtures/reset.bin +0 -0
  45. package/contracts/observatory/v1/fixtures/truncated.bin +0 -0
  46. package/contracts/observatory/v1/fixtures/two-records.bin +0 -0
  47. package/contracts/observatory/v1/fixtures/unsupported-version.bin +0 -0
  48. package/dist/authoring-review.d.ts +679 -0
  49. package/dist/authoring-review.d.ts.map +1 -0
  50. package/dist/authoring-review.js +90 -0
  51. package/dist/authoring-review.js.map +1 -0
  52. package/dist/authoring.d.ts +889 -0
  53. package/dist/authoring.d.ts.map +1 -0
  54. package/dist/authoring.js +350 -0
  55. package/dist/authoring.js.map +1 -0
  56. package/dist/cameras.d.ts +184 -0
  57. package/dist/cameras.d.ts.map +1 -0
  58. package/dist/cameras.js +72 -0
  59. package/dist/cameras.js.map +1 -0
  60. package/dist/companion.d.ts +33 -0
  61. package/dist/companion.d.ts.map +1 -0
  62. package/dist/companion.js +18 -0
  63. package/dist/companion.js.map +1 -0
  64. package/dist/editor-play-session.d.ts +278 -0
  65. package/dist/editor-play-session.d.ts.map +1 -0
  66. package/dist/editor-play-session.js +56 -0
  67. package/dist/editor-play-session.js.map +1 -0
  68. package/dist/index.d.ts +146 -0
  69. package/dist/index.d.ts.map +1 -0
  70. package/dist/index.js +106 -0
  71. package/dist/index.js.map +1 -0
  72. package/package.json +45 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authoring.d.ts","sourceRoot":"","sources":["../src/authoring.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,350 @@
1
+ import { Schema } from "effect";
2
+ export const AUTHORING_SNAPSHOT_CONTRACT_VERSION = { major: 2, minor: 1 };
3
+ export const AUTHORING_MUTATION_CONTRACT_VERSION = { major: 1, minor: 1 };
4
+ export const AUTHORING_TABLE_LIST_CONTRACT_VERSION = { major: 1, minor: 0 };
5
+ const NonNegativeInt = Schema.Int.check(Schema.isGreaterThanOrEqualTo(0)).annotate({
6
+ identifier: "NonNegativeInt"
7
+ });
8
+ const FloatValue = Schema.Union([Schema.Finite, Schema.Literals(["nan", "infinity", "-infinity"])]);
9
+ export const AuthoringValue = Schema.suspend(() => AuthoringValueUnion).annotate({ identifier: "AuthoringValue" });
10
+ export const AuthoringFieldValue = Schema.Struct({
11
+ name: Schema.String,
12
+ typeName: Schema.String,
13
+ value: AuthoringValue
14
+ }).annotate({ identifier: "AuthoringFieldValue" });
15
+ const textValueSchemas = [
16
+ Schema.Struct({ kind: Schema.Literal("name"), value: Schema.String }),
17
+ Schema.Struct({ kind: Schema.Literal("enum"), value: Schema.String }),
18
+ Schema.Struct({ kind: Schema.Literal("string"), value: Schema.String }),
19
+ Schema.Struct({ kind: Schema.Literal("text"), value: Schema.String }),
20
+ Schema.Struct({ kind: Schema.Literal("guid"), value: Schema.String }),
21
+ Schema.Struct({ kind: Schema.Literal("soft_object_path"), value: Schema.String })
22
+ ];
23
+ const AuthoringValueUnion = Schema.Union([
24
+ Schema.Struct({ kind: Schema.Literal("bool"), value: Schema.Boolean }),
25
+ Schema.Struct({ kind: Schema.Literal("int"), value: Schema.String }),
26
+ Schema.Struct({ kind: Schema.Literal("uint"), value: Schema.String }),
27
+ Schema.Struct({ kind: Schema.Literal("float"), value: FloatValue }),
28
+ Schema.Struct({ kind: Schema.Literal("double"), value: FloatValue }),
29
+ ...textValueSchemas,
30
+ Schema.Struct({ kind: Schema.Literal("object_ref"), value: Schema.NullOr(Schema.String) }),
31
+ Schema.Struct({
32
+ kind: Schema.Literal("row_reference"),
33
+ rowName: Schema.String,
34
+ tableObjectPath: Schema.NullOr(Schema.String)
35
+ }),
36
+ Schema.Struct({
37
+ kind: Schema.Literal("vector"),
38
+ x: Schema.Finite,
39
+ y: Schema.Finite,
40
+ z: Schema.Finite
41
+ }),
42
+ Schema.Struct({ kind: Schema.Literal("array"), values: Schema.Array(AuthoringValue) }),
43
+ Schema.Struct({ kind: Schema.Literal("set"), values: Schema.Array(AuthoringValue) }),
44
+ Schema.Struct({
45
+ kind: Schema.Literal("map"),
46
+ entries: Schema.Array(Schema.Struct({ key: AuthoringValue, value: AuthoringValue }))
47
+ }),
48
+ Schema.Struct({ kind: Schema.Literal("struct"), fields: Schema.Array(AuthoringFieldValue) }),
49
+ Schema.Struct({
50
+ byteSize: NonNegativeInt,
51
+ kind: Schema.Literal("unsupported"),
52
+ reason: Schema.String
53
+ })
54
+ ]);
55
+ const _authoringValueConforms = true;
56
+ const _authoringFieldValueConforms = true;
57
+ void _authoringValueConforms;
58
+ void _authoringFieldValueConforms;
59
+ export const AuthoringRow = Schema.Struct({
60
+ id: Schema.String,
61
+ name: Schema.String,
62
+ fields: Schema.Array(AuthoringFieldValue)
63
+ });
64
+ export const AuthoringTableList = Schema.Struct({
65
+ contract: Schema.Struct({
66
+ name: Schema.Literal("unreal-authoring-table-list"),
67
+ version: Schema.Struct({
68
+ major: Schema.Literal(1),
69
+ minor: NonNegativeInt
70
+ })
71
+ }),
72
+ objectPaths: Schema.Array(Schema.String)
73
+ }).annotate({ identifier: "AuthoringTableList" });
74
+ const AuthoringAuthority = Schema.Union([
75
+ Schema.Struct({ kind: Schema.Literal("project_files"), packageName: Schema.String }),
76
+ Schema.Struct({
77
+ kind: Schema.Literal("live_editor"),
78
+ producerId: Schema.String,
79
+ sessionId: Schema.String
80
+ })
81
+ ]);
82
+ const AuthoringDiagnostic = Schema.Struct({
83
+ code: Schema.String,
84
+ message: Schema.String,
85
+ path: Schema.optionalKey(Schema.String)
86
+ });
87
+ const AuthoringTable = Schema.Struct({
88
+ kind: Schema.Literals(["data_table", "composite_data_table"]),
89
+ objectPath: Schema.String,
90
+ rowStruct: Schema.String,
91
+ parentTables: Schema.Array(Schema.String),
92
+ rows: Schema.Array(AuthoringRow)
93
+ });
94
+ export const AuthoringTableSnapshotV1 = Schema.Struct({
95
+ contract: Schema.Struct({
96
+ name: Schema.Literal("unreal-authoring"),
97
+ version: Schema.Struct({
98
+ major: Schema.Literal(1),
99
+ minor: NonNegativeInt
100
+ })
101
+ }),
102
+ authority: AuthoringAuthority,
103
+ completeness: Schema.Literals(["complete", "partial"]),
104
+ table: AuthoringTable,
105
+ diagnostics: Schema.Array(AuthoringDiagnostic)
106
+ }).annotate({ identifier: "AuthoringTableSnapshotV1" });
107
+ export const AuthoringTypeDescriptor = Schema.suspend(() => AuthoringTypeDescriptorUnion).annotate({ identifier: "AuthoringTypeDescriptor" });
108
+ export const AuthoringFieldDescriptor = Schema.Struct({
109
+ annotations: Schema.Struct({
110
+ clampMax: Schema.optionalKey(Schema.String),
111
+ clampMin: Schema.optionalKey(Schema.String),
112
+ deprecated: Schema.Boolean,
113
+ description: Schema.optionalKey(Schema.String),
114
+ displayName: Schema.optionalKey(Schema.String),
115
+ readOnly: Schema.Boolean,
116
+ rowReference: Schema.optionalKey(Schema.Union([
117
+ Schema.Struct({ status: Schema.Literal("known"), tableObjectPath: Schema.String }),
118
+ Schema.Struct({ status: Schema.Literal("unknown") })
119
+ ])),
120
+ step: Schema.optionalKey(Schema.String),
121
+ unit: Schema.optionalKey(Schema.String)
122
+ }),
123
+ defaultValue: Schema.Union([
124
+ Schema.Struct({ status: Schema.Literal("known"), value: AuthoringValue }),
125
+ Schema.Struct({ status: Schema.Literal("unknown") })
126
+ ]),
127
+ editability: Schema.Union([
128
+ Schema.Struct({ kind: Schema.Literal("editable") }),
129
+ Schema.Struct({ kind: Schema.Literal("read_only"), reason: Schema.String })
130
+ ]),
131
+ id: Schema.String,
132
+ name: Schema.String,
133
+ presence: Schema.Literals(["required", "optional", "unknown"]),
134
+ type: AuthoringTypeDescriptor,
135
+ typeName: Schema.String
136
+ }).annotate({ identifier: "AuthoringFieldDescriptor" });
137
+ const AuthoringTypeDescriptorUnion = Schema.Union([
138
+ Schema.Struct({
139
+ kind: Schema.Literal("scalar"),
140
+ valueKind: Schema.Literals([
141
+ "bool",
142
+ "int",
143
+ "uint",
144
+ "float",
145
+ "double",
146
+ "name",
147
+ "string",
148
+ "text",
149
+ "guid"
150
+ ])
151
+ }),
152
+ Schema.Struct({
153
+ enumPath: Schema.optionalKey(Schema.String),
154
+ kind: Schema.Literal("enum"),
155
+ options: Schema.Array(Schema.Struct({ displayName: Schema.optionalKey(Schema.String), name: Schema.String }))
156
+ }),
157
+ Schema.Struct({
158
+ kind: Schema.Literal("reference"),
159
+ target: Schema.Union([
160
+ Schema.Struct({ classPath: Schema.String, status: Schema.Literal("known") }),
161
+ Schema.Struct({ status: Schema.Literal("unknown") })
162
+ ]),
163
+ valueKind: Schema.Literals(["object_ref", "soft_object_path"])
164
+ }),
165
+ Schema.Struct({ kind: Schema.Literal("row_reference") }),
166
+ Schema.Struct({ kind: Schema.Literal("vector") }),
167
+ Schema.Struct({
168
+ element: AuthoringTypeDescriptor,
169
+ kind: Schema.Literals(["array", "set"])
170
+ }),
171
+ Schema.Struct({
172
+ key: AuthoringTypeDescriptor,
173
+ kind: Schema.Literal("map"),
174
+ value: AuthoringTypeDescriptor
175
+ }),
176
+ Schema.Struct({
177
+ fields: Schema.Array(AuthoringFieldDescriptor),
178
+ kind: Schema.Literal("struct"),
179
+ structPath: Schema.optionalKey(Schema.String)
180
+ }),
181
+ Schema.Struct({
182
+ kind: Schema.Literal("unsupported"),
183
+ reason: Schema.String,
184
+ typeName: Schema.String
185
+ })
186
+ ]);
187
+ const _authoringTypeDescriptorConforms = true;
188
+ const _authoringFieldDescriptorConforms = true;
189
+ void _authoringTypeDescriptorConforms;
190
+ void _authoringFieldDescriptorConforms;
191
+ export const AuthoringTableSnapshotV2 = Schema.Struct({
192
+ contract: Schema.Struct({
193
+ name: Schema.Literal("unreal-authoring"),
194
+ version: Schema.Struct({
195
+ major: Schema.Literal(2),
196
+ minor: NonNegativeInt
197
+ })
198
+ }),
199
+ authority: AuthoringAuthority,
200
+ completeness: Schema.Literals(["complete", "partial"]),
201
+ diagnostics: Schema.Array(AuthoringDiagnostic),
202
+ fingerprint: Schema.Union([
203
+ Schema.Struct({
204
+ algorithm: Schema.Literal("sha256"),
205
+ status: Schema.Literal("available"),
206
+ value: Schema.String,
207
+ version: NonNegativeInt
208
+ }),
209
+ Schema.Struct({ reason: Schema.String, status: Schema.Literal("unavailable") })
210
+ ]),
211
+ producer: Schema.Struct({ name: Schema.String, version: Schema.String }),
212
+ table: Schema.Struct({
213
+ ...AuthoringTable.fields,
214
+ packageName: Schema.String,
215
+ schema: Schema.Union([
216
+ Schema.Struct({
217
+ fields: Schema.Array(AuthoringFieldDescriptor),
218
+ source: Schema.Literals(["saved_package", "live_reflection"]),
219
+ status: Schema.Literal("available")
220
+ }),
221
+ Schema.Struct({ reason: Schema.String, status: Schema.Literal("unavailable") })
222
+ ])
223
+ })
224
+ }).annotate({ identifier: "AuthoringTableSnapshotV2" });
225
+ export const AuthoringTableSnapshot = Schema.Union([
226
+ AuthoringTableSnapshotV1,
227
+ AuthoringTableSnapshotV2
228
+ ]).annotate({ identifier: "AuthoringTableSnapshot" });
229
+ export function classifyAuthoringSnapshot(snapshot) {
230
+ if ("producer" in snapshot)
231
+ return { snapshot, status: "current" };
232
+ return {
233
+ recovery: "Refresh this table from a producer that supports authoring snapshot v2.",
234
+ snapshot,
235
+ status: "legacy_read_only"
236
+ };
237
+ }
238
+ export const decodeAuthoringTableSnapshot = Schema.decodeUnknownEffect(AuthoringTableSnapshot);
239
+ export const decodeAuthoringTableList = Schema.decodeUnknownEffect(AuthoringTableList);
240
+ export const decodeAuthoringValue = Schema.decodeUnknownEffect(AuthoringValue);
241
+ export const AuthoringCommand = Schema.Union([
242
+ Schema.Struct({
243
+ fieldName: Schema.String,
244
+ kind: Schema.Literal("set_cell"),
245
+ newValue: AuthoringValue,
246
+ oldValue: AuthoringValue,
247
+ rowId: Schema.String
248
+ }),
249
+ Schema.Struct({
250
+ atIndex: NonNegativeInt,
251
+ kind: Schema.Literal("add_row"),
252
+ row: AuthoringRow
253
+ }),
254
+ Schema.Struct({
255
+ atIndex: NonNegativeInt,
256
+ kind: Schema.Literal("remove_row"),
257
+ row: AuthoringRow
258
+ }),
259
+ Schema.Struct({
260
+ kind: Schema.Literal("rename_row"),
261
+ newName: Schema.String,
262
+ oldName: Schema.String,
263
+ rowId: Schema.String
264
+ }),
265
+ Schema.Struct({
266
+ kind: Schema.Literal("reorder_rows"),
267
+ newOrder: Schema.Array(Schema.String),
268
+ oldOrder: Schema.Array(Schema.String)
269
+ })
270
+ ]).annotate({ identifier: "AuthoringCommand" });
271
+ const ApplyContract = Schema.Struct({
272
+ name: Schema.Literal("unreal-authoring-apply"),
273
+ version: Schema.Struct({
274
+ major: Schema.Literal(1),
275
+ minor: NonNegativeInt
276
+ })
277
+ });
278
+ export const AuthoringApplyRequest = Schema.Struct({
279
+ contract: ApplyContract,
280
+ operationId: Schema.String,
281
+ tables: Schema.Array(Schema.Struct({
282
+ expectedFingerprint: Schema.String,
283
+ objectPath: Schema.String
284
+ })),
285
+ commands: Schema.Array(Schema.Struct({
286
+ body: AuthoringCommand,
287
+ id: Schema.String,
288
+ tableObjectPath: Schema.String
289
+ }))
290
+ }).annotate({ identifier: "AuthoringApplyRequest" });
291
+ export const AuthoringOperationError = Schema.Struct({
292
+ code: Schema.String,
293
+ commandId: Schema.optionalKey(Schema.String),
294
+ message: Schema.String,
295
+ objectPath: Schema.optionalKey(Schema.String),
296
+ retrySafe: Schema.Boolean
297
+ });
298
+ export const AuthoringApplyResult = Schema.Struct({
299
+ contract: ApplyContract,
300
+ errors: Schema.Array(AuthoringOperationError),
301
+ operationId: Schema.String,
302
+ snapshots: Schema.Array(AuthoringTableSnapshot),
303
+ status: Schema.Literals(["committed", "rolled_back", "rejected"])
304
+ }).annotate({ identifier: "AuthoringApplyResult" });
305
+ const SaveContract = Schema.Struct({
306
+ name: Schema.Literal("unreal-authoring-save"),
307
+ version: Schema.Struct({
308
+ major: Schema.Literal(1),
309
+ minor: NonNegativeInt
310
+ })
311
+ });
312
+ export const AuthoringSaveRequest = Schema.Struct({
313
+ contract: SaveContract,
314
+ objectPaths: Schema.Array(Schema.String),
315
+ requestId: Schema.String
316
+ }).annotate({ identifier: "AuthoringSaveRequest" });
317
+ export const AuthoringSaveResult = Schema.Struct({
318
+ contract: SaveContract,
319
+ packages: Schema.Array(Schema.Struct({
320
+ message: Schema.optionalKey(Schema.String),
321
+ objectPath: Schema.String,
322
+ packageName: Schema.String,
323
+ retrySafe: Schema.Boolean,
324
+ status: Schema.Literals(["saved", "failed"])
325
+ })),
326
+ requestId: Schema.String,
327
+ status: Schema.Literals(["complete", "partial", "failed"])
328
+ }).annotate({ identifier: "AuthoringSaveResult" });
329
+ export const decodeAuthoringApplyRequest = Schema.decodeUnknownEffect(AuthoringApplyRequest);
330
+ export const decodeAuthoringApplyResult = Schema.decodeUnknownEffect(AuthoringApplyResult);
331
+ export const decodeAuthoringSaveRequest = Schema.decodeUnknownEffect(AuthoringSaveRequest);
332
+ export const decodeAuthoringSaveResult = Schema.decodeUnknownEffect(AuthoringSaveResult);
333
+ export function makeAuthoringJsonSchema(contract) {
334
+ const document = Schema.toJsonSchemaDocument(contract);
335
+ const definitions = { ...document.definitions };
336
+ if ("NonNegativeInt" in definitions) {
337
+ definitions.NonNegativeInt = {
338
+ type: "integer",
339
+ description: "an integer",
340
+ title: "int",
341
+ minimum: 0
342
+ };
343
+ }
344
+ return {
345
+ $schema: "https://json-schema.org/draft/2020-12/schema",
346
+ $defs: definitions,
347
+ ...document.schema
348
+ };
349
+ }
350
+ //# sourceMappingURL=authoring.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authoring.js","sourceRoot":"","sources":["../src/authoring.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,184 @@
1
+ import { Schema } from "effect";
2
+ export declare const CameraId: Schema.brand<Schema.String, "CameraId">;
3
+ export type CameraId = Schema.Schema.Type<typeof CameraId>;
4
+ export declare const CameraScheduleConfig: Schema.Struct<{
5
+ readonly activeCameraCount: Schema.Int;
6
+ readonly backgroundFps: Schema.Number;
7
+ readonly captureBudgetPerTick: Schema.Int;
8
+ readonly focusedCameraIndex: Schema.NullOr<Schema.Int>;
9
+ readonly focusedFps: Schema.Number;
10
+ readonly paused: Schema.Boolean;
11
+ readonly pipelineMode: Schema.Literals<readonly ["full_pipeline", "render_only", "schedule_only"]>;
12
+ readonly renderProfile: Schema.Literals<readonly ["full_fidelity", "observation"]>;
13
+ readonly resolution: Schema.Literals<readonly ["160x90", "320x180", "640x360", "960x540", "1280x720", "1920x1080", "2560x1440"]>;
14
+ readonly viewMode: Schema.Literals<readonly ["overview", "actor_pov", "posed"]>;
15
+ }>;
16
+ export type CameraScheduleConfig = Schema.Schema.Type<typeof CameraScheduleConfig>;
17
+ export declare const CameraStreamStats: Schema.Struct<{
18
+ readonly bytesSent: Schema.Number;
19
+ readonly captureBatchesSubmitted: Schema.Number;
20
+ readonly cadenceIntervalsSkipped: Schema.Number;
21
+ readonly camerasDue: Schema.Number;
22
+ readonly capturesRequested: Schema.Number;
23
+ readonly experimentBytesSent: Schema.Number;
24
+ readonly experimentCadenceIntervalsSkipped: Schema.Number;
25
+ readonly experimentElapsedMs: Schema.Number;
26
+ readonly experimentFramesDelivered: Schema.Number;
27
+ readonly experimentReadbackDrops: Schema.Number;
28
+ readonly experimentReadbackResourcesCreated: Schema.Number;
29
+ readonly experimentReadbacksEnqueued: Schema.Number;
30
+ readonly experimentRenderedCaptures: Schema.Number;
31
+ readonly experimentRevision: Schema.Number;
32
+ readonly experimentSchedulerTicks: Schema.Number;
33
+ readonly experimentScheduledCaptures: Schema.Number;
34
+ readonly experimentTransportReplacements: Schema.Number;
35
+ readonly framesDelivered: Schema.Number;
36
+ readonly lastCaptureBatchSize: Schema.Number;
37
+ readonly lastCaptureBatchSubmissionMs: Schema.Number;
38
+ readonly maxCaptureBatchSize: Schema.Number;
39
+ readonly maxCaptureBatchSubmissionMs: Schema.Number;
40
+ readonly maxCaptureLatenessMs: Schema.Number;
41
+ readonly pipeConnected: Schema.Boolean;
42
+ readonly readbackDrops: Schema.Number;
43
+ readonly readbackResourcesCreated: Schema.Number;
44
+ readonly schedulerTicks: Schema.Number;
45
+ readonly totalCaptureBatchSubmissionMs: Schema.Number;
46
+ readonly totalCaptureLatenessMs: Schema.Number;
47
+ readonly transportReplacements: Schema.Number;
48
+ }>;
49
+ export type CameraStreamStats = Schema.Schema.Type<typeof CameraStreamStats>;
50
+ export declare const CameraDescriptor: Schema.Struct<{
51
+ readonly cameraId: Schema.brand<Schema.String, "CameraId">;
52
+ readonly displayName: Schema.String;
53
+ readonly index: Schema.Int;
54
+ readonly height: Schema.Int;
55
+ readonly width: Schema.Int;
56
+ readonly candidateId: Schema.optional<Schema.String>;
57
+ }>;
58
+ export type CameraDescriptor = Schema.Schema.Type<typeof CameraDescriptor>;
59
+ export declare const CameraStatus: Schema.Struct<{
60
+ readonly cameras: Schema.$Array<Schema.Struct<{
61
+ readonly cameraId: Schema.brand<Schema.String, "CameraId">;
62
+ readonly displayName: Schema.String;
63
+ readonly index: Schema.Int;
64
+ readonly height: Schema.Int;
65
+ readonly width: Schema.Int;
66
+ readonly candidateId: Schema.optional<Schema.String>;
67
+ }>>;
68
+ readonly config: Schema.Struct<{
69
+ readonly activeCameraCount: Schema.Int;
70
+ readonly backgroundFps: Schema.Number;
71
+ readonly captureBudgetPerTick: Schema.Int;
72
+ readonly focusedCameraIndex: Schema.NullOr<Schema.Int>;
73
+ readonly focusedFps: Schema.Number;
74
+ readonly paused: Schema.Boolean;
75
+ readonly pipelineMode: Schema.Literals<readonly ["full_pipeline", "render_only", "schedule_only"]>;
76
+ readonly renderProfile: Schema.Literals<readonly ["full_fidelity", "observation"]>;
77
+ readonly resolution: Schema.Literals<readonly ["160x90", "320x180", "640x360", "960x540", "1280x720", "1920x1080", "2560x1440"]>;
78
+ readonly viewMode: Schema.Literals<readonly ["overview", "actor_pov", "posed"]>;
79
+ }>;
80
+ readonly pipeName: Schema.String;
81
+ readonly schemaVersion: Schema.Literal<1>;
82
+ readonly stats: Schema.Struct<{
83
+ readonly bytesSent: Schema.Number;
84
+ readonly captureBatchesSubmitted: Schema.Number;
85
+ readonly cadenceIntervalsSkipped: Schema.Number;
86
+ readonly camerasDue: Schema.Number;
87
+ readonly capturesRequested: Schema.Number;
88
+ readonly experimentBytesSent: Schema.Number;
89
+ readonly experimentCadenceIntervalsSkipped: Schema.Number;
90
+ readonly experimentElapsedMs: Schema.Number;
91
+ readonly experimentFramesDelivered: Schema.Number;
92
+ readonly experimentReadbackDrops: Schema.Number;
93
+ readonly experimentReadbackResourcesCreated: Schema.Number;
94
+ readonly experimentReadbacksEnqueued: Schema.Number;
95
+ readonly experimentRenderedCaptures: Schema.Number;
96
+ readonly experimentRevision: Schema.Number;
97
+ readonly experimentSchedulerTicks: Schema.Number;
98
+ readonly experimentScheduledCaptures: Schema.Number;
99
+ readonly experimentTransportReplacements: Schema.Number;
100
+ readonly framesDelivered: Schema.Number;
101
+ readonly lastCaptureBatchSize: Schema.Number;
102
+ readonly lastCaptureBatchSubmissionMs: Schema.Number;
103
+ readonly maxCaptureBatchSize: Schema.Number;
104
+ readonly maxCaptureBatchSubmissionMs: Schema.Number;
105
+ readonly maxCaptureLatenessMs: Schema.Number;
106
+ readonly pipeConnected: Schema.Boolean;
107
+ readonly readbackDrops: Schema.Number;
108
+ readonly readbackResourcesCreated: Schema.Number;
109
+ readonly schedulerTicks: Schema.Number;
110
+ readonly totalCaptureBatchSubmissionMs: Schema.Number;
111
+ readonly totalCaptureLatenessMs: Schema.Number;
112
+ readonly transportReplacements: Schema.Number;
113
+ }>;
114
+ }>;
115
+ export type CameraStatus = Schema.Schema.Type<typeof CameraStatus>;
116
+ export declare const decodeCameraScheduleConfig: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => import("effect/Effect").Effect<Schema.Struct.ReadonlySide<{
117
+ readonly activeCameraCount: Schema.Int;
118
+ readonly backgroundFps: Schema.Number;
119
+ readonly captureBudgetPerTick: Schema.Int;
120
+ readonly focusedCameraIndex: Schema.NullOr<Schema.Int>;
121
+ readonly focusedFps: Schema.Number;
122
+ readonly paused: Schema.Boolean;
123
+ readonly pipelineMode: Schema.Literals<readonly ["full_pipeline", "render_only", "schedule_only"]>;
124
+ readonly renderProfile: Schema.Literals<readonly ["full_fidelity", "observation"]>;
125
+ readonly resolution: Schema.Literals<readonly ["160x90", "320x180", "640x360", "960x540", "1280x720", "1920x1080", "2560x1440"]>;
126
+ readonly viewMode: Schema.Literals<readonly ["overview", "actor_pov", "posed"]>;
127
+ }, "Type">, Schema.SchemaError, never>;
128
+ export declare const decodeCameraStatus: (input: unknown, options?: import("effect/SchemaAST").ParseOptions) => import("effect/Effect").Effect<Schema.Struct.ReadonlySide<{
129
+ readonly cameras: Schema.$Array<Schema.Struct<{
130
+ readonly cameraId: Schema.brand<Schema.String, "CameraId">;
131
+ readonly displayName: Schema.String;
132
+ readonly index: Schema.Int;
133
+ readonly height: Schema.Int;
134
+ readonly width: Schema.Int;
135
+ readonly candidateId: Schema.optional<Schema.String>;
136
+ }>>;
137
+ readonly config: Schema.Struct<{
138
+ readonly activeCameraCount: Schema.Int;
139
+ readonly backgroundFps: Schema.Number;
140
+ readonly captureBudgetPerTick: Schema.Int;
141
+ readonly focusedCameraIndex: Schema.NullOr<Schema.Int>;
142
+ readonly focusedFps: Schema.Number;
143
+ readonly paused: Schema.Boolean;
144
+ readonly pipelineMode: Schema.Literals<readonly ["full_pipeline", "render_only", "schedule_only"]>;
145
+ readonly renderProfile: Schema.Literals<readonly ["full_fidelity", "observation"]>;
146
+ readonly resolution: Schema.Literals<readonly ["160x90", "320x180", "640x360", "960x540", "1280x720", "1920x1080", "2560x1440"]>;
147
+ readonly viewMode: Schema.Literals<readonly ["overview", "actor_pov", "posed"]>;
148
+ }>;
149
+ readonly pipeName: Schema.String;
150
+ readonly schemaVersion: Schema.Literal<1>;
151
+ readonly stats: Schema.Struct<{
152
+ readonly bytesSent: Schema.Number;
153
+ readonly captureBatchesSubmitted: Schema.Number;
154
+ readonly cadenceIntervalsSkipped: Schema.Number;
155
+ readonly camerasDue: Schema.Number;
156
+ readonly capturesRequested: Schema.Number;
157
+ readonly experimentBytesSent: Schema.Number;
158
+ readonly experimentCadenceIntervalsSkipped: Schema.Number;
159
+ readonly experimentElapsedMs: Schema.Number;
160
+ readonly experimentFramesDelivered: Schema.Number;
161
+ readonly experimentReadbackDrops: Schema.Number;
162
+ readonly experimentReadbackResourcesCreated: Schema.Number;
163
+ readonly experimentReadbacksEnqueued: Schema.Number;
164
+ readonly experimentRenderedCaptures: Schema.Number;
165
+ readonly experimentRevision: Schema.Number;
166
+ readonly experimentSchedulerTicks: Schema.Number;
167
+ readonly experimentScheduledCaptures: Schema.Number;
168
+ readonly experimentTransportReplacements: Schema.Number;
169
+ readonly framesDelivered: Schema.Number;
170
+ readonly lastCaptureBatchSize: Schema.Number;
171
+ readonly lastCaptureBatchSubmissionMs: Schema.Number;
172
+ readonly maxCaptureBatchSize: Schema.Number;
173
+ readonly maxCaptureBatchSubmissionMs: Schema.Number;
174
+ readonly maxCaptureLatenessMs: Schema.Number;
175
+ readonly pipeConnected: Schema.Boolean;
176
+ readonly readbackDrops: Schema.Number;
177
+ readonly readbackResourcesCreated: Schema.Number;
178
+ readonly schedulerTicks: Schema.Number;
179
+ readonly totalCaptureBatchSubmissionMs: Schema.Number;
180
+ readonly totalCaptureLatenessMs: Schema.Number;
181
+ readonly transportReplacements: Schema.Number;
182
+ }>;
183
+ }, "Type">, Schema.SchemaError, never>;
184
+ //# sourceMappingURL=cameras.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cameras.d.ts","sourceRoot":"","sources":["../src/cameras.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,eAAO,MAAM,QAAQ,yCAA+C,CAAC;AACrE,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,QAAQ,CAAC,CAAC;AAE3D,eAAO,MAAM,oBAAoB;;;;;;;;;;;EAqBkB,CAAC;AACpD,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEnF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+BkB,CAAC;AACjD,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE7E,eAAO,MAAM,gBAAgB;;;;;;;EAOkB,CAAC;AAChD,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE3E,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMkB,CAAC;AAC5C,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,YAAY,CAAC,CAAC;AAEnE,eAAO,MAAM,0BAA0B;;;;;;;;;;;sCAAmD,CAAC;AAC3F,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sCAA2C,CAAC"}
@@ -0,0 +1,72 @@
1
+ import { Schema } from "effect";
2
+ export const CameraId = Schema.String.pipe(Schema.brand("CameraId"));
3
+ export const CameraScheduleConfig = Schema.Struct({
4
+ activeCameraCount: Schema.Int.check(Schema.isBetween({ minimum: 1, maximum: 32 })),
5
+ backgroundFps: Schema.Number.check(Schema.isBetween({ minimum: 0.1, maximum: 30 })),
6
+ captureBudgetPerTick: Schema.Int.check(Schema.isBetween({ minimum: 1, maximum: 32 })),
7
+ focusedCameraIndex: Schema.NullOr(Schema.Int.check(Schema.isBetween({ minimum: 0, maximum: 31 }))),
8
+ focusedFps: Schema.Number.check(Schema.isBetween({ minimum: 0.1, maximum: 60 })),
9
+ paused: Schema.Boolean,
10
+ pipelineMode: Schema.Literals(["full_pipeline", "render_only", "schedule_only"]),
11
+ renderProfile: Schema.Literals(["full_fidelity", "observation"]),
12
+ resolution: Schema.Literals([
13
+ "160x90",
14
+ "320x180",
15
+ "640x360",
16
+ "960x540",
17
+ "1280x720",
18
+ "1920x1080",
19
+ "2560x1440"
20
+ ]),
21
+ viewMode: Schema.Literals(["overview", "actor_pov", "posed"])
22
+ }).annotate({ identifier: "CameraScheduleConfig" });
23
+ export const CameraStreamStats = Schema.Struct({
24
+ bytesSent: Schema.Number,
25
+ captureBatchesSubmitted: Schema.Number,
26
+ cadenceIntervalsSkipped: Schema.Number,
27
+ camerasDue: Schema.Number,
28
+ capturesRequested: Schema.Number,
29
+ experimentBytesSent: Schema.Number,
30
+ experimentCadenceIntervalsSkipped: Schema.Number,
31
+ experimentElapsedMs: Schema.Number,
32
+ experimentFramesDelivered: Schema.Number,
33
+ experimentReadbackDrops: Schema.Number,
34
+ experimentReadbackResourcesCreated: Schema.Number,
35
+ experimentReadbacksEnqueued: Schema.Number,
36
+ experimentRenderedCaptures: Schema.Number,
37
+ experimentRevision: Schema.Number,
38
+ experimentSchedulerTicks: Schema.Number,
39
+ experimentScheduledCaptures: Schema.Number,
40
+ experimentTransportReplacements: Schema.Number,
41
+ framesDelivered: Schema.Number,
42
+ lastCaptureBatchSize: Schema.Number,
43
+ lastCaptureBatchSubmissionMs: Schema.Number,
44
+ maxCaptureBatchSize: Schema.Number,
45
+ maxCaptureBatchSubmissionMs: Schema.Number,
46
+ maxCaptureLatenessMs: Schema.Number,
47
+ pipeConnected: Schema.Boolean,
48
+ readbackDrops: Schema.Number,
49
+ readbackResourcesCreated: Schema.Number,
50
+ schedulerTicks: Schema.Number,
51
+ totalCaptureBatchSubmissionMs: Schema.Number,
52
+ totalCaptureLatenessMs: Schema.Number,
53
+ transportReplacements: Schema.Number
54
+ }).annotate({ identifier: "CameraStreamStats" });
55
+ export const CameraDescriptor = Schema.Struct({
56
+ cameraId: CameraId,
57
+ displayName: Schema.String,
58
+ index: Schema.Int.check(Schema.isBetween({ minimum: 0, maximum: 31 })),
59
+ height: Schema.Int.check(Schema.isGreaterThan(0)),
60
+ width: Schema.Int.check(Schema.isGreaterThan(0)),
61
+ candidateId: Schema.optional(Schema.String)
62
+ }).annotate({ identifier: "CameraDescriptor" });
63
+ export const CameraStatus = Schema.Struct({
64
+ cameras: Schema.Array(CameraDescriptor),
65
+ config: CameraScheduleConfig,
66
+ pipeName: Schema.String,
67
+ schemaVersion: Schema.Literal(1),
68
+ stats: CameraStreamStats
69
+ }).annotate({ identifier: "CameraStatus" });
70
+ export const decodeCameraScheduleConfig = Schema.decodeUnknownEffect(CameraScheduleConfig);
71
+ export const decodeCameraStatus = Schema.decodeUnknownEffect(CameraStatus);
72
+ //# sourceMappingURL=cameras.js.map