@lucern/contracts 0.3.0-alpha.10 → 0.3.0-alpha.11

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 (231) hide show
  1. package/dist/api-enums.contract.d.ts +5 -3
  2. package/dist/api-enums.contract.js +14 -12
  3. package/dist/api-enums.contract.js.map +1 -1
  4. package/dist/component-boundary.contract.d.ts +1 -1
  5. package/dist/component-boundary.contract.js +45 -26
  6. package/dist/component-boundary.contract.js.map +1 -1
  7. package/dist/component-host-boundary.contract.d.ts +10 -5
  8. package/dist/component-host-boundary.contract.js +10 -4
  9. package/dist/component-host-boundary.contract.js.map +1 -1
  10. package/dist/{defineTable-CBQ03FXl.d.ts → defineTable-t1wr5wgn.d.ts} +1 -1
  11. package/dist/{dsl-djCRfuWC.d.ts → dsl-DVPthQGY.d.ts} +1 -1
  12. package/dist/dsl.d.ts +2 -2
  13. package/dist/dsl.js.map +1 -1
  14. package/dist/function-registry/beliefs.d.ts +13 -0
  15. package/dist/function-registry/beliefs.js +50 -7
  16. package/dist/function-registry/beliefs.js.map +1 -1
  17. package/dist/function-registry/coding.d.ts +9 -0
  18. package/dist/function-registry/coding.js +117 -8
  19. package/dist/function-registry/coding.js.map +1 -1
  20. package/dist/function-registry/context.d.ts +6 -0
  21. package/dist/function-registry/context.js +50 -7
  22. package/dist/function-registry/context.js.map +1 -1
  23. package/dist/function-registry/contracts.d.ts +6 -0
  24. package/dist/function-registry/contracts.js +50 -7
  25. package/dist/function-registry/contracts.js.map +1 -1
  26. package/dist/function-registry/coordination.d.ts +12 -0
  27. package/dist/function-registry/coordination.js +50 -7
  28. package/dist/function-registry/coordination.js.map +1 -1
  29. package/dist/function-registry/edges.d.ts +9 -0
  30. package/dist/function-registry/edges.js +54 -14
  31. package/dist/function-registry/edges.js.map +1 -1
  32. package/dist/function-registry/evidence.d.ts +11 -0
  33. package/dist/function-registry/evidence.js +53 -11
  34. package/dist/function-registry/evidence.js.map +1 -1
  35. package/dist/function-registry/graph.d.ts +18 -0
  36. package/dist/function-registry/graph.js +50 -7
  37. package/dist/function-registry/graph.js.map +1 -1
  38. package/dist/function-registry/helpers.d.ts +4 -1
  39. package/dist/function-registry/helpers.js +51 -8
  40. package/dist/function-registry/helpers.js.map +1 -1
  41. package/dist/function-registry/identity.d.ts +6 -0
  42. package/dist/function-registry/identity.js +50 -7
  43. package/dist/function-registry/identity.js.map +1 -1
  44. package/dist/function-registry/index.d.ts +8 -320
  45. package/dist/function-registry/index.js +54 -384
  46. package/dist/function-registry/index.js.map +1 -1
  47. package/dist/function-registry/judgments.d.ts +5 -0
  48. package/dist/function-registry/judgments.js +50 -7
  49. package/dist/function-registry/judgments.js.map +1 -1
  50. package/dist/function-registry/legacy.d.ts +4 -0
  51. package/dist/function-registry/legacy.js +50 -7
  52. package/dist/function-registry/legacy.js.map +1 -1
  53. package/dist/function-registry/lenses.d.ts +7 -0
  54. package/dist/function-registry/lenses.js +50 -7
  55. package/dist/function-registry/lenses.js.map +1 -1
  56. package/dist/function-registry/nodes.d.ts +412 -0
  57. package/dist/function-registry/nodes.js +5303 -0
  58. package/dist/function-registry/nodes.js.map +1 -0
  59. package/dist/function-registry/ontologies.d.ts +14 -0
  60. package/dist/function-registry/ontologies.js +50 -7
  61. package/dist/function-registry/ontologies.js.map +1 -1
  62. package/dist/function-registry/pipeline.d.ts +6 -0
  63. package/dist/function-registry/pipeline.js +50 -7
  64. package/dist/function-registry/pipeline.js.map +1 -1
  65. package/dist/function-registry/questions.d.ts +15 -0
  66. package/dist/function-registry/questions.js +50 -7
  67. package/dist/function-registry/questions.js.map +1 -1
  68. package/dist/function-registry/tasks.d.ts +7 -0
  69. package/dist/function-registry/tasks.js +69 -16
  70. package/dist/function-registry/tasks.js.map +1 -1
  71. package/dist/function-registry/topics.d.ts +10 -0
  72. package/dist/function-registry/topics.js +50 -7
  73. package/dist/function-registry/topics.js.map +1 -1
  74. package/dist/function-registry/types.d.ts +5 -1
  75. package/dist/function-registry/worktrees.d.ts +14 -0
  76. package/dist/function-registry/worktrees.js +50 -7
  77. package/dist/function-registry/worktrees.js.map +1 -1
  78. package/dist/gateway.contract.d.ts +3 -0
  79. package/dist/gateway.contract.js.map +1 -1
  80. package/dist/generated/convexSchemas.d.ts +3 -3
  81. package/dist/generated/convexSchemas.js +35 -16
  82. package/dist/generated/convexSchemas.js.map +1 -1
  83. package/dist/generated/infisicalRuntimeEnv.d.ts +70 -0
  84. package/dist/generated/infisicalRuntimeEnv.js +26572 -0
  85. package/dist/generated/infisicalRuntimeEnv.js.map +1 -0
  86. package/dist/generated/lucernGatewayEnv.d.ts +17 -0
  87. package/dist/generated/lucernGatewayEnv.js +38 -0
  88. package/dist/generated/lucernGatewayEnv.js.map +1 -0
  89. package/dist/generated/lucernWebPublicEnv.d.ts +26 -0
  90. package/dist/generated/lucernWebPublicEnv.js +32 -0
  91. package/dist/generated/lucernWebPublicEnv.js.map +1 -0
  92. package/dist/generated/lucernWebServerEnv.d.ts +33 -0
  93. package/dist/generated/lucernWebServerEnv.js +51 -0
  94. package/dist/generated/lucernWebServerEnv.js.map +1 -0
  95. package/dist/generated/schema-manifest.json +1165 -150
  96. package/dist/generated/tableOwnership.d.ts +46 -27
  97. package/dist/generated/tableOwnership.js +64 -26
  98. package/dist/generated/tableOwnership.js.map +1 -1
  99. package/dist/generated/tier-expectations.json +60 -8
  100. package/dist/{index-O09U2xHk.d.ts → index-CM1Pl_vI.d.ts} +3 -3
  101. package/dist/index.d.ts +8 -4
  102. package/dist/index.js +30959 -406
  103. package/dist/index.js.map +1 -1
  104. package/dist/infisical-runtime.contract.d.ts +1597 -3
  105. package/dist/infisical-runtime.contract.js +2788 -12
  106. package/dist/infisical-runtime.contract.js.map +1 -1
  107. package/dist/manifests/infisical-runtime-manifest.d.ts +1524 -3
  108. package/dist/manifests/infisical-runtime-manifest.js +2641 -9
  109. package/dist/manifests/infisical-runtime-manifest.js.map +1 -1
  110. package/dist/manifests/tenant-client-manifest.d.ts +11 -11
  111. package/dist/manifests/tenant-client-manifest.js +11 -11
  112. package/dist/manifests/tenant-client-manifest.js.map +1 -1
  113. package/dist/mcp-gateway-boundary.contract.d.ts +23 -3
  114. package/dist/mcp-gateway-boundary.contract.js +2 -0
  115. package/dist/mcp-gateway-boundary.contract.js.map +1 -1
  116. package/dist/projections/check-convex-args-shape.js +10 -6
  117. package/dist/projections/check-convex-args-shape.js.map +1 -1
  118. package/dist/projections/create-evidence.projection.d.ts +6 -6
  119. package/dist/projections/create-evidence.projection.js +2 -3
  120. package/dist/projections/create-evidence.projection.js.map +1 -1
  121. package/dist/projections/index.d.ts +3 -3
  122. package/dist/projections/index.js +10 -6
  123. package/dist/projections/index.js.map +1 -1
  124. package/dist/projections/list-tasks.projection.d.ts +20 -8
  125. package/dist/projections/list-tasks.projection.js +8 -3
  126. package/dist/projections/list-tasks.projection.js.map +1 -1
  127. package/dist/proof-attestation.json +45 -0
  128. package/dist/schemas/component-table-manifest.d.ts +6 -6
  129. package/dist/schemas/component-table-manifest.js +2 -2
  130. package/dist/schemas/component-table-manifest.js.map +1 -1
  131. package/dist/schemas/index.d.ts +2 -2
  132. package/dist/schemas/index.js +1086 -137
  133. package/dist/schemas/index.js.map +1 -1
  134. package/dist/schemas/manifest.d.ts +2010 -120
  135. package/dist/schemas/manifest.js +1084 -135
  136. package/dist/schemas/manifest.js.map +1 -1
  137. package/dist/schemas/tables/controlPlane/accessControl.d.ts +260 -0
  138. package/dist/schemas/tables/controlPlane/accessControl.js +653 -0
  139. package/dist/schemas/tables/controlPlane/accessControl.js.map +1 -0
  140. package/dist/schemas/tables/{identity → controlPlane}/agent.d.ts +1 -1
  141. package/dist/schemas/tables/{identity → controlPlane}/agent.js +3 -3
  142. package/dist/schemas/tables/controlPlane/agent.js.map +1 -0
  143. package/dist/schemas/tables/{identity → controlPlane}/epistemic.d.ts +1 -1
  144. package/dist/schemas/tables/{identity → controlPlane}/epistemic.js +3 -3
  145. package/dist/schemas/tables/controlPlane/epistemic.js.map +1 -0
  146. package/dist/schemas/tables/{identity → controlPlane}/model.d.ts +1 -1
  147. package/dist/schemas/tables/{identity → controlPlane}/model.js +6 -6
  148. package/dist/schemas/tables/controlPlane/model.js.map +1 -0
  149. package/dist/schemas/tables/{identity → controlPlane}/platform.d.ts +1 -1
  150. package/dist/schemas/tables/{identity → controlPlane}/platform.js +18 -18
  151. package/dist/schemas/tables/controlPlane/platform.js.map +1 -0
  152. package/dist/schemas/tables/{identity → controlPlane}/project.d.ts +1 -1
  153. package/dist/schemas/tables/{identity → controlPlane}/project.js +3 -3
  154. package/dist/schemas/tables/controlPlane/project.js.map +1 -0
  155. package/dist/schemas/tables/{identity → controlPlane}/user.d.ts +1 -1
  156. package/dist/schemas/tables/{identity → controlPlane}/user.js +3 -3
  157. package/dist/schemas/tables/controlPlane/user.js.map +1 -0
  158. package/dist/schemas/tables/kernel/config.d.ts +1 -1
  159. package/dist/schemas/tables/kernel/config.js.map +1 -1
  160. package/dist/schemas/tables/kernel/coordination.d.ts +1 -1
  161. package/dist/schemas/tables/kernel/coordination.js.map +1 -1
  162. package/dist/schemas/tables/kernel/decision.d.ts +1 -1
  163. package/dist/schemas/tables/kernel/decision.js.map +1 -1
  164. package/dist/schemas/tables/kernel/embedding.d.ts +1 -1
  165. package/dist/schemas/tables/kernel/embedding.js.map +1 -1
  166. package/dist/schemas/tables/kernel/epistemic.d.ts +1 -1
  167. package/dist/schemas/tables/kernel/epistemic.js.map +1 -1
  168. package/dist/schemas/tables/kernel/idempotency.d.ts +1 -1
  169. package/dist/schemas/tables/kernel/idempotency.js.map +1 -1
  170. package/dist/schemas/tables/kernel/infra.d.ts +1 -1
  171. package/dist/schemas/tables/kernel/infra.js.map +1 -1
  172. package/dist/schemas/tables/kernel/intelligence.d.ts +1 -1
  173. package/dist/schemas/tables/kernel/intelligence.js.map +1 -1
  174. package/dist/schemas/tables/kernel/lens.d.ts +1 -1
  175. package/dist/schemas/tables/kernel/lens.js.map +1 -1
  176. package/dist/schemas/tables/kernel/ontology.d.ts +1 -1
  177. package/dist/schemas/tables/kernel/ontology.js.map +1 -1
  178. package/dist/schemas/tables/kernel/platform.d.ts +1 -1
  179. package/dist/schemas/tables/kernel/platform.js.map +1 -1
  180. package/dist/schemas/tables/kernel/spine.d.ts +2 -1
  181. package/dist/schemas/tables/kernel/spine.js +1 -0
  182. package/dist/schemas/tables/kernel/spine.js.map +1 -1
  183. package/dist/schemas/tables/kernel/task.d.ts +1 -1
  184. package/dist/schemas/tables/kernel/task.js.map +1 -1
  185. package/dist/schemas/tables/kernel/topic.d.ts +1 -1
  186. package/dist/schemas/tables/kernel/topic.js.map +1 -1
  187. package/dist/schemas/tables/kernel/workflow.d.ts +1 -1
  188. package/dist/schemas/tables/kernel/workflow.js.map +1 -1
  189. package/dist/schemas/tables/kernel/worktree.d.ts +5 -5
  190. package/dist/schemas/tables/kernel/worktree.js.map +1 -1
  191. package/dist/schemas/tables/mc/identity.d.ts +19 -2
  192. package/dist/schemas/tables/mc/identity.js +32 -1
  193. package/dist/schemas/tables/mc/identity.js.map +1 -1
  194. package/dist/schemas/tables/mc/methodology.d.ts +1 -1
  195. package/dist/schemas/tables/mc/methodology.js.map +1 -1
  196. package/dist/schemas/tables/mc/pack.d.ts +1 -1
  197. package/dist/schemas/tables/mc/pack.js.map +1 -1
  198. package/dist/schemas/tables/mc/policy.d.ts +2 -2
  199. package/dist/schemas/tables/mc/policy.js +1 -1
  200. package/dist/schemas/tables/mc/policy.js.map +1 -1
  201. package/dist/schemas/tables/mc/registry.d.ts +1 -1
  202. package/dist/schemas/tables/mc/registry.js.map +1 -1
  203. package/dist/schemas/tables/mc/runtime.d.ts +109 -3
  204. package/dist/schemas/tables/mc/runtime.js +330 -104
  205. package/dist/schemas/tables/mc/runtime.js.map +1 -1
  206. package/dist/schemas/tables/mc/tenant.d.ts +3 -2
  207. package/dist/schemas/tables/mc/tenant.js +2 -1
  208. package/dist/schemas/tables/mc/tenant.js.map +1 -1
  209. package/dist/schemas/tables/mc/workspace.d.ts +22 -5
  210. package/dist/schemas/tables/mc/workspace.js +34 -2
  211. package/dist/schemas/tables/mc/workspace.js.map +1 -1
  212. package/dist/sdk-tools.contract.js +26 -1
  213. package/dist/sdk-tools.contract.js.map +1 -1
  214. package/dist/tenant-bootstrap-seed.contract.d.ts +226 -58
  215. package/dist/tenant-bootstrap-seed.contract.js +126 -28
  216. package/dist/tenant-bootstrap-seed.contract.js.map +1 -1
  217. package/dist/tenant-bootstrap-seed.defaults.d.ts +1 -1
  218. package/dist/tenant-bootstrap-seed.defaults.js +1 -1
  219. package/dist/tenant-bootstrap-seed.defaults.js.map +1 -1
  220. package/dist/tenant-client.contract.d.ts +12 -12
  221. package/dist/tenant-client.contract.js +11 -11
  222. package/dist/tenant-client.contract.js.map +1 -1
  223. package/dist/tool-contracts.js +26 -1
  224. package/dist/tool-contracts.js.map +1 -1
  225. package/package.json +22 -1
  226. package/dist/schemas/tables/identity/agent.js.map +0 -1
  227. package/dist/schemas/tables/identity/epistemic.js.map +0 -1
  228. package/dist/schemas/tables/identity/model.js.map +0 -1
  229. package/dist/schemas/tables/identity/platform.js.map +0 -1
  230. package/dist/schemas/tables/identity/project.js.map +0 -1
  231. package/dist/schemas/tables/identity/user.js.map +0 -1
