@qlever-llc/trellis 0.10.17 → 0.19.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 (283) hide show
  1. package/esm/auth/mod.d.ts +1 -1
  2. package/esm/auth/mod.d.ts.map +1 -1
  3. package/esm/auth/mod.js +1 -1
  4. package/esm/auth/protocol.d.ts +416 -398
  5. package/esm/auth/protocol.d.ts.map +1 -1
  6. package/esm/auth/protocol.js +35 -33
  7. package/esm/codec.d.ts +1 -0
  8. package/esm/codec.d.ts.map +1 -1
  9. package/esm/codec.js +1 -0
  10. package/esm/contract_support/canonical.d.ts +3 -0
  11. package/esm/contract_support/canonical.d.ts.map +1 -1
  12. package/esm/contract_support/canonical.js +3 -0
  13. package/esm/contract_support/mod.d.ts +28 -4
  14. package/esm/contract_support/mod.d.ts.map +1 -1
  15. package/esm/contract_support/mod.js +85 -4
  16. package/esm/contract_support/protocol.d.ts +92 -7
  17. package/esm/contract_support/protocol.d.ts.map +1 -1
  18. package/esm/contract_support/protocol.js +40 -6
  19. package/esm/errors/index.d.ts +9 -9
  20. package/esm/generated-sdk/auth/api.d.ts +4 -1
  21. package/esm/generated-sdk/auth/api.d.ts.map +1 -1
  22. package/esm/generated-sdk/auth/api.js +6 -1
  23. package/esm/generated-sdk/auth/client.d.ts +47 -32
  24. package/esm/generated-sdk/auth/client.d.ts.map +1 -1
  25. package/esm/generated-sdk/auth/contract.d.ts +1 -1
  26. package/esm/generated-sdk/auth/contract.d.ts.map +1 -1
  27. package/esm/generated-sdk/auth/contract.js +1570 -1202
  28. package/esm/generated-sdk/auth/schemas.d.ts +1757 -1759
  29. package/esm/generated-sdk/auth/schemas.d.ts.map +1 -1
  30. package/esm/generated-sdk/auth/schemas.js +963 -768
  31. package/esm/generated-sdk/auth/types.d.ts +292 -302
  32. package/esm/generated-sdk/auth/types.d.ts.map +1 -1
  33. package/esm/generated-sdk/auth/types.js +1 -1
  34. package/esm/generated-sdk/health/client.d.ts +4 -4
  35. package/esm/generated-sdk/health/client.d.ts.map +1 -1
  36. package/esm/generated-sdk/health/contract.d.ts +1 -1
  37. package/esm/generated-sdk/health/contract.d.ts.map +1 -1
  38. package/esm/generated-sdk/health/contract.js +2 -10
  39. package/esm/generated-sdk/health/schemas.d.ts +1 -14
  40. package/esm/generated-sdk/health/schemas.d.ts.map +1 -1
  41. package/esm/generated-sdk/health/schemas.js +1 -9
  42. package/esm/generated-sdk/health/types.d.ts +3 -5
  43. package/esm/generated-sdk/health/types.d.ts.map +1 -1
  44. package/esm/generated-sdk/health/types.js +1 -2
  45. package/esm/generated-sdk/jobs/api.d.ts +13 -0
  46. package/esm/generated-sdk/jobs/api.d.ts.map +1 -1
  47. package/esm/generated-sdk/jobs/client.d.ts +6 -4
  48. package/esm/generated-sdk/jobs/client.d.ts.map +1 -1
  49. package/esm/generated-sdk/jobs/contract.d.ts +14 -1
  50. package/esm/generated-sdk/jobs/contract.d.ts.map +1 -1
  51. package/esm/generated-sdk/jobs/contract.js +268 -1
  52. package/esm/generated-sdk/jobs/owned_api.d.ts +13 -0
  53. package/esm/generated-sdk/jobs/owned_api.d.ts.map +1 -1
  54. package/esm/generated-sdk/jobs/owned_api.js +20 -1
  55. package/esm/generated-sdk/jobs/schemas.d.ts +437 -0
  56. package/esm/generated-sdk/jobs/schemas.d.ts.map +1 -1
  57. package/esm/generated-sdk/jobs/schemas.js +211 -0
  58. package/esm/generated-sdk/jobs/types.d.ts +123 -1
  59. package/esm/generated-sdk/jobs/types.d.ts.map +1 -1
  60. package/esm/generated-sdk/jobs/types.js +1 -1
  61. package/esm/generated-sdk/state/client.d.ts +4 -4
  62. package/esm/generated-sdk/state/client.d.ts.map +1 -1
  63. package/esm/generated-sdk/trellis-core/api.d.ts +4 -1
  64. package/esm/generated-sdk/trellis-core/api.d.ts.map +1 -1
  65. package/esm/generated-sdk/trellis-core/api.js +6 -1
  66. package/esm/generated-sdk/trellis-core/client.d.ts +28 -3
  67. package/esm/generated-sdk/trellis-core/client.d.ts.map +1 -1
  68. package/esm/generated-sdk/trellis-core/contract.d.ts +1 -1
  69. package/esm/generated-sdk/trellis-core/contract.d.ts.map +1 -1
  70. package/esm/generated-sdk/trellis-core/contract.js +91 -1
  71. package/esm/generated-sdk/trellis-core/schemas.d.ts +113 -0
  72. package/esm/generated-sdk/trellis-core/schemas.d.ts.map +1 -1
  73. package/esm/generated-sdk/trellis-core/schemas.js +81 -0
  74. package/esm/generated-sdk/trellis-core/types.d.ts +23 -1
  75. package/esm/generated-sdk/trellis-core/types.d.ts.map +1 -1
  76. package/esm/generated-sdk/trellis-core/types.js +1 -1
  77. package/esm/health.d.ts +1 -1
  78. package/esm/health.d.ts.map +1 -1
  79. package/esm/health.js +1 -1
  80. package/esm/index.d.ts +2 -2
  81. package/esm/index.d.ts.map +1 -1
  82. package/esm/index.js +1 -1
  83. package/esm/jobs.d.ts +69 -3
  84. package/esm/jobs.d.ts.map +1 -1
  85. package/esm/jobs.js +92 -3
  86. package/esm/server/health.d.ts +2 -6
  87. package/esm/server/health.d.ts.map +1 -1
  88. package/esm/server/health_schemas.d.ts +0 -8
  89. package/esm/server/health_schemas.d.ts.map +1 -1
  90. package/esm/server/health_schemas.js +0 -5
  91. package/esm/server/internal_jobs/bindings.d.ts +11 -0
  92. package/esm/server/internal_jobs/bindings.d.ts.map +1 -1
  93. package/esm/server/internal_jobs/job-manager.d.ts +44 -1
  94. package/esm/server/internal_jobs/job-manager.d.ts.map +1 -1
  95. package/esm/server/internal_jobs/job-manager.js +361 -51
  96. package/esm/server/internal_jobs/key-coordinator.d.ts +260 -0
  97. package/esm/server/internal_jobs/key-coordinator.d.ts.map +1 -0
  98. package/esm/server/internal_jobs/key-coordinator.js +580 -0
  99. package/esm/server/internal_jobs/projection.d.ts.map +1 -1
  100. package/esm/server/internal_jobs/projection.js +2 -0
  101. package/esm/server/internal_jobs/runtime-worker.d.ts +5 -1
  102. package/esm/server/internal_jobs/runtime-worker.d.ts.map +1 -1
  103. package/esm/server/internal_jobs/runtime-worker.js +14 -2
  104. package/esm/server/internal_jobs/types.d.ts +5 -5
  105. package/esm/server/internal_jobs/types.d.ts.map +1 -1
  106. package/esm/server/internal_jobs/types.js +6 -0
  107. package/esm/server/service.d.ts +8 -3
  108. package/esm/server/service.d.ts.map +1 -1
  109. package/esm/server/service.js +127 -6
  110. package/esm/service/drizzle.d.ts +27 -0
  111. package/esm/service/drizzle.d.ts.map +1 -0
  112. package/esm/service/drizzle.js +84 -0
  113. package/esm/service/mod.d.ts +1 -1
  114. package/esm/service/mod.d.ts.map +1 -1
  115. package/esm/service/mod.js +1 -1
  116. package/esm/service/outbox_inbox.d.ts.map +1 -1
  117. package/esm/service/outbox_inbox.js +13 -2
  118. package/esm/trellis.d.ts +24 -8
  119. package/esm/trellis.d.ts.map +1 -1
  120. package/esm/trellis.js +44 -22
  121. package/package.json +14 -2
  122. package/script/auth/mod.d.ts +1 -1
  123. package/script/auth/mod.d.ts.map +1 -1
  124. package/script/auth/mod.js +22 -6
  125. package/script/auth/protocol.d.ts +416 -398
  126. package/script/auth/protocol.d.ts.map +1 -1
  127. package/script/auth/protocol.js +40 -37
  128. package/script/codec.d.ts +1 -0
  129. package/script/codec.d.ts.map +1 -1
  130. package/script/codec.js +1 -0
  131. package/script/contract_support/canonical.d.ts +3 -0
  132. package/script/contract_support/canonical.d.ts.map +1 -1
  133. package/script/contract_support/canonical.js +3 -0
  134. package/script/contract_support/mod.d.ts +28 -4
  135. package/script/contract_support/mod.d.ts.map +1 -1
  136. package/script/contract_support/mod.js +90 -4
  137. package/script/contract_support/protocol.d.ts +92 -7
  138. package/script/contract_support/protocol.d.ts.map +1 -1
  139. package/script/contract_support/protocol.js +41 -7
  140. package/script/errors/index.d.ts +9 -9
  141. package/script/generated-sdk/auth/api.d.ts +4 -1
  142. package/script/generated-sdk/auth/api.d.ts.map +1 -1
  143. package/script/generated-sdk/auth/api.js +6 -1
  144. package/script/generated-sdk/auth/client.d.ts +47 -32
  145. package/script/generated-sdk/auth/client.d.ts.map +1 -1
  146. package/script/generated-sdk/auth/contract.d.ts +1 -1
  147. package/script/generated-sdk/auth/contract.d.ts.map +1 -1
  148. package/script/generated-sdk/auth/contract.js +1570 -1202
  149. package/script/generated-sdk/auth/schemas.d.ts +1757 -1759
  150. package/script/generated-sdk/auth/schemas.d.ts.map +1 -1
  151. package/script/generated-sdk/auth/schemas.js +963 -768
  152. package/script/generated-sdk/auth/types.d.ts +292 -302
  153. package/script/generated-sdk/auth/types.d.ts.map +1 -1
  154. package/script/generated-sdk/auth/types.js +1 -1
  155. package/script/generated-sdk/health/client.d.ts +4 -4
  156. package/script/generated-sdk/health/client.d.ts.map +1 -1
  157. package/script/generated-sdk/health/contract.d.ts +1 -1
  158. package/script/generated-sdk/health/contract.d.ts.map +1 -1
  159. package/script/generated-sdk/health/contract.js +2 -10
  160. package/script/generated-sdk/health/schemas.d.ts +1 -14
  161. package/script/generated-sdk/health/schemas.d.ts.map +1 -1
  162. package/script/generated-sdk/health/schemas.js +1 -9
  163. package/script/generated-sdk/health/types.d.ts +3 -5
  164. package/script/generated-sdk/health/types.d.ts.map +1 -1
  165. package/script/generated-sdk/health/types.js +1 -2
  166. package/script/generated-sdk/jobs/api.d.ts +13 -0
  167. package/script/generated-sdk/jobs/api.d.ts.map +1 -1
  168. package/script/generated-sdk/jobs/client.d.ts +6 -4
  169. package/script/generated-sdk/jobs/client.d.ts.map +1 -1
  170. package/script/generated-sdk/jobs/contract.d.ts +14 -1
  171. package/script/generated-sdk/jobs/contract.d.ts.map +1 -1
  172. package/script/generated-sdk/jobs/contract.js +268 -1
  173. package/script/generated-sdk/jobs/owned_api.d.ts +13 -0
  174. package/script/generated-sdk/jobs/owned_api.d.ts.map +1 -1
  175. package/script/generated-sdk/jobs/owned_api.js +19 -0
  176. package/script/generated-sdk/jobs/schemas.d.ts +437 -0
  177. package/script/generated-sdk/jobs/schemas.d.ts.map +1 -1
  178. package/script/generated-sdk/jobs/schemas.js +212 -1
  179. package/script/generated-sdk/jobs/types.d.ts +123 -1
  180. package/script/generated-sdk/jobs/types.d.ts.map +1 -1
  181. package/script/generated-sdk/jobs/types.js +1 -1
  182. package/script/generated-sdk/state/client.d.ts +4 -4
  183. package/script/generated-sdk/state/client.d.ts.map +1 -1
  184. package/script/generated-sdk/trellis-core/api.d.ts +4 -1
  185. package/script/generated-sdk/trellis-core/api.d.ts.map +1 -1
  186. package/script/generated-sdk/trellis-core/api.js +6 -1
  187. package/script/generated-sdk/trellis-core/client.d.ts +28 -3
  188. package/script/generated-sdk/trellis-core/client.d.ts.map +1 -1
  189. package/script/generated-sdk/trellis-core/contract.d.ts +1 -1
  190. package/script/generated-sdk/trellis-core/contract.d.ts.map +1 -1
  191. package/script/generated-sdk/trellis-core/contract.js +91 -1
  192. package/script/generated-sdk/trellis-core/schemas.d.ts +113 -0
  193. package/script/generated-sdk/trellis-core/schemas.d.ts.map +1 -1
  194. package/script/generated-sdk/trellis-core/schemas.js +81 -0
  195. package/script/generated-sdk/trellis-core/types.d.ts +23 -1
  196. package/script/generated-sdk/trellis-core/types.d.ts.map +1 -1
  197. package/script/generated-sdk/trellis-core/types.js +1 -1
  198. package/script/health.d.ts +1 -1
  199. package/script/health.d.ts.map +1 -1
  200. package/script/health.js +1 -2
  201. package/script/index.d.ts +2 -2
  202. package/script/index.d.ts.map +1 -1
  203. package/script/index.js +2 -3
  204. package/script/jobs.d.ts +69 -3
  205. package/script/jobs.d.ts.map +1 -1
  206. package/script/jobs.js +93 -3
  207. package/script/server/health.d.ts +2 -6
  208. package/script/server/health.d.ts.map +1 -1
  209. package/script/server/health_schemas.d.ts +0 -8
  210. package/script/server/health_schemas.d.ts.map +1 -1
  211. package/script/server/health_schemas.js +1 -6
  212. package/script/server/internal_jobs/bindings.d.ts +11 -0
  213. package/script/server/internal_jobs/bindings.d.ts.map +1 -1
  214. package/script/server/internal_jobs/job-manager.d.ts +44 -1
  215. package/script/server/internal_jobs/job-manager.d.ts.map +1 -1
  216. package/script/server/internal_jobs/job-manager.js +361 -51
  217. package/script/server/internal_jobs/key-coordinator.d.ts +260 -0
  218. package/script/server/internal_jobs/key-coordinator.d.ts.map +1 -0
  219. package/script/server/internal_jobs/key-coordinator.js +593 -0
  220. package/script/server/internal_jobs/projection.d.ts.map +1 -1
  221. package/script/server/internal_jobs/projection.js +2 -0
  222. package/script/server/internal_jobs/runtime-worker.d.ts +5 -1
  223. package/script/server/internal_jobs/runtime-worker.d.ts.map +1 -1
  224. package/script/server/internal_jobs/runtime-worker.js +14 -2
  225. package/script/server/internal_jobs/types.d.ts +5 -5
  226. package/script/server/internal_jobs/types.d.ts.map +1 -1
  227. package/script/server/internal_jobs/types.js +6 -0
  228. package/script/server/service.d.ts +8 -3
  229. package/script/server/service.d.ts.map +1 -1
  230. package/script/server/service.js +126 -5
  231. package/script/service/drizzle.d.ts +27 -0
  232. package/script/service/drizzle.d.ts.map +1 -0
  233. package/script/service/drizzle.js +88 -0
  234. package/script/service/mod.d.ts +1 -1
  235. package/script/service/mod.d.ts.map +1 -1
  236. package/script/service/mod.js +1 -2
  237. package/script/service/outbox_inbox.d.ts.map +1 -1
  238. package/script/service/outbox_inbox.js +13 -2
  239. package/script/trellis.d.ts +24 -8
  240. package/script/trellis.d.ts.map +1 -1
  241. package/script/trellis.js +44 -22
  242. package/src/auth/mod.ts +28 -2
  243. package/src/auth/protocol.ts +72 -37
  244. package/src/codec.ts +1 -0
  245. package/src/contract_support/canonical.ts +3 -0
  246. package/src/contract_support/mod.ts +158 -5
  247. package/src/contract_support/protocol.ts +56 -9
  248. package/src/health.ts +0 -1
  249. package/src/index.ts +2 -1
  250. package/src/jobs.ts +138 -1
  251. package/src/sdk/_generated/auth/api.ts +9 -2
  252. package/src/sdk/_generated/auth/client.ts +85 -78
  253. package/src/sdk/_generated/auth/contract.ts +1803 -1435
  254. package/src/sdk/_generated/auth/schemas.ts +1166 -971
  255. package/src/sdk/_generated/auth/types.ts +330 -314
  256. package/src/sdk/_generated/core/api.ts +9 -2
  257. package/src/sdk/_generated/core/client.ts +41 -2
  258. package/src/sdk/_generated/core/contract.ts +91 -1
  259. package/src/sdk/_generated/core/schemas.ts +81 -0
  260. package/src/sdk/_generated/core/types.ts +23 -1
  261. package/src/sdk/_generated/health/client.ts +6 -6
  262. package/src/sdk/_generated/health/contract.ts +2 -10
  263. package/src/sdk/_generated/health/schemas.ts +1 -9
  264. package/src/sdk/_generated/health/types.ts +6 -2
  265. package/src/sdk/_generated/jobs/client.ts +17 -6
  266. package/src/sdk/_generated/jobs/contract.ts +269 -1
  267. package/src/sdk/_generated/jobs/owned_api.ts +21 -0
  268. package/src/sdk/_generated/jobs/schemas.ts +213 -0
  269. package/src/sdk/_generated/jobs/types.ts +116 -1
  270. package/src/sdk/_generated/state/client.ts +6 -6
  271. package/src/server/health.ts +2 -6
  272. package/src/server/health_schemas.ts +0 -6
  273. package/src/server/internal_jobs/bindings.ts +11 -0
  274. package/src/server/internal_jobs/job-manager.ts +436 -16
  275. package/src/server/internal_jobs/key-coordinator.ts +955 -0
  276. package/src/server/internal_jobs/projection.ts +2 -0
  277. package/src/server/internal_jobs/runtime-worker.ts +17 -1
  278. package/src/server/internal_jobs/types.ts +6 -0
  279. package/src/server/service.ts +168 -9
  280. package/src/service/drizzle.ts +125 -0
  281. package/src/service/mod.ts +0 -1
  282. package/src/service/outbox_inbox.ts +16 -6
  283. package/src/trellis.ts +76 -27
