@ue-shed/protocol 0.7.0 → 0.8.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.
Files changed (79) hide show
  1. package/contracts/cameras/authoring/v1/README.md +50 -0
  2. package/contracts/cameras/authoring/v1/approval.schema.json +106 -0
  3. package/contracts/cameras/authoring/v1/arrangement.schema.json +1801 -0
  4. package/contracts/cameras/authoring/v1/bridge-request.schema.json +10862 -0
  5. package/contracts/cameras/authoring/v1/bridge-response.schema.json +10323 -0
  6. package/contracts/cameras/authoring/v1/command.schema.json +4109 -0
  7. package/contracts/cameras/authoring/v1/document.schema.json +4409 -0
  8. package/contracts/cameras/authoring/v1/panel-event.schema.json +4885 -0
  9. package/contracts/cameras/authoring/v1/panel-state.schema.json +3548 -0
  10. package/contracts/cameras/authoring/v1/recipe.schema.json +340 -0
  11. package/contracts/cameras/authoring/v1/visibility-preset.schema.json +205 -0
  12. package/contracts/cameras/map-tile/v1/README.md +4 -1
  13. package/contracts/cameras/map-tile/v1/capture-operation.schema.json +1621 -30
  14. package/contracts/cameras/map-tile/v1/capture-request.schema.json +497 -48
  15. package/contracts/cameras/map-tile/v1/capture-response.schema.json +1383 -96
  16. package/contracts/cameras/map-tile/v1/manifest.schema.json +1760 -110
  17. package/contracts/cameras/map-tile/v1/plan.schema.json +394 -200
  18. package/contracts/cameras/map-tile/v1/release-result.schema.json +7 -2
  19. package/contracts/cameras/provisioning/v1/provision-request.schema.json +663 -141
  20. package/contracts/cameras/render/v1/begin-result.schema.json +167 -0
  21. package/contracts/cameras/render/v1/capabilities.schema.json +25 -0
  22. package/contracts/cameras/render/v1/frame-evidence.schema.json +240 -0
  23. package/contracts/cameras/render/v1/frame-status.schema.json +249 -0
  24. package/contracts/cameras/render/v1/policy.schema.json +159 -0
  25. package/contracts/cameras/render/v1/review-inspection-result.schema.json +263 -0
  26. package/contracts/cameras/render/v1/session-request.schema.json +167 -0
  27. package/contracts/cameras/review/v1/README.md +6 -0
  28. package/contracts/cameras/review/v1/capture-request.schema.json +221 -3
  29. package/contracts/cameras/review/v1/capture-response.schema.json +3648 -0
  30. package/contracts/cameras/review/v1/fixtures/capture-authored.json +205 -0
  31. package/contracts/core/v1/WINDOW-ACTIVATION.md +21 -0
  32. package/contracts/core/v1/window-activation-request.schema.json +20 -0
  33. package/contracts/core/v1/window-activation-result.schema.json +49 -0
  34. package/contracts/editor-world/v1/README.md +27 -0
  35. package/contracts/editor-world/v1/operation.schema.json +761 -0
  36. package/contracts/editor-world/v1/state.schema.json +92 -0
  37. package/contracts/uasset-io/v1/event.schema.json +613 -171
  38. package/contracts/uasset-io/v1/fixtures/invalid/inspect-string-table-nonstring-metadata.json +53 -0
  39. package/contracts/uasset-io/v1/fixtures/invalid/negative-instanced-size.json +97 -0
  40. package/contracts/uasset-io/v1/fixtures/invalid/non-string-metadata.json +97 -0
  41. package/contracts/uasset-io/v1/fixtures/invalid/unknown-native-value.json +97 -0
  42. package/contracts/uasset-io/v1/fixtures/valid/extract-text-string-table-occurrence-result-event.json +30 -0
  43. package/contracts/uasset-io/v1/fixtures/valid/inspect-native-result-event.json +97 -0
  44. package/contracts/uasset-io/v1/fixtures/valid/inspect-string-table-metadata-result-event.json +53 -0
  45. package/contracts/world/preparation/v1/fixtures/invalid-contract-version.json +10 -0
  46. package/contracts/world/preparation/v1/fixtures/invalid-extra-field.json +11 -0
  47. package/contracts/world/preparation/v1/fixtures/invalid-negative-budget.json +37 -0
  48. package/contracts/world/preparation/v1/fixtures/invalid-region-negative-extent.json +40 -0
  49. package/contracts/world/preparation/v1/fixtures/valid-actor-context.json +37 -0
  50. package/contracts/world/preparation/v1/fixtures/valid-describe.json +10 -0
  51. package/contracts/world/preparation/v1/request.schema.json +897 -0
  52. package/contracts/world/preparation/v1/response.schema.json +449 -0
  53. package/dist/cameras.d.ts +16 -12
  54. package/dist/cameras.d.ts.map +1 -1
  55. package/dist/cameras.js +1 -0
  56. package/dist/cameras.js.map +1 -1
  57. package/dist/companion.d.ts +6 -0
  58. package/dist/companion.d.ts.map +1 -1
  59. package/dist/companion.js +3 -0
  60. package/dist/companion.js.map +1 -1
  61. package/dist/editor-window-activation.d.ts +16 -0
  62. package/dist/editor-window-activation.d.ts.map +1 -0
  63. package/dist/editor-window-activation.js +19 -0
  64. package/dist/editor-window-activation.js.map +1 -0
  65. package/dist/editor-world-control.d.ts +125 -0
  66. package/dist/editor-world-control.d.ts.map +1 -1
  67. package/dist/editor-world-control.js +25 -0
  68. package/dist/editor-world-control.js.map +1 -1
  69. package/dist/index.d.ts +1 -0
  70. package/dist/index.d.ts.map +1 -1
  71. package/dist/index.js +1 -0
  72. package/dist/index.js.map +1 -1
  73. package/dist/uasset-inspection.d.ts +112 -55
  74. package/dist/uasset-inspection.d.ts.map +1 -1
  75. package/dist/uasset-inspection.js +29 -0
  76. package/dist/uasset-inspection.js.map +1 -1
  77. package/dist/uasset-io.d.ts +54 -0
  78. package/dist/uasset-io.d.ts.map +1 -1
  79. package/package.json +1 -1
