@ue-shed/protocol 0.5.1 → 0.6.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/contracts/cameras/map-tile/v1/README.md +20 -6
- package/contracts/cameras/map-tile/v1/capture-operation.schema.json +69 -0
- package/contracts/cameras/map-tile/v1/capture-request.schema.json +2 -1
- package/contracts/cameras/map-tile/v1/fixtures/capture-operation-finished-valid.json +41 -0
- package/contracts/cameras/map-tile/v1/fixtures/capture-operation-progress-valid.json +13 -0
- package/contracts/cameras/map-tile/v1/fixtures/capture-operation-running-valid.json +5 -0
- package/contracts/cameras/map-tile/v1/fixtures/capture-request-lit-valid.json +59 -0
- package/contracts/cameras/map-tile/v1/fixtures/readiness-blocked.json +11 -0
- package/contracts/cameras/map-tile/v1/fixtures/readiness-ready.json +7 -0
- package/contracts/cameras/map-tile/v1/fixtures/selection-ready.json +21 -0
- package/contracts/cameras/map-tile/v1/fixtures/selection-unavailable.json +6 -0
- package/contracts/cameras/map-tile/v1/inspection.md +16 -0
- package/contracts/cameras/map-tile/v1/plan.schema.json +1 -0
- package/contracts/cameras/map-tile/v1/readiness.schema.json +39 -0
- package/contracts/cameras/map-tile/v1/selection.schema.json +105 -0
- package/contracts/core/v1/producer-identity.schema.json +44 -0
- package/contracts/niagara/preview/v1/common.schema.json +224 -30
- package/contracts/niagara/preview/v1/fixtures/background-manifest.json +136 -0
- package/contracts/niagara/preview/v1/fixtures/background-receipt.json +112 -0
- package/contracts/niagara/preview/v1/fixtures/background-request.json +39 -0
- package/contracts/niagara/preview/v1/fixtures/progress.json +8 -0
- package/contracts/niagara/preview/v1/fixtures/scene-manifest.json +108 -0
- package/contracts/niagara/preview/v1/fixtures/scene-receipt.json +84 -0
- package/contracts/niagara/preview/v1/fixtures/scene-request.json +25 -0
- package/contracts/niagara/preview/v1/manifest.schema.json +110 -25
- package/contracts/niagara/preview/v1/progress.schema.json +37 -0
- package/contracts/niagara/preview/v1/receipt.schema.json +75 -16
- package/contracts/niagara/preview/v1/request.schema.json +20 -5
- package/contracts/niagara/preview/v1/session.md +25 -0
- package/contracts/observatory/v1/actor-metadata.schema.json +33 -0
- package/contracts/uasset-io/v1/README.md +26 -1
- package/contracts/uasset-io/v1/event.schema.json +511 -1
- package/contracts/uasset-io/v1/fixtures/invalid/project-index-count-empty-filters.json +23 -0
- package/contracts/uasset-io/v1/fixtures/invalid/project-index-dictionary-page-negative-index.json +35 -0
- package/contracts/uasset-io/v1/fixtures/valid/blueprint-request.json +6 -0
- package/contracts/uasset-io/v1/fixtures/valid/blueprint-result-event.json +58 -0
- package/contracts/uasset-io/v1/fixtures/valid/project-index-count-request.json +32 -0
- package/contracts/uasset-io/v1/fixtures/valid/project-index-count-result-event.json +20 -0
- package/contracts/uasset-io/v1/fixtures/valid/project-index-dictionary-page-result-event.json +35 -0
- package/contracts/uasset-io/v1/fixtures/valid/project-index-dictionary-query-request.json +26 -0
- package/contracts/uasset-io/v1/request.schema.json +174 -0
- package/dist/authoring-review.d.ts +36 -36
- package/dist/authoring.d.ts +45 -45
- package/dist/authoring.d.ts.map +1 -1
- package/dist/blueprint-graph.d.ts +628 -0
- package/dist/blueprint-graph.d.ts.map +1 -0
- package/dist/blueprint-graph.js +111 -0
- package/dist/blueprint-graph.js.map +1 -0
- package/dist/companion.d.ts +34 -3
- package/dist/companion.d.ts.map +1 -1
- package/dist/companion.js +11 -0
- package/dist/companion.js.map +1 -1
- package/dist/editor-asset-navigation.d.ts +12 -12
- package/dist/editor-play-session.d.ts +6 -6
- package/dist/editor-world-control.d.ts +8 -8
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/saved-world.d.ts +20 -14
- package/dist/saved-world.d.ts.map +1 -1
- package/dist/saved-world.js +1 -0
- package/dist/saved-world.js.map +1 -1
- package/dist/uasset-inspection.d.ts +6 -5
- package/dist/uasset-inspection.d.ts.map +1 -1
- package/dist/uasset-inspection.js +1 -1
- package/dist/uasset-inspection.js.map +1 -1
- package/dist/uasset-io.d.ts +648 -129
- package/dist/uasset-io.d.ts.map +1 -1
- package/dist/uasset-io.js +51 -1
- package/dist/uasset-io.js.map +1 -1
- package/package.json +1 -1
|
@@ -14,14 +14,28 @@ capture Z does not define detail. The editor renders `gutterPixels` beyond each
|
|
|
14
14
|
units-per-pixel and crops back to `tilePixelSize` before PNG encoding. Consumers use clamp-to-edge
|
|
15
15
|
sampling inside each published tile.
|
|
16
16
|
|
|
17
|
-
`captureBackend` is an optional execution hint, not part of the portable plan.
|
|
18
|
-
`
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
17
|
+
`captureBackend` is an optional execution hint, not part of the portable plan. The default is
|
|
18
|
+
`lit_camera_tiles`, requiring `cameras.lit-map-tile-capture.v1` and an unlocked rendering editor
|
|
19
|
+
viewport. It accepts `full_fidelity` with natural LOD. `overviewBounds` supplies the complete run's
|
|
20
|
+
framing for shared exposure calibration; when omitted the first batch's extent is used. Optional
|
|
21
|
+
`capture.render.exposureEV100` pins the camera exposure range instead of calibrating automatically.
|
|
22
|
+
|
|
23
|
+
Call `BeginMapTileCapture(RequestJson)` to start a batch, then
|
|
24
|
+
`PollMapTileCapture(RunId, OperationId)` until `capture-operation.schema.json` reports `finished`.
|
|
25
|
+
The terminal `response` uses the existing capture-response schema. Polling renews a 120-second
|
|
26
|
+
inactivity lease. A run retains viewport, exposure, and scene-freeze ownership between batches;
|
|
27
|
+
call `EndMapTileCapture(RunId)` in a finalizer on success, failure, and cancellation. End returns
|
|
28
|
+
`{ "released": boolean }`; an unrelated run ID cannot release the owner. Only one batch runs at a
|
|
29
|
+
time, and a run's map and capture policy cannot change between batches.
|
|
30
|
+
|
|
31
|
+
Explicit `scene_capture_tiles` and `viewport_high_resolution` use the synchronous `CaptureMapTiles`
|
|
32
|
+
operation. The latter requires one complete zoom level of at most 64 tiles. The former retains
|
|
33
|
+
SceneCapture profiles and per-level LOD distance scales. Both reject manual exposure rather than
|
|
34
|
+
silently ignoring it. Synchronous `CaptureMapTiles` rejects the default Lit backend and directs
|
|
35
|
+
clients to the asynchronous lifecycle.
|
|
22
36
|
|
|
23
37
|
The editor accepts no output path. It stages only below `Saved/UEShed/MapTileStaging`, reports every
|
|
24
|
-
tile outcome and map package dirty state, and restores transient state
|
|
38
|
+
tile outcome and map package dirty state, and restores transient state when run ownership ends. The host
|
|
25
39
|
must validate staging containment, hash artifacts, and atomically publish only a manifest whose
|
|
26
40
|
state is `complete` and whose tile inventory is exhaustive. Partial and cancelled attempts remain
|
|
27
41
|
diagnostic evidence and are never discoverable as completed runs.
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://ue-shed.dev/contracts/cameras/map-tile/v1/capture-operation.schema.json",
|
|
4
|
+
"title": "UE Shed asynchronous map tile operation v1",
|
|
5
|
+
"oneOf": [
|
|
6
|
+
{
|
|
7
|
+
"type": "object",
|
|
8
|
+
"additionalProperties": false,
|
|
9
|
+
"required": ["state", "operationId", "completedTiles"],
|
|
10
|
+
"properties": {
|
|
11
|
+
"state": {
|
|
12
|
+
"const": "running"
|
|
13
|
+
},
|
|
14
|
+
"operationId": {
|
|
15
|
+
"$ref": "plan.schema.json#/$defs/id"
|
|
16
|
+
},
|
|
17
|
+
"completedTiles": {
|
|
18
|
+
"type": "integer",
|
|
19
|
+
"minimum": 0,
|
|
20
|
+
"maximum": 64
|
|
21
|
+
},
|
|
22
|
+
"phase": {
|
|
23
|
+
"enum": ["exposure_warmup", "tile_warmup", "capturing"]
|
|
24
|
+
},
|
|
25
|
+
"elapsedMs": {
|
|
26
|
+
"type": "number",
|
|
27
|
+
"minimum": 0
|
|
28
|
+
},
|
|
29
|
+
"totalTiles": {
|
|
30
|
+
"type": "integer",
|
|
31
|
+
"minimum": 0,
|
|
32
|
+
"maximum": 64
|
|
33
|
+
},
|
|
34
|
+
"currentTile": {
|
|
35
|
+
"type": "object",
|
|
36
|
+
"additionalProperties": false,
|
|
37
|
+
"required": ["zoom", "row", "column"],
|
|
38
|
+
"properties": {
|
|
39
|
+
"zoom": {
|
|
40
|
+
"type": "integer",
|
|
41
|
+
"minimum": 0
|
|
42
|
+
},
|
|
43
|
+
"row": {
|
|
44
|
+
"type": "integer",
|
|
45
|
+
"minimum": 0
|
|
46
|
+
},
|
|
47
|
+
"column": {
|
|
48
|
+
"type": "integer",
|
|
49
|
+
"minimum": 0
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"type": "object",
|
|
57
|
+
"additionalProperties": false,
|
|
58
|
+
"required": ["state", "response"],
|
|
59
|
+
"properties": {
|
|
60
|
+
"state": {
|
|
61
|
+
"const": "finished"
|
|
62
|
+
},
|
|
63
|
+
"response": {
|
|
64
|
+
"$ref": "capture-response.schema.json"
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
]
|
|
69
|
+
}
|
|
@@ -19,8 +19,9 @@
|
|
|
19
19
|
"properties": {
|
|
20
20
|
"capture": { "$ref": "plan.schema.json#/$defs/capturePolicy" },
|
|
21
21
|
"captureBackend": {
|
|
22
|
-
"enum": ["scene_capture_tiles", "viewport_high_resolution"]
|
|
22
|
+
"enum": ["lit_camera_tiles", "scene_capture_tiles", "viewport_high_resolution"]
|
|
23
23
|
},
|
|
24
|
+
"overviewBounds": { "$ref": "plan.schema.json#/$defs/bounds" },
|
|
24
25
|
"contract": {
|
|
25
26
|
"type": "object",
|
|
26
27
|
"additionalProperties": false,
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
{
|
|
2
|
+
"state": "finished",
|
|
3
|
+
"response": {
|
|
4
|
+
"actualMapPath": "/Game/Fixture/Cameras/L_CameraLoad",
|
|
5
|
+
"contract": {
|
|
6
|
+
"name": "ue-shed-map-tile-capture",
|
|
7
|
+
"version": {
|
|
8
|
+
"major": 1,
|
|
9
|
+
"minor": 0
|
|
10
|
+
}
|
|
11
|
+
},
|
|
12
|
+
"correlationId": "fixture-correlation",
|
|
13
|
+
"dirtyState": {
|
|
14
|
+
"before": false,
|
|
15
|
+
"after": false
|
|
16
|
+
},
|
|
17
|
+
"durationMs": 27.5,
|
|
18
|
+
"operationId": "fixture-operation",
|
|
19
|
+
"results": [
|
|
20
|
+
{
|
|
21
|
+
"bytes": 1234,
|
|
22
|
+
"captureDurationMs": 20.25,
|
|
23
|
+
"height": 256,
|
|
24
|
+
"key": {
|
|
25
|
+
"zoom": 0,
|
|
26
|
+
"row": 0,
|
|
27
|
+
"column": 0
|
|
28
|
+
},
|
|
29
|
+
"stagedPath": "C:/Project/Saved/UEShed/MapTileStaging/fixture-run/Z00/R000_C000.png",
|
|
30
|
+
"status": "captured",
|
|
31
|
+
"width": 256
|
|
32
|
+
}
|
|
33
|
+
],
|
|
34
|
+
"status": "completed",
|
|
35
|
+
"tileCounts": {
|
|
36
|
+
"failed": 0,
|
|
37
|
+
"requested": 1,
|
|
38
|
+
"succeeded": 1
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
{
|
|
2
|
+
"capture": {
|
|
3
|
+
"dataLayers": {
|
|
4
|
+
"mode": "unchanged"
|
|
5
|
+
},
|
|
6
|
+
"orientation": {
|
|
7
|
+
"pitch": -90,
|
|
8
|
+
"roll": 0,
|
|
9
|
+
"yaw": 0
|
|
10
|
+
},
|
|
11
|
+
"render": {
|
|
12
|
+
"effects": {
|
|
13
|
+
"fog": false,
|
|
14
|
+
"volumetricFog": false
|
|
15
|
+
},
|
|
16
|
+
"lodPolicy": "natural",
|
|
17
|
+
"profile": "full_fidelity",
|
|
18
|
+
"exposureEV100": -5
|
|
19
|
+
},
|
|
20
|
+
"z": 5000
|
|
21
|
+
},
|
|
22
|
+
"captureBackend": "lit_camera_tiles",
|
|
23
|
+
"contract": {
|
|
24
|
+
"name": "ue-shed-map-tile-capture",
|
|
25
|
+
"version": {
|
|
26
|
+
"major": 1,
|
|
27
|
+
"minor": 0
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
"correlationId": "fixture-correlation",
|
|
31
|
+
"expectedMapPath": "/Game/Fixture/Cameras/L_CameraLoad",
|
|
32
|
+
"gutterPixels": 2,
|
|
33
|
+
"operationId": "fixture-operation",
|
|
34
|
+
"planId": "fixture-overview",
|
|
35
|
+
"runId": "fixture-run",
|
|
36
|
+
"tilePixelSize": 256,
|
|
37
|
+
"tiles": [
|
|
38
|
+
{
|
|
39
|
+
"key": {
|
|
40
|
+
"zoom": 0,
|
|
41
|
+
"row": 0,
|
|
42
|
+
"column": 0
|
|
43
|
+
},
|
|
44
|
+
"unitsPerPixel": 4,
|
|
45
|
+
"worldBounds": {
|
|
46
|
+
"minX": 1024,
|
|
47
|
+
"minY": -1024,
|
|
48
|
+
"maxX": 2048,
|
|
49
|
+
"maxY": 0
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
],
|
|
53
|
+
"overviewBounds": {
|
|
54
|
+
"minX": 1024,
|
|
55
|
+
"minY": -1024,
|
|
56
|
+
"maxX": 2048,
|
|
57
|
+
"maxY": 0
|
|
58
|
+
}
|
|
59
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 1,
|
|
3
|
+
"status": "ready",
|
|
4
|
+
"mapPath": "/Game/Fixture/Map",
|
|
5
|
+
"bounds": {
|
|
6
|
+
"minX": -100,
|
|
7
|
+
"maxX": 100,
|
|
8
|
+
"minY": 50,
|
|
9
|
+
"maxY": 250,
|
|
10
|
+
"minZ": 0,
|
|
11
|
+
"maxZ": 400
|
|
12
|
+
},
|
|
13
|
+
"actors": [
|
|
14
|
+
{
|
|
15
|
+
"path": "/Game/Fixture/Map.A",
|
|
16
|
+
"label": "A",
|
|
17
|
+
"actorGuid": "00000001000000020000000300000004"
|
|
18
|
+
}
|
|
19
|
+
],
|
|
20
|
+
"skippedActorPaths": []
|
|
21
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Capture inspection v1
|
|
2
|
+
|
|
3
|
+
`InspectMapCaptureSelection` requires `cameras.capture-selection.v1`. It reads selection in the
|
|
4
|
+
current editor world, rejects PIE and selections outside 1–1024 actors, and combines finite component
|
|
5
|
+
bounds. `skippedActorPaths` identifies actors without usable bounds or in another world. Ready bounds
|
|
6
|
+
must satisfy min <= max on every axis; planar/point selections are valid. Host plan fitting supplies
|
|
7
|
+
positive XY extent. The operation neither modifies selection nor loads additional regions.
|
|
8
|
+
|
|
9
|
+
`InspectMapCaptureReadiness(ExpectedMapPath)` requires `cameras.capture-readiness.v1` and applies to
|
|
10
|
+
Lit capture. `ready` is true exactly when `blockers` is empty. It checks map identity, rendering,
|
|
11
|
+
streaming, viewport locking/overrides, screenshot use, PIE and capture ownership. It does not reserve
|
|
12
|
+
resources, load regions, or guarantee visual completeness. Capture execution repeats shared checks.
|
|
13
|
+
|
|
14
|
+
The running operation's optional phase/elapsed/count/current-tile fields are telemetry for the current
|
|
15
|
+
batch. `currentTile` is absent during whole-map exposure warmup. Existing responses without these
|
|
16
|
+
fields remain valid. Terminal responses and publication rules are unchanged.
|
|
@@ -130,6 +130,7 @@
|
|
|
130
130
|
"additionalProperties": false,
|
|
131
131
|
"required": ["effects", "lodPolicy", "profile"],
|
|
132
132
|
"properties": {
|
|
133
|
+
"exposureEV100": { "type": "number", "minimum": -20, "maximum": 30 },
|
|
133
134
|
"effects": {
|
|
134
135
|
"type": "object",
|
|
135
136
|
"additionalProperties": false,
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"additionalProperties": false,
|
|
5
|
+
"required": ["schemaVersion", "backend", "ready", "blockers"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"schemaVersion": {
|
|
8
|
+
"const": 1
|
|
9
|
+
},
|
|
10
|
+
"backend": {
|
|
11
|
+
"const": "lit_camera_tiles"
|
|
12
|
+
},
|
|
13
|
+
"ready": {
|
|
14
|
+
"type": "boolean"
|
|
15
|
+
},
|
|
16
|
+
"actualMapPath": {
|
|
17
|
+
"type": "string",
|
|
18
|
+
"minLength": 1
|
|
19
|
+
},
|
|
20
|
+
"blockers": {
|
|
21
|
+
"type": "array",
|
|
22
|
+
"items": {
|
|
23
|
+
"type": "object",
|
|
24
|
+
"additionalProperties": false,
|
|
25
|
+
"required": ["code", "message"],
|
|
26
|
+
"properties": {
|
|
27
|
+
"code": {
|
|
28
|
+
"type": "string",
|
|
29
|
+
"minLength": 1
|
|
30
|
+
},
|
|
31
|
+
"message": {
|
|
32
|
+
"type": "string",
|
|
33
|
+
"minLength": 1
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"oneOf": [
|
|
4
|
+
{
|
|
5
|
+
"type": "object",
|
|
6
|
+
"additionalProperties": false,
|
|
7
|
+
"required": [
|
|
8
|
+
"schemaVersion",
|
|
9
|
+
"status",
|
|
10
|
+
"mapPath",
|
|
11
|
+
"bounds",
|
|
12
|
+
"actors",
|
|
13
|
+
"skippedActorPaths"
|
|
14
|
+
],
|
|
15
|
+
"properties": {
|
|
16
|
+
"schemaVersion": {
|
|
17
|
+
"const": 1
|
|
18
|
+
},
|
|
19
|
+
"status": {
|
|
20
|
+
"const": "ready"
|
|
21
|
+
},
|
|
22
|
+
"mapPath": {
|
|
23
|
+
"type": "string",
|
|
24
|
+
"minLength": 1
|
|
25
|
+
},
|
|
26
|
+
"bounds": {
|
|
27
|
+
"type": "object",
|
|
28
|
+
"additionalProperties": false,
|
|
29
|
+
"required": ["minX", "maxX", "minY", "maxY", "minZ", "maxZ"],
|
|
30
|
+
"properties": {
|
|
31
|
+
"minX": {
|
|
32
|
+
"type": "number"
|
|
33
|
+
},
|
|
34
|
+
"maxX": {
|
|
35
|
+
"type": "number"
|
|
36
|
+
},
|
|
37
|
+
"minY": {
|
|
38
|
+
"type": "number"
|
|
39
|
+
},
|
|
40
|
+
"maxY": {
|
|
41
|
+
"type": "number"
|
|
42
|
+
},
|
|
43
|
+
"minZ": {
|
|
44
|
+
"type": "number"
|
|
45
|
+
},
|
|
46
|
+
"maxZ": {
|
|
47
|
+
"type": "number"
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
"actors": {
|
|
52
|
+
"type": "array",
|
|
53
|
+
"items": {
|
|
54
|
+
"type": "object",
|
|
55
|
+
"additionalProperties": false,
|
|
56
|
+
"required": ["path", "label"],
|
|
57
|
+
"properties": {
|
|
58
|
+
"path": {
|
|
59
|
+
"type": "string",
|
|
60
|
+
"minLength": 1
|
|
61
|
+
},
|
|
62
|
+
"label": {
|
|
63
|
+
"type": "string"
|
|
64
|
+
},
|
|
65
|
+
"actorGuid": {
|
|
66
|
+
"type": "string",
|
|
67
|
+
"pattern": "^[0-9A-Fa-f]{32}$"
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
"minItems": 1,
|
|
72
|
+
"maxItems": 1024
|
|
73
|
+
},
|
|
74
|
+
"skippedActorPaths": {
|
|
75
|
+
"type": "array",
|
|
76
|
+
"items": {
|
|
77
|
+
"type": "string"
|
|
78
|
+
},
|
|
79
|
+
"maxItems": 1024
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"type": "object",
|
|
85
|
+
"additionalProperties": false,
|
|
86
|
+
"required": ["schemaVersion", "status", "code", "message"],
|
|
87
|
+
"properties": {
|
|
88
|
+
"schemaVersion": {
|
|
89
|
+
"const": 1
|
|
90
|
+
},
|
|
91
|
+
"status": {
|
|
92
|
+
"const": "unavailable"
|
|
93
|
+
},
|
|
94
|
+
"code": {
|
|
95
|
+
"type": "string",
|
|
96
|
+
"minLength": 1
|
|
97
|
+
},
|
|
98
|
+
"message": {
|
|
99
|
+
"type": "string",
|
|
100
|
+
"minLength": 1
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
]
|
|
105
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"type": "object",
|
|
4
|
+
"additionalProperties": false,
|
|
5
|
+
"required": ["engineVersion", "processId", "sessionId", "plugins"],
|
|
6
|
+
"properties": {
|
|
7
|
+
"engineVersion": {
|
|
8
|
+
"type": "string",
|
|
9
|
+
"minLength": 1
|
|
10
|
+
},
|
|
11
|
+
"processId": {
|
|
12
|
+
"type": "integer",
|
|
13
|
+
"minimum": 1
|
|
14
|
+
},
|
|
15
|
+
"sessionId": {
|
|
16
|
+
"type": "string",
|
|
17
|
+
"minLength": 1
|
|
18
|
+
},
|
|
19
|
+
"plugins": {
|
|
20
|
+
"type": "array",
|
|
21
|
+
"items": {
|
|
22
|
+
"type": "object",
|
|
23
|
+
"additionalProperties": false,
|
|
24
|
+
"required": ["name", "version", "loadedModules"],
|
|
25
|
+
"properties": {
|
|
26
|
+
"name": {
|
|
27
|
+
"type": "string",
|
|
28
|
+
"minLength": 1
|
|
29
|
+
},
|
|
30
|
+
"version": {
|
|
31
|
+
"type": "string"
|
|
32
|
+
},
|
|
33
|
+
"loadedModules": {
|
|
34
|
+
"type": "array",
|
|
35
|
+
"items": {
|
|
36
|
+
"type": "string",
|
|
37
|
+
"minLength": 1
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|