@qlever-llc/trellis 0.10.9 → 0.10.10

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 (187) hide show
  1. package/esm/generated-sdk/auth/api.d.ts.map +1 -1
  2. package/esm/generated-sdk/auth/client.d.ts.map +1 -1
  3. package/esm/generated-sdk/auth/contract.d.ts.map +1 -1
  4. package/esm/generated-sdk/auth/contract.js +9590 -7
  5. package/esm/generated-sdk/auth/mod.d.ts +3 -3
  6. package/esm/generated-sdk/auth/mod.d.ts.map +1 -1
  7. package/esm/generated-sdk/auth/mod.js +1 -1
  8. package/esm/generated-sdk/auth/owned_api.d.ts.map +1 -1
  9. package/esm/generated-sdk/auth/owned_api.js +305 -62
  10. package/esm/generated-sdk/auth/schemas.d.ts.map +1 -1
  11. package/esm/generated-sdk/auth/schemas.js +6492 -139
  12. package/esm/generated-sdk/auth/types.d.ts +254 -254
  13. package/esm/generated-sdk/auth/types.d.ts.map +1 -1
  14. package/esm/generated-sdk/health/api.d.ts.map +1 -1
  15. package/esm/generated-sdk/health/client.d.ts.map +1 -1
  16. package/esm/generated-sdk/health/contract.d.ts.map +1 -1
  17. package/esm/generated-sdk/health/contract.js +117 -7
  18. package/esm/generated-sdk/health/mod.d.ts +2 -2
  19. package/esm/generated-sdk/health/mod.d.ts.map +1 -1
  20. package/esm/generated-sdk/health/mod.js +1 -1
  21. package/esm/generated-sdk/health/owned_api.d.ts.map +1 -1
  22. package/esm/generated-sdk/health/schemas.d.ts.map +1 -1
  23. package/esm/generated-sdk/health/schemas.js +79 -1
  24. package/esm/generated-sdk/health/types.d.ts +4 -4
  25. package/esm/generated-sdk/health/types.d.ts.map +1 -1
  26. package/esm/generated-sdk/jobs/api.d.ts.map +1 -1
  27. package/esm/generated-sdk/jobs/api.js +12 -4
  28. package/esm/generated-sdk/jobs/client.d.ts.map +1 -1
  29. package/esm/generated-sdk/jobs/contract.d.ts.map +1 -1
  30. package/esm/generated-sdk/jobs/contract.js +1080 -7
  31. package/esm/generated-sdk/jobs/mod.d.ts +2 -2
  32. package/esm/generated-sdk/jobs/mod.d.ts.map +1 -1
  33. package/esm/generated-sdk/jobs/mod.js +1 -1
  34. package/esm/generated-sdk/jobs/owned_api.d.ts.map +1 -1
  35. package/esm/generated-sdk/jobs/owned_api.js +26 -6
  36. package/esm/generated-sdk/jobs/schemas.d.ts.map +1 -1
  37. package/esm/generated-sdk/jobs/schemas.js +768 -18
  38. package/esm/generated-sdk/jobs/types.d.ts +14 -14
  39. package/esm/generated-sdk/jobs/types.d.ts.map +1 -1
  40. package/esm/generated-sdk/state/api.d.ts.map +1 -1
  41. package/esm/generated-sdk/state/api.js +3 -1
  42. package/esm/generated-sdk/state/client.d.ts.map +1 -1
  43. package/esm/generated-sdk/state/contract.d.ts.map +1 -1
  44. package/esm/generated-sdk/state/contract.js +638 -7
  45. package/esm/generated-sdk/state/mod.d.ts +2 -2
  46. package/esm/generated-sdk/state/mod.d.ts.map +1 -1
  47. package/esm/generated-sdk/state/mod.js +1 -1
  48. package/esm/generated-sdk/state/owned_api.d.ts.map +1 -1
  49. package/esm/generated-sdk/state/owned_api.js +36 -8
  50. package/esm/generated-sdk/state/schemas.d.ts.map +1 -1
  51. package/esm/generated-sdk/state/schemas.js +441 -14
  52. package/esm/generated-sdk/state/types.d.ts +15 -15
  53. package/esm/generated-sdk/state/types.d.ts.map +1 -1
  54. package/esm/generated-sdk/trellis-core/api.d.ts.map +1 -1
  55. package/esm/generated-sdk/trellis-core/client.d.ts.map +1 -1
  56. package/esm/generated-sdk/trellis-core/contract.d.ts.map +1 -1
  57. package/esm/generated-sdk/trellis-core/contract.js +744 -7
  58. package/esm/generated-sdk/trellis-core/mod.d.ts +2 -2
  59. package/esm/generated-sdk/trellis-core/mod.d.ts.map +1 -1
  60. package/esm/generated-sdk/trellis-core/mod.js +1 -1
  61. package/esm/generated-sdk/trellis-core/owned_api.d.ts.map +1 -1
  62. package/esm/generated-sdk/trellis-core/owned_api.js +1 -1
  63. package/esm/generated-sdk/trellis-core/schemas.d.ts.map +1 -1
  64. package/esm/generated-sdk/trellis-core/schemas.js +626 -8
  65. package/esm/generated-sdk/trellis-core/types.d.ts +14 -14
  66. package/esm/generated-sdk/trellis-core/types.d.ts.map +1 -1
  67. package/esm/server/service.d.ts +35 -13
  68. package/esm/server/service.d.ts.map +1 -1
  69. package/esm/service/deno.d.ts +1 -1
  70. package/esm/service/deno.d.ts.map +1 -1
  71. package/esm/service/mod.d.ts +1 -1
  72. package/esm/service/mod.d.ts.map +1 -1
  73. package/esm/service/node.d.ts +1 -1
  74. package/esm/service/node.d.ts.map +1 -1
  75. package/package.json +2 -2
  76. package/script/generated-sdk/auth/api.d.ts.map +1 -1
  77. package/script/generated-sdk/auth/client.d.ts.map +1 -1
  78. package/script/generated-sdk/auth/contract.d.ts.map +1 -1
  79. package/script/generated-sdk/auth/contract.js +9590 -7
  80. package/script/generated-sdk/auth/mod.d.ts +3 -3
  81. package/script/generated-sdk/auth/mod.d.ts.map +1 -1
  82. package/script/generated-sdk/auth/mod.js +2 -2
  83. package/script/generated-sdk/auth/owned_api.d.ts.map +1 -1
  84. package/script/generated-sdk/auth/owned_api.js +304 -61
  85. package/script/generated-sdk/auth/schemas.d.ts.map +1 -1
  86. package/script/generated-sdk/auth/schemas.js +6492 -139
  87. package/script/generated-sdk/auth/types.d.ts +254 -254
  88. package/script/generated-sdk/auth/types.d.ts.map +1 -1
  89. package/script/generated-sdk/health/api.d.ts.map +1 -1
  90. package/script/generated-sdk/health/client.d.ts.map +1 -1
  91. package/script/generated-sdk/health/contract.d.ts.map +1 -1
  92. package/script/generated-sdk/health/contract.js +117 -7
  93. package/script/generated-sdk/health/mod.d.ts +2 -2
  94. package/script/generated-sdk/health/mod.d.ts.map +1 -1
  95. package/script/generated-sdk/health/mod.js +2 -2
  96. package/script/generated-sdk/health/owned_api.d.ts.map +1 -1
  97. package/script/generated-sdk/health/schemas.d.ts.map +1 -1
  98. package/script/generated-sdk/health/schemas.js +79 -1
  99. package/script/generated-sdk/health/types.d.ts +4 -4
  100. package/script/generated-sdk/health/types.d.ts.map +1 -1
  101. package/script/generated-sdk/jobs/api.d.ts.map +1 -1
  102. package/script/generated-sdk/jobs/api.js +12 -4
  103. package/script/generated-sdk/jobs/client.d.ts.map +1 -1
  104. package/script/generated-sdk/jobs/contract.d.ts.map +1 -1
  105. package/script/generated-sdk/jobs/contract.js +1080 -7
  106. package/script/generated-sdk/jobs/mod.d.ts +2 -2
  107. package/script/generated-sdk/jobs/mod.d.ts.map +1 -1
  108. package/script/generated-sdk/jobs/mod.js +2 -2
  109. package/script/generated-sdk/jobs/owned_api.d.ts.map +1 -1
  110. package/script/generated-sdk/jobs/owned_api.js +25 -5
  111. package/script/generated-sdk/jobs/schemas.d.ts.map +1 -1
  112. package/script/generated-sdk/jobs/schemas.js +768 -18
  113. package/script/generated-sdk/jobs/types.d.ts +14 -14
  114. package/script/generated-sdk/jobs/types.d.ts.map +1 -1
  115. package/script/generated-sdk/state/api.d.ts.map +1 -1
  116. package/script/generated-sdk/state/api.js +3 -1
  117. package/script/generated-sdk/state/client.d.ts.map +1 -1
  118. package/script/generated-sdk/state/contract.d.ts.map +1 -1
  119. package/script/generated-sdk/state/contract.js +638 -7
  120. package/script/generated-sdk/state/mod.d.ts +2 -2
  121. package/script/generated-sdk/state/mod.d.ts.map +1 -1
  122. package/script/generated-sdk/state/mod.js +2 -2
  123. package/script/generated-sdk/state/owned_api.d.ts.map +1 -1
  124. package/script/generated-sdk/state/owned_api.js +35 -7
  125. package/script/generated-sdk/state/schemas.d.ts.map +1 -1
  126. package/script/generated-sdk/state/schemas.js +441 -14
  127. package/script/generated-sdk/state/types.d.ts +15 -15
  128. package/script/generated-sdk/state/types.d.ts.map +1 -1
  129. package/script/generated-sdk/trellis-core/api.d.ts.map +1 -1
  130. package/script/generated-sdk/trellis-core/client.d.ts.map +1 -1
  131. package/script/generated-sdk/trellis-core/contract.d.ts.map +1 -1
  132. package/script/generated-sdk/trellis-core/contract.js +744 -7
  133. package/script/generated-sdk/trellis-core/mod.d.ts +2 -2
  134. package/script/generated-sdk/trellis-core/mod.d.ts.map +1 -1
  135. package/script/generated-sdk/trellis-core/mod.js +2 -2
  136. package/script/generated-sdk/trellis-core/owned_api.d.ts.map +1 -1
  137. package/script/generated-sdk/trellis-core/schemas.d.ts.map +1 -1
  138. package/script/generated-sdk/trellis-core/schemas.js +626 -8
  139. package/script/generated-sdk/trellis-core/types.d.ts +14 -14
  140. package/script/generated-sdk/trellis-core/types.d.ts.map +1 -1
  141. package/script/server/service.d.ts +35 -13
  142. package/script/server/service.d.ts.map +1 -1
  143. package/script/service/deno.d.ts +1 -1
  144. package/script/service/deno.d.ts.map +1 -1
  145. package/script/service/mod.d.ts +1 -1
  146. package/script/service/mod.d.ts.map +1 -1
  147. package/script/service/node.d.ts +1 -1
  148. package/script/service/node.d.ts.map +1 -1
  149. package/src/sdk/_generated/auth/api.ts +10 -21
  150. package/src/sdk/_generated/auth/client.ts +1178 -160
  151. package/src/sdk/_generated/auth/contract.ts +9637 -13
  152. package/src/sdk/_generated/auth/mod.ts +22 -3
  153. package/src/sdk/_generated/auth/owned_api.ts +897 -264
  154. package/src/sdk/_generated/auth/schemas.ts +6630 -278
  155. package/src/sdk/_generated/auth/types.ts +2950 -359
  156. package/src/sdk/_generated/core/api.ts +10 -21
  157. package/src/sdk/_generated/core/client.ts +105 -12
  158. package/src/sdk/_generated/core/contract.ts +774 -13
  159. package/src/sdk/_generated/core/mod.ts +17 -2
  160. package/src/sdk/_generated/core/owned_api.ts +40 -24
  161. package/src/sdk/_generated/core/schemas.ts +626 -9
  162. package/src/sdk/_generated/core/types.ts +233 -18
  163. package/src/sdk/_generated/health/api.ts +10 -21
  164. package/src/sdk/_generated/health/client.ts +104 -8
  165. package/src/sdk/_generated/health/contract.ts +144 -13
  166. package/src/sdk/_generated/health/mod.ts +17 -2
  167. package/src/sdk/_generated/health/owned_api.ts +4 -9
  168. package/src/sdk/_generated/health/schemas.ts +79 -2
  169. package/src/sdk/_generated/health/types.ts +31 -4
  170. package/src/sdk/_generated/jobs/api.ts +20 -18
  171. package/src/sdk/_generated/jobs/client.ts +199 -28
  172. package/src/sdk/_generated/jobs/contract.ts +1119 -13
  173. package/src/sdk/_generated/jobs/mod.ts +17 -2
  174. package/src/sdk/_generated/jobs/owned_api.ts +64 -27
  175. package/src/sdk/_generated/jobs/schemas.ts +776 -20
  176. package/src/sdk/_generated/jobs/types.ts +407 -34
  177. package/src/sdk/_generated/state/api.ts +11 -18
  178. package/src/sdk/_generated/state/client.ts +169 -22
  179. package/src/sdk/_generated/state/contract.ts +670 -13
  180. package/src/sdk/_generated/state/mod.ts +17 -2
  181. package/src/sdk/_generated/state/owned_api.ts +65 -25
  182. package/src/sdk/_generated/state/schemas.ts +441 -15
  183. package/src/sdk/_generated/state/types.ts +229 -26
  184. package/src/server/service.ts +92 -15
  185. package/src/service/deno.ts +4 -0
  186. package/src/service/mod.ts +4 -0
  187. package/src/service/node.ts +4 -0