@@ -4,7 +4,7 @@ exports.use = exports.sdk = exports.CONTRACT = exports.CONTRACT_DIGEST = exports
4
4
  const api_js_1 = require("./api.js");
5
5
  const CONTRACT_MODULE_METADATA = Symbol.for("@qlever-llc/trellis/contracts/contract-module");
6
6
  exports.CONTRACT_ID = "trellis.auth@v1";
7
- exports.CONTRACT_DIGEST = "XdqgSxkrIhWOu1ODbOk6-QHLTlI52ZP-6qhYJpIdCMc";
7
+ exports.CONTRACT_DIGEST = "OehMFuEyTKjYpQHhyrijgsZZs1YlG2qkxd8bKffgydc";
8
8
  exports.CONTRACT = {
9
9
  "capabilities": {
10
10
  "trellis.auth::device.review": {
@@ -1294,29 +1294,14 @@ exports.CONTRACT = {
1294
1294
  "type": "object",
1295
1295
  },
1296
1296
  "AuthConnectionsClosedEvent": {
1297
- "allOf": [{
1298
- "properties": {
1299
- "header": {
1300
- "properties": {
1301
- "id": { "type": "string" },
1302
- "time": { "format": "date-time", "type": "string" },
1303
- },
1304
- "required": ["id", "time"],
1305
- "type": "object",
1306
- },
1307
- },
1308
- "required": ["header"],
1309
- "type": "object",
1310
- }, {
1311
- "properties": {
1312
- "id": { "type": "string" },
1313
- "origin": { "type": "string" },
1314
- "sessionKey": { "type": "string" },
1315
- "userNkey": { "type": "string" },
1316
- },
1317
- "required": ["origin", "id", "sessionKey", "userNkey"],
1318
- "type": "object",
1319
- }],
1297
+ "properties": {
1298
+ "id": { "type": "string" },
1299
+ "origin": { "type": "string" },
1300
+ "sessionKey": { "type": "string" },
1301
+ "userNkey": { "type": "string" },
1302
+ },
1303
+ "required": ["origin", "id", "sessionKey", "userNkey"],
1304
+ "type": "object",
1320
1305
  },
1321
1306
  "AuthConnectionsKickRequest": {
1322
1307
  "properties": { "userNkey": { "type": "string" } },
@@ -1329,29 +1314,14 @@ exports.CONTRACT = {
1329
1314
  "type": "object",
1330
1315
  },
1331
1316
  "AuthConnectionsKickedEvent": {
1332
- "allOf": [{
1333
- "properties": {
1334
- "header": {
1335
- "properties": {
1336
- "id": { "type": "string" },
1337
- "time": { "format": "date-time", "type": "string" },
1338
- },
1339
- "required": ["id", "time"],
1340
- "type": "object",
1341
- },
1342
- },
1343
- "required": ["header"],
1344
- "type": "object",
1345
- }, {
1346
- "properties": {
1347
- "id": { "type": "string" },
1348
- "kickedBy": { "type": "string" },
1349
- "origin": { "type": "string" },
1350
- "userNkey": { "type": "string" },
1351
- },
1352
- "required": ["origin", "id", "userNkey", "kickedBy"],
1353
- "type": "object",
1354
- }],
1317
+ "properties": {
1318
+ "id": { "type": "string" },
1319
+ "kickedBy": { "type": "string" },
1320
+ "origin": { "type": "string" },
1321
+ "userNkey": { "type": "string" },
1322
+ },
1323
+ "required": ["origin", "id", "userNkey", "kickedBy"],
1324
+ "type": "object",
1355
1325
  },
1356
1326
  "AuthConnectionsListRequest": {
1357
1327
  "properties": {
@@ -1546,29 +1516,14 @@ exports.CONTRACT = {
1546
1516
  "type": "object",
1547
1517
  },
1548
1518
  "AuthConnectionsOpenedEvent": {
1549
- "allOf": [{
1550
- "properties": {
1551
- "header": {
1552
- "properties": {
1553
- "id": { "type": "string" },
1554
- "time": { "format": "date-time", "type": "string" },
1555
- },
1556
- "required": ["id", "time"],
1557
- "type": "object",
1558
- },
1559
- },
1560
- "required": ["header"],
1561
- "type": "object",
1562
- }, {
1563
- "properties": {
1564
- "id": { "type": "string" },
1565
- "origin": { "type": "string" },
1566
- "sessionKey": { "type": "string" },
1567
- "userNkey": { "type": "string" },
1568
- },
1569
- "required": ["origin", "id", "sessionKey", "userNkey"],
1570
- "type": "object",
1571
- }],
1519
+ "properties": {
1520
+ "id": { "type": "string" },
1521
+ "origin": { "type": "string" },
1522
+ "sessionKey": { "type": "string" },
1523
+ "userNkey": { "type": "string" },
1524
+ },
1525
+ "required": ["origin", "id", "sessionKey", "userNkey"],
1526
+ "type": "object",
1572
1527
  },
1573
1528
  "AuthDeployment": {
1574
1529
  "anyOf": [{
@@ -1627,83 +1582,87 @@ exports.CONTRACT = {
1627
1582
  "type": "array",
1628
1583
  },
1629
1584
  "needs": {
1630
- "items": {
1631
- "anyOf": [{
1585
+ "properties": {
1586
+ "capabilities": {
1587
+ "items": {
1632
1588
  "properties": {
1633
- "contractId": { "minLength": 1, "type": "string" },
1634
- "kind": { "const": "contract", "type": "string" },
1589
+ "capability": { "minLength": 1, "type": "string" },
1635
1590
  "required": { "type": "boolean" },
1636
1591
  },
1637
- "required": ["kind", "contractId", "required"],
1592
+ "required": ["capability", "required"],
1638
1593
  "type": "object",
1639
- }, {
1594
+ },
1595
+ "type": "array",
1596
+ },
1597
+ "contracts": {
1598
+ "items": {
1640
1599
  "properties": {
1641
- "kind": { "const": "surface", "type": "string" },
1600
+ "contractId": { "minLength": 1, "type": "string" },
1642
1601
  "required": { "type": "boolean" },
1643
- "surface": {
1644
- "properties": {
1645
- "action": {
1646
- "anyOf": [
1647
- { "const": "call", "type": "string" },
1648
- { "const": "publish", "type": "string" },
1649
- { "const": "subscribe", "type": "string" },
1650
- { "const": "observe", "type": "string" },
1651
- { "const": "cancel", "type": "string" },
1652
- ],
1653
- },
1654
- "contractId": { "minLength": 1, "type": "string" },
1655
- "kind": {
1656
- "anyOf": [
1657
- { "const": "rpc", "type": "string" },
1658
- { "const": "operation", "type": "string" },
1659
- { "const": "event", "type": "string" },
1660
- { "const": "feed", "type": "string" },
1661
- ],
1662
- },
1663
- "name": { "minLength": 1, "type": "string" },
1664
- },
1665
- "required": ["contractId", "kind", "name"],
1666
- "type": "object",
1667
- },
1668
1602
  },
1669
- "required": ["kind", "surface", "required"],
1603
+ "required": ["contractId", "required"],
1670
1604
  "type": "object",
1671
- }, {
1605
+ },
1606
+ "type": "array",
1607
+ },
1608
+ "resources": {
1609
+ "items": {
1672
1610
  "properties": {
1673
- "capability": { "minLength": 1, "type": "string" },
1674
- "kind": { "const": "capability", "type": "string" },
1611
+ "alias": { "minLength": 1, "type": "string" },
1612
+ "definition": { "type": "object" },
1613
+ "kind": {
1614
+ "anyOf": [
1615
+ { "const": "kv", "type": "string" },
1616
+ { "const": "store", "type": "string" },
1617
+ { "const": "jobs", "type": "string" },
1618
+ { "const": "event-consumer", "type": "string" },
1619
+ { "const": "transfer", "type": "string" },
1620
+ ],
1621
+ },
1675
1622
  "required": { "type": "boolean" },
1676
1623
  },
1677
- "required": ["kind", "capability", "required"],
1624
+ "required": ["kind", "alias", "required"],
1678
1625
  "type": "object",
1679
- }, {
1626
+ },
1627
+ "type": "array",
1628
+ },
1629
+ "surfaces": {
1630
+ "items": {
1680
1631
  "properties": {
1681
- "kind": { "const": "resource", "type": "string" },
1682
- "required": { "type": "boolean" },
1683
- "resource": {
1684
- "properties": {
1685
- "alias": { "minLength": 1, "type": "string" },
1686
- "definition": { "type": "object" },
1687
- "kind": {
1688
- "anyOf": [
1689
- { "const": "kv", "type": "string" },
1690
- { "const": "store", "type": "string" },
1691
- { "const": "jobs", "type": "string" },
1692
- { "const": "event-consumer", "type": "string" },
1693
- { "const": "transfer", "type": "string" },
1694
- ],
1695
- },
1696
- "required": { "type": "boolean" },
1697
- },
1698
- "required": ["kind", "alias", "required"],
1699
- "type": "object",
1632
+ "action": {
1633
+ "anyOf": [
1634
+ { "const": "call", "type": "string" },
1635
+ { "const": "publish", "type": "string" },
1636
+ { "const": "subscribe", "type": "string" },
1637
+ { "const": "observe", "type": "string" },
1638
+ { "const": "cancel", "type": "string" },
1639
+ ],
1640
+ },
1641
+ "contractId": { "minLength": 1, "type": "string" },
1642
+ "kind": {
1643
+ "anyOf": [
1644
+ { "const": "rpc", "type": "string" },
1645
+ { "const": "operation", "type": "string" },
1646
+ { "const": "event", "type": "string" },
1647
+ { "const": "feed", "type": "string" },
1648
+ ],
1700
1649
  },
1650
+ "name": { "minLength": 1, "type": "string" },
1651
+ "required": { "type": "boolean" },
1701
1652
  },
1702
- "required": ["kind", "resource", "required"],
1653
+ "required": ["contractId", "kind", "name", "required"],
1703
1654
  "type": "object",
1704
- }],
1655
+ },
1656
+ "type": "array",
1657
+ },
1705
1658
  },
1706
- "type": "array",
1659
+ "required": [
1660
+ "contracts",
1661
+ "surfaces",
1662
+ "capabilities",
1663
+ "resources",
1664
+ ],
1665
+ "type": "object",
1707
1666
  },
1708
1667
  "resources": {
1709
1668
  "items": {
@@ -1813,83 +1772,87 @@ exports.CONTRACT = {
1813
1772
  "type": "array",
1814
1773
  },
1815
1774
  "needs": {
1816
- "items": {
1817
- "anyOf": [{
1775
+ "properties": {
1776
+ "capabilities": {
1777
+ "items": {
1818
1778
  "properties": {
1819
- "contractId": { "minLength": 1, "type": "string" },
1820
- "kind": { "const": "contract", "type": "string" },
1779
+ "capability": { "minLength": 1, "type": "string" },
1821
1780
  "required": { "type": "boolean" },
1822
1781
  },
1823
- "required": ["kind", "contractId", "required"],
1782
+ "required": ["capability", "required"],
1824
1783
  "type": "object",
1825
- }, {
1784
+ },
1785
+ "type": "array",
1786
+ },
1787
+ "contracts": {
1788
+ "items": {
1826
1789
  "properties": {
1827
- "kind": { "const": "surface", "type": "string" },
1790
+ "contractId": { "minLength": 1, "type": "string" },
1828
1791
  "required": { "type": "boolean" },
1829
- "surface": {
1830
- "properties": {
1831
- "action": {
1832
- "anyOf": [
1833
- { "const": "call", "type": "string" },
1834
- { "const": "publish", "type": "string" },
1835
- { "const": "subscribe", "type": "string" },
1836
- { "const": "observe", "type": "string" },
1837
- { "const": "cancel", "type": "string" },
1838
- ],
1839
- },
1840
- "contractId": { "minLength": 1, "type": "string" },
1841
- "kind": {
1842
- "anyOf": [
1843
- { "const": "rpc", "type": "string" },
1844
- { "const": "operation", "type": "string" },
1845
- { "const": "event", "type": "string" },
1846
- { "const": "feed", "type": "string" },
1847
- ],
1848
- },
1849
- "name": { "minLength": 1, "type": "string" },
1850
- },
1851
- "required": ["contractId", "kind", "name"],
1852
- "type": "object",
1853
- },
1854
1792
  },
1855
- "required": ["kind", "surface", "required"],
1793
+ "required": ["contractId", "required"],
1856
1794
  "type": "object",
1857
- }, {
1795
+ },
1796
+ "type": "array",
1797
+ },
1798
+ "resources": {
1799
+ "items": {
1858
1800
  "properties": {
1859
- "capability": { "minLength": 1, "type": "string" },
1860
- "kind": { "const": "capability", "type": "string" },
1801
+ "alias": { "minLength": 1, "type": "string" },
1802
+ "definition": { "type": "object" },
1803
+ "kind": {
1804
+ "anyOf": [
1805
+ { "const": "kv", "type": "string" },
1806
+ { "const": "store", "type": "string" },
1807
+ { "const": "jobs", "type": "string" },
1808
+ { "const": "event-consumer", "type": "string" },
1809
+ { "const": "transfer", "type": "string" },
1810
+ ],
1811
+ },
1861
1812
  "required": { "type": "boolean" },
1862
1813
  },
1863
- "required": ["kind", "capability", "required"],
1814
+ "required": ["kind", "alias", "required"],
1864
1815
  "type": "object",
1865
- }, {
1816
+ },
1817
+ "type": "array",
1818
+ },
1819
+ "surfaces": {
1820
+ "items": {
1866
1821
  "properties": {
1867
- "kind": { "const": "resource", "type": "string" },
1868
- "required": { "type": "boolean" },
1869
- "resource": {
1870
- "properties": {
1871
- "alias": { "minLength": 1, "type": "string" },
1872
- "definition": { "type": "object" },
1873
- "kind": {
1874
- "anyOf": [
1875
- { "const": "kv", "type": "string" },
1876
- { "const": "store", "type": "string" },
1877
- { "const": "jobs", "type": "string" },
1878
- { "const": "event-consumer", "type": "string" },
1879
- { "const": "transfer", "type": "string" },
1880
- ],
1881
- },
1882
- "required": { "type": "boolean" },
1883
- },
1884
- "required": ["kind", "alias", "required"],
1885
- "type": "object",
1822
+ "action": {
1823
+ "anyOf": [
1824
+ { "const": "call", "type": "string" },
1825
+ { "const": "publish", "type": "string" },
1826
+ { "const": "subscribe", "type": "string" },
1827
+ { "const": "observe", "type": "string" },
1828
+ { "const": "cancel", "type": "string" },
1829
+ ],
1830
+ },
1831
+ "contractId": { "minLength": 1, "type": "string" },
1832
+ "kind": {
1833
+ "anyOf": [
1834
+ { "const": "rpc", "type": "string" },
1835
+ { "const": "operation", "type": "string" },
1836
+ { "const": "event", "type": "string" },
1837
+ { "const": "feed", "type": "string" },
1838
+ ],
1886
1839
  },
1840
+ "name": { "minLength": 1, "type": "string" },
1841
+ "required": { "type": "boolean" },
1887
1842
  },
1888
- "required": ["kind", "resource", "required"],
1843
+ "required": ["contractId", "kind", "name", "required"],
1889
1844
  "type": "object",
1890
- }],
1845
+ },
1846
+ "type": "array",
1847
+ },
1891
1848
  },
1892
- "type": "array",
1849
+ "required": [
1850
+ "contracts",
1851
+ "surfaces",
1852
+ "capabilities",
1853
+ "resources",
1854
+ ],
1855
+ "type": "object",
1893
1856
  },
1894
1857
  "resources": {
1895
1858
  "items": {
@@ -2070,40 +2033,19 @@ exports.CONTRACT = {
2070
2033
  "desiredVersion": { "minLength": 1, "type": "string" },
2071
2034
  "error": { "minLength": 1, "type": "string" },
2072
2035
  "grants": {
2073
- "items": {
2074
- "anyOf": [{
2036
+ "properties": {
2037
+ "capabilities": {
2038
+ "items": {
2075
2039
  "properties": {
2076
2040
  "capability": { "minLength": 1, "type": "string" },
2077
- "kind": { "const": "capability", "type": "string" },
2078
2041
  },
2079
- "required": ["kind", "capability"],
2042
+ "required": ["capability"],
2080
2043
  "type": "object",
2081
- }, {
2082
- "properties": {
2083
- "action": {
2084
- "anyOf": [
2085
- { "const": "call", "type": "string" },
2086
- { "const": "publish", "type": "string" },
2087
- { "const": "subscribe", "type": "string" },
2088
- { "const": "observe", "type": "string" },
2089
- { "const": "cancel", "type": "string" },
2090
- ],
2091
- },
2092
- "contractId": { "minLength": 1, "type": "string" },
2093
- "kind": { "const": "surface", "type": "string" },
2094
- "name": { "minLength": 1, "type": "string" },
2095
- "surfaceKind": {
2096
- "anyOf": [
2097
- { "const": "rpc", "type": "string" },
2098
- { "const": "operation", "type": "string" },
2099
- { "const": "event", "type": "string" },
2100
- { "const": "feed", "type": "string" },
2101
- ],
2102
- },
2103
- },
2104
- "required": ["kind", "contractId", "surfaceKind", "name"],
2105
- "type": "object",
2106
- }, {
2044
+ },
2045
+ "type": "array",
2046
+ },
2047
+ "nats": {
2048
+ "items": {
2107
2049
  "properties": {
2108
2050
  "direction": {
2109
2051
  "anyOf": [{ "const": "publish", "type": "string" }, {
@@ -2120,7 +2062,6 @@ exports.CONTRACT = {
2120
2062
  { "const": "transfer", "type": "string" },
2121
2063
  ],
2122
2064
  },
2123
- "kind": { "const": "nats", "type": "string" },
2124
2065
  "requiredCapabilities": {
2125
2066
  "items": { "minLength": 1, "type": "string" },
2126
2067
  "type": "array",
@@ -2153,16 +2094,46 @@ exports.CONTRACT = {
2153
2094
  },
2154
2095
  },
2155
2096
  "required": [
2156
- "kind",
2157
2097
  "direction",
2158
2098
  "subject",
2159
2099
  "requiredCapabilities",
2160
2100
  "grantSource",
2161
2101
  ],
2162
2102
  "type": "object",
2163
- }],
2103
+ },
2104
+ "type": "array",
2105
+ },
2106
+ "surfaces": {
2107
+ "items": {
2108
+ "properties": {
2109
+ "action": {
2110
+ "anyOf": [
2111
+ { "const": "call", "type": "string" },
2112
+ { "const": "publish", "type": "string" },
2113
+ { "const": "subscribe", "type": "string" },
2114
+ { "const": "observe", "type": "string" },
2115
+ { "const": "cancel", "type": "string" },
2116
+ ],
2117
+ },
2118
+ "contractId": { "minLength": 1, "type": "string" },
2119
+ "name": { "minLength": 1, "type": "string" },
2120
+ "surfaceKind": {
2121
+ "anyOf": [
2122
+ { "const": "rpc", "type": "string" },
2123
+ { "const": "operation", "type": "string" },
2124
+ { "const": "event", "type": "string" },
2125
+ { "const": "feed", "type": "string" },
2126
+ ],
2127
+ },
2128
+ },
2129
+ "required": ["contractId", "surfaceKind", "name"],
2130
+ "type": "object",
2131
+ },
2132
+ "type": "array",
2133
+ },
2164
2134
  },
2165
- "type": "array",
2135
+ "required": ["capabilities", "surfaces", "nats"],
2136
+ "type": "object",
2166
2137
  },
2167
2138
  "reconciledAt": {
2168
2139
  "anyOf": [{ "format": "date-time", "type": "string" }, {
@@ -2713,89 +2684,92 @@ exports.CONTRACT = {
2713
2684
  "type": "array",
2714
2685
  },
2715
2686
  "needs": {
2716
- "items": {
2717
- "anyOf": [{
2687
+ "properties": {
2688
+ "capabilities": {
2689
+ "items": {
2718
2690
  "properties": {
2719
- "contractId": { "minLength": 1, "type": "string" },
2720
- "kind": { "const": "contract", "type": "string" },
2691
+ "capability": { "minLength": 1, "type": "string" },
2721
2692
  "required": { "type": "boolean" },
2722
2693
  },
2723
- "required": ["kind", "contractId", "required"],
2694
+ "required": ["capability", "required"],
2724
2695
  "type": "object",
2725
- }, {
2696
+ },
2697
+ "type": "array",
2698
+ },
2699
+ "contracts": {
2700
+ "items": {
2726
2701
  "properties": {
2727
- "kind": { "const": "surface", "type": "string" },
2702
+ "contractId": { "minLength": 1, "type": "string" },
2728
2703
  "required": { "type": "boolean" },
2729
- "surface": {
2730
- "properties": {
2731
- "action": {
2732
- "anyOf": [
2733
- { "const": "call", "type": "string" },
2734
- { "const": "publish", "type": "string" },
2735
- { "const": "subscribe", "type": "string" },
2736
- { "const": "observe", "type": "string" },
2737
- { "const": "cancel", "type": "string" },
2738
- ],
2739
- },
2740
- "contractId": {
2741
- "minLength": 1,
2742
- "type": "string",
2743
- },
2744
- "kind": {
2745
- "anyOf": [
2746
- { "const": "rpc", "type": "string" },
2747
- { "const": "operation", "type": "string" },
2748
- { "const": "event", "type": "string" },
2749
- { "const": "feed", "type": "string" },
2750
- ],
2751
- },
2752
- "name": { "minLength": 1, "type": "string" },
2753
- },
2754
- "required": ["contractId", "kind", "name"],
2755
- "type": "object",
2756
- },
2757
2704
  },
2758
- "required": ["kind", "surface", "required"],
2705
+ "required": ["contractId", "required"],
2759
2706
  "type": "object",
2760
- }, {
2707
+ },
2708
+ "type": "array",
2709
+ },
2710
+ "resources": {
2711
+ "items": {
2761
2712
  "properties": {
2762
- "capability": { "minLength": 1, "type": "string" },
2763
- "kind": { "const": "capability", "type": "string" },
2713
+ "alias": { "minLength": 1, "type": "string" },
2714
+ "definition": { "type": "object" },
2715
+ "kind": {
2716
+ "anyOf": [
2717
+ { "const": "kv", "type": "string" },
2718
+ { "const": "store", "type": "string" },
2719
+ { "const": "jobs", "type": "string" },
2720
+ { "const": "event-consumer", "type": "string" },
2721
+ { "const": "transfer", "type": "string" },
2722
+ ],
2723
+ },
2764
2724
  "required": { "type": "boolean" },
2765
2725
  },
2766
- "required": ["kind", "capability", "required"],
2726
+ "required": ["kind", "alias", "required"],
2767
2727
  "type": "object",
2768
- }, {
2728
+ },
2729
+ "type": "array",
2730
+ },
2731
+ "surfaces": {
2732
+ "items": {
2769
2733
  "properties": {
2770
- "kind": { "const": "resource", "type": "string" },
2771
- "required": { "type": "boolean" },
2772
- "resource": {
2773
- "properties": {
2774
- "alias": { "minLength": 1, "type": "string" },
2775
- "definition": { "type": "object" },
2776
- "kind": {
2777
- "anyOf": [
2778
- { "const": "kv", "type": "string" },
2779
- { "const": "store", "type": "string" },
2780
- { "const": "jobs", "type": "string" },
2781
- {
2782
- "const": "event-consumer",
2783
- "type": "string",
2784
- },
2785
- { "const": "transfer", "type": "string" },
2786
- ],
2787
- },
2788
- "required": { "type": "boolean" },
2789
- },
2790
- "required": ["kind", "alias", "required"],
2791
- "type": "object",
2734
+ "action": {
2735
+ "anyOf": [
2736
+ { "const": "call", "type": "string" },
2737
+ { "const": "publish", "type": "string" },
2738
+ { "const": "subscribe", "type": "string" },
2739
+ { "const": "observe", "type": "string" },
2740
+ { "const": "cancel", "type": "string" },
2741
+ ],
2742
+ },
2743
+ "contractId": { "minLength": 1, "type": "string" },
2744
+ "kind": {
2745
+ "anyOf": [
2746
+ { "const": "rpc", "type": "string" },
2747
+ { "const": "operation", "type": "string" },
2748
+ { "const": "event", "type": "string" },
2749
+ { "const": "feed", "type": "string" },
2750
+ ],
2792
2751
  },
2752
+ "name": { "minLength": 1, "type": "string" },
2753
+ "required": { "type": "boolean" },
2793
2754
  },
2794
- "required": ["kind", "resource", "required"],
2755
+ "required": [
2756
+ "contractId",
2757
+ "kind",
2758
+ "name",
2759
+ "required",
2760
+ ],
2795
2761
  "type": "object",
2796
- }],
2762
+ },
2763
+ "type": "array",
2764
+ },
2797
2765
  },
2798
- "type": "array",
2766
+ "required": [
2767
+ "contracts",
2768
+ "surfaces",
2769
+ "capabilities",
2770
+ "resources",
2771
+ ],
2772
+ "type": "object",
2799
2773
  },
2800
2774
  "resources": {
2801
2775
  "items": {
@@ -2960,89 +2934,92 @@ exports.CONTRACT = {
2960
2934
  "type": "array",
2961
2935
  },
2962
2936
  "requestedNeeds": {
2963
- "items": {
2964
- "anyOf": [{
2937
+ "properties": {
2938
+ "capabilities": {
2939
+ "items": {
2965
2940
  "properties": {
2966
- "contractId": { "minLength": 1, "type": "string" },
2967
- "kind": { "const": "contract", "type": "string" },
2941
+ "capability": { "minLength": 1, "type": "string" },
2968
2942
  "required": { "type": "boolean" },
2969
2943
  },
2970
- "required": ["kind", "contractId", "required"],
2944
+ "required": ["capability", "required"],
2971
2945
  "type": "object",
2972
- }, {
2946
+ },
2947
+ "type": "array",
2948
+ },
2949
+ "contracts": {
2950
+ "items": {
2973
2951
  "properties": {
2974
- "kind": { "const": "surface", "type": "string" },
2952
+ "contractId": { "minLength": 1, "type": "string" },
2975
2953
  "required": { "type": "boolean" },
2976
- "surface": {
2977
- "properties": {
2978
- "action": {
2979
- "anyOf": [
2980
- { "const": "call", "type": "string" },
2981
- { "const": "publish", "type": "string" },
2982
- { "const": "subscribe", "type": "string" },
2983
- { "const": "observe", "type": "string" },
2984
- { "const": "cancel", "type": "string" },
2985
- ],
2986
- },
2987
- "contractId": {
2988
- "minLength": 1,
2989
- "type": "string",
2990
- },
2991
- "kind": {
2992
- "anyOf": [
2993
- { "const": "rpc", "type": "string" },
2994
- { "const": "operation", "type": "string" },
2995
- { "const": "event", "type": "string" },
2996
- { "const": "feed", "type": "string" },
2997
- ],
2998
- },
2999
- "name": { "minLength": 1, "type": "string" },
3000
- },
3001
- "required": ["contractId", "kind", "name"],
3002
- "type": "object",
3003
- },
3004
2954
  },
3005
- "required": ["kind", "surface", "required"],
2955
+ "required": ["contractId", "required"],
3006
2956
  "type": "object",
3007
- }, {
2957
+ },
2958
+ "type": "array",
2959
+ },
2960
+ "resources": {
2961
+ "items": {
3008
2962
  "properties": {
3009
- "capability": { "minLength": 1, "type": "string" },
3010
- "kind": { "const": "capability", "type": "string" },
2963
+ "alias": { "minLength": 1, "type": "string" },
2964
+ "definition": { "type": "object" },
2965
+ "kind": {
2966
+ "anyOf": [
2967
+ { "const": "kv", "type": "string" },
2968
+ { "const": "store", "type": "string" },
2969
+ { "const": "jobs", "type": "string" },
2970
+ { "const": "event-consumer", "type": "string" },
2971
+ { "const": "transfer", "type": "string" },
2972
+ ],
2973
+ },
3011
2974
  "required": { "type": "boolean" },
3012
2975
  },
3013
- "required": ["kind", "capability", "required"],
2976
+ "required": ["kind", "alias", "required"],
3014
2977
  "type": "object",
3015
- }, {
2978
+ },
2979
+ "type": "array",
2980
+ },
2981
+ "surfaces": {
2982
+ "items": {
3016
2983
  "properties": {
3017
- "kind": { "const": "resource", "type": "string" },
3018
- "required": { "type": "boolean" },
3019
- "resource": {
3020
- "properties": {
3021
- "alias": { "minLength": 1, "type": "string" },
3022
- "definition": { "type": "object" },
3023
- "kind": {
3024
- "anyOf": [
3025
- { "const": "kv", "type": "string" },
3026
- { "const": "store", "type": "string" },
3027
- { "const": "jobs", "type": "string" },
3028
- {
3029
- "const": "event-consumer",
3030
- "type": "string",
3031
- },
3032
- { "const": "transfer", "type": "string" },
3033
- ],
3034
- },
3035
- "required": { "type": "boolean" },
3036
- },
3037
- "required": ["kind", "alias", "required"],
3038
- "type": "object",
2984
+ "action": {
2985
+ "anyOf": [
2986
+ { "const": "call", "type": "string" },
2987
+ { "const": "publish", "type": "string" },
2988
+ { "const": "subscribe", "type": "string" },
2989
+ { "const": "observe", "type": "string" },
2990
+ { "const": "cancel", "type": "string" },
2991
+ ],
2992
+ },
2993
+ "contractId": { "minLength": 1, "type": "string" },
2994
+ "kind": {
2995
+ "anyOf": [
2996
+ { "const": "rpc", "type": "string" },
2997
+ { "const": "operation", "type": "string" },
2998
+ { "const": "event", "type": "string" },
2999
+ { "const": "feed", "type": "string" },
3000
+ ],
3039
3001
  },
3002
+ "name": { "minLength": 1, "type": "string" },
3003
+ "required": { "type": "boolean" },
3040
3004
  },
3041
- "required": ["kind", "resource", "required"],
3005
+ "required": [
3006
+ "contractId",
3007
+ "kind",
3008
+ "name",
3009
+ "required",
3010
+ ],
3042
3011
  "type": "object",
3043
- }],
3012
+ },
3013
+ "type": "array",
3014
+ },
3044
3015
  },
3045
- "type": "array",
3016
+ "required": [
3017
+ "contracts",
3018
+ "surfaces",
3019
+ "capabilities",
3020
+ "resources",
3021
+ ],
3022
+ "type": "object",
3046
3023
  },
3047
3024
  "summary": { "type": "object" },
3048
3025
  },
@@ -3144,89 +3121,92 @@ exports.CONTRACT = {
3144
3121
  "type": "array",
3145
3122
  },
3146
3123
  "requestedNeeds": {
3147
- "items": {
3148
- "anyOf": [{
3149
- "properties": {
3150
- "contractId": { "minLength": 1, "type": "string" },
3151
- "kind": { "const": "contract", "type": "string" },
3152
- "required": { "type": "boolean" },
3153
- },
3154
- "required": ["kind", "contractId", "required"],
3155
- "type": "object",
3156
- }, {
3124
+ "properties": {
3125
+ "capabilities": {
3126
+ "items": {
3157
3127
  "properties": {
3158
- "kind": { "const": "surface", "type": "string" },
3128
+ "capability": { "minLength": 1, "type": "string" },
3159
3129
  "required": { "type": "boolean" },
3160
- "surface": {
3161
- "properties": {
3162
- "action": {
3163
- "anyOf": [
3164
- { "const": "call", "type": "string" },
3165
- { "const": "publish", "type": "string" },
3166
- { "const": "subscribe", "type": "string" },
3167
- { "const": "observe", "type": "string" },
3168
- { "const": "cancel", "type": "string" },
3169
- ],
3170
- },
3171
- "contractId": {
3172
- "minLength": 1,
3173
- "type": "string",
3174
- },
3175
- "kind": {
3176
- "anyOf": [
3177
- { "const": "rpc", "type": "string" },
3178
- { "const": "operation", "type": "string" },
3179
- { "const": "event", "type": "string" },
3180
- { "const": "feed", "type": "string" },
3181
- ],
3182
- },
3183
- "name": { "minLength": 1, "type": "string" },
3184
- },
3185
- "required": ["contractId", "kind", "name"],
3186
- "type": "object",
3187
- },
3188
3130
  },
3189
- "required": ["kind", "surface", "required"],
3131
+ "required": ["capability", "required"],
3190
3132
  "type": "object",
3191
- }, {
3133
+ },
3134
+ "type": "array",
3135
+ },
3136
+ "contracts": {
3137
+ "items": {
3192
3138
  "properties": {
3193
- "capability": { "minLength": 1, "type": "string" },
3194
- "kind": { "const": "capability", "type": "string" },
3139
+ "contractId": { "minLength": 1, "type": "string" },
3195
3140
  "required": { "type": "boolean" },
3196
3141
  },
3197
- "required": ["kind", "capability", "required"],
3142
+ "required": ["contractId", "required"],
3198
3143
  "type": "object",
3199
- }, {
3144
+ },
3145
+ "type": "array",
3146
+ },
3147
+ "resources": {
3148
+ "items": {
3200
3149
  "properties": {
3201
- "kind": { "const": "resource", "type": "string" },
3202
- "required": { "type": "boolean" },
3203
- "resource": {
3204
- "properties": {
3205
- "alias": { "minLength": 1, "type": "string" },
3206
- "definition": { "type": "object" },
3207
- "kind": {
3208
- "anyOf": [
3209
- { "const": "kv", "type": "string" },
3210
- { "const": "store", "type": "string" },
3211
- { "const": "jobs", "type": "string" },
3212
- {
3213
- "const": "event-consumer",
3214
- "type": "string",
3215
- },
3216
- { "const": "transfer", "type": "string" },
3217
- ],
3218
- },
3219
- "required": { "type": "boolean" },
3220
- },
3221
- "required": ["kind", "alias", "required"],
3222
- "type": "object",
3150
+ "alias": { "minLength": 1, "type": "string" },
3151
+ "definition": { "type": "object" },
3152
+ "kind": {
3153
+ "anyOf": [
3154
+ { "const": "kv", "type": "string" },
3155
+ { "const": "store", "type": "string" },
3156
+ { "const": "jobs", "type": "string" },
3157
+ { "const": "event-consumer", "type": "string" },
3158
+ { "const": "transfer", "type": "string" },
3159
+ ],
3223
3160
  },
3161
+ "required": { "type": "boolean" },
3224
3162
  },
3225
- "required": ["kind", "resource", "required"],
3163
+ "required": ["kind", "alias", "required"],
3226
3164
  "type": "object",
3227
- }],
3165
+ },
3166
+ "type": "array",
3167
+ },
3168
+ "surfaces": {
3169
+ "items": {
3170
+ "properties": {
3171
+ "action": {
3172
+ "anyOf": [
3173
+ { "const": "call", "type": "string" },
3174
+ { "const": "publish", "type": "string" },
3175
+ { "const": "subscribe", "type": "string" },
3176
+ { "const": "observe", "type": "string" },
3177
+ { "const": "cancel", "type": "string" },
3178
+ ],
3179
+ },
3180
+ "contractId": { "minLength": 1, "type": "string" },
3181
+ "kind": {
3182
+ "anyOf": [
3183
+ { "const": "rpc", "type": "string" },
3184
+ { "const": "operation", "type": "string" },
3185
+ { "const": "event", "type": "string" },
3186
+ { "const": "feed", "type": "string" },
3187
+ ],
3188
+ },
3189
+ "name": { "minLength": 1, "type": "string" },
3190
+ "required": { "type": "boolean" },
3191
+ },
3192
+ "required": [
3193
+ "contractId",
3194
+ "kind",
3195
+ "name",
3196
+ "required",
3197
+ ],
3198
+ "type": "object",
3199
+ },
3200
+ "type": "array",
3201
+ },
3228
3202
  },
3229
- "type": "array",
3203
+ "required": [
3204
+ "contracts",
3205
+ "surfaces",
3206
+ "capabilities",
3207
+ "resources",
3208
+ ],
3209
+ "type": "object",
3230
3210
  },
3231
3211
  "summary": { "type": "object" },
3232
3212
  },
@@ -3342,89 +3322,92 @@ exports.CONTRACT = {
3342
3322
  "type": "array",
3343
3323
  },
3344
3324
  "requestedNeeds": {
3345
- "items": {
3346
- "anyOf": [{
3325
+ "properties": {
3326
+ "capabilities": {
3327
+ "items": {
3347
3328
  "properties": {
3348
- "contractId": { "minLength": 1, "type": "string" },
3349
- "kind": { "const": "contract", "type": "string" },
3329
+ "capability": { "minLength": 1, "type": "string" },
3350
3330
  "required": { "type": "boolean" },
3351
3331
  },
3352
- "required": ["kind", "contractId", "required"],
3332
+ "required": ["capability", "required"],
3353
3333
  "type": "object",
3354
- }, {
3334
+ },
3335
+ "type": "array",
3336
+ },
3337
+ "contracts": {
3338
+ "items": {
3355
3339
  "properties": {
3356
- "kind": { "const": "surface", "type": "string" },
3340
+ "contractId": { "minLength": 1, "type": "string" },
3357
3341
  "required": { "type": "boolean" },
3358
- "surface": {
3359
- "properties": {
3360
- "action": {
3361
- "anyOf": [
3362
- { "const": "call", "type": "string" },
3363
- { "const": "publish", "type": "string" },
3364
- { "const": "subscribe", "type": "string" },
3365
- { "const": "observe", "type": "string" },
3366
- { "const": "cancel", "type": "string" },
3367
- ],
3368
- },
3369
- "contractId": {
3370
- "minLength": 1,
3371
- "type": "string",
3372
- },
3373
- "kind": {
3374
- "anyOf": [
3375
- { "const": "rpc", "type": "string" },
3376
- { "const": "operation", "type": "string" },
3377
- { "const": "event", "type": "string" },
3378
- { "const": "feed", "type": "string" },
3379
- ],
3380
- },
3381
- "name": { "minLength": 1, "type": "string" },
3382
- },
3383
- "required": ["contractId", "kind", "name"],
3384
- "type": "object",
3385
- },
3386
3342
  },
3387
- "required": ["kind", "surface", "required"],
3343
+ "required": ["contractId", "required"],
3388
3344
  "type": "object",
3389
- }, {
3345
+ },
3346
+ "type": "array",
3347
+ },
3348
+ "resources": {
3349
+ "items": {
3390
3350
  "properties": {
3391
- "capability": { "minLength": 1, "type": "string" },
3392
- "kind": { "const": "capability", "type": "string" },
3351
+ "alias": { "minLength": 1, "type": "string" },
3352
+ "definition": { "type": "object" },
3353
+ "kind": {
3354
+ "anyOf": [
3355
+ { "const": "kv", "type": "string" },
3356
+ { "const": "store", "type": "string" },
3357
+ { "const": "jobs", "type": "string" },
3358
+ { "const": "event-consumer", "type": "string" },
3359
+ { "const": "transfer", "type": "string" },
3360
+ ],
3361
+ },
3393
3362
  "required": { "type": "boolean" },
3394
3363
  },
3395
- "required": ["kind", "capability", "required"],
3364
+ "required": ["kind", "alias", "required"],
3396
3365
  "type": "object",
3397
- }, {
3366
+ },
3367
+ "type": "array",
3368
+ },
3369
+ "surfaces": {
3370
+ "items": {
3398
3371
  "properties": {
3399
- "kind": { "const": "resource", "type": "string" },
3400
- "required": { "type": "boolean" },
3401
- "resource": {
3402
- "properties": {
3403
- "alias": { "minLength": 1, "type": "string" },
3404
- "definition": { "type": "object" },
3405
- "kind": {
3406
- "anyOf": [
3407
- { "const": "kv", "type": "string" },
3408
- { "const": "store", "type": "string" },
3409
- { "const": "jobs", "type": "string" },
3410
- {
3411
- "const": "event-consumer",
3412
- "type": "string",
3413
- },
3414
- { "const": "transfer", "type": "string" },
3415
- ],
3416
- },
3417
- "required": { "type": "boolean" },
3418
- },
3419
- "required": ["kind", "alias", "required"],
3420
- "type": "object",
3372
+ "action": {
3373
+ "anyOf": [
3374
+ { "const": "call", "type": "string" },
3375
+ { "const": "publish", "type": "string" },
3376
+ { "const": "subscribe", "type": "string" },
3377
+ { "const": "observe", "type": "string" },
3378
+ { "const": "cancel", "type": "string" },
3379
+ ],
3380
+ },
3381
+ "contractId": { "minLength": 1, "type": "string" },
3382
+ "kind": {
3383
+ "anyOf": [
3384
+ { "const": "rpc", "type": "string" },
3385
+ { "const": "operation", "type": "string" },
3386
+ { "const": "event", "type": "string" },
3387
+ { "const": "feed", "type": "string" },
3388
+ ],
3421
3389
  },
3390
+ "name": { "minLength": 1, "type": "string" },
3391
+ "required": { "type": "boolean" },
3422
3392
  },
3423
- "required": ["kind", "resource", "required"],
3393
+ "required": [
3394
+ "contractId",
3395
+ "kind",
3396
+ "name",
3397
+ "required",
3398
+ ],
3424
3399
  "type": "object",
3425
- }],
3400
+ },
3401
+ "type": "array",
3402
+ },
3426
3403
  },
3427
- "type": "array",
3404
+ "required": [
3405
+ "contracts",
3406
+ "surfaces",
3407
+ "capabilities",
3408
+ "resources",
3409
+ ],
3410
+ "type": "object",
3428
3411
  },
3429
3412
  "summary": { "type": "object" },
3430
3413
  },
@@ -3526,89 +3509,92 @@ exports.CONTRACT = {
3526
3509
  "type": "array",
3527
3510
  },
3528
3511
  "requestedNeeds": {
3529
- "items": {
3530
- "anyOf": [{
3512
+ "properties": {
3513
+ "capabilities": {
3514
+ "items": {
3531
3515
  "properties": {
3532
- "contractId": { "minLength": 1, "type": "string" },
3533
- "kind": { "const": "contract", "type": "string" },
3516
+ "capability": { "minLength": 1, "type": "string" },
3534
3517
  "required": { "type": "boolean" },
3535
3518
  },
3536
- "required": ["kind", "contractId", "required"],
3519
+ "required": ["capability", "required"],
3537
3520
  "type": "object",
3538
- }, {
3521
+ },
3522
+ "type": "array",
3523
+ },
3524
+ "contracts": {
3525
+ "items": {
3539
3526
  "properties": {
3540
- "kind": { "const": "surface", "type": "string" },
3527
+ "contractId": { "minLength": 1, "type": "string" },
3541
3528
  "required": { "type": "boolean" },
3542
- "surface": {
3543
- "properties": {
3544
- "action": {
3545
- "anyOf": [
3546
- { "const": "call", "type": "string" },
3547
- { "const": "publish", "type": "string" },
3548
- { "const": "subscribe", "type": "string" },
3549
- { "const": "observe", "type": "string" },
3550
- { "const": "cancel", "type": "string" },
3551
- ],
3552
- },
3553
- "contractId": {
3554
- "minLength": 1,
3555
- "type": "string",
3556
- },
3557
- "kind": {
3558
- "anyOf": [
3559
- { "const": "rpc", "type": "string" },
3560
- { "const": "operation", "type": "string" },
3561
- { "const": "event", "type": "string" },
3562
- { "const": "feed", "type": "string" },
3563
- ],
3564
- },
3565
- "name": { "minLength": 1, "type": "string" },
3566
- },
3567
- "required": ["contractId", "kind", "name"],
3568
- "type": "object",
3569
- },
3570
3529
  },
3571
- "required": ["kind", "surface", "required"],
3530
+ "required": ["contractId", "required"],
3572
3531
  "type": "object",
3573
- }, {
3532
+ },
3533
+ "type": "array",
3534
+ },
3535
+ "resources": {
3536
+ "items": {
3574
3537
  "properties": {
3575
- "capability": { "minLength": 1, "type": "string" },
3576
- "kind": { "const": "capability", "type": "string" },
3538
+ "alias": { "minLength": 1, "type": "string" },
3539
+ "definition": { "type": "object" },
3540
+ "kind": {
3541
+ "anyOf": [
3542
+ { "const": "kv", "type": "string" },
3543
+ { "const": "store", "type": "string" },
3544
+ { "const": "jobs", "type": "string" },
3545
+ { "const": "event-consumer", "type": "string" },
3546
+ { "const": "transfer", "type": "string" },
3547
+ ],
3548
+ },
3577
3549
  "required": { "type": "boolean" },
3578
3550
  },
3579
- "required": ["kind", "capability", "required"],
3551
+ "required": ["kind", "alias", "required"],
3580
3552
  "type": "object",
3581
- }, {
3553
+ },
3554
+ "type": "array",
3555
+ },
3556
+ "surfaces": {
3557
+ "items": {
3582
3558
  "properties": {
3583
- "kind": { "const": "resource", "type": "string" },
3584
- "required": { "type": "boolean" },
3585
- "resource": {
3586
- "properties": {
3587
- "alias": { "minLength": 1, "type": "string" },
3588
- "definition": { "type": "object" },
3589
- "kind": {
3590
- "anyOf": [
3591
- { "const": "kv", "type": "string" },
3592
- { "const": "store", "type": "string" },
3593
- { "const": "jobs", "type": "string" },
3594
- {
3595
- "const": "event-consumer",
3596
- "type": "string",
3597
- },
3598
- { "const": "transfer", "type": "string" },
3599
- ],
3600
- },
3601
- "required": { "type": "boolean" },
3602
- },
3603
- "required": ["kind", "alias", "required"],
3604
- "type": "object",
3559
+ "action": {
3560
+ "anyOf": [
3561
+ { "const": "call", "type": "string" },
3562
+ { "const": "publish", "type": "string" },
3563
+ { "const": "subscribe", "type": "string" },
3564
+ { "const": "observe", "type": "string" },
3565
+ { "const": "cancel", "type": "string" },
3566
+ ],
3567
+ },
3568
+ "contractId": { "minLength": 1, "type": "string" },
3569
+ "kind": {
3570
+ "anyOf": [
3571
+ { "const": "rpc", "type": "string" },
3572
+ { "const": "operation", "type": "string" },
3573
+ { "const": "event", "type": "string" },
3574
+ { "const": "feed", "type": "string" },
3575
+ ],
3605
3576
  },
3577
+ "name": { "minLength": 1, "type": "string" },
3578
+ "required": { "type": "boolean" },
3606
3579
  },
3607
- "required": ["kind", "resource", "required"],
3580
+ "required": [
3581
+ "contractId",
3582
+ "kind",
3583
+ "name",
3584
+ "required",
3585
+ ],
3608
3586
  "type": "object",
3609
- }],
3587
+ },
3588
+ "type": "array",
3589
+ },
3610
3590
  },
3611
- "type": "array",
3591
+ "required": [
3592
+ "contracts",
3593
+ "surfaces",
3594
+ "capabilities",
3595
+ "resources",
3596
+ ],
3597
+ "type": "object",
3612
3598
  },
3613
3599
  "summary": { "type": "object" },
3614
3600
  },
@@ -3755,106 +3741,121 @@ exports.CONTRACT = {
3755
3741
  "type": "array",
3756
3742
  },
3757
3743
  "requestedNeeds": {
3758
- "items": {
3759
- "anyOf": [{
3744
+ "properties": {
3745
+ "capabilities": {
3746
+ "items": {
3760
3747
  "properties": {
3761
- "contractId": { "minLength": 1, "type": "string" },
3762
- "kind": { "const": "contract", "type": "string" },
3748
+ "capability": {
3749
+ "minLength": 1,
3750
+ "type": "string",
3751
+ },
3763
3752
  "required": { "type": "boolean" },
3764
3753
  },
3765
- "required": ["kind", "contractId", "required"],
3754
+ "required": ["capability", "required"],
3766
3755
  "type": "object",
3767
- }, {
3756
+ },
3757
+ "type": "array",
3758
+ },
3759
+ "contracts": {
3760
+ "items": {
3768
3761
  "properties": {
3769
- "kind": { "const": "surface", "type": "string" },
3770
- "required": { "type": "boolean" },
3771
- "surface": {
3772
- "properties": {
3773
- "action": {
3774
- "anyOf": [
3775
- { "const": "call", "type": "string" },
3776
- { "const": "publish", "type": "string" },
3777
- { "const": "subscribe", "type": "string" },
3778
- { "const": "observe", "type": "string" },
3779
- { "const": "cancel", "type": "string" },
3780
- ],
3781
- },
3782
- "contractId": {
3783
- "minLength": 1,
3784
- "type": "string",
3785
- },
3786
- "kind": {
3787
- "anyOf": [
3788
- { "const": "rpc", "type": "string" },
3789
- { "const": "operation", "type": "string" },
3790
- { "const": "event", "type": "string" },
3791
- { "const": "feed", "type": "string" },
3792
- ],
3793
- },
3794
- "name": { "minLength": 1, "type": "string" },
3795
- },
3796
- "required": ["contractId", "kind", "name"],
3797
- "type": "object",
3762
+ "contractId": {
3763
+ "minLength": 1,
3764
+ "type": "string",
3798
3765
  },
3799
- },
3800
- "required": ["kind", "surface", "required"],
3801
- "type": "object",
3802
- }, {
3803
- "properties": {
3804
- "capability": { "minLength": 1, "type": "string" },
3805
- "kind": { "const": "capability", "type": "string" },
3806
3766
  "required": { "type": "boolean" },
3807
3767
  },
3808
- "required": ["kind", "capability", "required"],
3768
+ "required": ["contractId", "required"],
3809
3769
  "type": "object",
3810
- }, {
3770
+ },
3771
+ "type": "array",
3772
+ },
3773
+ "resources": {
3774
+ "items": {
3811
3775
  "properties": {
3812
- "kind": { "const": "resource", "type": "string" },
3813
- "required": { "type": "boolean" },
3814
- "resource": {
3815
- "properties": {
3816
- "alias": { "minLength": 1, "type": "string" },
3817
- "definition": { "type": "object" },
3818
- "kind": {
3819
- "anyOf": [
3820
- { "const": "kv", "type": "string" },
3821
- { "const": "store", "type": "string" },
3822
- { "const": "jobs", "type": "string" },
3823
- {
3824
- "const": "event-consumer",
3825
- "type": "string",
3826
- },
3827
- { "const": "transfer", "type": "string" },
3828
- ],
3776
+ "alias": { "minLength": 1, "type": "string" },
3777
+ "definition": { "type": "object" },
3778
+ "kind": {
3779
+ "anyOf": [
3780
+ { "const": "kv", "type": "string" },
3781
+ { "const": "store", "type": "string" },
3782
+ { "const": "jobs", "type": "string" },
3783
+ {
3784
+ "const": "event-consumer",
3785
+ "type": "string",
3829
3786
  },
3830
- "required": { "type": "boolean" },
3831
- },
3832
- "required": ["kind", "alias", "required"],
3833
- "type": "object",
3787
+ { "const": "transfer", "type": "string" },
3788
+ ],
3834
3789
  },
3790
+ "required": { "type": "boolean" },
3835
3791
  },
3836
- "required": ["kind", "resource", "required"],
3792
+ "required": ["kind", "alias", "required"],
3837
3793
  "type": "object",
3838
- }],
3839
- },
3840
- "type": "array",
3841
- },
3842
- "summary": { "type": "object" },
3843
- },
3844
- "required": [
3845
- "deploymentId",
3846
- "contractId",
3847
- "contractDigest",
3848
- "requestedNeeds",
3849
- "providedSurfaces",
3850
- ],
3851
- "type": "object",
3852
- },
3853
- "state": {
3854
- "anyOf": [
3855
- { "const": "pending", "type": "string" },
3856
- { "const": "accepted", "type": "string" },
3857
- { "const": "rejected", "type": "string" },
3794
+ },
3795
+ "type": "array",
3796
+ },
3797
+ "surfaces": {
3798
+ "items": {
3799
+ "properties": {
3800
+ "action": {
3801
+ "anyOf": [
3802
+ { "const": "call", "type": "string" },
3803
+ { "const": "publish", "type": "string" },
3804
+ { "const": "subscribe", "type": "string" },
3805
+ { "const": "observe", "type": "string" },
3806
+ { "const": "cancel", "type": "string" },
3807
+ ],
3808
+ },
3809
+ "contractId": {
3810
+ "minLength": 1,
3811
+ "type": "string",
3812
+ },
3813
+ "kind": {
3814
+ "anyOf": [
3815
+ { "const": "rpc", "type": "string" },
3816
+ { "const": "operation", "type": "string" },
3817
+ { "const": "event", "type": "string" },
3818
+ { "const": "feed", "type": "string" },
3819
+ ],
3820
+ },
3821
+ "name": { "minLength": 1, "type": "string" },
3822
+ "required": { "type": "boolean" },
3823
+ },
3824
+ "required": [
3825
+ "contractId",
3826
+ "kind",
3827
+ "name",
3828
+ "required",
3829
+ ],
3830
+ "type": "object",
3831
+ },
3832
+ "type": "array",
3833
+ },
3834
+ },
3835
+ "required": [
3836
+ "contracts",
3837
+ "surfaces",
3838
+ "capabilities",
3839
+ "resources",
3840
+ ],
3841
+ "type": "object",
3842
+ },
3843
+ "summary": { "type": "object" },
3844
+ },
3845
+ "required": [
3846
+ "deploymentId",
3847
+ "contractId",
3848
+ "contractDigest",
3849
+ "requestedNeeds",
3850
+ "providedSurfaces",
3851
+ ],
3852
+ "type": "object",
3853
+ },
3854
+ "state": {
3855
+ "anyOf": [
3856
+ { "const": "pending", "type": "string" },
3857
+ { "const": "accepted", "type": "string" },
3858
+ { "const": "rejected", "type": "string" },
3858
3859
  { "const": "expired", "type": "string" },
3859
3860
  ],
3860
3861
  },
@@ -3939,89 +3940,104 @@ exports.CONTRACT = {
3939
3940
  "type": "array",
3940
3941
  },
3941
3942
  "requestedNeeds": {
3942
- "items": {
3943
- "anyOf": [{
3943
+ "properties": {
3944
+ "capabilities": {
3945
+ "items": {
3944
3946
  "properties": {
3945
- "contractId": { "minLength": 1, "type": "string" },
3946
- "kind": { "const": "contract", "type": "string" },
3947
+ "capability": {
3948
+ "minLength": 1,
3949
+ "type": "string",
3950
+ },
3947
3951
  "required": { "type": "boolean" },
3948
3952
  },
3949
- "required": ["kind", "contractId", "required"],
3953
+ "required": ["capability", "required"],
3950
3954
  "type": "object",
3951
- }, {
3955
+ },
3956
+ "type": "array",
3957
+ },
3958
+ "contracts": {
3959
+ "items": {
3952
3960
  "properties": {
3953
- "kind": { "const": "surface", "type": "string" },
3954
- "required": { "type": "boolean" },
3955
- "surface": {
3956
- "properties": {
3957
- "action": {
3958
- "anyOf": [
3959
- { "const": "call", "type": "string" },
3960
- { "const": "publish", "type": "string" },
3961
- { "const": "subscribe", "type": "string" },
3962
- { "const": "observe", "type": "string" },
3963
- { "const": "cancel", "type": "string" },
3964
- ],
3965
- },
3966
- "contractId": {
3967
- "minLength": 1,
3968
- "type": "string",
3969
- },
3970
- "kind": {
3971
- "anyOf": [
3972
- { "const": "rpc", "type": "string" },
3973
- { "const": "operation", "type": "string" },
3974
- { "const": "event", "type": "string" },
3975
- { "const": "feed", "type": "string" },
3976
- ],
3977
- },
3978
- "name": { "minLength": 1, "type": "string" },
3979
- },
3980
- "required": ["contractId", "kind", "name"],
3981
- "type": "object",
3961
+ "contractId": {
3962
+ "minLength": 1,
3963
+ "type": "string",
3982
3964
  },
3965
+ "required": { "type": "boolean" },
3983
3966
  },
3984
- "required": ["kind", "surface", "required"],
3967
+ "required": ["contractId", "required"],
3985
3968
  "type": "object",
3986
- }, {
3969
+ },
3970
+ "type": "array",
3971
+ },
3972
+ "resources": {
3973
+ "items": {
3987
3974
  "properties": {
3988
- "capability": { "minLength": 1, "type": "string" },
3989
- "kind": { "const": "capability", "type": "string" },
3975
+ "alias": { "minLength": 1, "type": "string" },
3976
+ "definition": { "type": "object" },
3977
+ "kind": {
3978
+ "anyOf": [
3979
+ { "const": "kv", "type": "string" },
3980
+ { "const": "store", "type": "string" },
3981
+ { "const": "jobs", "type": "string" },
3982
+ {
3983
+ "const": "event-consumer",
3984
+ "type": "string",
3985
+ },
3986
+ { "const": "transfer", "type": "string" },
3987
+ ],
3988
+ },
3990
3989
  "required": { "type": "boolean" },
3991
3990
  },
3992
- "required": ["kind", "capability", "required"],
3991
+ "required": ["kind", "alias", "required"],
3993
3992
  "type": "object",
3994
- }, {
3993
+ },
3994
+ "type": "array",
3995
+ },
3996
+ "surfaces": {
3997
+ "items": {
3995
3998
  "properties": {
3996
- "kind": { "const": "resource", "type": "string" },
3997
- "required": { "type": "boolean" },
3998
- "resource": {
3999
- "properties": {
4000
- "alias": { "minLength": 1, "type": "string" },
4001
- "definition": { "type": "object" },
4002
- "kind": {
4003
- "anyOf": [
4004
- { "const": "kv", "type": "string" },
4005
- { "const": "store", "type": "string" },
4006
- { "const": "jobs", "type": "string" },
4007
- {
4008
- "const": "event-consumer",
4009
- "type": "string",
4010
- },
4011
- { "const": "transfer", "type": "string" },
4012
- ],
4013
- },
4014
- "required": { "type": "boolean" },
4015
- },
4016
- "required": ["kind", "alias", "required"],
4017
- "type": "object",
3999
+ "action": {
4000
+ "anyOf": [
4001
+ { "const": "call", "type": "string" },
4002
+ { "const": "publish", "type": "string" },
4003
+ { "const": "subscribe", "type": "string" },
4004
+ { "const": "observe", "type": "string" },
4005
+ { "const": "cancel", "type": "string" },
4006
+ ],
4007
+ },
4008
+ "contractId": {
4009
+ "minLength": 1,
4010
+ "type": "string",
4011
+ },
4012
+ "kind": {
4013
+ "anyOf": [
4014
+ { "const": "rpc", "type": "string" },
4015
+ { "const": "operation", "type": "string" },
4016
+ { "const": "event", "type": "string" },
4017
+ { "const": "feed", "type": "string" },
4018
+ ],
4018
4019
  },
4020
+ "name": { "minLength": 1, "type": "string" },
4021
+ "required": { "type": "boolean" },
4019
4022
  },
4020
- "required": ["kind", "resource", "required"],
4023
+ "required": [
4024
+ "contractId",
4025
+ "kind",
4026
+ "name",
4027
+ "required",
4028
+ ],
4021
4029
  "type": "object",
4022
- }],
4030
+ },
4031
+ "type": "array",
4032
+ },
4023
4033
  },
4024
- "type": "array",
4034
+ "required": [
4035
+ "contracts",
4036
+ "surfaces",
4037
+ "capabilities",
4038
+ "resources",
4039
+ ],
4040
+ "type": "object",
4025
4041
  },
4026
4042
  "summary": { "type": "object" },
4027
4043
  },
@@ -4091,83 +4107,87 @@ exports.CONTRACT = {
4091
4107
  "type": "array",
4092
4108
  },
4093
4109
  "needs": {
4094
- "items": {
4095
- "anyOf": [{
4110
+ "properties": {
4111
+ "capabilities": {
4112
+ "items": {
4096
4113
  "properties": {
4097
- "contractId": { "minLength": 1, "type": "string" },
4098
- "kind": { "const": "contract", "type": "string" },
4114
+ "capability": { "minLength": 1, "type": "string" },
4099
4115
  "required": { "type": "boolean" },
4100
4116
  },
4101
- "required": ["kind", "contractId", "required"],
4117
+ "required": ["capability", "required"],
4102
4118
  "type": "object",
4103
- }, {
4119
+ },
4120
+ "type": "array",
4121
+ },
4122
+ "contracts": {
4123
+ "items": {
4104
4124
  "properties": {
4105
- "kind": { "const": "surface", "type": "string" },
4125
+ "contractId": { "minLength": 1, "type": "string" },
4106
4126
  "required": { "type": "boolean" },
4107
- "surface": {
4108
- "properties": {
4109
- "action": {
4110
- "anyOf": [
4111
- { "const": "call", "type": "string" },
4112
- { "const": "publish", "type": "string" },
4113
- { "const": "subscribe", "type": "string" },
4114
- { "const": "observe", "type": "string" },
4115
- { "const": "cancel", "type": "string" },
4116
- ],
4117
- },
4118
- "contractId": { "minLength": 1, "type": "string" },
4119
- "kind": {
4120
- "anyOf": [
4121
- { "const": "rpc", "type": "string" },
4122
- { "const": "operation", "type": "string" },
4123
- { "const": "event", "type": "string" },
4124
- { "const": "feed", "type": "string" },
4125
- ],
4126
- },
4127
- "name": { "minLength": 1, "type": "string" },
4128
- },
4129
- "required": ["contractId", "kind", "name"],
4130
- "type": "object",
4131
- },
4132
4127
  },
4133
- "required": ["kind", "surface", "required"],
4128
+ "required": ["contractId", "required"],
4134
4129
  "type": "object",
4135
- }, {
4130
+ },
4131
+ "type": "array",
4132
+ },
4133
+ "resources": {
4134
+ "items": {
4136
4135
  "properties": {
4137
- "capability": { "minLength": 1, "type": "string" },
4138
- "kind": { "const": "capability", "type": "string" },
4136
+ "alias": { "minLength": 1, "type": "string" },
4137
+ "definition": { "type": "object" },
4138
+ "kind": {
4139
+ "anyOf": [
4140
+ { "const": "kv", "type": "string" },
4141
+ { "const": "store", "type": "string" },
4142
+ { "const": "jobs", "type": "string" },
4143
+ { "const": "event-consumer", "type": "string" },
4144
+ { "const": "transfer", "type": "string" },
4145
+ ],
4146
+ },
4139
4147
  "required": { "type": "boolean" },
4140
4148
  },
4141
- "required": ["kind", "capability", "required"],
4149
+ "required": ["kind", "alias", "required"],
4142
4150
  "type": "object",
4143
- }, {
4151
+ },
4152
+ "type": "array",
4153
+ },
4154
+ "surfaces": {
4155
+ "items": {
4144
4156
  "properties": {
4145
- "kind": { "const": "resource", "type": "string" },
4146
- "required": { "type": "boolean" },
4147
- "resource": {
4148
- "properties": {
4149
- "alias": { "minLength": 1, "type": "string" },
4150
- "definition": { "type": "object" },
4151
- "kind": {
4152
- "anyOf": [
4153
- { "const": "kv", "type": "string" },
4154
- { "const": "store", "type": "string" },
4155
- { "const": "jobs", "type": "string" },
4156
- { "const": "event-consumer", "type": "string" },
4157
- { "const": "transfer", "type": "string" },
4158
- ],
4159
- },
4160
- "required": { "type": "boolean" },
4161
- },
4162
- "required": ["kind", "alias", "required"],
4163
- "type": "object",
4157
+ "action": {
4158
+ "anyOf": [
4159
+ { "const": "call", "type": "string" },
4160
+ { "const": "publish", "type": "string" },
4161
+ { "const": "subscribe", "type": "string" },
4162
+ { "const": "observe", "type": "string" },
4163
+ { "const": "cancel", "type": "string" },
4164
+ ],
4165
+ },
4166
+ "contractId": { "minLength": 1, "type": "string" },
4167
+ "kind": {
4168
+ "anyOf": [
4169
+ { "const": "rpc", "type": "string" },
4170
+ { "const": "operation", "type": "string" },
4171
+ { "const": "event", "type": "string" },
4172
+ { "const": "feed", "type": "string" },
4173
+ ],
4164
4174
  },
4175
+ "name": { "minLength": 1, "type": "string" },
4176
+ "required": { "type": "boolean" },
4165
4177
  },
4166
- "required": ["kind", "resource", "required"],
4178
+ "required": ["contractId", "kind", "name", "required"],
4167
4179
  "type": "object",
4168
- }],
4180
+ },
4181
+ "type": "array",
4182
+ },
4169
4183
  },
4170
- "type": "array",
4184
+ "required": [
4185
+ "contracts",
4186
+ "surfaces",
4187
+ "capabilities",
4188
+ "resources",
4189
+ ],
4190
+ "type": "object",
4171
4191
  },
4172
4192
  "resources": {
4173
4193
  "items": {
@@ -4253,48 +4273,27 @@ exports.CONTRACT = {
4253
4273
  "desiredVersion": { "minLength": 1, "type": "string" },
4254
4274
  "error": { "minLength": 1, "type": "string" },
4255
4275
  "grants": {
4256
- "items": {
4257
- "anyOf": [{
4276
+ "properties": {
4277
+ "capabilities": {
4278
+ "items": {
4258
4279
  "properties": {
4259
4280
  "capability": { "minLength": 1, "type": "string" },
4260
- "kind": { "const": "capability", "type": "string" },
4261
4281
  },
4262
- "required": ["kind", "capability"],
4282
+ "required": ["capability"],
4263
4283
  "type": "object",
4264
- }, {
4284
+ },
4285
+ "type": "array",
4286
+ },
4287
+ "nats": {
4288
+ "items": {
4265
4289
  "properties": {
4266
- "action": {
4267
- "anyOf": [
4268
- { "const": "call", "type": "string" },
4269
- { "const": "publish", "type": "string" },
4270
- { "const": "subscribe", "type": "string" },
4271
- { "const": "observe", "type": "string" },
4272
- { "const": "cancel", "type": "string" },
4273
- ],
4290
+ "direction": {
4291
+ "anyOf": [{ "const": "publish", "type": "string" }, {
4292
+ "const": "subscribe",
4293
+ "type": "string",
4294
+ }],
4274
4295
  },
4275
- "contractId": { "minLength": 1, "type": "string" },
4276
- "kind": { "const": "surface", "type": "string" },
4277
- "name": { "minLength": 1, "type": "string" },
4278
- "surfaceKind": {
4279
- "anyOf": [
4280
- { "const": "rpc", "type": "string" },
4281
- { "const": "operation", "type": "string" },
4282
- { "const": "event", "type": "string" },
4283
- { "const": "feed", "type": "string" },
4284
- ],
4285
- },
4286
- },
4287
- "required": ["kind", "contractId", "surfaceKind", "name"],
4288
- "type": "object",
4289
- }, {
4290
- "properties": {
4291
- "direction": {
4292
- "anyOf": [{ "const": "publish", "type": "string" }, {
4293
- "const": "subscribe",
4294
- "type": "string",
4295
- }],
4296
- },
4297
- "grantSource": {
4296
+ "grantSource": {
4298
4297
  "anyOf": [
4299
4298
  { "const": "owned-surface", "type": "string" },
4300
4299
  { "const": "used-surface", "type": "string" },
@@ -4303,7 +4302,6 @@ exports.CONTRACT = {
4303
4302
  { "const": "transfer", "type": "string" },
4304
4303
  ],
4305
4304
  },
4306
- "kind": { "const": "nats", "type": "string" },
4307
4305
  "requiredCapabilities": {
4308
4306
  "items": { "minLength": 1, "type": "string" },
4309
4307
  "type": "array",
@@ -4336,16 +4334,46 @@ exports.CONTRACT = {
4336
4334
  },
4337
4335
  },
4338
4336
  "required": [
4339
- "kind",
4340
4337
  "direction",
4341
4338
  "subject",
4342
4339
  "requiredCapabilities",
4343
4340
  "grantSource",
4344
4341
  ],
4345
4342
  "type": "object",
4346
- }],
4343
+ },
4344
+ "type": "array",
4345
+ },
4346
+ "surfaces": {
4347
+ "items": {
4348
+ "properties": {
4349
+ "action": {
4350
+ "anyOf": [
4351
+ { "const": "call", "type": "string" },
4352
+ { "const": "publish", "type": "string" },
4353
+ { "const": "subscribe", "type": "string" },
4354
+ { "const": "observe", "type": "string" },
4355
+ { "const": "cancel", "type": "string" },
4356
+ ],
4357
+ },
4358
+ "contractId": { "minLength": 1, "type": "string" },
4359
+ "name": { "minLength": 1, "type": "string" },
4360
+ "surfaceKind": {
4361
+ "anyOf": [
4362
+ { "const": "rpc", "type": "string" },
4363
+ { "const": "operation", "type": "string" },
4364
+ { "const": "event", "type": "string" },
4365
+ { "const": "feed", "type": "string" },
4366
+ ],
4367
+ },
4368
+ },
4369
+ "required": ["contractId", "surfaceKind", "name"],
4370
+ "type": "object",
4371
+ },
4372
+ "type": "array",
4373
+ },
4347
4374
  },
4348
- "type": "array",
4375
+ "required": ["capabilities", "surfaces", "nats"],
4376
+ "type": "object",
4349
4377
  },
4350
4378
  "reconciledAt": {
4351
4379
  "anyOf": [{ "format": "date-time", "type": "string" }, {
@@ -6377,6 +6405,41 @@ exports.CONTRACT = {
6377
6405
  "type": "integer",
6378
6406
  },
6379
6407
  "dlq": { "type": "boolean" },
6408
+ "keyConcurrency": {
6409
+ "properties": {
6410
+ "heartbeatIntervalMs": {
6411
+ "minimum": 1,
6412
+ "type": "integer",
6413
+ },
6414
+ "heartbeatTtlMs": {
6415
+ "minimum": 1,
6416
+ "type": "integer",
6417
+ },
6418
+ "key": {
6419
+ "items": { "minLength": 1, "type": "string" },
6420
+ "minItems": 1,
6421
+ "type": "array",
6422
+ },
6423
+ "maxActive": {
6424
+ "minimum": 1,
6425
+ "type": "integer",
6426
+ },
6427
+ "stalePolicy": {
6428
+ "anyOf": [{
6429
+ "const": "fail-stale",
6430
+ "type": "string",
6431
+ }, { "const": "block", "type": "string" }],
6432
+ },
6433
+ },
6434
+ "required": [
6435
+ "key",
6436
+ "maxActive",
6437
+ "heartbeatIntervalMs",
6438
+ "heartbeatTtlMs",
6439
+ "stalePolicy",
6440
+ ],
6441
+ "type": "object",
6442
+ },
6380
6443
  "logs": { "type": "boolean" },
6381
6444
  "maxDeliver": { "minimum": 1, "type": "integer" },
6382
6445
  "payload": {
@@ -6391,6 +6454,26 @@ exports.CONTRACT = {
6391
6454
  "minLength": 1,
6392
6455
  "type": "string",
6393
6456
  },
6457
+ "queue": {
6458
+ "properties": {
6459
+ "maxQueuedPerKey": {
6460
+ "minimum": 0,
6461
+ "type": "integer",
6462
+ },
6463
+ "whenFull": {
6464
+ "anyOf": [
6465
+ { "const": "reject", "type": "string" },
6466
+ { "const": "coalesce", "type": "string" },
6467
+ {
6468
+ "const": "replace-oldest",
6469
+ "type": "string",
6470
+ },
6471
+ ],
6472
+ },
6473
+ },
6474
+ "required": ["maxQueuedPerKey", "whenFull"],
6475
+ "type": "object",
6476
+ },
6394
6477
  "queueType": { "minLength": 1, "type": "string" },
6395
6478
  "result": {
6396
6479
  "properties": {
@@ -6553,6 +6636,41 @@ exports.CONTRACT = {
6553
6636
  "type": "integer",
6554
6637
  },
6555
6638
  "dlq": { "type": "boolean" },
6639
+ "keyConcurrency": {
6640
+ "properties": {
6641
+ "heartbeatIntervalMs": {
6642
+ "minimum": 1,
6643
+ "type": "integer",
6644
+ },
6645
+ "heartbeatTtlMs": {
6646
+ "minimum": 1,
6647
+ "type": "integer",
6648
+ },
6649
+ "key": {
6650
+ "items": { "minLength": 1, "type": "string" },
6651
+ "minItems": 1,
6652
+ "type": "array",
6653
+ },
6654
+ "maxActive": {
6655
+ "minimum": 1,
6656
+ "type": "integer",
6657
+ },
6658
+ "stalePolicy": {
6659
+ "anyOf": [{
6660
+ "const": "fail-stale",
6661
+ "type": "string",
6662
+ }, { "const": "block", "type": "string" }],
6663
+ },
6664
+ },
6665
+ "required": [
6666
+ "key",
6667
+ "maxActive",
6668
+ "heartbeatIntervalMs",
6669
+ "heartbeatTtlMs",
6670
+ "stalePolicy",
6671
+ ],
6672
+ "type": "object",
6673
+ },
6556
6674
  "logs": { "type": "boolean" },
6557
6675
  "maxDeliver": { "minimum": 1, "type": "integer" },
6558
6676
  "payload": {
@@ -6567,6 +6685,26 @@ exports.CONTRACT = {
6567
6685
  "minLength": 1,
6568
6686
  "type": "string",
6569
6687
  },
6688
+ "queue": {
6689
+ "properties": {
6690
+ "maxQueuedPerKey": {
6691
+ "minimum": 0,
6692
+ "type": "integer",
6693
+ },
6694
+ "whenFull": {
6695
+ "anyOf": [
6696
+ { "const": "reject", "type": "string" },
6697
+ { "const": "coalesce", "type": "string" },
6698
+ {
6699
+ "const": "replace-oldest",
6700
+ "type": "string",
6701
+ },
6702
+ ],
6703
+ },
6704
+ },
6705
+ "required": ["maxQueuedPerKey", "whenFull"],
6706
+ "type": "object",
6707
+ },
6570
6708
  "queueType": { "minLength": 1, "type": "string" },
6571
6709
  "result": {
6572
6710
  "properties": {
@@ -6743,6 +6881,44 @@ exports.CONTRACT = {
6743
6881
  "type": "integer",
6744
6882
  },
6745
6883
  "dlq": { "type": "boolean" },
6884
+ "keyConcurrency": {
6885
+ "properties": {
6886
+ "heartbeatIntervalMs": {
6887
+ "minimum": 1,
6888
+ "type": "integer",
6889
+ },
6890
+ "heartbeatTtlMs": {
6891
+ "minimum": 1,
6892
+ "type": "integer",
6893
+ },
6894
+ "key": {
6895
+ "items": {
6896
+ "minLength": 1,
6897
+ "type": "string",
6898
+ },
6899
+ "minItems": 1,
6900
+ "type": "array",
6901
+ },
6902
+ "maxActive": {
6903
+ "minimum": 1,
6904
+ "type": "integer",
6905
+ },
6906
+ "stalePolicy": {
6907
+ "anyOf": [{
6908
+ "const": "fail-stale",
6909
+ "type": "string",
6910
+ }, { "const": "block", "type": "string" }],
6911
+ },
6912
+ },
6913
+ "required": [
6914
+ "key",
6915
+ "maxActive",
6916
+ "heartbeatIntervalMs",
6917
+ "heartbeatTtlMs",
6918
+ "stalePolicy",
6919
+ ],
6920
+ "type": "object",
6921
+ },
6746
6922
  "logs": { "type": "boolean" },
6747
6923
  "maxDeliver": { "minimum": 1, "type": "integer" },
6748
6924
  "payload": {
@@ -6760,6 +6936,28 @@ exports.CONTRACT = {
6760
6936
  "minLength": 1,
6761
6937
  "type": "string",
6762
6938
  },
6939
+ "queue": {
6940
+ "properties": {
6941
+ "maxQueuedPerKey": {
6942
+ "minimum": 0,
6943
+ "type": "integer",
6944
+ },
6945
+ "whenFull": {
6946
+ "anyOf": [{
6947
+ "const": "reject",
6948
+ "type": "string",
6949
+ }, {
6950
+ "const": "coalesce",
6951
+ "type": "string",
6952
+ }, {
6953
+ "const": "replace-oldest",
6954
+ "type": "string",
6955
+ }],
6956
+ },
6957
+ },
6958
+ "required": ["maxQueuedPerKey", "whenFull"],
6959
+ "type": "object",
6960
+ },
6763
6961
  "queueType": { "minLength": 1, "type": "string" },
6764
6962
  "result": {
6765
6963
  "properties": {
@@ -6936,6 +7134,41 @@ exports.CONTRACT = {
6936
7134
  "type": "integer",
6937
7135
  },
6938
7136
  "dlq": { "type": "boolean" },
7137
+ "keyConcurrency": {
7138
+ "properties": {
7139
+ "heartbeatIntervalMs": {
7140
+ "minimum": 1,
7141
+ "type": "integer",
7142
+ },
7143
+ "heartbeatTtlMs": {
7144
+ "minimum": 1,
7145
+ "type": "integer",
7146
+ },
7147
+ "key": {
7148
+ "items": { "minLength": 1, "type": "string" },
7149
+ "minItems": 1,
7150
+ "type": "array",
7151
+ },
7152
+ "maxActive": {
7153
+ "minimum": 1,
7154
+ "type": "integer",
7155
+ },
7156
+ "stalePolicy": {
7157
+ "anyOf": [{
7158
+ "const": "fail-stale",
7159
+ "type": "string",
7160
+ }, { "const": "block", "type": "string" }],
7161
+ },
7162
+ },
7163
+ "required": [
7164
+ "key",
7165
+ "maxActive",
7166
+ "heartbeatIntervalMs",
7167
+ "heartbeatTtlMs",
7168
+ "stalePolicy",
7169
+ ],
7170
+ "type": "object",
7171
+ },
6939
7172
  "logs": { "type": "boolean" },
6940
7173
  "maxDeliver": { "minimum": 1, "type": "integer" },
6941
7174
  "payload": {
@@ -6950,6 +7183,26 @@ exports.CONTRACT = {
6950
7183
  "minLength": 1,
6951
7184
  "type": "string",
6952
7185
  },
7186
+ "queue": {
7187
+ "properties": {
7188
+ "maxQueuedPerKey": {
7189
+ "minimum": 0,
7190
+ "type": "integer",
7191
+ },
7192
+ "whenFull": {
7193
+ "anyOf": [
7194
+ { "const": "reject", "type": "string" },
7195
+ { "const": "coalesce", "type": "string" },
7196
+ {
7197
+ "const": "replace-oldest",
7198
+ "type": "string",
7199
+ },
7200
+ ],
7201
+ },
7202
+ },
7203
+ "required": ["maxQueuedPerKey", "whenFull"],
7204
+ "type": "object",
7205
+ },
6953
7206
  "queueType": { "minLength": 1, "type": "string" },
6954
7207
  "result": {
6955
7208
  "properties": {
@@ -7329,29 +7582,14 @@ exports.CONTRACT = {
7329
7582
  "type": "object",
7330
7583
  },
7331
7584
  "AuthSessionsRevokedEvent": {
7332
- "allOf": [{
7333
- "properties": {
7334
- "header": {
7335
- "properties": {
7336
- "id": { "type": "string" },
7337
- "time": { "format": "date-time", "type": "string" },
7338
- },
7339
- "required": ["id", "time"],
7340
- "type": "object",
7341
- },
7342
- },
7343
- "required": ["header"],
7344
- "type": "object",
7345
- }, {
7346
- "properties": {
7347
- "id": { "type": "string" },
7348
- "origin": { "type": "string" },
7349
- "revokedBy": { "type": "string" },
7350
- "sessionKey": { "type": "string" },
7351
- },
7352
- "required": ["origin", "id", "sessionKey", "revokedBy"],
7353
- "type": "object",
7354
- }],
7585
+ "properties": {
7586
+ "id": { "type": "string" },
7587
+ "origin": { "type": "string" },
7588
+ "revokedBy": { "type": "string" },
7589
+ "sessionKey": { "type": "string" },
7590
+ },
7591
+ "required": ["origin", "id", "sessionKey", "revokedBy"],
7592
+ "type": "object",
7355
7593
  },
7356
7594
  "AuthUserIdentitiesListRequest": {
7357
7595
  "properties": {
@@ -7729,99 +7967,103 @@ exports.CONTRACT = {
7729
7967
  "type": "array",
7730
7968
  },
7731
7969
  "needs": {
7732
- "items": {
7733
- "anyOf": [{
7734
- "properties": {
7735
- "contractId": { "minLength": 1, "type": "string" },
7736
- "kind": { "const": "contract", "type": "string" },
7737
- "required": { "type": "boolean" },
7738
- },
7739
- "required": ["kind", "contractId", "required"],
7740
- "type": "object",
7741
- }, {
7970
+ "properties": {
7971
+ "capabilities": {
7972
+ "items": {
7742
7973
  "properties": {
7743
- "kind": { "const": "surface", "type": "string" },
7974
+ "capability": { "minLength": 1, "type": "string" },
7744
7975
  "required": { "type": "boolean" },
7745
- "surface": {
7746
- "properties": {
7747
- "action": {
7748
- "anyOf": [
7749
- { "const": "call", "type": "string" },
7750
- { "const": "publish", "type": "string" },
7751
- { "const": "subscribe", "type": "string" },
7752
- { "const": "observe", "type": "string" },
7753
- { "const": "cancel", "type": "string" },
7754
- ],
7755
- },
7756
- "contractId": { "minLength": 1, "type": "string" },
7757
- "kind": {
7758
- "anyOf": [
7759
- { "const": "rpc", "type": "string" },
7760
- { "const": "operation", "type": "string" },
7761
- { "const": "event", "type": "string" },
7762
- { "const": "feed", "type": "string" },
7763
- ],
7764
- },
7765
- "name": { "minLength": 1, "type": "string" },
7766
- },
7767
- "required": ["contractId", "kind", "name"],
7768
- "type": "object",
7769
- },
7770
7976
  },
7771
- "required": ["kind", "surface", "required"],
7977
+ "required": ["capability", "required"],
7772
7978
  "type": "object",
7773
- }, {
7979
+ },
7980
+ "type": "array",
7981
+ },
7982
+ "contracts": {
7983
+ "items": {
7774
7984
  "properties": {
7775
- "capability": { "minLength": 1, "type": "string" },
7776
- "kind": { "const": "capability", "type": "string" },
7985
+ "contractId": { "minLength": 1, "type": "string" },
7777
7986
  "required": { "type": "boolean" },
7778
7987
  },
7779
- "required": ["kind", "capability", "required"],
7988
+ "required": ["contractId", "required"],
7780
7989
  "type": "object",
7781
- }, {
7990
+ },
7991
+ "type": "array",
7992
+ },
7993
+ "resources": {
7994
+ "items": {
7782
7995
  "properties": {
7783
- "kind": { "const": "resource", "type": "string" },
7784
- "required": { "type": "boolean" },
7785
- "resource": {
7786
- "properties": {
7787
- "alias": { "minLength": 1, "type": "string" },
7788
- "definition": { "type": "object" },
7789
- "kind": {
7790
- "anyOf": [
7791
- { "const": "kv", "type": "string" },
7792
- { "const": "store", "type": "string" },
7793
- { "const": "jobs", "type": "string" },
7794
- { "const": "event-consumer", "type": "string" },
7795
- { "const": "transfer", "type": "string" },
7796
- ],
7797
- },
7798
- "required": { "type": "boolean" },
7799
- },
7800
- "required": ["kind", "alias", "required"],
7801
- "type": "object",
7996
+ "alias": { "minLength": 1, "type": "string" },
7997
+ "definition": { "type": "object" },
7998
+ "kind": {
7999
+ "anyOf": [
8000
+ { "const": "kv", "type": "string" },
8001
+ { "const": "store", "type": "string" },
8002
+ { "const": "jobs", "type": "string" },
8003
+ { "const": "event-consumer", "type": "string" },
8004
+ { "const": "transfer", "type": "string" },
8005
+ ],
7802
8006
  },
8007
+ "required": { "type": "boolean" },
7803
8008
  },
7804
- "required": ["kind", "resource", "required"],
8009
+ "required": ["kind", "alias", "required"],
7805
8010
  "type": "object",
7806
- }],
7807
- },
7808
- "type": "array",
7809
- },
7810
- "resources": {
7811
- "items": {
7812
- "properties": {
7813
- "alias": { "minLength": 1, "type": "string" },
7814
- "definition": { "type": "object" },
7815
- "kind": {
7816
- "anyOf": [
7817
- { "const": "kv", "type": "string" },
7818
- { "const": "store", "type": "string" },
7819
- { "const": "jobs", "type": "string" },
7820
- { "const": "event-consumer", "type": "string" },
7821
- { "const": "transfer", "type": "string" },
7822
- ],
7823
8011
  },
7824
- "required": { "type": "boolean" },
8012
+ "type": "array",
8013
+ },
8014
+ "surfaces": {
8015
+ "items": {
8016
+ "properties": {
8017
+ "action": {
8018
+ "anyOf": [
8019
+ { "const": "call", "type": "string" },
8020
+ { "const": "publish", "type": "string" },
8021
+ { "const": "subscribe", "type": "string" },
8022
+ { "const": "observe", "type": "string" },
8023
+ { "const": "cancel", "type": "string" },
8024
+ ],
8025
+ },
8026
+ "contractId": { "minLength": 1, "type": "string" },
8027
+ "kind": {
8028
+ "anyOf": [
8029
+ { "const": "rpc", "type": "string" },
8030
+ { "const": "operation", "type": "string" },
8031
+ { "const": "event", "type": "string" },
8032
+ { "const": "feed", "type": "string" },
8033
+ ],
8034
+ },
8035
+ "name": { "minLength": 1, "type": "string" },
8036
+ "required": { "type": "boolean" },
8037
+ },
8038
+ "required": ["contractId", "kind", "name", "required"],
8039
+ "type": "object",
8040
+ },
8041
+ "type": "array",
8042
+ },
8043
+ },
8044
+ "required": [
8045
+ "contracts",
8046
+ "surfaces",
8047
+ "capabilities",
8048
+ "resources",
8049
+ ],
8050
+ "type": "object",
8051
+ },
8052
+ "resources": {
8053
+ "items": {
8054
+ "properties": {
8055
+ "alias": { "minLength": 1, "type": "string" },
8056
+ "definition": { "type": "object" },
8057
+ "kind": {
8058
+ "anyOf": [
8059
+ { "const": "kv", "type": "string" },
8060
+ { "const": "store", "type": "string" },
8061
+ { "const": "jobs", "type": "string" },
8062
+ { "const": "event-consumer", "type": "string" },
8063
+ { "const": "transfer", "type": "string" },
8064
+ ],
8065
+ },
8066
+ "required": { "type": "boolean" },
7825
8067
  },
7826
8068
  "required": ["kind", "alias", "required"],
7827
8069
  "type": "object",
@@ -7885,6 +8127,22 @@ exports.CONTRACT = {
7885
8127
  ],
7886
8128
  "type": "object",
7887
8129
  },
8130
+ "DeploymentAuthorityCapabilityNeed": {
8131
+ "properties": {
8132
+ "capability": { "minLength": 1, "type": "string" },
8133
+ "required": { "type": "boolean" },
8134
+ },
8135
+ "required": ["capability", "required"],
8136
+ "type": "object",
8137
+ },
8138
+ "DeploymentAuthorityContractNeed": {
8139
+ "properties": {
8140
+ "contractId": { "minLength": 1, "type": "string" },
8141
+ "required": { "type": "boolean" },
8142
+ },
8143
+ "required": ["contractId", "required"],
8144
+ "type": "object",
8145
+ },
7888
8146
  "DeploymentAuthorityGrantOverride": {
7889
8147
  "anyOf": [{
7890
8148
  "properties": {
@@ -7982,40 +8240,19 @@ exports.CONTRACT = {
7982
8240
  "desiredVersion": { "minLength": 1, "type": "string" },
7983
8241
  "error": { "minLength": 1, "type": "string" },
7984
8242
  "grants": {
7985
- "items": {
7986
- "anyOf": [{
8243
+ "properties": {
8244
+ "capabilities": {
8245
+ "items": {
7987
8246
  "properties": {
7988
8247
  "capability": { "minLength": 1, "type": "string" },
7989
- "kind": { "const": "capability", "type": "string" },
7990
8248
  },
7991
- "required": ["kind", "capability"],
8249
+ "required": ["capability"],
7992
8250
  "type": "object",
7993
- }, {
7994
- "properties": {
7995
- "action": {
7996
- "anyOf": [
7997
- { "const": "call", "type": "string" },
7998
- { "const": "publish", "type": "string" },
7999
- { "const": "subscribe", "type": "string" },
8000
- { "const": "observe", "type": "string" },
8001
- { "const": "cancel", "type": "string" },
8002
- ],
8003
- },
8004
- "contractId": { "minLength": 1, "type": "string" },
8005
- "kind": { "const": "surface", "type": "string" },
8006
- "name": { "minLength": 1, "type": "string" },
8007
- "surfaceKind": {
8008
- "anyOf": [
8009
- { "const": "rpc", "type": "string" },
8010
- { "const": "operation", "type": "string" },
8011
- { "const": "event", "type": "string" },
8012
- { "const": "feed", "type": "string" },
8013
- ],
8014
- },
8015
- },
8016
- "required": ["kind", "contractId", "surfaceKind", "name"],
8017
- "type": "object",
8018
- }, {
8251
+ },
8252
+ "type": "array",
8253
+ },
8254
+ "nats": {
8255
+ "items": {
8019
8256
  "properties": {
8020
8257
  "direction": {
8021
8258
  "anyOf": [{ "const": "publish", "type": "string" }, {
@@ -8032,7 +8269,6 @@ exports.CONTRACT = {
8032
8269
  { "const": "transfer", "type": "string" },
8033
8270
  ],
8034
8271
  },
8035
- "kind": { "const": "nats", "type": "string" },
8036
8272
  "requiredCapabilities": {
8037
8273
  "items": { "minLength": 1, "type": "string" },
8038
8274
  "type": "array",
@@ -8065,16 +8301,46 @@ exports.CONTRACT = {
8065
8301
  },
8066
8302
  },
8067
8303
  "required": [
8068
- "kind",
8069
8304
  "direction",
8070
8305
  "subject",
8071
8306
  "requiredCapabilities",
8072
8307
  "grantSource",
8073
8308
  ],
8074
8309
  "type": "object",
8075
- }],
8310
+ },
8311
+ "type": "array",
8312
+ },
8313
+ "surfaces": {
8314
+ "items": {
8315
+ "properties": {
8316
+ "action": {
8317
+ "anyOf": [
8318
+ { "const": "call", "type": "string" },
8319
+ { "const": "publish", "type": "string" },
8320
+ { "const": "subscribe", "type": "string" },
8321
+ { "const": "observe", "type": "string" },
8322
+ { "const": "cancel", "type": "string" },
8323
+ ],
8324
+ },
8325
+ "contractId": { "minLength": 1, "type": "string" },
8326
+ "name": { "minLength": 1, "type": "string" },
8327
+ "surfaceKind": {
8328
+ "anyOf": [
8329
+ { "const": "rpc", "type": "string" },
8330
+ { "const": "operation", "type": "string" },
8331
+ { "const": "event", "type": "string" },
8332
+ { "const": "feed", "type": "string" },
8333
+ ],
8334
+ },
8335
+ },
8336
+ "required": ["contractId", "surfaceKind", "name"],
8337
+ "type": "object",
8338
+ },
8339
+ "type": "array",
8340
+ },
8076
8341
  },
8077
- "type": "array",
8342
+ "required": ["capabilities", "surfaces", "nats"],
8343
+ "type": "object",
8078
8344
  },
8079
8345
  "reconciledAt": {
8080
8346
  "anyOf": [{ "format": "date-time", "type": "string" }, {
@@ -8200,83 +8466,87 @@ exports.CONTRACT = {
8200
8466
  "type": "array",
8201
8467
  },
8202
8468
  "requestedNeeds": {
8203
- "items": {
8204
- "anyOf": [{
8469
+ "properties": {
8470
+ "capabilities": {
8471
+ "items": {
8205
8472
  "properties": {
8206
- "contractId": { "minLength": 1, "type": "string" },
8207
- "kind": { "const": "contract", "type": "string" },
8473
+ "capability": { "minLength": 1, "type": "string" },
8208
8474
  "required": { "type": "boolean" },
8209
8475
  },
8210
- "required": ["kind", "contractId", "required"],
8476
+ "required": ["capability", "required"],
8211
8477
  "type": "object",
8212
- }, {
8478
+ },
8479
+ "type": "array",
8480
+ },
8481
+ "contracts": {
8482
+ "items": {
8213
8483
  "properties": {
8214
- "kind": { "const": "surface", "type": "string" },
8484
+ "contractId": { "minLength": 1, "type": "string" },
8215
8485
  "required": { "type": "boolean" },
8216
- "surface": {
8217
- "properties": {
8218
- "action": {
8219
- "anyOf": [
8220
- { "const": "call", "type": "string" },
8221
- { "const": "publish", "type": "string" },
8222
- { "const": "subscribe", "type": "string" },
8223
- { "const": "observe", "type": "string" },
8224
- { "const": "cancel", "type": "string" },
8225
- ],
8226
- },
8227
- "contractId": { "minLength": 1, "type": "string" },
8228
- "kind": {
8229
- "anyOf": [
8230
- { "const": "rpc", "type": "string" },
8231
- { "const": "operation", "type": "string" },
8232
- { "const": "event", "type": "string" },
8233
- { "const": "feed", "type": "string" },
8234
- ],
8235
- },
8236
- "name": { "minLength": 1, "type": "string" },
8237
- },
8238
- "required": ["contractId", "kind", "name"],
8239
- "type": "object",
8240
- },
8241
8486
  },
8242
- "required": ["kind", "surface", "required"],
8487
+ "required": ["contractId", "required"],
8243
8488
  "type": "object",
8244
- }, {
8489
+ },
8490
+ "type": "array",
8491
+ },
8492
+ "resources": {
8493
+ "items": {
8245
8494
  "properties": {
8246
- "capability": { "minLength": 1, "type": "string" },
8247
- "kind": { "const": "capability", "type": "string" },
8495
+ "alias": { "minLength": 1, "type": "string" },
8496
+ "definition": { "type": "object" },
8497
+ "kind": {
8498
+ "anyOf": [
8499
+ { "const": "kv", "type": "string" },
8500
+ { "const": "store", "type": "string" },
8501
+ { "const": "jobs", "type": "string" },
8502
+ { "const": "event-consumer", "type": "string" },
8503
+ { "const": "transfer", "type": "string" },
8504
+ ],
8505
+ },
8248
8506
  "required": { "type": "boolean" },
8249
8507
  },
8250
- "required": ["kind", "capability", "required"],
8508
+ "required": ["kind", "alias", "required"],
8251
8509
  "type": "object",
8252
- }, {
8510
+ },
8511
+ "type": "array",
8512
+ },
8513
+ "surfaces": {
8514
+ "items": {
8253
8515
  "properties": {
8254
- "kind": { "const": "resource", "type": "string" },
8255
- "required": { "type": "boolean" },
8256
- "resource": {
8257
- "properties": {
8258
- "alias": { "minLength": 1, "type": "string" },
8259
- "definition": { "type": "object" },
8260
- "kind": {
8261
- "anyOf": [
8262
- { "const": "kv", "type": "string" },
8263
- { "const": "store", "type": "string" },
8264
- { "const": "jobs", "type": "string" },
8265
- { "const": "event-consumer", "type": "string" },
8266
- { "const": "transfer", "type": "string" },
8267
- ],
8268
- },
8269
- "required": { "type": "boolean" },
8270
- },
8271
- "required": ["kind", "alias", "required"],
8272
- "type": "object",
8516
+ "action": {
8517
+ "anyOf": [
8518
+ { "const": "call", "type": "string" },
8519
+ { "const": "publish", "type": "string" },
8520
+ { "const": "subscribe", "type": "string" },
8521
+ { "const": "observe", "type": "string" },
8522
+ { "const": "cancel", "type": "string" },
8523
+ ],
8524
+ },
8525
+ "contractId": { "minLength": 1, "type": "string" },
8526
+ "kind": {
8527
+ "anyOf": [
8528
+ { "const": "rpc", "type": "string" },
8529
+ { "const": "operation", "type": "string" },
8530
+ { "const": "event", "type": "string" },
8531
+ { "const": "feed", "type": "string" },
8532
+ ],
8273
8533
  },
8534
+ "name": { "minLength": 1, "type": "string" },
8535
+ "required": { "type": "boolean" },
8274
8536
  },
8275
- "required": ["kind", "resource", "required"],
8537
+ "required": ["contractId", "kind", "name", "required"],
8276
8538
  "type": "object",
8277
- }],
8539
+ },
8540
+ "type": "array",
8541
+ },
8278
8542
  },
8279
- "type": "array",
8543
+ "required": [
8544
+ "contracts",
8545
+ "surfaces",
8546
+ "capabilities",
8547
+ "resources",
8548
+ ],
8549
+ "type": "object",
8280
8550
  },
8281
8551
  "summary": { "type": "object" },
8282
8552
  },
@@ -8315,81 +8585,83 @@ exports.CONTRACT = {
8315
8585
  ],
8316
8586
  "type": "object",
8317
8587
  },
8318
- "DeploymentAuthorityNeed": {
8319
- "anyOf": [{
8320
- "properties": {
8321
- "contractId": { "minLength": 1, "type": "string" },
8322
- "kind": { "const": "contract", "type": "string" },
8323
- "required": { "type": "boolean" },
8588
+ "DeploymentAuthorityNeeds": {
8589
+ "properties": {
8590
+ "capabilities": {
8591
+ "items": {
8592
+ "properties": {
8593
+ "capability": { "minLength": 1, "type": "string" },
8594
+ "required": { "type": "boolean" },
8595
+ },
8596
+ "required": ["capability", "required"],
8597
+ "type": "object",
8324
8598
  },
8325
- "required": ["kind", "contractId", "required"],
8326
- "type": "object",
8327
- }, {
8328
- "properties": {
8329
- "kind": { "const": "surface", "type": "string" },
8330
- "required": { "type": "boolean" },
8331
- "surface": {
8332
- "properties": {
8333
- "action": {
8334
- "anyOf": [
8335
- { "const": "call", "type": "string" },
8336
- { "const": "publish", "type": "string" },
8337
- { "const": "subscribe", "type": "string" },
8338
- { "const": "observe", "type": "string" },
8339
- { "const": "cancel", "type": "string" },
8340
- ],
8341
- },
8342
- "contractId": { "minLength": 1, "type": "string" },
8343
- "kind": {
8344
- "anyOf": [
8345
- { "const": "rpc", "type": "string" },
8346
- { "const": "operation", "type": "string" },
8347
- { "const": "event", "type": "string" },
8348
- { "const": "feed", "type": "string" },
8349
- ],
8350
- },
8351
- "name": { "minLength": 1, "type": "string" },
8352
- },
8353
- "required": ["contractId", "kind", "name"],
8354
- "type": "object",
8599
+ "type": "array",
8600
+ },
8601
+ "contracts": {
8602
+ "items": {
8603
+ "properties": {
8604
+ "contractId": { "minLength": 1, "type": "string" },
8605
+ "required": { "type": "boolean" },
8355
8606
  },
8607
+ "required": ["contractId", "required"],
8608
+ "type": "object",
8356
8609
  },
8357
- "required": ["kind", "surface", "required"],
8358
- "type": "object",
8359
- }, {
8360
- "properties": {
8361
- "capability": { "minLength": 1, "type": "string" },
8362
- "kind": { "const": "capability", "type": "string" },
8363
- "required": { "type": "boolean" },
8610
+ "type": "array",
8611
+ },
8612
+ "resources": {
8613
+ "items": {
8614
+ "properties": {
8615
+ "alias": { "minLength": 1, "type": "string" },
8616
+ "definition": { "type": "object" },
8617
+ "kind": {
8618
+ "anyOf": [
8619
+ { "const": "kv", "type": "string" },
8620
+ { "const": "store", "type": "string" },
8621
+ { "const": "jobs", "type": "string" },
8622
+ { "const": "event-consumer", "type": "string" },
8623
+ { "const": "transfer", "type": "string" },
8624
+ ],
8625
+ },
8626
+ "required": { "type": "boolean" },
8627
+ },
8628
+ "required": ["kind", "alias", "required"],
8629
+ "type": "object",
8364
8630
  },
8365
- "required": ["kind", "capability", "required"],
8366
- "type": "object",
8367
- }, {
8368
- "properties": {
8369
- "kind": { "const": "resource", "type": "string" },
8370
- "required": { "type": "boolean" },
8371
- "resource": {
8372
- "properties": {
8373
- "alias": { "minLength": 1, "type": "string" },
8374
- "definition": { "type": "object" },
8375
- "kind": {
8376
- "anyOf": [
8377
- { "const": "kv", "type": "string" },
8378
- { "const": "store", "type": "string" },
8379
- { "const": "jobs", "type": "string" },
8380
- { "const": "event-consumer", "type": "string" },
8381
- { "const": "transfer", "type": "string" },
8382
- ],
8383
- },
8384
- "required": { "type": "boolean" },
8631
+ "type": "array",
8632
+ },
8633
+ "surfaces": {
8634
+ "items": {
8635
+ "properties": {
8636
+ "action": {
8637
+ "anyOf": [
8638
+ { "const": "call", "type": "string" },
8639
+ { "const": "publish", "type": "string" },
8640
+ { "const": "subscribe", "type": "string" },
8641
+ { "const": "observe", "type": "string" },
8642
+ { "const": "cancel", "type": "string" },
8643
+ ],
8385
8644
  },
8386
- "required": ["kind", "alias", "required"],
8387
- "type": "object",
8645
+ "contractId": { "minLength": 1, "type": "string" },
8646
+ "kind": {
8647
+ "anyOf": [
8648
+ { "const": "rpc", "type": "string" },
8649
+ { "const": "operation", "type": "string" },
8650
+ { "const": "event", "type": "string" },
8651
+ { "const": "feed", "type": "string" },
8652
+ ],
8653
+ },
8654
+ "name": { "minLength": 1, "type": "string" },
8655
+ "required": { "type": "boolean" },
8388
8656
  },
8657
+ "required": ["contractId", "kind", "name", "required"],
8658
+ "type": "object",
8389
8659
  },
8390
- "required": ["kind", "resource", "required"],
8391
- "type": "object",
8392
- }],
8660
+ "type": "array",
8661
+ },
8662
+ },
8663
+ "required": ["contracts", "surfaces", "capabilities", "resources"],
8664
+ "type": "object",
8393
8665
  },
8394
8666
  "DeploymentAuthorityProposal": {
8395
8667
  "properties": {
@@ -8425,85 +8697,84 @@ exports.CONTRACT = {
8425
8697
  "type": "object",
8426
8698
  },
8427
8699
  "type": "array",
8428
- },
8429
- "requestedNeeds": {
8430
- "items": {
8431
- "anyOf": [{
8432
- "properties": {
8433
- "contractId": { "minLength": 1, "type": "string" },
8434
- "kind": { "const": "contract", "type": "string" },
8435
- "required": { "type": "boolean" },
8436
- },
8437
- "required": ["kind", "contractId", "required"],
8438
- "type": "object",
8439
- }, {
8440
- "properties": {
8441
- "kind": { "const": "surface", "type": "string" },
8442
- "required": { "type": "boolean" },
8443
- "surface": {
8444
- "properties": {
8445
- "action": {
8446
- "anyOf": [
8447
- { "const": "call", "type": "string" },
8448
- { "const": "publish", "type": "string" },
8449
- { "const": "subscribe", "type": "string" },
8450
- { "const": "observe", "type": "string" },
8451
- { "const": "cancel", "type": "string" },
8452
- ],
8453
- },
8454
- "contractId": { "minLength": 1, "type": "string" },
8455
- "kind": {
8456
- "anyOf": [
8457
- { "const": "rpc", "type": "string" },
8458
- { "const": "operation", "type": "string" },
8459
- { "const": "event", "type": "string" },
8460
- { "const": "feed", "type": "string" },
8461
- ],
8462
- },
8463
- "name": { "minLength": 1, "type": "string" },
8464
- },
8465
- "required": ["contractId", "kind", "name"],
8466
- "type": "object",
8467
- },
8700
+ },
8701
+ "requestedNeeds": {
8702
+ "properties": {
8703
+ "capabilities": {
8704
+ "items": {
8705
+ "properties": {
8706
+ "capability": { "minLength": 1, "type": "string" },
8707
+ "required": { "type": "boolean" },
8468
8708
  },
8469
- "required": ["kind", "surface", "required"],
8709
+ "required": ["capability", "required"],
8470
8710
  "type": "object",
8471
- }, {
8711
+ },
8712
+ "type": "array",
8713
+ },
8714
+ "contracts": {
8715
+ "items": {
8472
8716
  "properties": {
8473
- "capability": { "minLength": 1, "type": "string" },
8474
- "kind": { "const": "capability", "type": "string" },
8717
+ "contractId": { "minLength": 1, "type": "string" },
8475
8718
  "required": { "type": "boolean" },
8476
8719
  },
8477
- "required": ["kind", "capability", "required"],
8720
+ "required": ["contractId", "required"],
8478
8721
  "type": "object",
8479
- }, {
8722
+ },
8723
+ "type": "array",
8724
+ },
8725
+ "resources": {
8726
+ "items": {
8480
8727
  "properties": {
8481
- "kind": { "const": "resource", "type": "string" },
8728
+ "alias": { "minLength": 1, "type": "string" },
8729
+ "definition": { "type": "object" },
8730
+ "kind": {
8731
+ "anyOf": [
8732
+ { "const": "kv", "type": "string" },
8733
+ { "const": "store", "type": "string" },
8734
+ { "const": "jobs", "type": "string" },
8735
+ { "const": "event-consumer", "type": "string" },
8736
+ { "const": "transfer", "type": "string" },
8737
+ ],
8738
+ },
8482
8739
  "required": { "type": "boolean" },
8483
- "resource": {
8484
- "properties": {
8485
- "alias": { "minLength": 1, "type": "string" },
8486
- "definition": { "type": "object" },
8487
- "kind": {
8488
- "anyOf": [
8489
- { "const": "kv", "type": "string" },
8490
- { "const": "store", "type": "string" },
8491
- { "const": "jobs", "type": "string" },
8492
- { "const": "event-consumer", "type": "string" },
8493
- { "const": "transfer", "type": "string" },
8494
- ],
8495
- },
8496
- "required": { "type": "boolean" },
8497
- },
8498
- "required": ["kind", "alias", "required"],
8499
- "type": "object",
8740
+ },
8741
+ "required": ["kind", "alias", "required"],
8742
+ "type": "object",
8743
+ },
8744
+ "type": "array",
8745
+ },
8746
+ "surfaces": {
8747
+ "items": {
8748
+ "properties": {
8749
+ "action": {
8750
+ "anyOf": [
8751
+ { "const": "call", "type": "string" },
8752
+ { "const": "publish", "type": "string" },
8753
+ { "const": "subscribe", "type": "string" },
8754
+ { "const": "observe", "type": "string" },
8755
+ { "const": "cancel", "type": "string" },
8756
+ ],
8757
+ },
8758
+ "contractId": { "minLength": 1, "type": "string" },
8759
+ "kind": {
8760
+ "anyOf": [
8761
+ { "const": "rpc", "type": "string" },
8762
+ { "const": "operation", "type": "string" },
8763
+ { "const": "event", "type": "string" },
8764
+ { "const": "feed", "type": "string" },
8765
+ ],
8500
8766
  },
8767
+ "name": { "minLength": 1, "type": "string" },
8768
+ "required": { "type": "boolean" },
8501
8769
  },
8502
- "required": ["kind", "resource", "required"],
8770
+ "required": ["contractId", "kind", "name", "required"],
8503
8771
  "type": "object",
8504
- }],
8772
+ },
8773
+ "type": "array",
8774
+ },
8505
8775
  },
8506
- "type": "array",
8776
+ "required": ["contracts", "surfaces", "capabilities", "resources"],
8777
+ "type": "object",
8507
8778
  },
8508
8779
  "summary": { "type": "object" },
8509
8780
  },
@@ -8567,6 +8838,24 @@ exports.CONTRACT = {
8567
8838
  "required": ["kind", "alias", "required"],
8568
8839
  "type": "object",
8569
8840
  },
8841
+ "DeploymentAuthorityResourceNeed": {
8842
+ "properties": {
8843
+ "alias": { "minLength": 1, "type": "string" },
8844
+ "definition": { "type": "object" },
8845
+ "kind": {
8846
+ "anyOf": [
8847
+ { "const": "kv", "type": "string" },
8848
+ { "const": "store", "type": "string" },
8849
+ { "const": "jobs", "type": "string" },
8850
+ { "const": "event-consumer", "type": "string" },
8851
+ { "const": "transfer", "type": "string" },
8852
+ ],
8853
+ },
8854
+ "required": { "type": "boolean" },
8855
+ },
8856
+ "required": ["kind", "alias", "required"],
8857
+ "type": "object",
8858
+ },
8570
8859
  "DeploymentAuthoritySurface": {
8571
8860
  "properties": {
8572
8861
  "action": {
@@ -8592,6 +8881,32 @@ exports.CONTRACT = {
8592
8881
  "required": ["contractId", "kind", "name"],
8593
8882
  "type": "object",
8594
8883
  },
8884
+ "DeploymentAuthoritySurfaceNeed": {
8885
+ "properties": {
8886
+ "action": {
8887
+ "anyOf": [
8888
+ { "const": "call", "type": "string" },
8889
+ { "const": "publish", "type": "string" },
8890
+ { "const": "subscribe", "type": "string" },
8891
+ { "const": "observe", "type": "string" },
8892
+ { "const": "cancel", "type": "string" },
8893
+ ],
8894
+ },
8895
+ "contractId": { "minLength": 1, "type": "string" },
8896
+ "kind": {
8897
+ "anyOf": [
8898
+ { "const": "rpc", "type": "string" },
8899
+ { "const": "operation", "type": "string" },
8900
+ { "const": "event", "type": "string" },
8901
+ { "const": "feed", "type": "string" },
8902
+ ],
8903
+ },
8904
+ "name": { "minLength": 1, "type": "string" },
8905
+ "required": { "type": "boolean" },
8906
+ },
8907
+ "required": ["contractId", "kind", "name", "required"],
8908
+ "type": "object",
8909
+ },
8595
8910
  "DeploymentAuthorityUpdate": {
8596
8911
  "properties": {
8597
8912
  "classification": { "const": "update", "type": "string" },
@@ -8653,83 +8968,87 @@ exports.CONTRACT = {
8653
8968
  "type": "array",
8654
8969
  },
8655
8970
  "requestedNeeds": {
8656
- "items": {
8657
- "anyOf": [{
8971
+ "properties": {
8972
+ "capabilities": {
8973
+ "items": {
8658
8974
  "properties": {
8659
- "contractId": { "minLength": 1, "type": "string" },
8660
- "kind": { "const": "contract", "type": "string" },
8975
+ "capability": { "minLength": 1, "type": "string" },
8661
8976
  "required": { "type": "boolean" },
8662
8977
  },
8663
- "required": ["kind", "contractId", "required"],
8978
+ "required": ["capability", "required"],
8664
8979
  "type": "object",
8665
- }, {
8980
+ },
8981
+ "type": "array",
8982
+ },
8983
+ "contracts": {
8984
+ "items": {
8666
8985
  "properties": {
8667
- "kind": { "const": "surface", "type": "string" },
8986
+ "contractId": { "minLength": 1, "type": "string" },
8668
8987
  "required": { "type": "boolean" },
8669
- "surface": {
8670
- "properties": {
8671
- "action": {
8672
- "anyOf": [
8673
- { "const": "call", "type": "string" },
8674
- { "const": "publish", "type": "string" },
8675
- { "const": "subscribe", "type": "string" },
8676
- { "const": "observe", "type": "string" },
8677
- { "const": "cancel", "type": "string" },
8678
- ],
8679
- },
8680
- "contractId": { "minLength": 1, "type": "string" },
8681
- "kind": {
8682
- "anyOf": [
8683
- { "const": "rpc", "type": "string" },
8684
- { "const": "operation", "type": "string" },
8685
- { "const": "event", "type": "string" },
8686
- { "const": "feed", "type": "string" },
8687
- ],
8688
- },
8689
- "name": { "minLength": 1, "type": "string" },
8690
- },
8691
- "required": ["contractId", "kind", "name"],
8692
- "type": "object",
8693
- },
8694
8988
  },
8695
- "required": ["kind", "surface", "required"],
8989
+ "required": ["contractId", "required"],
8696
8990
  "type": "object",
8697
- }, {
8991
+ },
8992
+ "type": "array",
8993
+ },
8994
+ "resources": {
8995
+ "items": {
8698
8996
  "properties": {
8699
- "capability": { "minLength": 1, "type": "string" },
8700
- "kind": { "const": "capability", "type": "string" },
8997
+ "alias": { "minLength": 1, "type": "string" },
8998
+ "definition": { "type": "object" },
8999
+ "kind": {
9000
+ "anyOf": [
9001
+ { "const": "kv", "type": "string" },
9002
+ { "const": "store", "type": "string" },
9003
+ { "const": "jobs", "type": "string" },
9004
+ { "const": "event-consumer", "type": "string" },
9005
+ { "const": "transfer", "type": "string" },
9006
+ ],
9007
+ },
8701
9008
  "required": { "type": "boolean" },
8702
9009
  },
8703
- "required": ["kind", "capability", "required"],
9010
+ "required": ["kind", "alias", "required"],
8704
9011
  "type": "object",
8705
- }, {
9012
+ },
9013
+ "type": "array",
9014
+ },
9015
+ "surfaces": {
9016
+ "items": {
8706
9017
  "properties": {
8707
- "kind": { "const": "resource", "type": "string" },
8708
- "required": { "type": "boolean" },
8709
- "resource": {
8710
- "properties": {
8711
- "alias": { "minLength": 1, "type": "string" },
8712
- "definition": { "type": "object" },
8713
- "kind": {
8714
- "anyOf": [
8715
- { "const": "kv", "type": "string" },
8716
- { "const": "store", "type": "string" },
8717
- { "const": "jobs", "type": "string" },
8718
- { "const": "event-consumer", "type": "string" },
8719
- { "const": "transfer", "type": "string" },
8720
- ],
8721
- },
8722
- "required": { "type": "boolean" },
8723
- },
8724
- "required": ["kind", "alias", "required"],
8725
- "type": "object",
9018
+ "action": {
9019
+ "anyOf": [
9020
+ { "const": "call", "type": "string" },
9021
+ { "const": "publish", "type": "string" },
9022
+ { "const": "subscribe", "type": "string" },
9023
+ { "const": "observe", "type": "string" },
9024
+ { "const": "cancel", "type": "string" },
9025
+ ],
9026
+ },
9027
+ "contractId": { "minLength": 1, "type": "string" },
9028
+ "kind": {
9029
+ "anyOf": [
9030
+ { "const": "rpc", "type": "string" },
9031
+ { "const": "operation", "type": "string" },
9032
+ { "const": "event", "type": "string" },
9033
+ { "const": "feed", "type": "string" },
9034
+ ],
8726
9035
  },
9036
+ "name": { "minLength": 1, "type": "string" },
9037
+ "required": { "type": "boolean" },
8727
9038
  },
8728
- "required": ["kind", "resource", "required"],
9039
+ "required": ["contractId", "kind", "name", "required"],
8729
9040
  "type": "object",
8730
- }],
9041
+ },
9042
+ "type": "array",
9043
+ },
8731
9044
  },
8732
- "type": "array",
9045
+ "required": [
9046
+ "contracts",
9047
+ "surfaces",
9048
+ "capabilities",
9049
+ "resources",
9050
+ ],
9051
+ "type": "object",
8733
9052
  },
8734
9053
  "summary": { "type": "object" },
8735
9054
  },
@@ -9482,6 +9801,38 @@ exports.CONTRACT = {
9482
9801
  "type": "integer",
9483
9802
  },
9484
9803
  "dlq": { "type": "boolean" },
9804
+ "keyConcurrency": {
9805
+ "properties": {
9806
+ "heartbeatIntervalMs": {
9807
+ "minimum": 1,
9808
+ "type": "integer",
9809
+ },
9810
+ "heartbeatTtlMs": {
9811
+ "minimum": 1,
9812
+ "type": "integer",
9813
+ },
9814
+ "key": {
9815
+ "items": { "minLength": 1, "type": "string" },
9816
+ "minItems": 1,
9817
+ "type": "array",
9818
+ },
9819
+ "maxActive": { "minimum": 1, "type": "integer" },
9820
+ "stalePolicy": {
9821
+ "anyOf": [{
9822
+ "const": "fail-stale",
9823
+ "type": "string",
9824
+ }, { "const": "block", "type": "string" }],
9825
+ },
9826
+ },
9827
+ "required": [
9828
+ "key",
9829
+ "maxActive",
9830
+ "heartbeatIntervalMs",
9831
+ "heartbeatTtlMs",
9832
+ "stalePolicy",
9833
+ ],
9834
+ "type": "object",
9835
+ },
9485
9836
  "logs": { "type": "boolean" },
9486
9837
  "maxDeliver": { "minimum": 1, "type": "integer" },
9487
9838
  "payload": {
@@ -9493,6 +9844,23 @@ exports.CONTRACT = {
9493
9844
  },
9494
9845
  "progress": { "type": "boolean" },
9495
9846
  "publishPrefix": { "minLength": 1, "type": "string" },
9847
+ "queue": {
9848
+ "properties": {
9849
+ "maxQueuedPerKey": {
9850
+ "minimum": 0,
9851
+ "type": "integer",
9852
+ },
9853
+ "whenFull": {
9854
+ "anyOf": [
9855
+ { "const": "reject", "type": "string" },
9856
+ { "const": "coalesce", "type": "string" },
9857
+ { "const": "replace-oldest", "type": "string" },
9858
+ ],
9859
+ },
9860
+ },
9861
+ "required": ["maxQueuedPerKey", "whenFull"],
9862
+ "type": "object",
9863
+ },
9496
9864
  "queueType": { "minLength": 1, "type": "string" },
9497
9865
  "result": {
9498
9866
  "properties": {