@@ -0,0 +1,412 @@
1
+ import { z } from 'zod';
2
+
3
+ /**
4
+ * MCP Tool Contract Definitions
5
+ *
6
+ * Machine-readable source of truth for all Lucern MCP tool names,
7
+ * descriptions, parameters, and response schemas.
8
+ *
9
+ * CONTRACT SURFACE: These definitions are the external API for AI agents.
10
+ * Renaming a tool or changing its description is a BREAKING CHANGE.
11
+ *
12
+ * Git-native naming rules (enforced by lint):
13
+ * 1. Workflow tools use git verbs directly (add_worktree, merge, push, open_pull_request)
14
+ * 2. Knowledge tools use epistemic verbs (create_belief, fork_belief, modulate_confidence)
15
+ * 3. First sentence of description includes the git analog verb
16
+ * 4. Description includes "Like `git X`" parenthetical
17
+ * 5. Parameter names use domain terms (canonicalText, nodeId, baseRate)
18
+ */
19
+ type McpToolContract = {
20
+ /** Stable tool name — breaking change to rename */
21
+ name: string;
22
+ /** Git-semantic description — breaking change to remove git references */
23
+ description: string;
24
+ /** Parameter schema (JSON Schema subset) */
25
+ parameters: Record<string, McpParameterDef>;
26
+ /** Required parameter names */
27
+ required: string[];
28
+ /** Response shape description */
29
+ response: McpResponseDef;
30
+ /** Which Lucern module owns the implementation */
31
+ ownerModule: string;
32
+ /** Ontology primitive this tool operates on */
33
+ ontologyPrimitive: "belief" | "evidence" | "source" | "question" | "judgment" | "worktree" | "branch" | "lens" | "edge" | "graph" | "task" | "policy" | "ontology" | "identity";
34
+ /** MCP surface tier — showcase (front page, every demo) or workhorse (complete CRUD, discovered when building) */
35
+ tier: "showcase" | "workhorse";
36
+ /** Hide this tool from public discovery surfaces. */
37
+ internal?: boolean;
38
+ /** Deprecation notice shown in contract-driven docs and discovery. */
39
+ deprecated?: string;
40
+ };
41
+ type McpParameterDef = {
42
+ type: "string" | "number" | "boolean" | "array" | "object";
43
+ description: string;
44
+ required?: boolean;
45
+ enum?: string[];
46
+ };
47
+ type McpResponseDef = {
48
+ description: string;
49
+ fields: Record<string, string>;
50
+ };
51
+
52
+ type FunctionEffect = "read" | "write" | "admin";
53
+
54
+ type FunctionKind = "query" | "mutation" | "action";
55
+ type FunctionIdempotency = boolean | "required";
56
+ type FunctionSurfaceIntent = "mcp_core" | "mcp_analysis" | "mcp_workflow" | "mcp_governance" | "system" | "compatibility" | "sdk_granular";
57
+ type SurfaceClass = "platform_public" | "tenant_public" | "platform_internal" | "legacy_compat" | "application_tool" | "external_connector";
58
+ type SurfaceExposure = "public" | "internal" | "none";
59
+ type FunctionSurfaceMap = {
60
+ sdk: SurfaceExposure;
61
+ rest: SurfaceExposure;
62
+ mcp: SurfaceExposure;
63
+ cli: SurfaceExposure;
64
+ };
65
+ type ContractProjectionContext = {
66
+ tenantId?: string;
67
+ workspaceId?: string;
68
+ userId?: string;
69
+ principalId?: string;
70
+ correlationId?: string;
71
+ policyTraceId?: string;
72
+ idempotencyKey?: string;
73
+ };
74
+ type ContractInputProjection = (input: Record<string, unknown>, context: ContractProjectionContext) => Record<string, unknown>;
75
+ type ContractOutputProjection = (output: unknown, input: Record<string, unknown>, context: ContractProjectionContext) => unknown;
76
+ type FunctionConvexTarget = {
77
+ module: string;
78
+ functionName: string;
79
+ kind: FunctionKind;
80
+ injectSessionId?: "sessionId" | "fromSessionId";
81
+ injectSessionContext?: boolean;
82
+ broadcastToAll?: boolean;
83
+ inputProjection?: ContractInputProjection;
84
+ outputProjection?: ContractOutputProjection;
85
+ };
86
+ type FunctionGatewayTarget = {
87
+ handler: "tasks.create" | "tasks.list" | "tasks.update" | "tasks.complete";
88
+ };
89
+
90
+ declare const nodesContracts: readonly [{
91
+ name: string;
92
+ kind: FunctionKind;
93
+ idempotent: FunctionIdempotency;
94
+ effects: readonly FunctionEffect[];
95
+ invariants: readonly string[] | undefined;
96
+ surfaceIntent: FunctionSurfaceIntent;
97
+ domain: string;
98
+ surfaceClass: SurfaceClass;
99
+ surfaces: FunctionSurfaceMap;
100
+ replacedBy: string | undefined;
101
+ rest: {
102
+ method: "GET" | "POST" | "PATCH" | "DELETE";
103
+ path: string;
104
+ };
105
+ sdk: {
106
+ namespace: string;
107
+ method: string;
108
+ };
109
+ mcp: {
110
+ exposed: boolean;
111
+ toolName: string;
112
+ } & McpToolContract & {
113
+ exposed: boolean;
114
+ toolName: string;
115
+ };
116
+ auth: {
117
+ scopes: string[];
118
+ allowedPrincipalTypes: ("user" | "service" | "agent")[];
119
+ };
120
+ convex: FunctionConvexTarget | undefined;
121
+ gateway: FunctionGatewayTarget | undefined;
122
+ args: z.ZodTypeAny;
123
+ returns: z.ZodTypeAny;
124
+ input: z.ZodTypeAny;
125
+ output: z.ZodTypeAny;
126
+ openapi: {
127
+ summary: string;
128
+ tags: string[];
129
+ };
130
+ }, {
131
+ name: string;
132
+ kind: FunctionKind;
133
+ idempotent: FunctionIdempotency;
134
+ effects: readonly FunctionEffect[];
135
+ invariants: readonly string[] | undefined;
136
+ surfaceIntent: FunctionSurfaceIntent;
137
+ domain: string;
138
+ surfaceClass: SurfaceClass;
139
+ surfaces: FunctionSurfaceMap;
140
+ replacedBy: string | undefined;
141
+ rest: {
142
+ method: "GET" | "POST" | "PATCH" | "DELETE";
143
+ path: string;
144
+ };
145
+ sdk: {
146
+ namespace: string;
147
+ method: string;
148
+ };
149
+ mcp: {
150
+ exposed: boolean;
151
+ toolName: string;
152
+ } & McpToolContract & {
153
+ exposed: boolean;
154
+ toolName: string;
155
+ };
156
+ auth: {
157
+ scopes: string[];
158
+ allowedPrincipalTypes: ("user" | "service" | "agent")[];
159
+ };
160
+ convex: FunctionConvexTarget | undefined;
161
+ gateway: FunctionGatewayTarget | undefined;
162
+ args: z.ZodTypeAny;
163
+ returns: z.ZodTypeAny;
164
+ input: z.ZodTypeAny;
165
+ output: z.ZodTypeAny;
166
+ openapi: {
167
+ summary: string;
168
+ tags: string[];
169
+ };
170
+ }, {
171
+ name: string;
172
+ kind: FunctionKind;
173
+ idempotent: FunctionIdempotency;
174
+ effects: readonly FunctionEffect[];
175
+ invariants: readonly string[] | undefined;
176
+ surfaceIntent: FunctionSurfaceIntent;
177
+ domain: string;
178
+ surfaceClass: SurfaceClass;
179
+ surfaces: FunctionSurfaceMap;
180
+ replacedBy: string | undefined;
181
+ rest: {
182
+ method: "GET" | "POST" | "PATCH" | "DELETE";
183
+ path: string;
184
+ };
185
+ sdk: {
186
+ namespace: string;
187
+ method: string;
188
+ };
189
+ mcp: {
190
+ exposed: boolean;
191
+ toolName: string;
192
+ } & McpToolContract & {
193
+ exposed: boolean;
194
+ toolName: string;
195
+ };
196
+ auth: {
197
+ scopes: string[];
198
+ allowedPrincipalTypes: ("user" | "service" | "agent")[];
199
+ };
200
+ convex: FunctionConvexTarget | undefined;
201
+ gateway: FunctionGatewayTarget | undefined;
202
+ args: z.ZodTypeAny;
203
+ returns: z.ZodTypeAny;
204
+ input: z.ZodTypeAny;
205
+ output: z.ZodTypeAny;
206
+ openapi: {
207
+ summary: string;
208
+ tags: string[];
209
+ };
210
+ }, {
211
+ name: string;
212
+ kind: FunctionKind;
213
+ idempotent: FunctionIdempotency;
214
+ effects: readonly FunctionEffect[];
215
+ invariants: readonly string[] | undefined;
216
+ surfaceIntent: FunctionSurfaceIntent;
217
+ domain: string;
218
+ surfaceClass: SurfaceClass;
219
+ surfaces: FunctionSurfaceMap;
220
+ replacedBy: string | undefined;
221
+ rest: {
222
+ method: "GET" | "POST" | "PATCH" | "DELETE";
223
+ path: string;
224
+ };
225
+ sdk: {
226
+ namespace: string;
227
+ method: string;
228
+ };
229
+ mcp: {
230
+ exposed: boolean;
231
+ toolName: string;
232
+ } & McpToolContract & {
233
+ exposed: boolean;
234
+ toolName: string;
235
+ };
236
+ auth: {
237
+ scopes: string[];
238
+ allowedPrincipalTypes: ("user" | "service" | "agent")[];
239
+ };
240
+ convex: FunctionConvexTarget | undefined;
241
+ gateway: FunctionGatewayTarget | undefined;
242
+ args: z.ZodTypeAny;
243
+ returns: z.ZodTypeAny;
244
+ input: z.ZodTypeAny;
245
+ output: z.ZodTypeAny;
246
+ openapi: {
247
+ summary: string;
248
+ tags: string[];
249
+ };
250
+ }, {
251
+ name: string;
252
+ kind: FunctionKind;
253
+ idempotent: FunctionIdempotency;
254
+ effects: readonly FunctionEffect[];
255
+ invariants: readonly string[] | undefined;
256
+ surfaceIntent: FunctionSurfaceIntent;
257
+ domain: string;
258
+ surfaceClass: SurfaceClass;
259
+ surfaces: FunctionSurfaceMap;
260
+ replacedBy: string | undefined;
261
+ rest: {
262
+ method: "GET" | "POST" | "PATCH" | "DELETE";
263
+ path: string;
264
+ };
265
+ sdk: {
266
+ namespace: string;
267
+ method: string;
268
+ };
269
+ mcp: {
270
+ exposed: boolean;
271
+ toolName: string;
272
+ } & McpToolContract & {
273
+ exposed: boolean;
274
+ toolName: string;
275
+ };
276
+ auth: {
277
+ scopes: string[];
278
+ allowedPrincipalTypes: ("user" | "service" | "agent")[];
279
+ };
280
+ convex: FunctionConvexTarget | undefined;
281
+ gateway: FunctionGatewayTarget | undefined;
282
+ args: z.ZodTypeAny;
283
+ returns: z.ZodTypeAny;
284
+ input: z.ZodTypeAny;
285
+ output: z.ZodTypeAny;
286
+ openapi: {
287
+ summary: string;
288
+ tags: string[];
289
+ };
290
+ }, {
291
+ name: string;
292
+ kind: FunctionKind;
293
+ idempotent: FunctionIdempotency;
294
+ effects: readonly FunctionEffect[];
295
+ invariants: readonly string[] | undefined;
296
+ surfaceIntent: FunctionSurfaceIntent;
297
+ domain: string;
298
+ surfaceClass: SurfaceClass;
299
+ surfaces: FunctionSurfaceMap;
300
+ replacedBy: string | undefined;
301
+ rest: {
302
+ method: "GET" | "POST" | "PATCH" | "DELETE";
303
+ path: string;
304
+ };
305
+ sdk: {
306
+ namespace: string;
307
+ method: string;
308
+ };
309
+ mcp: {
310
+ exposed: boolean;
311
+ toolName: string;
312
+ } & McpToolContract & {
313
+ exposed: boolean;
314
+ toolName: string;
315
+ };
316
+ auth: {
317
+ scopes: string[];
318
+ allowedPrincipalTypes: ("user" | "service" | "agent")[];
319
+ };
320
+ convex: FunctionConvexTarget | undefined;
321
+ gateway: FunctionGatewayTarget | undefined;
322
+ args: z.ZodTypeAny;
323
+ returns: z.ZodTypeAny;
324
+ input: z.ZodTypeAny;
325
+ output: z.ZodTypeAny;
326
+ openapi: {
327
+ summary: string;
328
+ tags: string[];
329
+ };
330
+ }, {
331
+ name: string;
332
+ kind: FunctionKind;
333
+ idempotent: FunctionIdempotency;
334
+ effects: readonly FunctionEffect[];
335
+ invariants: readonly string[] | undefined;
336
+ surfaceIntent: FunctionSurfaceIntent;
337
+ domain: string;
338
+ surfaceClass: SurfaceClass;
339
+ surfaces: FunctionSurfaceMap;
340
+ replacedBy: string | undefined;
341
+ rest: {
342
+ method: "GET" | "POST" | "PATCH" | "DELETE";
343
+ path: string;
344
+ };
345
+ sdk: {
346
+ namespace: string;
347
+ method: string;
348
+ };
349
+ mcp: {
350
+ exposed: boolean;
351
+ toolName: string;
352
+ } & McpToolContract & {
353
+ exposed: boolean;
354
+ toolName: string;
355
+ };
356
+ auth: {
357
+ scopes: string[];
358
+ allowedPrincipalTypes: ("user" | "service" | "agent")[];
359
+ };
360
+ convex: FunctionConvexTarget | undefined;
361
+ gateway: FunctionGatewayTarget | undefined;
362
+ args: z.ZodTypeAny;
363
+ returns: z.ZodTypeAny;
364
+ input: z.ZodTypeAny;
365
+ output: z.ZodTypeAny;
366
+ openapi: {
367
+ summary: string;
368
+ tags: string[];
369
+ };
370
+ }, {
371
+ name: string;
372
+ kind: FunctionKind;
373
+ idempotent: FunctionIdempotency;
374
+ effects: readonly FunctionEffect[];
375
+ invariants: readonly string[] | undefined;
376
+ surfaceIntent: FunctionSurfaceIntent;
377
+ domain: string;
378
+ surfaceClass: SurfaceClass;
379
+ surfaces: FunctionSurfaceMap;
380
+ replacedBy: string | undefined;
381
+ rest: {
382
+ method: "GET" | "POST" | "PATCH" | "DELETE";
383
+ path: string;
384
+ };
385
+ sdk: {
386
+ namespace: string;
387
+ method: string;
388
+ };
389
+ mcp: {
390
+ exposed: boolean;
391
+ toolName: string;
392
+ } & McpToolContract & {
393
+ exposed: boolean;
394
+ toolName: string;
395
+ };
396
+ auth: {
397
+ scopes: string[];
398
+ allowedPrincipalTypes: ("user" | "service" | "agent")[];
399
+ };
400
+ convex: FunctionConvexTarget | undefined;
401
+ gateway: FunctionGatewayTarget | undefined;
402
+ args: z.ZodTypeAny;
403
+ returns: z.ZodTypeAny;
404
+ input: z.ZodTypeAny;
405
+ output: z.ZodTypeAny;
406
+ openapi: {
407
+ summary: string;
408
+ tags: string[];
409
+ };
410
+ }];
411
+
412
+ export { nodesContracts };