@@ -2,7 +2,736 @@ import { API } from "./api.js";
2
2
  const CONTRACT_MODULE_METADATA = Symbol.for("@qlever-llc/trellis/contracts/contract-module");
3
3
  export const CONTRACT_ID = "trellis.core@v1";
4
4
  export const CONTRACT_DIGEST = "L4HW6uUIxDhK1Kpa_PUxpumoMberMgiCgJTNN5Qvje0";
5
- export const CONTRACT = { "capabilities": { "trellis.core::catalog.read": { "description": "List the installed Trellis contract catalog.", "displayName": "Read contract catalog" }, "trellis.core::contract.read": { "description": "Read installed contract manifests and metadata.", "displayName": "Read installed contracts" } }, "description": "Trellis runtime RPCs available to all connected participants.", "displayName": "Trellis Core", "docs": { "markdown": "Exposes the Trellis catalog, contract details, runtime bindings, and surface availability checks used by platform participants.", "summary": "Runtime catalog and binding APIs." }, "format": "trellis.contract.v1", "id": "trellis.core@v1", "kind": "service", "rpc": { "Trellis.Bindings.Get": { "capabilities": { "call": ["service"] }, "docs": { "markdown": "Returns runtime resource bindings for the caller's active service contract.", "summary": "Read service resource bindings." }, "errors": [{ "type": "UnexpectedError" }, { "type": "ValidationError" }], "input": { "schema": "TrellisBindingsGetRequest" }, "internal": true, "output": { "schema": "TrellisBindingsGetResponse" }, "subject": "rpc.v1.Trellis.Bindings.Get", "version": "v1" }, "Trellis.Catalog": { "capabilities": { "call": ["trellis.core::catalog.read"] }, "docs": { "markdown": "Returns the active contract catalog entries available in the deployment.", "summary": "List visible contracts." }, "errors": [{ "type": "UnexpectedError" }, { "type": "ValidationError" }], "input": { "schema": "TrellisCatalogRequest" }, "output": { "schema": "TrellisCatalogResponse" }, "subject": "rpc.v1.Trellis.Catalog", "version": "v1" }, "Trellis.Contract.Get": { "capabilities": { "call": ["trellis.core::contract.read"] }, "docs": { "markdown": "Returns the normalized contract manifest for a known contract digest.", "summary": "Read one contract manifest." }, "errors": [{ "type": "UnexpectedError" }, { "type": "ValidationError" }], "input": { "schema": "TrellisContractGetRequest" }, "output": { "schema": "TrellisContractGetResponse" }, "subject": "rpc.v1.Trellis.Contract.Get", "version": "v1" }, "Trellis.Surface.Status": { "capabilities": { "call": ["trellis.core::catalog.read"] }, "docs": { "markdown": "Reports capability and deployment authority status for a contract-owned surface.", "summary": "Inspect surface availability." }, "errors": [{ "type": "UnexpectedError" }, { "type": "ValidationError" }], "input": { "schema": "TrellisSurfaceStatusRequest" }, "output": { "schema": "TrellisSurfaceStatusResponse" }, "subject": "rpc.v1.Trellis.Surface.Status", "version": "v1" } }, "schemas": { "TrellisBindingsGetRequest": { "properties": { "contractId": { "minLength": 1, "type": "string" }, "digest": { "pattern": "^[A-Za-z0-9_-]+$", "type": "string" } }, "type": "object" }, "TrellisBindingsGetResponse": { "properties": { "binding": { "properties": { "contractId": { "minLength": 1, "type": "string" }, "digest": { "pattern": "^[A-Za-z0-9_-]+$", "type": "string" }, "resources": { "properties": { "eventConsumers": { "patternProperties": { "^.*$": { "properties": { "ackWaitMs": { "minimum": 1, "type": "integer" }, "backoffMs": { "items": { "minimum": 0, "type": "integer" }, "type": "array" }, "concurrency": { "minimum": 1, "type": "integer" }, "consumerName": { "minLength": 1, "type": "string" }, "filterSubjects": { "items": { "minLength": 1, "type": "string" }, "type": "array" }, "maxDeliver": { "minimum": 1, "type": "integer" }, "ordering": { "const": "strict", "type": "string" }, "replay": { "anyOf": [{ "const": "new", "type": "string" }, { "const": "all", "type": "string" }] }, "stream": { "minLength": 1, "type": "string" } }, "required": ["stream", "consumerName", "filterSubjects", "replay", "ordering", "concurrency", "ackWaitMs", "maxDeliver", "backoffMs"], "type": "object" } }, "type": "object" }, "jobs": { "properties": { "namespace": { "minLength": 1, "type": "string" }, "queues": { "patternProperties": { "^.*$": { "properties": { "ackWaitMs": { "minimum": 1, "type": "integer" }, "backoffMs": { "items": { "minimum": 0, "type": "integer" }, "type": "array" }, "concurrency": { "minimum": 1, "type": "integer" }, "consumerName": { "minLength": 1, "type": "string" }, "defaultDeadlineMs": { "minimum": 1, "type": "integer" }, "dlq": { "type": "boolean" }, "logs": { "type": "boolean" }, "maxDeliver": { "minimum": 1, "type": "integer" }, "payload": { "properties": { "schema": { "minLength": 1, "type": "string" } }, "required": ["schema"], "type": "object" }, "progress": { "type": "boolean" }, "publishPrefix": { "minLength": 1, "type": "string" }, "queueType": { "minLength": 1, "type": "string" }, "result": { "properties": { "schema": { "minLength": 1, "type": "string" } }, "required": ["schema"], "type": "object" }, "workSubject": { "minLength": 1, "type": "string" } }, "required": ["queueType", "publishPrefix", "workSubject", "consumerName", "payload", "maxDeliver", "backoffMs", "ackWaitMs", "progress", "logs", "dlq", "concurrency"], "type": "object" } }, "type": "object" }, "workStream": { "minLength": 1, "type": "string" } }, "required": ["namespace", "queues"], "type": "object" }, "kv": { "patternProperties": { "^.*$": { "properties": { "bucket": { "minLength": 1, "type": "string" }, "history": { "minimum": 1, "type": "integer" }, "maxValueBytes": { "minimum": 1, "type": "integer" }, "ttlMs": { "minimum": 0, "type": "integer" } }, "required": ["bucket", "history", "ttlMs"], "type": "object" } }, "type": "object" }, "store": { "patternProperties": { "^.*$": { "properties": { "maxObjectBytes": { "minimum": 1, "type": "integer" }, "maxTotalBytes": { "minimum": 1, "type": "integer" }, "name": { "minLength": 1, "type": "string" }, "ttlMs": { "minimum": 0, "type": "integer" } }, "required": ["name", "ttlMs"], "type": "object" } }, "type": "object" } }, "type": "object" } }, "required": ["contractId", "digest", "resources"], "type": "object" }, "eventConsumers": { "patternProperties": { "^.*$": { "properties": { "ackWaitMs": { "minimum": 1, "type": "integer" }, "backoffMs": { "items": { "minimum": 0, "type": "integer" }, "type": "array" }, "concurrency": { "minimum": 1, "type": "integer" }, "consumerName": { "minLength": 1, "type": "string" }, "filterSubjects": { "items": { "minLength": 1, "type": "string" }, "type": "array" }, "maxDeliver": { "minimum": 1, "type": "integer" }, "ordering": { "const": "strict", "type": "string" }, "replay": { "anyOf": [{ "const": "new", "type": "string" }, { "const": "all", "type": "string" }] }, "stream": { "minLength": 1, "type": "string" } }, "required": ["stream", "consumerName", "filterSubjects", "replay", "ordering", "concurrency", "ackWaitMs", "maxDeliver", "backoffMs"], "type": "object" } }, "type": "object" } }, "type": "object" }, "TrellisCatalogRequest": { "properties": {}, "type": "object" }, "TrellisCatalogResponse": { "properties": { "catalog": { "properties": { "contracts": { "items": { "properties": { "description": { "minLength": 1, "type": "string" }, "digest": { "type": "string" }, "displayName": { "minLength": 1, "type": "string" }, "id": { "type": "string" } }, "required": ["id", "digest", "displayName", "description"], "type": "object" }, "type": "array" }, "format": { "const": "trellis.catalog.v1", "type": "string" }, "issues": { "items": { "properties": { "actions": { "items": { "properties": { "action": { "anyOf": [{ "const": "keep-current", "type": "string" }, { "const": "force-replace", "type": "string" }] }, "deploymentIds": { "items": { "type": "string" }, "type": "array" }, "description": { "minLength": 1, "type": "string" }, "digests": { "items": { "type": "string" }, "type": "array" }, "label": { "minLength": 1, "type": "string" }, "risk": { "anyOf": [{ "const": "recommended", "type": "string" }, { "const": "dangerous", "type": "string" }] } }, "required": ["action", "label", "description", "risk", "deploymentIds", "digests"], "type": "object" }, "type": "array" }, "conflictingDeploymentIds": { "items": { "type": "string" }, "type": "array" }, "conflictingDigest": { "type": "string" }, "conflictingDigests": { "items": { "type": "string" }, "type": "array" }, "contractId": { "type": "string" }, "deploymentIds": { "items": { "type": "string" }, "type": "array" }, "digest": { "type": "string" }, "effectiveDeploymentIds": { "items": { "type": "string" }, "type": "array" }, "effectiveDigests": { "items": { "type": "string" }, "type": "array" }, "issueId": { "minLength": 1, "type": "string" }, "kind": { "anyOf": [{ "const": "missing-active-contract", "type": "string" }, { "const": "invalid-active-contract", "type": "string" }, { "const": "incompatible-active-contract", "type": "string" }, { "const": "invalid-active-contract-uses", "type": "string" }] }, "message": { "minLength": 1, "type": "string" } }, "required": ["issueId", "kind", "message", "deploymentIds", "actions"], "type": "object" }, "type": "array" } }, "required": ["format", "contracts"], "type": "object" } }, "required": ["catalog"], "type": "object" }, "TrellisContractGetRequest": { "properties": { "digest": { "pattern": "^[A-Za-z0-9_-]+$", "type": "string" } }, "required": ["digest"], "type": "object" }, "TrellisContractGetResponse": { "properties": { "contract": { "properties": { "description": { "minLength": 1, "type": "string" }, "displayName": { "minLength": 1, "type": "string" }, "docs": { "properties": { "markdown": { "type": "string" }, "summary": { "type": "string" } }, "required": ["markdown"], "type": "object" }, "errors": { "patternProperties": { "^.*$": { "type": "object" } }, "type": "object" }, "events": { "patternProperties": { "^.*$": { "type": "object" } }, "type": "object" }, "exports": { "properties": { "schemas": { "items": { "minLength": 1, "type": "string" }, "type": "array" } }, "type": "object" }, "format": { "const": "trellis.contract.v1", "type": "string" }, "id": { "minLength": 1, "type": "string" }, "jobs": { "patternProperties": { "^.*$": { "properties": { "ackWaitMs": { "minimum": 1, "type": "integer" }, "backoffMs": { "items": { "minimum": 0, "type": "integer" }, "type": "array" }, "concurrency": { "minimum": 1, "type": "integer" }, "defaultDeadlineMs": { "minimum": 1, "type": "integer" }, "dlq": { "type": "boolean" }, "docs": { "properties": { "markdown": { "type": "string" }, "summary": { "type": "string" } }, "required": ["markdown"], "type": "object" }, "logs": { "type": "boolean" }, "maxDeliver": { "minimum": 1, "type": "integer" }, "payload": { "properties": { "schema": { "minLength": 1, "type": "string" } }, "required": ["schema"], "type": "object" }, "progress": { "type": "boolean" }, "result": { "properties": { "schema": { "minLength": 1, "type": "string" } }, "required": ["schema"], "type": "object" } }, "required": ["payload"], "type": "object" } }, "type": "object" }, "kind": { "anyOf": [{ "const": "service", "type": "string" }, { "const": "app", "type": "string" }, { "const": "device", "type": "string" }, { "const": "agent", "type": "string" }] }, "operations": { "patternProperties": { "^.*$": { "type": "object" } }, "type": "object" }, "resources": { "additionalProperties": false, "properties": { "kv": { "patternProperties": { "^.*$": { "properties": { "docs": { "properties": { "markdown": { "type": "string" }, "summary": { "type": "string" } }, "required": ["markdown"], "type": "object" }, "history": { "default": 1, "minimum": 1, "type": "integer" }, "maxValueBytes": { "minimum": 1, "type": "integer" }, "purpose": { "minLength": 1, "type": "string" }, "required": { "default": true, "type": "boolean" }, "schema": { "properties": { "schema": { "minLength": 1, "type": "string" } }, "required": ["schema"], "type": "object" }, "ttlMs": { "default": 0, "minimum": 0, "type": "integer" } }, "required": ["purpose", "schema"], "type": "object" } }, "type": "object" }, "store": { "patternProperties": { "^.*$": { "properties": { "docs": { "properties": { "markdown": { "type": "string" }, "summary": { "type": "string" } }, "required": ["markdown"], "type": "object" }, "maxObjectBytes": { "minimum": 1, "type": "integer" }, "maxTotalBytes": { "minimum": 1, "type": "integer" }, "purpose": { "minLength": 1, "type": "string" }, "required": { "default": true, "type": "boolean" }, "ttlMs": { "default": 0, "minimum": 0, "type": "integer" } }, "required": ["purpose"], "type": "object" } }, "type": "object" } }, "type": "object" }, "rpc": { "patternProperties": { "^.*$": { "type": "object" } }, "type": "object" }, "schemas": { "patternProperties": { "^.*$": { "anyOf": [{ "type": "object" }, { "type": "boolean" }] } }, "type": "object" }, "state": { "patternProperties": { "^.*$": { "properties": { "acceptedVersions": { "patternProperties": { "^.*$": { "properties": { "schema": { "minLength": 1, "type": "string" } }, "required": ["schema"], "type": "object" } }, "type": "object" }, "docs": { "properties": { "markdown": { "type": "string" }, "summary": { "type": "string" } }, "required": ["markdown"], "type": "object" }, "kind": { "anyOf": [{ "const": "value", "type": "string" }, { "const": "map", "type": "string" }] }, "schema": { "properties": { "schema": { "minLength": 1, "type": "string" } }, "required": ["schema"], "type": "object" }, "stateVersion": { "minLength": 1, "type": "string" } }, "required": ["kind", "schema"], "type": "object" } }, "type": "object" }, "uses": { "patternProperties": { "^.*$": { "type": "object" } }, "type": "object" } }, "required": ["format", "id", "displayName", "description", "kind"], "type": "object" } }, "required": ["contract"], "type": "object" }, "TrellisSurfaceStatusRequest": { "properties": { "action": { "anyOf": [{ "const": "call", "type": "string" }, { "const": "publish", "type": "string" }, { "const": "subscribe", "type": "string" }, { "const": "observe", "type": "string" }] }, "contractId": { "minLength": 1, "type": "string" }, "kind": { "anyOf": [{ "const": "rpc", "type": "string" }, { "const": "operation", "type": "string" }, { "const": "event", "type": "string" }, { "const": "feed", "type": "string" }] }, "surface": { "minLength": 1, "type": "string" } }, "required": ["contractId", "kind", "surface"], "type": "object" }, "TrellisSurfaceStatusResponse": { "properties": { "status": { "anyOf": [{ "properties": { "liveImplementer": { "type": "boolean" }, "runtime": { "anyOf": [{ "const": "live", "type": "string" }, { "const": "no_live_implementer", "type": "string" }, { "const": "disabled", "type": "string" }] }, "state": { "const": "available", "type": "string" } }, "required": ["state", "liveImplementer", "runtime"], "type": "object" }, { "properties": { "reason": { "anyOf": [{ "const": "authority_unavailable", "type": "string" }] }, "state": { "const": "unavailable", "type": "string" } }, "required": ["state", "reason"], "type": "object" }, { "properties": { "missingCapabilities": { "items": { "type": "string" }, "type": "array" }, "state": { "const": "unauthorized", "type": "string" } }, "required": ["state", "missingCapabilities"], "type": "object" }, { "properties": { "contractId": { "minLength": 1, "type": "string" }, "state": { "const": "unknown_contract", "type": "string" } }, "required": ["state", "contractId"], "type": "object" }, { "properties": { "contractId": { "minLength": 1, "type": "string" }, "kind": { "minLength": 1, "type": "string" }, "state": { "const": "unknown_surface", "type": "string" }, "surface": { "minLength": 1, "type": "string" } }, "required": ["state", "contractId", "kind", "surface"], "type": "object" }] } }, "required": ["status"], "type": "object" } }, "uses": { "required": { "health": { "contract": "trellis.health@v1", "events": { "publish": ["Health.Heartbeat"] } } } } };
5
+ export const CONTRACT = {
6
+ "capabilities": {
7
+ "trellis.core::catalog.read": {
8
+ "description": "List the installed Trellis contract catalog.",
9
+ "displayName": "Read contract catalog",
10
+ },
11
+ "trellis.core::contract.read": {
12
+ "description": "Read installed contract manifests and metadata.",
13
+ "displayName": "Read installed contracts",
14
+ },
15
+ },
16
+ "description": "Trellis runtime RPCs available to all connected participants.",
17
+ "displayName": "Trellis Core",
18
+ "docs": {
19
+ "markdown": "Exposes the Trellis catalog, contract details, runtime bindings, and surface availability checks used by platform participants.",
20
+ "summary": "Runtime catalog and binding APIs.",
21
+ },
22
+ "format": "trellis.contract.v1",
23
+ "id": "trellis.core@v1",
24
+ "kind": "service",
25
+ "rpc": {
26
+ "Trellis.Bindings.Get": {
27
+ "capabilities": { "call": ["service"] },
28
+ "docs": {
29
+ "markdown": "Returns runtime resource bindings for the caller's active service contract.",
30
+ "summary": "Read service resource bindings.",
31
+ },
32
+ "errors": [{ "type": "UnexpectedError" }, { "type": "ValidationError" }],
33
+ "input": { "schema": "TrellisBindingsGetRequest" },
34
+ "internal": true,
35
+ "output": { "schema": "TrellisBindingsGetResponse" },
36
+ "subject": "rpc.v1.Trellis.Bindings.Get",
37
+ "version": "v1",
38
+ },
39
+ "Trellis.Catalog": {
40
+ "capabilities": { "call": ["trellis.core::catalog.read"] },
41
+ "docs": {
42
+ "markdown": "Returns the active contract catalog entries available in the deployment.",
43
+ "summary": "List visible contracts.",
44
+ },
45
+ "errors": [{ "type": "UnexpectedError" }, { "type": "ValidationError" }],
46
+ "input": { "schema": "TrellisCatalogRequest" },
47
+ "output": { "schema": "TrellisCatalogResponse" },
48
+ "subject": "rpc.v1.Trellis.Catalog",
49
+ "version": "v1",
50
+ },
51
+ "Trellis.Contract.Get": {
52
+ "capabilities": { "call": ["trellis.core::contract.read"] },
53
+ "docs": {
54
+ "markdown": "Returns the normalized contract manifest for a known contract digest.",
55
+ "summary": "Read one contract manifest.",
56
+ },
57
+ "errors": [{ "type": "UnexpectedError" }, { "type": "ValidationError" }],
58
+ "input": { "schema": "TrellisContractGetRequest" },
59
+ "output": { "schema": "TrellisContractGetResponse" },
60
+ "subject": "rpc.v1.Trellis.Contract.Get",
61
+ "version": "v1",
62
+ },
63
+ "Trellis.Surface.Status": {
64
+ "capabilities": { "call": ["trellis.core::catalog.read"] },
65
+ "docs": {
66
+ "markdown": "Reports capability and deployment authority status for a contract-owned surface.",
67
+ "summary": "Inspect surface availability.",
68
+ },
69
+ "errors": [{ "type": "UnexpectedError" }, { "type": "ValidationError" }],
70
+ "input": { "schema": "TrellisSurfaceStatusRequest" },
71
+ "output": { "schema": "TrellisSurfaceStatusResponse" },
72
+ "subject": "rpc.v1.Trellis.Surface.Status",
73
+ "version": "v1",
74
+ },
75
+ },
76
+ "schemas": {
77
+ "TrellisBindingsGetRequest": {
78
+ "properties": {
79
+ "contractId": { "minLength": 1, "type": "string" },
80
+ "digest": { "pattern": "^[A-Za-z0-9_-]+$", "type": "string" },
81
+ },
82
+ "type": "object",
83
+ },
84
+ "TrellisBindingsGetResponse": {
85
+ "properties": {
86
+ "binding": {
87
+ "properties": {
88
+ "contractId": { "minLength": 1, "type": "string" },
89
+ "digest": { "pattern": "^[A-Za-z0-9_-]+$", "type": "string" },
90
+ "resources": {
91
+ "properties": {
92
+ "eventConsumers": {
93
+ "patternProperties": {
94
+ "^.*$": {
95
+ "properties": {
96
+ "ackWaitMs": { "minimum": 1, "type": "integer" },
97
+ "backoffMs": {
98
+ "items": { "minimum": 0, "type": "integer" },
99
+ "type": "array",
100
+ },
101
+ "concurrency": { "minimum": 1, "type": "integer" },
102
+ "consumerName": { "minLength": 1, "type": "string" },
103
+ "filterSubjects": {
104
+ "items": { "minLength": 1, "type": "string" },
105
+ "type": "array",
106
+ },
107
+ "maxDeliver": { "minimum": 1, "type": "integer" },
108
+ "ordering": { "const": "strict", "type": "string" },
109
+ "replay": {
110
+ "anyOf": [{ "const": "new", "type": "string" }, {
111
+ "const": "all",
112
+ "type": "string",
113
+ }],
114
+ },
115
+ "stream": { "minLength": 1, "type": "string" },
116
+ },
117
+ "required": [
118
+ "stream",
119
+ "consumerName",
120
+ "filterSubjects",
121
+ "replay",
122
+ "ordering",
123
+ "concurrency",
124
+ "ackWaitMs",
125
+ "maxDeliver",
126
+ "backoffMs",
127
+ ],
128
+ "type": "object",
129
+ },
130
+ },
131
+ "type": "object",
132
+ },
133
+ "jobs": {
134
+ "properties": {
135
+ "namespace": { "minLength": 1, "type": "string" },
136
+ "queues": {
137
+ "patternProperties": {
138
+ "^.*$": {
139
+ "properties": {
140
+ "ackWaitMs": { "minimum": 1, "type": "integer" },
141
+ "backoffMs": {
142
+ "items": { "minimum": 0, "type": "integer" },
143
+ "type": "array",
144
+ },
145
+ "concurrency": { "minimum": 1, "type": "integer" },
146
+ "consumerName": {
147
+ "minLength": 1,
148
+ "type": "string",
149
+ },
150
+ "defaultDeadlineMs": {
151
+ "minimum": 1,
152
+ "type": "integer",
153
+ },
154
+ "dlq": { "type": "boolean" },
155
+ "logs": { "type": "boolean" },
156
+ "maxDeliver": { "minimum": 1, "type": "integer" },
157
+ "payload": {
158
+ "properties": {
159
+ "schema": { "minLength": 1, "type": "string" },
160
+ },
161
+ "required": ["schema"],
162
+ "type": "object",
163
+ },
164
+ "progress": { "type": "boolean" },
165
+ "publishPrefix": {
166
+ "minLength": 1,
167
+ "type": "string",
168
+ },
169
+ "queueType": { "minLength": 1, "type": "string" },
170
+ "result": {
171
+ "properties": {
172
+ "schema": { "minLength": 1, "type": "string" },
173
+ },
174
+ "required": ["schema"],
175
+ "type": "object",
176
+ },
177
+ "workSubject": { "minLength": 1, "type": "string" },
178
+ },
179
+ "required": [
180
+ "queueType",
181
+ "publishPrefix",
182
+ "workSubject",
183
+ "consumerName",
184
+ "payload",
185
+ "maxDeliver",
186
+ "backoffMs",
187
+ "ackWaitMs",
188
+ "progress",
189
+ "logs",
190
+ "dlq",
191
+ "concurrency",
192
+ ],
193
+ "type": "object",
194
+ },
195
+ },
196
+ "type": "object",
197
+ },
198
+ "workStream": { "minLength": 1, "type": "string" },
199
+ },
200
+ "required": ["namespace", "queues"],
201
+ "type": "object",
202
+ },
203
+ "kv": {
204
+ "patternProperties": {
205
+ "^.*$": {
206
+ "properties": {
207
+ "bucket": { "minLength": 1, "type": "string" },
208
+ "history": { "minimum": 1, "type": "integer" },
209
+ "maxValueBytes": { "minimum": 1, "type": "integer" },
210
+ "ttlMs": { "minimum": 0, "type": "integer" },
211
+ },
212
+ "required": ["bucket", "history", "ttlMs"],
213
+ "type": "object",
214
+ },
215
+ },
216
+ "type": "object",
217
+ },
218
+ "store": {
219
+ "patternProperties": {
220
+ "^.*$": {
221
+ "properties": {
222
+ "maxObjectBytes": { "minimum": 1, "type": "integer" },
223
+ "maxTotalBytes": { "minimum": 1, "type": "integer" },
224
+ "name": { "minLength": 1, "type": "string" },
225
+ "ttlMs": { "minimum": 0, "type": "integer" },
226
+ },
227
+ "required": ["name", "ttlMs"],
228
+ "type": "object",
229
+ },
230
+ },
231
+ "type": "object",
232
+ },
233
+ },
234
+ "type": "object",
235
+ },
236
+ },
237
+ "required": ["contractId", "digest", "resources"],
238
+ "type": "object",
239
+ },
240
+ "eventConsumers": {
241
+ "patternProperties": {
242
+ "^.*$": {
243
+ "properties": {
244
+ "ackWaitMs": { "minimum": 1, "type": "integer" },
245
+ "backoffMs": {
246
+ "items": { "minimum": 0, "type": "integer" },
247
+ "type": "array",
248
+ },
249
+ "concurrency": { "minimum": 1, "type": "integer" },
250
+ "consumerName": { "minLength": 1, "type": "string" },
251
+ "filterSubjects": {
252
+ "items": { "minLength": 1, "type": "string" },
253
+ "type": "array",
254
+ },
255
+ "maxDeliver": { "minimum": 1, "type": "integer" },
256
+ "ordering": { "const": "strict", "type": "string" },
257
+ "replay": {
258
+ "anyOf": [{ "const": "new", "type": "string" }, {
259
+ "const": "all",
260
+ "type": "string",
261
+ }],
262
+ },
263
+ "stream": { "minLength": 1, "type": "string" },
264
+ },
265
+ "required": [
266
+ "stream",
267
+ "consumerName",
268
+ "filterSubjects",
269
+ "replay",
270
+ "ordering",
271
+ "concurrency",
272
+ "ackWaitMs",
273
+ "maxDeliver",
274
+ "backoffMs",
275
+ ],
276
+ "type": "object",
277
+ },
278
+ },
279
+ "type": "object",
280
+ },
281
+ },
282
+ "type": "object",
283
+ },
284
+ "TrellisCatalogRequest": { "properties": {}, "type": "object" },
285
+ "TrellisCatalogResponse": {
286
+ "properties": {
287
+ "catalog": {
288
+ "properties": {
289
+ "contracts": {
290
+ "items": {
291
+ "properties": {
292
+ "description": { "minLength": 1, "type": "string" },
293
+ "digest": { "type": "string" },
294
+ "displayName": { "minLength": 1, "type": "string" },
295
+ "id": { "type": "string" },
296
+ },
297
+ "required": ["id", "digest", "displayName", "description"],
298
+ "type": "object",
299
+ },
300
+ "type": "array",
301
+ },
302
+ "format": { "const": "trellis.catalog.v1", "type": "string" },
303
+ "issues": {
304
+ "items": {
305
+ "properties": {
306
+ "actions": {
307
+ "items": {
308
+ "properties": {
309
+ "action": {
310
+ "anyOf": [{
311
+ "const": "keep-current",
312
+ "type": "string",
313
+ }, { "const": "force-replace", "type": "string" }],
314
+ },
315
+ "deploymentIds": {
316
+ "items": { "type": "string" },
317
+ "type": "array",
318
+ },
319
+ "description": { "minLength": 1, "type": "string" },
320
+ "digests": {
321
+ "items": { "type": "string" },
322
+ "type": "array",
323
+ },
324
+ "label": { "minLength": 1, "type": "string" },
325
+ "risk": {
326
+ "anyOf": [{
327
+ "const": "recommended",
328
+ "type": "string",
329
+ }, { "const": "dangerous", "type": "string" }],
330
+ },
331
+ },
332
+ "required": [
333
+ "action",
334
+ "label",
335
+ "description",
336
+ "risk",
337
+ "deploymentIds",
338
+ "digests",
339
+ ],
340
+ "type": "object",
341
+ },
342
+ "type": "array",
343
+ },
344
+ "conflictingDeploymentIds": {
345
+ "items": { "type": "string" },
346
+ "type": "array",
347
+ },
348
+ "conflictingDigest": { "type": "string" },
349
+ "conflictingDigests": {
350
+ "items": { "type": "string" },
351
+ "type": "array",
352
+ },
353
+ "contractId": { "type": "string" },
354
+ "deploymentIds": {
355
+ "items": { "type": "string" },
356
+ "type": "array",
357
+ },
358
+ "digest": { "type": "string" },
359
+ "effectiveDeploymentIds": {
360
+ "items": { "type": "string" },
361
+ "type": "array",
362
+ },
363
+ "effectiveDigests": {
364
+ "items": { "type": "string" },
365
+ "type": "array",
366
+ },
367
+ "issueId": { "minLength": 1, "type": "string" },
368
+ "kind": {
369
+ "anyOf": [
370
+ { "const": "missing-active-contract", "type": "string" },
371
+ { "const": "invalid-active-contract", "type": "string" },
372
+ {
373
+ "const": "incompatible-active-contract",
374
+ "type": "string",
375
+ },
376
+ {
377
+ "const": "invalid-active-contract-uses",
378
+ "type": "string",
379
+ },
380
+ ],
381
+ },
382
+ "message": { "minLength": 1, "type": "string" },
383
+ },
384
+ "required": [
385
+ "issueId",
386
+ "kind",
387
+ "message",
388
+ "deploymentIds",
389
+ "actions",
390
+ ],
391
+ "type": "object",
392
+ },
393
+ "type": "array",
394
+ },
395
+ },
396
+ "required": ["format", "contracts"],
397
+ "type": "object",
398
+ },
399
+ },
400
+ "required": ["catalog"],
401
+ "type": "object",
402
+ },
403
+ "TrellisContractGetRequest": {
404
+ "properties": {
405
+ "digest": { "pattern": "^[A-Za-z0-9_-]+$", "type": "string" },
406
+ },
407
+ "required": ["digest"],
408
+ "type": "object",
409
+ },
410
+ "TrellisContractGetResponse": {
411
+ "properties": {
412
+ "contract": {
413
+ "properties": {
414
+ "description": { "minLength": 1, "type": "string" },
415
+ "displayName": { "minLength": 1, "type": "string" },
416
+ "docs": {
417
+ "properties": {
418
+ "markdown": { "type": "string" },
419
+ "summary": { "type": "string" },
420
+ },
421
+ "required": ["markdown"],
422
+ "type": "object",
423
+ },
424
+ "errors": {
425
+ "patternProperties": { "^.*$": { "type": "object" } },
426
+ "type": "object",
427
+ },
428
+ "events": {
429
+ "patternProperties": { "^.*$": { "type": "object" } },
430
+ "type": "object",
431
+ },
432
+ "exports": {
433
+ "properties": {
434
+ "schemas": {
435
+ "items": { "minLength": 1, "type": "string" },
436
+ "type": "array",
437
+ },
438
+ },
439
+ "type": "object",
440
+ },
441
+ "format": { "const": "trellis.contract.v1", "type": "string" },
442
+ "id": { "minLength": 1, "type": "string" },
443
+ "jobs": {
444
+ "patternProperties": {
445
+ "^.*$": {
446
+ "properties": {
447
+ "ackWaitMs": { "minimum": 1, "type": "integer" },
448
+ "backoffMs": {
449
+ "items": { "minimum": 0, "type": "integer" },
450
+ "type": "array",
451
+ },
452
+ "concurrency": { "minimum": 1, "type": "integer" },
453
+ "defaultDeadlineMs": { "minimum": 1, "type": "integer" },
454
+ "dlq": { "type": "boolean" },
455
+ "docs": {
456
+ "properties": {
457
+ "markdown": { "type": "string" },
458
+ "summary": { "type": "string" },
459
+ },
460
+ "required": ["markdown"],
461
+ "type": "object",
462
+ },
463
+ "logs": { "type": "boolean" },
464
+ "maxDeliver": { "minimum": 1, "type": "integer" },
465
+ "payload": {
466
+ "properties": {
467
+ "schema": { "minLength": 1, "type": "string" },
468
+ },
469
+ "required": ["schema"],
470
+ "type": "object",
471
+ },
472
+ "progress": { "type": "boolean" },
473
+ "result": {
474
+ "properties": {
475
+ "schema": { "minLength": 1, "type": "string" },
476
+ },
477
+ "required": ["schema"],
478
+ "type": "object",
479
+ },
480
+ },
481
+ "required": ["payload"],
482
+ "type": "object",
483
+ },
484
+ },
485
+ "type": "object",
486
+ },
487
+ "kind": {
488
+ "anyOf": [
489
+ { "const": "service", "type": "string" },
490
+ { "const": "app", "type": "string" },
491
+ { "const": "device", "type": "string" },
492
+ { "const": "agent", "type": "string" },
493
+ ],
494
+ },
495
+ "operations": {
496
+ "patternProperties": { "^.*$": { "type": "object" } },
497
+ "type": "object",
498
+ },
499
+ "resources": {
500
+ "additionalProperties": false,
501
+ "properties": {
502
+ "kv": {
503
+ "patternProperties": {
504
+ "^.*$": {
505
+ "properties": {
506
+ "docs": {
507
+ "properties": {
508
+ "markdown": { "type": "string" },
509
+ "summary": { "type": "string" },
510
+ },
511
+ "required": ["markdown"],
512
+ "type": "object",
513
+ },
514
+ "history": {
515
+ "default": 1,
516
+ "minimum": 1,
517
+ "type": "integer",
518
+ },
519
+ "maxValueBytes": { "minimum": 1, "type": "integer" },
520
+ "purpose": { "minLength": 1, "type": "string" },
521
+ "required": { "default": true, "type": "boolean" },
522
+ "schema": {
523
+ "properties": {
524
+ "schema": { "minLength": 1, "type": "string" },
525
+ },
526
+ "required": ["schema"],
527
+ "type": "object",
528
+ },
529
+ "ttlMs": {
530
+ "default": 0,
531
+ "minimum": 0,
532
+ "type": "integer",
533
+ },
534
+ },
535
+ "required": ["purpose", "schema"],
536
+ "type": "object",
537
+ },
538
+ },
539
+ "type": "object",
540
+ },
541
+ "store": {
542
+ "patternProperties": {
543
+ "^.*$": {
544
+ "properties": {
545
+ "docs": {
546
+ "properties": {
547
+ "markdown": { "type": "string" },
548
+ "summary": { "type": "string" },
549
+ },
550
+ "required": ["markdown"],
551
+ "type": "object",
552
+ },
553
+ "maxObjectBytes": { "minimum": 1, "type": "integer" },
554
+ "maxTotalBytes": { "minimum": 1, "type": "integer" },
555
+ "purpose": { "minLength": 1, "type": "string" },
556
+ "required": { "default": true, "type": "boolean" },
557
+ "ttlMs": {
558
+ "default": 0,
559
+ "minimum": 0,
560
+ "type": "integer",
561
+ },
562
+ },
563
+ "required": ["purpose"],
564
+ "type": "object",
565
+ },
566
+ },
567
+ "type": "object",
568
+ },
569
+ },
570
+ "type": "object",
571
+ },
572
+ "rpc": {
573
+ "patternProperties": { "^.*$": { "type": "object" } },
574
+ "type": "object",
575
+ },
576
+ "schemas": {
577
+ "patternProperties": {
578
+ "^.*$": {
579
+ "anyOf": [{ "type": "object" }, { "type": "boolean" }],
580
+ },
581
+ },
582
+ "type": "object",
583
+ },
584
+ "state": {
585
+ "patternProperties": {
586
+ "^.*$": {
587
+ "properties": {
588
+ "acceptedVersions": {
589
+ "patternProperties": {
590
+ "^.*$": {
591
+ "properties": {
592
+ "schema": { "minLength": 1, "type": "string" },
593
+ },
594
+ "required": ["schema"],
595
+ "type": "object",
596
+ },
597
+ },
598
+ "type": "object",
599
+ },
600
+ "docs": {
601
+ "properties": {
602
+ "markdown": { "type": "string" },
603
+ "summary": { "type": "string" },
604
+ },
605
+ "required": ["markdown"],
606
+ "type": "object",
607
+ },
608
+ "kind": {
609
+ "anyOf": [{ "const": "value", "type": "string" }, {
610
+ "const": "map",
611
+ "type": "string",
612
+ }],
613
+ },
614
+ "schema": {
615
+ "properties": {
616
+ "schema": { "minLength": 1, "type": "string" },
617
+ },
618
+ "required": ["schema"],
619
+ "type": "object",
620
+ },
621
+ "stateVersion": { "minLength": 1, "type": "string" },
622
+ },
623
+ "required": ["kind", "schema"],
624
+ "type": "object",
625
+ },
626
+ },
627
+ "type": "object",
628
+ },
629
+ "uses": {
630
+ "patternProperties": { "^.*$": { "type": "object" } },
631
+ "type": "object",
632
+ },
633
+ },
634
+ "required": ["format", "id", "displayName", "description", "kind"],
635
+ "type": "object",
636
+ },
637
+ },
638
+ "required": ["contract"],
639
+ "type": "object",
640
+ },
641
+ "TrellisSurfaceStatusRequest": {
642
+ "properties": {
643
+ "action": {
644
+ "anyOf": [
645
+ { "const": "call", "type": "string" },
646
+ { "const": "publish", "type": "string" },
647
+ { "const": "subscribe", "type": "string" },
648
+ { "const": "observe", "type": "string" },
649
+ ],
650
+ },
651
+ "contractId": { "minLength": 1, "type": "string" },
652
+ "kind": {
653
+ "anyOf": [
654
+ { "const": "rpc", "type": "string" },
655
+ { "const": "operation", "type": "string" },
656
+ { "const": "event", "type": "string" },
657
+ { "const": "feed", "type": "string" },
658
+ ],
659
+ },
660
+ "surface": { "minLength": 1, "type": "string" },
661
+ },
662
+ "required": ["contractId", "kind", "surface"],
663
+ "type": "object",
664
+ },
665
+ "TrellisSurfaceStatusResponse": {
666
+ "properties": {
667
+ "status": {
668
+ "anyOf": [{
669
+ "properties": {
670
+ "liveImplementer": { "type": "boolean" },
671
+ "runtime": {
672
+ "anyOf": [{ "const": "live", "type": "string" }, {
673
+ "const": "no_live_implementer",
674
+ "type": "string",
675
+ }, { "const": "disabled", "type": "string" }],
676
+ },
677
+ "state": { "const": "available", "type": "string" },
678
+ },
679
+ "required": ["state", "liveImplementer", "runtime"],
680
+ "type": "object",
681
+ }, {
682
+ "properties": {
683
+ "reason": {
684
+ "anyOf": [{
685
+ "const": "authority_unavailable",
686
+ "type": "string",
687
+ }],
688
+ },
689
+ "state": { "const": "unavailable", "type": "string" },
690
+ },
691
+ "required": ["state", "reason"],
692
+ "type": "object",
693
+ }, {
694
+ "properties": {
695
+ "missingCapabilities": {
696
+ "items": { "type": "string" },
697
+ "type": "array",
698
+ },
699
+ "state": { "const": "unauthorized", "type": "string" },
700
+ },
701
+ "required": ["state", "missingCapabilities"],
702
+ "type": "object",
703
+ }, {
704
+ "properties": {
705
+ "contractId": { "minLength": 1, "type": "string" },
706
+ "state": { "const": "unknown_contract", "type": "string" },
707
+ },
708
+ "required": ["state", "contractId"],
709
+ "type": "object",
710
+ }, {
711
+ "properties": {
712
+ "contractId": { "minLength": 1, "type": "string" },
713
+ "kind": { "minLength": 1, "type": "string" },
714
+ "state": { "const": "unknown_surface", "type": "string" },
715
+ "surface": { "minLength": 1, "type": "string" },
716
+ },
717
+ "required": ["state", "contractId", "kind", "surface"],
718
+ "type": "object",
719
+ }],
720
+ },
721
+ },
722
+ "required": ["status"],
723
+ "type": "object",
724
+ },
725
+ },
726
+ "uses": {
727
+ "required": {
728
+ "health": {
729
+ "contract": "trellis.health@v1",
730
+ "events": { "publish": ["Health.Heartbeat"] },
731
+ },
732
+ },
733
+ },
734
+ };
6
735
  function assertSelectedKeysExist(kind, keys, api) {
7
736
  if (!keys) {
8
737
  return;
@@ -25,27 +754,35 @@ export const sdk = {
25
754
  CONTRACT_DIGEST,
26
755
  CONTRACT,
27
756
  API,
28
- use: ((spec) => {
757
+ use: (spec) => {
29
758
  assertValidUseSpec(spec);
30
759
  const dependencyUse = {
31
760
  contract: CONTRACT_ID,
32
761
  ...(spec.rpc?.call ? { rpc: { call: [...spec.rpc.call] } } : {}),
33
- ...(spec.operations?.call ? { operations: { call: [...spec.operations.call] } } : {}),
762
+ ...(spec.operations?.call
763
+ ? { operations: { call: [...spec.operations.call] } }
764
+ : {}),
34
765
  ...((spec.events?.publish || spec.events?.subscribe)
35
766
  ? {
36
767
  events: {
37
- ...(spec.events.publish ? { publish: [...spec.events.publish] } : {}),
38
- ...(spec.events.subscribe ? { subscribe: [...spec.events.subscribe] } : {}),
768
+ ...(spec.events.publish
769
+ ? { publish: [...spec.events.publish] }
770
+ : {}),
771
+ ...(spec.events.subscribe
772
+ ? { subscribe: [...spec.events.subscribe] }
773
+ : {}),
39
774
  },
40
775
  }
41
776
  : {}),
42
- ...(spec.feeds?.subscribe ? { feeds: { subscribe: [...spec.feeds.subscribe] } } : {}),
777
+ ...(spec.feeds?.subscribe
778
+ ? { feeds: { subscribe: [...spec.feeds.subscribe] } }
779
+ : {}),
43
780
  };
44
781
  Object.defineProperty(dependencyUse, CONTRACT_MODULE_METADATA, {
45
782
  value: sdk,
46
783
  enumerable: false,
47
784
  });
48
785
  return dependencyUse;
49
- }),
786
+ },
50
787
  };
51
788
  export const use = sdk.use;