@adea-ai/runtime-gateway-protocol 1.2.2

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.
@@ -0,0 +1,893 @@
1
+ {
2
+ "$id": "https://schemas.control-plane.dev/runtime-gateway/gateway-envelope.v1.json",
3
+ "title": "Control Plane Runtime Gateway Envelope v1",
4
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
5
+ "oneOf": [
6
+ {
7
+ "type": "object",
8
+ "properties": {
9
+ "schemaVersion": { "type": "number", "const": 1 },
10
+ "protocolVersion": {
11
+ "type": "object",
12
+ "properties": {
13
+ "major": { "type": "integer", "exclusiveMinimum": 0, "maximum": 9007199254740991 },
14
+ "minor": { "type": "integer", "minimum": 0, "maximum": 9007199254740991 }
15
+ },
16
+ "required": ["major", "minor"],
17
+ "additionalProperties": false
18
+ },
19
+ "sequence": { "type": "integer", "minimum": 0, "maximum": 2147483647 },
20
+ "nodeId": { "type": "string", "pattern": "^rnr_[0-9A-HJKMNP-TV-Z]{26}$" },
21
+ "workspaceId": { "type": "string", "pattern": "^wsp_[0-9A-HJKMNP-TV-Z]{26}$" },
22
+ "traceId": { "type": "string", "pattern": "^trc_[0-9A-HJKMNP-TV-Z]{26}$" },
23
+ "sentAt": {
24
+ "type": "string",
25
+ "format": "date-time",
26
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
27
+ },
28
+ "channelGeneration": {
29
+ "type": "integer",
30
+ "exclusiveMinimum": 0,
31
+ "maximum": 9007199254740991
32
+ },
33
+ "type": { "type": "string", "const": "hello" },
34
+ "supportedVersions": {
35
+ "minItems": 1,
36
+ "maxItems": 16,
37
+ "type": "array",
38
+ "items": {
39
+ "type": "object",
40
+ "properties": {
41
+ "major": { "type": "integer", "exclusiveMinimum": 0, "maximum": 9007199254740991 },
42
+ "minor": { "type": "integer", "minimum": 0, "maximum": 9007199254740991 }
43
+ },
44
+ "required": ["major", "minor"],
45
+ "additionalProperties": false
46
+ }
47
+ },
48
+ "lastAcknowledgedSequence": {
49
+ "type": "integer",
50
+ "minimum": 0,
51
+ "maximum": 9007199254740991
52
+ },
53
+ "retainedCommandOutcomes": {
54
+ "maxItems": 256,
55
+ "type": "array",
56
+ "items": {
57
+ "type": "object",
58
+ "properties": {
59
+ "commandId": { "type": "string", "pattern": "^cmd_[0-9A-HJKMNP-TV-Z]{26}$" },
60
+ "payloadHash": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
61
+ "status": {
62
+ "type": "string",
63
+ "enum": [
64
+ "accepted",
65
+ "running",
66
+ "cancelling",
67
+ "succeeded",
68
+ "failed",
69
+ "cancelled",
70
+ "unknown"
71
+ ]
72
+ },
73
+ "observedAt": {
74
+ "type": "string",
75
+ "format": "date-time",
76
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
77
+ },
78
+ "result": {
79
+ "anyOf": [
80
+ {
81
+ "type": "object",
82
+ "properties": {
83
+ "data": {
84
+ "type": "object",
85
+ "propertyNames": { "type": "string" },
86
+ "additionalProperties": { "$ref": "#/$defs/__schema0" }
87
+ }
88
+ },
89
+ "required": ["data"],
90
+ "additionalProperties": false
91
+ },
92
+ {
93
+ "type": "object",
94
+ "properties": {
95
+ "artifact": {
96
+ "type": "object",
97
+ "properties": {
98
+ "artifactId": {
99
+ "type": "string",
100
+ "pattern": "^art_[0-9A-HJKMNP-TV-Z]{26}$"
101
+ },
102
+ "digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
103
+ "mediaType": { "type": "string", "minLength": 1, "maxLength": 128 },
104
+ "sizeBytes": { "type": "integer", "minimum": 0, "maximum": 67108864 }
105
+ },
106
+ "required": ["artifactId", "digest", "mediaType", "sizeBytes"],
107
+ "additionalProperties": false
108
+ }
109
+ },
110
+ "required": ["artifact"],
111
+ "additionalProperties": false
112
+ }
113
+ ]
114
+ }
115
+ },
116
+ "required": ["commandId", "payloadHash", "status", "observedAt"],
117
+ "additionalProperties": false
118
+ }
119
+ }
120
+ },
121
+ "required": [
122
+ "schemaVersion",
123
+ "protocolVersion",
124
+ "sequence",
125
+ "nodeId",
126
+ "workspaceId",
127
+ "traceId",
128
+ "sentAt",
129
+ "channelGeneration",
130
+ "type",
131
+ "supportedVersions",
132
+ "lastAcknowledgedSequence"
133
+ ],
134
+ "additionalProperties": false
135
+ },
136
+ {
137
+ "type": "object",
138
+ "properties": {
139
+ "schemaVersion": { "type": "number", "const": 1 },
140
+ "protocolVersion": {
141
+ "type": "object",
142
+ "properties": {
143
+ "major": { "type": "integer", "exclusiveMinimum": 0, "maximum": 9007199254740991 },
144
+ "minor": { "type": "integer", "minimum": 0, "maximum": 9007199254740991 }
145
+ },
146
+ "required": ["major", "minor"],
147
+ "additionalProperties": false
148
+ },
149
+ "sequence": { "type": "integer", "minimum": 0, "maximum": 2147483647 },
150
+ "nodeId": { "type": "string", "pattern": "^rnr_[0-9A-HJKMNP-TV-Z]{26}$" },
151
+ "workspaceId": { "type": "string", "pattern": "^wsp_[0-9A-HJKMNP-TV-Z]{26}$" },
152
+ "traceId": { "type": "string", "pattern": "^trc_[0-9A-HJKMNP-TV-Z]{26}$" },
153
+ "sentAt": {
154
+ "type": "string",
155
+ "format": "date-time",
156
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
157
+ },
158
+ "channelGeneration": {
159
+ "type": "integer",
160
+ "exclusiveMinimum": 0,
161
+ "maximum": 9007199254740991
162
+ },
163
+ "type": { "type": "string", "const": "command" },
164
+ "commandId": { "type": "string", "pattern": "^cmd_[0-9A-HJKMNP-TV-Z]{26}$" },
165
+ "idempotencyKey": {
166
+ "type": "string",
167
+ "minLength": 16,
168
+ "maxLength": 128,
169
+ "pattern": "^[A-Za-z0-9._:-]+$"
170
+ },
171
+ "payloadHash": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
172
+ "issuedAt": {
173
+ "type": "string",
174
+ "format": "date-time",
175
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
176
+ },
177
+ "expiresAt": {
178
+ "type": "string",
179
+ "format": "date-time",
180
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
181
+ },
182
+ "family": { "type": "string", "enum": ["runtime", "context_provider"] },
183
+ "operation": {
184
+ "type": "string",
185
+ "enum": [
186
+ "runtime.execute",
187
+ "runtime.cancel",
188
+ "runtime.input",
189
+ "runtime.approval",
190
+ "runtime.status",
191
+ "runtime.session",
192
+ "context.status",
193
+ "context.read",
194
+ "context.write"
195
+ ]
196
+ },
197
+ "driver": {
198
+ "type": "object",
199
+ "properties": {
200
+ "family": { "type": "string", "pattern": "^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$" },
201
+ "version": { "type": "string", "pattern": "^\\d+\\.\\d+\\.\\d+(?:-[0-9A-Za-z.-]+)?$" }
202
+ },
203
+ "required": ["family", "version"],
204
+ "additionalProperties": false
205
+ },
206
+ "runtimeConnectionId": { "type": "string", "pattern": "^rtc_[0-9A-HJKMNP-TV-Z]{26}$" },
207
+ "executionId": { "type": "string", "pattern": "^exe_[0-9A-HJKMNP-TV-Z]{26}$" },
208
+ "attemptId": { "type": "string", "pattern": "^att_[0-9A-HJKMNP-TV-Z]{26}$" },
209
+ "providerRef": { "type": "string", "pattern": "^pvr_[0-9A-HJKMNP-TV-Z]{26}$" },
210
+ "authorizationRef": {
211
+ "type": "string",
212
+ "minLength": 16,
213
+ "maxLength": 128,
214
+ "pattern": "^authz:[A-Za-z0-9._:-]+$"
215
+ },
216
+ "requiredCapabilities": {
217
+ "minItems": 1,
218
+ "maxItems": 64,
219
+ "type": "array",
220
+ "items": { "type": "string", "pattern": "^[a-z][a-z0-9-]*(?:\\.[a-z][a-z0-9-]*)+$" }
221
+ },
222
+ "payload": {
223
+ "anyOf": [
224
+ {
225
+ "type": "object",
226
+ "properties": {
227
+ "version": {
228
+ "type": "integer",
229
+ "exclusiveMinimum": 0,
230
+ "maximum": 9007199254740991
231
+ },
232
+ "parameters": {
233
+ "type": "object",
234
+ "propertyNames": { "type": "string" },
235
+ "additionalProperties": { "$ref": "#/$defs/__schema1" }
236
+ }
237
+ },
238
+ "required": ["version", "parameters"],
239
+ "additionalProperties": false
240
+ },
241
+ {
242
+ "type": "object",
243
+ "properties": {
244
+ "version": {
245
+ "type": "integer",
246
+ "exclusiveMinimum": 0,
247
+ "maximum": 9007199254740991
248
+ },
249
+ "artifact": {
250
+ "type": "object",
251
+ "properties": {
252
+ "artifactId": { "type": "string", "pattern": "^art_[0-9A-HJKMNP-TV-Z]{26}$" },
253
+ "digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
254
+ "mediaType": { "type": "string", "minLength": 1, "maxLength": 128 },
255
+ "sizeBytes": { "type": "integer", "minimum": 0, "maximum": 67108864 }
256
+ },
257
+ "required": ["artifactId", "digest", "mediaType", "sizeBytes"],
258
+ "additionalProperties": false
259
+ }
260
+ },
261
+ "required": ["version", "artifact"],
262
+ "additionalProperties": false
263
+ }
264
+ ]
265
+ }
266
+ },
267
+ "required": [
268
+ "schemaVersion",
269
+ "protocolVersion",
270
+ "sequence",
271
+ "nodeId",
272
+ "workspaceId",
273
+ "traceId",
274
+ "sentAt",
275
+ "channelGeneration",
276
+ "type",
277
+ "commandId",
278
+ "idempotencyKey",
279
+ "payloadHash",
280
+ "issuedAt",
281
+ "expiresAt",
282
+ "family",
283
+ "operation",
284
+ "driver",
285
+ "requiredCapabilities",
286
+ "payload"
287
+ ],
288
+ "additionalProperties": false
289
+ },
290
+ {
291
+ "type": "object",
292
+ "properties": {
293
+ "schemaVersion": { "type": "number", "const": 1 },
294
+ "protocolVersion": {
295
+ "type": "object",
296
+ "properties": {
297
+ "major": { "type": "integer", "exclusiveMinimum": 0, "maximum": 9007199254740991 },
298
+ "minor": { "type": "integer", "minimum": 0, "maximum": 9007199254740991 }
299
+ },
300
+ "required": ["major", "minor"],
301
+ "additionalProperties": false
302
+ },
303
+ "sequence": { "type": "integer", "minimum": 0, "maximum": 2147483647 },
304
+ "nodeId": { "type": "string", "pattern": "^rnr_[0-9A-HJKMNP-TV-Z]{26}$" },
305
+ "workspaceId": { "type": "string", "pattern": "^wsp_[0-9A-HJKMNP-TV-Z]{26}$" },
306
+ "traceId": { "type": "string", "pattern": "^trc_[0-9A-HJKMNP-TV-Z]{26}$" },
307
+ "sentAt": {
308
+ "type": "string",
309
+ "format": "date-time",
310
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
311
+ },
312
+ "channelGeneration": {
313
+ "type": "integer",
314
+ "exclusiveMinimum": 0,
315
+ "maximum": 9007199254740991
316
+ },
317
+ "type": { "type": "string", "const": "ack" },
318
+ "commandId": { "type": "string", "pattern": "^cmd_[0-9A-HJKMNP-TV-Z]{26}$" },
319
+ "payloadHash": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
320
+ "disposition": { "type": "string", "enum": ["accepted", "replayed", "rejected", "expired"] }
321
+ },
322
+ "required": [
323
+ "schemaVersion",
324
+ "protocolVersion",
325
+ "sequence",
326
+ "nodeId",
327
+ "workspaceId",
328
+ "traceId",
329
+ "sentAt",
330
+ "channelGeneration",
331
+ "type",
332
+ "commandId",
333
+ "payloadHash",
334
+ "disposition"
335
+ ],
336
+ "additionalProperties": false
337
+ },
338
+ {
339
+ "type": "object",
340
+ "properties": {
341
+ "schemaVersion": { "type": "number", "const": 1 },
342
+ "protocolVersion": {
343
+ "type": "object",
344
+ "properties": {
345
+ "major": { "type": "integer", "exclusiveMinimum": 0, "maximum": 9007199254740991 },
346
+ "minor": { "type": "integer", "minimum": 0, "maximum": 9007199254740991 }
347
+ },
348
+ "required": ["major", "minor"],
349
+ "additionalProperties": false
350
+ },
351
+ "sequence": { "type": "integer", "minimum": 0, "maximum": 2147483647 },
352
+ "nodeId": { "type": "string", "pattern": "^rnr_[0-9A-HJKMNP-TV-Z]{26}$" },
353
+ "workspaceId": { "type": "string", "pattern": "^wsp_[0-9A-HJKMNP-TV-Z]{26}$" },
354
+ "traceId": { "type": "string", "pattern": "^trc_[0-9A-HJKMNP-TV-Z]{26}$" },
355
+ "sentAt": {
356
+ "type": "string",
357
+ "format": "date-time",
358
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
359
+ },
360
+ "channelGeneration": {
361
+ "type": "integer",
362
+ "exclusiveMinimum": 0,
363
+ "maximum": 9007199254740991
364
+ },
365
+ "type": { "type": "string", "const": "progress" },
366
+ "commandId": { "type": "string", "pattern": "^cmd_[0-9A-HJKMNP-TV-Z]{26}$" },
367
+ "payloadHash": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
368
+ "eventSequence": { "type": "integer", "exclusiveMinimum": 0, "maximum": 2147483647 },
369
+ "event": {
370
+ "type": "object",
371
+ "properties": {
372
+ "kind": { "type": "string", "pattern": "^[a-z][a-z0-9-]*(?:\\.[a-z][a-z0-9-]*)+$" },
373
+ "data": {
374
+ "type": "object",
375
+ "propertyNames": { "type": "string" },
376
+ "additionalProperties": { "$ref": "#/$defs/__schema2" }
377
+ }
378
+ },
379
+ "required": ["kind", "data"],
380
+ "additionalProperties": false
381
+ }
382
+ },
383
+ "required": [
384
+ "schemaVersion",
385
+ "protocolVersion",
386
+ "sequence",
387
+ "nodeId",
388
+ "workspaceId",
389
+ "traceId",
390
+ "sentAt",
391
+ "channelGeneration",
392
+ "type",
393
+ "commandId",
394
+ "payloadHash",
395
+ "eventSequence",
396
+ "event"
397
+ ],
398
+ "additionalProperties": false
399
+ },
400
+ {
401
+ "type": "object",
402
+ "properties": {
403
+ "schemaVersion": { "type": "number", "const": 1 },
404
+ "protocolVersion": {
405
+ "type": "object",
406
+ "properties": {
407
+ "major": { "type": "integer", "exclusiveMinimum": 0, "maximum": 9007199254740991 },
408
+ "minor": { "type": "integer", "minimum": 0, "maximum": 9007199254740991 }
409
+ },
410
+ "required": ["major", "minor"],
411
+ "additionalProperties": false
412
+ },
413
+ "sequence": { "type": "integer", "minimum": 0, "maximum": 2147483647 },
414
+ "nodeId": { "type": "string", "pattern": "^rnr_[0-9A-HJKMNP-TV-Z]{26}$" },
415
+ "workspaceId": { "type": "string", "pattern": "^wsp_[0-9A-HJKMNP-TV-Z]{26}$" },
416
+ "traceId": { "type": "string", "pattern": "^trc_[0-9A-HJKMNP-TV-Z]{26}$" },
417
+ "sentAt": {
418
+ "type": "string",
419
+ "format": "date-time",
420
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
421
+ },
422
+ "channelGeneration": {
423
+ "type": "integer",
424
+ "exclusiveMinimum": 0,
425
+ "maximum": 9007199254740991
426
+ },
427
+ "type": { "type": "string", "const": "result" },
428
+ "commandId": { "type": "string", "pattern": "^cmd_[0-9A-HJKMNP-TV-Z]{26}$" },
429
+ "payloadHash": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
430
+ "status": { "type": "string", "enum": ["succeeded", "failed", "cancelled"] },
431
+ "completedAt": {
432
+ "type": "string",
433
+ "format": "date-time",
434
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
435
+ },
436
+ "result": {
437
+ "anyOf": [
438
+ {
439
+ "type": "object",
440
+ "properties": {
441
+ "data": {
442
+ "type": "object",
443
+ "propertyNames": { "type": "string" },
444
+ "additionalProperties": { "$ref": "#/$defs/__schema3" }
445
+ }
446
+ },
447
+ "required": ["data"],
448
+ "additionalProperties": false
449
+ },
450
+ {
451
+ "type": "object",
452
+ "properties": {
453
+ "artifact": {
454
+ "type": "object",
455
+ "properties": {
456
+ "artifactId": { "type": "string", "pattern": "^art_[0-9A-HJKMNP-TV-Z]{26}$" },
457
+ "digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
458
+ "mediaType": { "type": "string", "minLength": 1, "maxLength": 128 },
459
+ "sizeBytes": { "type": "integer", "minimum": 0, "maximum": 67108864 }
460
+ },
461
+ "required": ["artifactId", "digest", "mediaType", "sizeBytes"],
462
+ "additionalProperties": false
463
+ }
464
+ },
465
+ "required": ["artifact"],
466
+ "additionalProperties": false
467
+ }
468
+ ]
469
+ }
470
+ },
471
+ "required": [
472
+ "schemaVersion",
473
+ "protocolVersion",
474
+ "sequence",
475
+ "nodeId",
476
+ "workspaceId",
477
+ "traceId",
478
+ "sentAt",
479
+ "channelGeneration",
480
+ "type",
481
+ "commandId",
482
+ "payloadHash",
483
+ "status",
484
+ "completedAt",
485
+ "result"
486
+ ],
487
+ "additionalProperties": false
488
+ },
489
+ {
490
+ "type": "object",
491
+ "properties": {
492
+ "schemaVersion": { "type": "number", "const": 1 },
493
+ "protocolVersion": {
494
+ "type": "object",
495
+ "properties": {
496
+ "major": { "type": "integer", "exclusiveMinimum": 0, "maximum": 9007199254740991 },
497
+ "minor": { "type": "integer", "minimum": 0, "maximum": 9007199254740991 }
498
+ },
499
+ "required": ["major", "minor"],
500
+ "additionalProperties": false
501
+ },
502
+ "sequence": { "type": "integer", "minimum": 0, "maximum": 2147483647 },
503
+ "nodeId": { "type": "string", "pattern": "^rnr_[0-9A-HJKMNP-TV-Z]{26}$" },
504
+ "workspaceId": { "type": "string", "pattern": "^wsp_[0-9A-HJKMNP-TV-Z]{26}$" },
505
+ "traceId": { "type": "string", "pattern": "^trc_[0-9A-HJKMNP-TV-Z]{26}$" },
506
+ "sentAt": {
507
+ "type": "string",
508
+ "format": "date-time",
509
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
510
+ },
511
+ "channelGeneration": {
512
+ "type": "integer",
513
+ "exclusiveMinimum": 0,
514
+ "maximum": 9007199254740991
515
+ },
516
+ "type": { "type": "string", "const": "cancel" },
517
+ "commandId": { "type": "string", "pattern": "^cmd_[0-9A-HJKMNP-TV-Z]{26}$" },
518
+ "payloadHash": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
519
+ "requestedAt": {
520
+ "type": "string",
521
+ "format": "date-time",
522
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
523
+ },
524
+ "reason": {
525
+ "type": "string",
526
+ "enum": ["user_requested", "policy_revoked", "deadline_exceeded", "shutdown"]
527
+ }
528
+ },
529
+ "required": [
530
+ "schemaVersion",
531
+ "protocolVersion",
532
+ "sequence",
533
+ "nodeId",
534
+ "workspaceId",
535
+ "traceId",
536
+ "sentAt",
537
+ "channelGeneration",
538
+ "type",
539
+ "commandId",
540
+ "payloadHash",
541
+ "requestedAt",
542
+ "reason"
543
+ ],
544
+ "additionalProperties": false
545
+ },
546
+ {
547
+ "type": "object",
548
+ "properties": {
549
+ "schemaVersion": { "type": "number", "const": 1 },
550
+ "protocolVersion": {
551
+ "type": "object",
552
+ "properties": {
553
+ "major": { "type": "integer", "exclusiveMinimum": 0, "maximum": 9007199254740991 },
554
+ "minor": { "type": "integer", "minimum": 0, "maximum": 9007199254740991 }
555
+ },
556
+ "required": ["major", "minor"],
557
+ "additionalProperties": false
558
+ },
559
+ "sequence": { "type": "integer", "minimum": 0, "maximum": 2147483647 },
560
+ "nodeId": { "type": "string", "pattern": "^rnr_[0-9A-HJKMNP-TV-Z]{26}$" },
561
+ "workspaceId": { "type": "string", "pattern": "^wsp_[0-9A-HJKMNP-TV-Z]{26}$" },
562
+ "traceId": { "type": "string", "pattern": "^trc_[0-9A-HJKMNP-TV-Z]{26}$" },
563
+ "sentAt": {
564
+ "type": "string",
565
+ "format": "date-time",
566
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
567
+ },
568
+ "channelGeneration": {
569
+ "type": "integer",
570
+ "exclusiveMinimum": 0,
571
+ "maximum": 9007199254740991
572
+ },
573
+ "type": { "type": "string", "const": "heartbeat" },
574
+ "observedAt": {
575
+ "type": "string",
576
+ "format": "date-time",
577
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
578
+ },
579
+ "status": { "type": "string", "enum": ["online", "degraded", "draining"] }
580
+ },
581
+ "required": [
582
+ "schemaVersion",
583
+ "protocolVersion",
584
+ "sequence",
585
+ "nodeId",
586
+ "workspaceId",
587
+ "traceId",
588
+ "sentAt",
589
+ "channelGeneration",
590
+ "type",
591
+ "observedAt",
592
+ "status"
593
+ ],
594
+ "additionalProperties": false
595
+ },
596
+ {
597
+ "type": "object",
598
+ "properties": {
599
+ "schemaVersion": { "type": "number", "const": 1 },
600
+ "protocolVersion": {
601
+ "type": "object",
602
+ "properties": {
603
+ "major": { "type": "integer", "exclusiveMinimum": 0, "maximum": 9007199254740991 },
604
+ "minor": { "type": "integer", "minimum": 0, "maximum": 9007199254740991 }
605
+ },
606
+ "required": ["major", "minor"],
607
+ "additionalProperties": false
608
+ },
609
+ "sequence": { "type": "integer", "minimum": 0, "maximum": 2147483647 },
610
+ "nodeId": { "type": "string", "pattern": "^rnr_[0-9A-HJKMNP-TV-Z]{26}$" },
611
+ "workspaceId": { "type": "string", "pattern": "^wsp_[0-9A-HJKMNP-TV-Z]{26}$" },
612
+ "traceId": { "type": "string", "pattern": "^trc_[0-9A-HJKMNP-TV-Z]{26}$" },
613
+ "sentAt": {
614
+ "type": "string",
615
+ "format": "date-time",
616
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
617
+ },
618
+ "channelGeneration": {
619
+ "type": "integer",
620
+ "exclusiveMinimum": 0,
621
+ "maximum": 9007199254740991
622
+ },
623
+ "type": { "type": "string", "const": "inventory" },
624
+ "mode": { "type": "string", "enum": ["snapshot", "delta"] },
625
+ "snapshotVersion": {
626
+ "type": "integer",
627
+ "exclusiveMinimum": 0,
628
+ "maximum": 9007199254740991
629
+ },
630
+ "baseSnapshotVersion": { "type": "integer", "minimum": 0, "maximum": 9007199254740991 },
631
+ "observedAt": {
632
+ "type": "string",
633
+ "format": "date-time",
634
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
635
+ },
636
+ "runtimeDrivers": {
637
+ "maxItems": 128,
638
+ "type": "array",
639
+ "items": {
640
+ "type": "object",
641
+ "properties": {
642
+ "opaqueRef": { "type": "string", "pattern": "^(?:nref|pvr)_[0-9A-HJKMNP-TV-Z]{26}$" },
643
+ "driverFamily": { "type": "string", "pattern": "^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$" },
644
+ "adapterVersion": {
645
+ "type": "string",
646
+ "pattern": "^\\d+\\.\\d+\\.\\d+(?:-[0-9A-Za-z.-]+)?$"
647
+ },
648
+ "driverVersion": {
649
+ "type": "string",
650
+ "pattern": "^\\d+\\.\\d+\\.\\d+(?:-[0-9A-Za-z.-]+)?$"
651
+ },
652
+ "harnessVersion": {
653
+ "type": "string",
654
+ "pattern": "^\\d+\\.\\d+\\.\\d+(?:-[0-9A-Za-z.-]+)?$"
655
+ },
656
+ "protocolVersion": {
657
+ "type": "object",
658
+ "properties": {
659
+ "major": {
660
+ "type": "integer",
661
+ "exclusiveMinimum": 0,
662
+ "maximum": 9007199254740991
663
+ },
664
+ "minor": { "type": "integer", "minimum": 0, "maximum": 9007199254740991 }
665
+ },
666
+ "required": ["major", "minor"],
667
+ "additionalProperties": false
668
+ },
669
+ "health": { "type": "string", "enum": ["healthy", "degraded", "unavailable"] },
670
+ "capabilities": {
671
+ "maxItems": 128,
672
+ "type": "array",
673
+ "items": { "type": "string", "pattern": "^[a-z][a-z0-9-]*(?:\\.[a-z][a-z0-9-]*)+$" }
674
+ },
675
+ "limitations": {
676
+ "maxItems": 64,
677
+ "type": "array",
678
+ "items": { "type": "string", "pattern": "^[A-Z][A-Z0-9_]*$" }
679
+ }
680
+ },
681
+ "required": [
682
+ "opaqueRef",
683
+ "driverFamily",
684
+ "driverVersion",
685
+ "protocolVersion",
686
+ "health",
687
+ "capabilities",
688
+ "limitations"
689
+ ],
690
+ "additionalProperties": false
691
+ }
692
+ },
693
+ "contextProviders": {
694
+ "maxItems": 32,
695
+ "type": "array",
696
+ "items": {
697
+ "type": "object",
698
+ "properties": {
699
+ "opaqueRef": { "type": "string", "pattern": "^(?:nref|pvr)_[0-9A-HJKMNP-TV-Z]{26}$" },
700
+ "driverFamily": { "type": "string", "pattern": "^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$" },
701
+ "adapterVersion": {
702
+ "type": "string",
703
+ "pattern": "^\\d+\\.\\d+\\.\\d+(?:-[0-9A-Za-z.-]+)?$"
704
+ },
705
+ "driverVersion": {
706
+ "type": "string",
707
+ "pattern": "^\\d+\\.\\d+\\.\\d+(?:-[0-9A-Za-z.-]+)?$"
708
+ },
709
+ "harnessVersion": {
710
+ "type": "string",
711
+ "pattern": "^\\d+\\.\\d+\\.\\d+(?:-[0-9A-Za-z.-]+)?$"
712
+ },
713
+ "protocolVersion": {
714
+ "type": "object",
715
+ "properties": {
716
+ "major": {
717
+ "type": "integer",
718
+ "exclusiveMinimum": 0,
719
+ "maximum": 9007199254740991
720
+ },
721
+ "minor": { "type": "integer", "minimum": 0, "maximum": 9007199254740991 }
722
+ },
723
+ "required": ["major", "minor"],
724
+ "additionalProperties": false
725
+ },
726
+ "health": { "type": "string", "enum": ["healthy", "degraded", "unavailable"] },
727
+ "capabilities": {
728
+ "maxItems": 128,
729
+ "type": "array",
730
+ "items": { "type": "string", "pattern": "^[a-z][a-z0-9-]*(?:\\.[a-z][a-z0-9-]*)+$" }
731
+ },
732
+ "limitations": {
733
+ "maxItems": 64,
734
+ "type": "array",
735
+ "items": { "type": "string", "pattern": "^[A-Z][A-Z0-9_]*$" }
736
+ }
737
+ },
738
+ "required": [
739
+ "opaqueRef",
740
+ "driverFamily",
741
+ "driverVersion",
742
+ "protocolVersion",
743
+ "health",
744
+ "capabilities",
745
+ "limitations"
746
+ ],
747
+ "additionalProperties": false
748
+ }
749
+ },
750
+ "removedRuntimeRefs": {
751
+ "maxItems": 128,
752
+ "type": "array",
753
+ "items": { "type": "string", "pattern": "^nref_[0-9A-HJKMNP-TV-Z]{26}$" }
754
+ }
755
+ },
756
+ "required": [
757
+ "schemaVersion",
758
+ "protocolVersion",
759
+ "sequence",
760
+ "nodeId",
761
+ "workspaceId",
762
+ "traceId",
763
+ "sentAt",
764
+ "channelGeneration",
765
+ "type",
766
+ "snapshotVersion",
767
+ "observedAt",
768
+ "runtimeDrivers",
769
+ "contextProviders"
770
+ ],
771
+ "additionalProperties": false
772
+ },
773
+ {
774
+ "type": "object",
775
+ "properties": {
776
+ "schemaVersion": { "type": "number", "const": 1 },
777
+ "protocolVersion": {
778
+ "type": "object",
779
+ "properties": {
780
+ "major": { "type": "integer", "exclusiveMinimum": 0, "maximum": 9007199254740991 },
781
+ "minor": { "type": "integer", "minimum": 0, "maximum": 9007199254740991 }
782
+ },
783
+ "required": ["major", "minor"],
784
+ "additionalProperties": false
785
+ },
786
+ "sequence": { "type": "integer", "minimum": 0, "maximum": 2147483647 },
787
+ "nodeId": { "type": "string", "pattern": "^rnr_[0-9A-HJKMNP-TV-Z]{26}$" },
788
+ "workspaceId": { "type": "string", "pattern": "^wsp_[0-9A-HJKMNP-TV-Z]{26}$" },
789
+ "traceId": { "type": "string", "pattern": "^trc_[0-9A-HJKMNP-TV-Z]{26}$" },
790
+ "sentAt": {
791
+ "type": "string",
792
+ "format": "date-time",
793
+ "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
794
+ },
795
+ "channelGeneration": {
796
+ "type": "integer",
797
+ "exclusiveMinimum": 0,
798
+ "maximum": 9007199254740991
799
+ },
800
+ "type": { "type": "string", "const": "error" },
801
+ "commandId": { "type": "string", "pattern": "^cmd_[0-9A-HJKMNP-TV-Z]{26}$" },
802
+ "payloadHash": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
803
+ "code": { "type": "string", "maxLength": 96, "pattern": "^[A-Z][A-Z0-9_]*$" },
804
+ "retryable": { "type": "boolean" }
805
+ },
806
+ "required": [
807
+ "schemaVersion",
808
+ "protocolVersion",
809
+ "sequence",
810
+ "nodeId",
811
+ "workspaceId",
812
+ "traceId",
813
+ "sentAt",
814
+ "channelGeneration",
815
+ "type",
816
+ "code",
817
+ "retryable"
818
+ ],
819
+ "additionalProperties": false
820
+ }
821
+ ],
822
+ "$defs": {
823
+ "__schema0": {
824
+ "anyOf": [
825
+ { "type": "string" },
826
+ { "type": "number" },
827
+ { "type": "boolean" },
828
+ { "type": "null" },
829
+ { "type": "array", "items": { "$ref": "#/$defs/__schema0" } },
830
+ {
831
+ "type": "object",
832
+ "propertyNames": { "type": "string" },
833
+ "additionalProperties": { "$ref": "#/$defs/__schema0" }
834
+ }
835
+ ]
836
+ },
837
+ "__schema1": {
838
+ "anyOf": [
839
+ { "type": "string" },
840
+ { "type": "number" },
841
+ { "type": "boolean" },
842
+ { "type": "null" },
843
+ { "type": "array", "items": { "$ref": "#/$defs/__schema1" } },
844
+ {
845
+ "type": "object",
846
+ "propertyNames": { "type": "string" },
847
+ "additionalProperties": { "$ref": "#/$defs/__schema1" }
848
+ }
849
+ ]
850
+ },
851
+ "__schema2": {
852
+ "anyOf": [
853
+ { "type": "string" },
854
+ { "type": "number" },
855
+ { "type": "boolean" },
856
+ { "type": "null" },
857
+ { "type": "array", "items": { "$ref": "#/$defs/__schema2" } },
858
+ {
859
+ "type": "object",
860
+ "propertyNames": { "type": "string" },
861
+ "additionalProperties": { "$ref": "#/$defs/__schema2" }
862
+ }
863
+ ]
864
+ },
865
+ "__schema3": {
866
+ "anyOf": [
867
+ { "type": "string" },
868
+ { "type": "number" },
869
+ { "type": "boolean" },
870
+ { "type": "null" },
871
+ { "type": "array", "items": { "$ref": "#/$defs/__schema3" } },
872
+ {
873
+ "type": "object",
874
+ "propertyNames": { "type": "string" },
875
+ "additionalProperties": { "$ref": "#/$defs/__schema3" }
876
+ }
877
+ ]
878
+ }
879
+ },
880
+ "x-control-plane-prohibitedPayloadKeys": [
881
+ "credential",
882
+ "databaseId",
883
+ "endpoint",
884
+ "executable",
885
+ "localPath",
886
+ "password",
887
+ "privateKey",
888
+ "projectId",
889
+ "sourceScope",
890
+ "token",
891
+ "url"
892
+ ]
893
+ }