@@ -0,0 +1,340 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://ue-shed.dev/contracts/cameras/authoring/v1/recipe.schema.json",
4
+ "type": "object",
5
+ "properties": {
6
+ "version": {
7
+ "type": "number",
8
+ "enum": [1]
9
+ },
10
+ "name": {
11
+ "type": "string",
12
+ "allOf": [
13
+ {
14
+ "minLength": 1
15
+ }
16
+ ]
17
+ },
18
+ "settings": {
19
+ "type": "object",
20
+ "properties": {
21
+ "fieldOfViewDegrees": {
22
+ "type": "number",
23
+ "allOf": [
24
+ {
25
+ "minimum": 5,
26
+ "maximum": 170
27
+ }
28
+ ]
29
+ },
30
+ "distanceScale": {
31
+ "type": "number",
32
+ "allOf": [
33
+ {
34
+ "minimum": 0.01,
35
+ "maximum": 100
36
+ }
37
+ ]
38
+ },
39
+ "heightOffset": {
40
+ "type": "number"
41
+ },
42
+ "margin": {
43
+ "type": "number",
44
+ "allOf": [
45
+ {
46
+ "minimum": 0,
47
+ "maximum": 0.45
48
+ }
49
+ ]
50
+ },
51
+ "elevationDegrees": {
52
+ "type": "number",
53
+ "allOf": [
54
+ {
55
+ "minimum": -89,
56
+ "maximum": 89
57
+ }
58
+ ]
59
+ },
60
+ "yawOffset": {
61
+ "type": "number"
62
+ },
63
+ "aimOffset": {
64
+ "type": "object",
65
+ "properties": {
66
+ "x": {
67
+ "type": "number"
68
+ },
69
+ "y": {
70
+ "type": "number"
71
+ },
72
+ "z": {
73
+ "type": "number"
74
+ }
75
+ },
76
+ "required": ["x", "y", "z"],
77
+ "additionalProperties": false
78
+ }
79
+ },
80
+ "required": ["fieldOfViewDegrees", "distanceScale", "heightOffset", "margin"],
81
+ "additionalProperties": false
82
+ },
83
+ "groups": {
84
+ "type": "array",
85
+ "items": {
86
+ "type": "object",
87
+ "properties": {
88
+ "id": {
89
+ "type": "string",
90
+ "allOf": [
91
+ {
92
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]{0,127}$"
93
+ }
94
+ ]
95
+ },
96
+ "name": {
97
+ "type": "string",
98
+ "allOf": [
99
+ {
100
+ "minLength": 1
101
+ }
102
+ ]
103
+ },
104
+ "overrides": {
105
+ "type": "object",
106
+ "properties": {
107
+ "fieldOfViewDegrees": {
108
+ "type": "number",
109
+ "allOf": [
110
+ {
111
+ "minimum": 5,
112
+ "maximum": 170
113
+ }
114
+ ]
115
+ },
116
+ "distanceScale": {
117
+ "type": "number",
118
+ "allOf": [
119
+ {
120
+ "minimum": 0.01,
121
+ "maximum": 100
122
+ }
123
+ ]
124
+ },
125
+ "heightOffset": {
126
+ "type": "number"
127
+ },
128
+ "margin": {
129
+ "type": "number",
130
+ "allOf": [
131
+ {
132
+ "minimum": 0,
133
+ "maximum": 0.45
134
+ }
135
+ ]
136
+ },
137
+ "elevationDegrees": {
138
+ "type": "number",
139
+ "allOf": [
140
+ {
141
+ "minimum": -89,
142
+ "maximum": 89
143
+ }
144
+ ]
145
+ },
146
+ "yawOffset": {
147
+ "type": "number"
148
+ },
149
+ "aimOffset": {
150
+ "type": "object",
151
+ "properties": {
152
+ "x": {
153
+ "type": "number"
154
+ },
155
+ "y": {
156
+ "type": "number"
157
+ },
158
+ "z": {
159
+ "type": "number"
160
+ }
161
+ },
162
+ "required": ["x", "y", "z"],
163
+ "additionalProperties": false
164
+ }
165
+ },
166
+ "additionalProperties": false
167
+ }
168
+ },
169
+ "required": ["id", "name", "overrides"],
170
+ "additionalProperties": false
171
+ }
172
+ },
173
+ "cameras": {
174
+ "type": "array",
175
+ "items": {
176
+ "type": "object",
177
+ "properties": {
178
+ "displayName": {
179
+ "type": "string",
180
+ "allOf": [
181
+ {
182
+ "minLength": 1
183
+ }
184
+ ]
185
+ },
186
+ "yawDegrees": {
187
+ "type": "number"
188
+ },
189
+ "overrides": {
190
+ "type": "object",
191
+ "properties": {
192
+ "fieldOfViewDegrees": {
193
+ "type": "number",
194
+ "allOf": [
195
+ {
196
+ "minimum": 5,
197
+ "maximum": 170
198
+ }
199
+ ]
200
+ },
201
+ "distanceScale": {
202
+ "type": "number",
203
+ "allOf": [
204
+ {
205
+ "minimum": 0.01,
206
+ "maximum": 100
207
+ }
208
+ ]
209
+ },
210
+ "heightOffset": {
211
+ "type": "number"
212
+ },
213
+ "margin": {
214
+ "type": "number",
215
+ "allOf": [
216
+ {
217
+ "minimum": 0,
218
+ "maximum": 0.45
219
+ }
220
+ ]
221
+ },
222
+ "elevationDegrees": {
223
+ "type": "number",
224
+ "allOf": [
225
+ {
226
+ "minimum": -89,
227
+ "maximum": 89
228
+ }
229
+ ]
230
+ },
231
+ "yawOffset": {
232
+ "type": "number"
233
+ },
234
+ "aimOffset": {
235
+ "type": "object",
236
+ "properties": {
237
+ "x": {
238
+ "type": "number"
239
+ },
240
+ "y": {
241
+ "type": "number"
242
+ },
243
+ "z": {
244
+ "type": "number"
245
+ }
246
+ },
247
+ "required": ["x", "y", "z"],
248
+ "additionalProperties": false
249
+ }
250
+ },
251
+ "additionalProperties": false
252
+ },
253
+ "groupId": {
254
+ "type": "string",
255
+ "allOf": [
256
+ {
257
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]{0,127}$"
258
+ }
259
+ ]
260
+ },
261
+ "relativePose": {
262
+ "type": "object",
263
+ "properties": {
264
+ "aspectRatio": {
265
+ "type": "string",
266
+ "enum": ["16:9"]
267
+ },
268
+ "fieldOfViewDegrees": {
269
+ "type": "number",
270
+ "allOf": [
271
+ {
272
+ "minimum": 5,
273
+ "maximum": 170
274
+ }
275
+ ]
276
+ },
277
+ "location": {
278
+ "type": "object",
279
+ "properties": {
280
+ "x": {
281
+ "type": "number"
282
+ },
283
+ "y": {
284
+ "type": "number"
285
+ },
286
+ "z": {
287
+ "type": "number"
288
+ }
289
+ },
290
+ "required": ["x", "y", "z"],
291
+ "additionalProperties": false
292
+ },
293
+ "projection": {
294
+ "type": "string",
295
+ "enum": ["perspective"]
296
+ },
297
+ "rotation": {
298
+ "type": "object",
299
+ "properties": {
300
+ "pitch": {
301
+ "type": "number"
302
+ },
303
+ "roll": {
304
+ "type": "number"
305
+ },
306
+ "yaw": {
307
+ "type": "number"
308
+ }
309
+ },
310
+ "required": ["pitch", "roll", "yaw"],
311
+ "additionalProperties": false
312
+ }
313
+ },
314
+ "required": [
315
+ "aspectRatio",
316
+ "fieldOfViewDegrees",
317
+ "location",
318
+ "projection",
319
+ "rotation"
320
+ ],
321
+ "additionalProperties": false
322
+ }
323
+ },
324
+ "required": ["displayName", "yawDegrees", "overrides"],
325
+ "additionalProperties": false
326
+ },
327
+ "allOf": [
328
+ {
329
+ "minItems": 1
330
+ },
331
+ {
332
+ "maxItems": 256
333
+ }
334
+ ]
335
+ }
336
+ },
337
+ "required": ["version", "name", "settings", "groups", "cameras"],
338
+ "additionalProperties": false,
339
+ "$defs": {}
340
+ }
@@ -0,0 +1,205 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://ue-shed.dev/contracts/cameras/authoring/v1/visibility-preset.schema.json",
4
+ "type": "object",
5
+ "properties": {
6
+ "version": {
7
+ "type": "number",
8
+ "enum": [1]
9
+ },
10
+ "id": {
11
+ "type": "string",
12
+ "allOf": [
13
+ {
14
+ "pattern": "^[a-zA-Z0-9][a-zA-Z0-9._-]{0,127}$"
15
+ }
16
+ ]
17
+ },
18
+ "name": {
19
+ "type": "string",
20
+ "allOf": [
21
+ {
22
+ "minLength": 1
23
+ }
24
+ ]
25
+ },
26
+ "projectName": {
27
+ "type": "string",
28
+ "allOf": [
29
+ {
30
+ "minLength": 1
31
+ }
32
+ ]
33
+ },
34
+ "mapPath": {
35
+ "type": "string",
36
+ "allOf": [
37
+ {
38
+ "pattern": "^\\/Game\\/"
39
+ }
40
+ ]
41
+ },
42
+ "actors": {
43
+ "type": "object",
44
+ "properties": {
45
+ "hide": {
46
+ "type": "array",
47
+ "items": {
48
+ "type": "object",
49
+ "properties": {
50
+ "locator": {
51
+ "anyOf": [
52
+ {
53
+ "type": "object",
54
+ "properties": {
55
+ "kind": {
56
+ "type": "string",
57
+ "enum": ["actor_path"]
58
+ },
59
+ "actorPath": {
60
+ "type": "string",
61
+ "allOf": [
62
+ {
63
+ "pattern": "^\\/Game\\/"
64
+ },
65
+ {
66
+ "maxLength": 4096
67
+ }
68
+ ]
69
+ }
70
+ },
71
+ "required": ["kind", "actorPath"],
72
+ "additionalProperties": false
73
+ },
74
+ {
75
+ "type": "object",
76
+ "properties": {
77
+ "kind": {
78
+ "type": "string",
79
+ "enum": ["actor_guid"]
80
+ },
81
+ "actorGuid": {
82
+ "type": "string",
83
+ "allOf": [
84
+ {
85
+ "pattern": "^(?!00000000-00000000-00000000-00000000$)[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{8}){3}$"
86
+ }
87
+ ]
88
+ },
89
+ "lastKnownActorPath": {
90
+ "type": "string",
91
+ "allOf": [
92
+ {
93
+ "maxLength": 4096
94
+ }
95
+ ]
96
+ }
97
+ },
98
+ "required": ["kind", "actorGuid", "lastKnownActorPath"],
99
+ "additionalProperties": false
100
+ }
101
+ ]
102
+ },
103
+ "label": {
104
+ "type": "string",
105
+ "allOf": [
106
+ {
107
+ "maxLength": 256
108
+ }
109
+ ]
110
+ }
111
+ },
112
+ "required": ["locator", "label"],
113
+ "additionalProperties": false
114
+ },
115
+ "allOf": [
116
+ {
117
+ "maxItems": 256
118
+ }
119
+ ]
120
+ },
121
+ "protect": {
122
+ "type": "array",
123
+ "items": {
124
+ "type": "object",
125
+ "properties": {
126
+ "locator": {
127
+ "anyOf": [
128
+ {
129
+ "type": "object",
130
+ "properties": {
131
+ "kind": {
132
+ "type": "string",
133
+ "enum": ["actor_path"]
134
+ },
135
+ "actorPath": {
136
+ "type": "string",
137
+ "allOf": [
138
+ {
139
+ "pattern": "^\\/Game\\/"
140
+ },
141
+ {
142
+ "maxLength": 4096
143
+ }
144
+ ]
145
+ }
146
+ },
147
+ "required": ["kind", "actorPath"],
148
+ "additionalProperties": false
149
+ },
150
+ {
151
+ "type": "object",
152
+ "properties": {
153
+ "kind": {
154
+ "type": "string",
155
+ "enum": ["actor_guid"]
156
+ },
157
+ "actorGuid": {
158
+ "type": "string",
159
+ "allOf": [
160
+ {
161
+ "pattern": "^(?!00000000-00000000-00000000-00000000$)[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{8}){3}$"
162
+ }
163
+ ]
164
+ },
165
+ "lastKnownActorPath": {
166
+ "type": "string",
167
+ "allOf": [
168
+ {
169
+ "maxLength": 4096
170
+ }
171
+ ]
172
+ }
173
+ },
174
+ "required": ["kind", "actorGuid", "lastKnownActorPath"],
175
+ "additionalProperties": false
176
+ }
177
+ ]
178
+ },
179
+ "label": {
180
+ "type": "string",
181
+ "allOf": [
182
+ {
183
+ "maxLength": 256
184
+ }
185
+ ]
186
+ }
187
+ },
188
+ "required": ["locator", "label"],
189
+ "additionalProperties": false
190
+ },
191
+ "allOf": [
192
+ {
193
+ "maxItems": 256
194
+ }
195
+ ]
196
+ }
197
+ },
198
+ "required": ["hide", "protect"],
199
+ "additionalProperties": false
200
+ }
201
+ },
202
+ "required": ["version", "id", "name", "projectName", "mapPath", "actors"],
203
+ "additionalProperties": false,
204
+ "$defs": {}
205
+ }
@@ -6,7 +6,10 @@ They are a sibling to, and do not change, `ue-shed-review-capture` v1.
6
6
  `plan.schema.json` describes an external Map Capture Plan. `capture-request.schema.json` and
7
7
  `capture-response.schema.json` describe a bounded editor operation named
8
8
  `ue-shed-map-tile-capture`. `manifest.schema.json` describes neutral host-published
9
- `ue-shed-map-tile-pyramid` evidence. All are major 1, minor 0.
9
+ `ue-shed-map-tile-pyramid` evidence. All are major 1; legacy minor 0 remains readable. Minor 1 adds renderer evidence and minor 2 adds
10
+ optional `capture.visibility` / `capturePolicy.visibility` hide/protect lists. Visibility requires
11
+ minor 2 and the matching Cameras renderer. It applies before metering and to every batch, including
12
+ the live preview; it never changes tile framing.
10
13
 
11
14
  Rows progress from world max-X toward min-X. Columns progress from world min-Y toward max-Y. The
12
15
  orientation is explicit and versioned. A level halves units-per-pixel and doubles rows and columns;