@manifesto-ai/core 0.3.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (259) hide show
  1. package/README.md +129 -499
  2. package/dist/core/apply.d.ts +16 -0
  3. package/dist/core/apply.d.ts.map +1 -0
  4. package/dist/core/apply.js +52 -0
  5. package/dist/core/apply.js.map +1 -0
  6. package/dist/core/compute.d.ts +17 -0
  7. package/dist/core/compute.d.ts.map +1 -0
  8. package/dist/core/compute.js +197 -0
  9. package/dist/core/compute.js.map +1 -0
  10. package/dist/core/compute.test.d.ts +2 -0
  11. package/dist/core/compute.test.d.ts.map +1 -0
  12. package/dist/core/compute.test.js +400 -0
  13. package/dist/core/compute.test.js.map +1 -0
  14. package/dist/core/explain.d.ts +14 -0
  15. package/dist/core/explain.d.ts.map +1 -0
  16. package/dist/core/explain.js +74 -0
  17. package/dist/core/explain.js.map +1 -0
  18. package/dist/core/index.d.ts +5 -0
  19. package/dist/core/index.d.ts.map +1 -0
  20. package/dist/core/index.js +5 -0
  21. package/dist/core/index.js.map +1 -0
  22. package/dist/core/validate.d.ts +15 -0
  23. package/dist/core/validate.d.ts.map +1 -0
  24. package/dist/core/validate.js +143 -0
  25. package/dist/core/validate.js.map +1 -0
  26. package/dist/core/validate.test.d.ts +2 -0
  27. package/dist/core/validate.test.d.ts.map +1 -0
  28. package/dist/core/validate.test.js +450 -0
  29. package/dist/core/validate.test.js.map +1 -0
  30. package/dist/errors.d.ts +30 -0
  31. package/dist/errors.d.ts.map +1 -0
  32. package/dist/errors.js +51 -0
  33. package/dist/errors.js.map +1 -0
  34. package/dist/evaluator/computed.d.ts +14 -0
  35. package/dist/evaluator/computed.d.ts.map +1 -0
  36. package/dist/evaluator/computed.js +57 -0
  37. package/dist/evaluator/computed.js.map +1 -0
  38. package/dist/evaluator/context.d.ts +46 -0
  39. package/dist/evaluator/context.d.ts.map +1 -0
  40. package/dist/evaluator/context.js +35 -0
  41. package/dist/evaluator/context.js.map +1 -0
  42. package/dist/evaluator/dag.d.ts +30 -0
  43. package/dist/evaluator/dag.d.ts.map +1 -0
  44. package/dist/evaluator/dag.js +121 -0
  45. package/dist/evaluator/dag.js.map +1 -0
  46. package/dist/evaluator/expr.d.ts +11 -0
  47. package/dist/evaluator/expr.d.ts.map +1 -0
  48. package/dist/evaluator/expr.js +498 -0
  49. package/dist/evaluator/expr.js.map +1 -0
  50. package/dist/evaluator/expr.test.d.ts +2 -0
  51. package/dist/evaluator/expr.test.d.ts.map +1 -0
  52. package/dist/evaluator/expr.test.js +426 -0
  53. package/dist/evaluator/expr.test.js.map +1 -0
  54. package/dist/evaluator/flow.d.ts +35 -0
  55. package/dist/evaluator/flow.d.ts.map +1 -0
  56. package/dist/evaluator/flow.js +234 -0
  57. package/dist/evaluator/flow.js.map +1 -0
  58. package/dist/evaluator/flow.test.d.ts +2 -0
  59. package/dist/evaluator/flow.test.d.ts.map +1 -0
  60. package/dist/evaluator/flow.test.js +446 -0
  61. package/dist/evaluator/flow.test.js.map +1 -0
  62. package/dist/evaluator/index.d.ts +6 -0
  63. package/dist/evaluator/index.d.ts.map +1 -0
  64. package/dist/evaluator/index.js +6 -0
  65. package/dist/evaluator/index.js.map +1 -0
  66. package/dist/factories.d.ts +20 -0
  67. package/dist/factories.d.ts.map +1 -0
  68. package/dist/factories.js +43 -0
  69. package/dist/factories.js.map +1 -0
  70. package/dist/index.d.ts +46 -11
  71. package/dist/index.d.ts.map +1 -1
  72. package/dist/index.js +30 -45
  73. package/dist/index.js.map +1 -1
  74. package/dist/index.test.d.ts +2 -0
  75. package/dist/index.test.d.ts.map +1 -0
  76. package/dist/index.test.js +13 -0
  77. package/dist/index.test.js.map +1 -0
  78. package/dist/schema/action.d.ts +14 -0
  79. package/dist/schema/action.d.ts.map +1 -0
  80. package/dist/schema/action.js +30 -0
  81. package/dist/schema/action.js.map +1 -0
  82. package/dist/schema/common.d.ts +37 -0
  83. package/dist/schema/common.d.ts.map +1 -0
  84. package/dist/schema/common.js +20 -0
  85. package/dist/schema/common.js.map +1 -0
  86. package/dist/schema/computed.d.ts +23 -0
  87. package/dist/schema/computed.d.ts.map +1 -0
  88. package/dist/schema/computed.js +34 -0
  89. package/dist/schema/computed.js.map +1 -0
  90. package/dist/schema/domain.d.ts +46 -0
  91. package/dist/schema/domain.d.ts.map +1 -0
  92. package/dist/schema/domain.js +54 -0
  93. package/dist/schema/domain.js.map +1 -0
  94. package/dist/schema/expr.d.ts +260 -0
  95. package/dist/schema/expr.d.ts.map +1 -0
  96. package/dist/schema/expr.js +247 -0
  97. package/dist/schema/expr.js.map +1 -0
  98. package/dist/schema/field.d.ts +48 -0
  99. package/dist/schema/field.d.ts.map +1 -0
  100. package/dist/schema/field.js +31 -0
  101. package/dist/schema/field.js.map +1 -0
  102. package/dist/schema/flow.d.ts +103 -0
  103. package/dist/schema/flow.d.ts.map +1 -0
  104. package/dist/schema/flow.js +82 -0
  105. package/dist/schema/flow.js.map +1 -0
  106. package/dist/schema/index.d.ts +11 -2
  107. package/dist/schema/index.d.ts.map +1 -1
  108. package/dist/schema/index.js +22 -2
  109. package/dist/schema/index.js.map +1 -1
  110. package/dist/schema/patch.d.ts +59 -0
  111. package/dist/schema/patch.d.ts.map +1 -0
  112. package/dist/schema/patch.js +60 -0
  113. package/dist/schema/patch.js.map +1 -0
  114. package/dist/schema/result.d.ts +130 -0
  115. package/dist/schema/result.d.ts.map +1 -0
  116. package/dist/schema/result.js +90 -0
  117. package/dist/schema/result.js.map +1 -0
  118. package/dist/schema/snapshot.d.ts +151 -0
  119. package/dist/schema/snapshot.d.ts.map +1 -0
  120. package/dist/schema/snapshot.js +156 -0
  121. package/dist/schema/snapshot.js.map +1 -0
  122. package/dist/schema/trace.d.ts +87 -0
  123. package/dist/schema/trace.d.ts.map +1 -0
  124. package/dist/schema/trace.js +79 -0
  125. package/dist/schema/trace.js.map +1 -0
  126. package/dist/utils/canonical.d.ts +29 -0
  127. package/dist/utils/canonical.d.ts.map +1 -0
  128. package/dist/utils/canonical.js +56 -0
  129. package/dist/utils/canonical.js.map +1 -0
  130. package/dist/utils/canonical.test.d.ts +2 -0
  131. package/dist/utils/canonical.test.d.ts.map +1 -0
  132. package/dist/utils/canonical.test.js +153 -0
  133. package/dist/utils/canonical.test.js.map +1 -0
  134. package/dist/utils/hash.d.ts +20 -0
  135. package/dist/utils/hash.d.ts.map +1 -0
  136. package/dist/utils/hash.js +38 -0
  137. package/dist/utils/hash.js.map +1 -0
  138. package/dist/utils/hash.test.d.ts +2 -0
  139. package/dist/utils/hash.test.d.ts.map +1 -0
  140. package/dist/utils/hash.test.js +146 -0
  141. package/dist/utils/hash.test.js.map +1 -0
  142. package/dist/utils/index.d.ts +4 -0
  143. package/dist/utils/index.d.ts.map +1 -0
  144. package/dist/utils/index.js +4 -0
  145. package/dist/utils/index.js.map +1 -0
  146. package/dist/utils/path.d.ts +40 -0
  147. package/dist/utils/path.d.ts.map +1 -0
  148. package/dist/utils/path.js +132 -0
  149. package/dist/utils/path.js.map +1 -0
  150. package/dist/utils/path.test.d.ts +2 -0
  151. package/dist/utils/path.test.d.ts.map +1 -0
  152. package/dist/utils/path.test.js +191 -0
  153. package/dist/utils/path.test.js.map +1 -0
  154. package/package.json +25 -39
  155. package/LICENSE +0 -21
  156. package/dist/dag/graph.d.ts +0 -62
  157. package/dist/dag/graph.d.ts.map +0 -1
  158. package/dist/dag/graph.js +0 -244
  159. package/dist/dag/graph.js.map +0 -1
  160. package/dist/dag/index.d.ts +0 -4
  161. package/dist/dag/index.d.ts.map +0 -1
  162. package/dist/dag/index.js +0 -4
  163. package/dist/dag/index.js.map +0 -1
  164. package/dist/dag/propagation.d.ts +0 -58
  165. package/dist/dag/propagation.d.ts.map +0 -1
  166. package/dist/dag/propagation.js +0 -224
  167. package/dist/dag/propagation.js.map +0 -1
  168. package/dist/dag/topological.d.ts +0 -33
  169. package/dist/dag/topological.d.ts.map +0 -1
  170. package/dist/dag/topological.js +0 -173
  171. package/dist/dag/topological.js.map +0 -1
  172. package/dist/domain/define.d.ts +0 -82
  173. package/dist/domain/define.d.ts.map +0 -1
  174. package/dist/domain/define.js +0 -105
  175. package/dist/domain/define.js.map +0 -1
  176. package/dist/domain/index.d.ts +0 -4
  177. package/dist/domain/index.d.ts.map +0 -1
  178. package/dist/domain/index.js +0 -4
  179. package/dist/domain/index.js.map +0 -1
  180. package/dist/domain/types.d.ts +0 -203
  181. package/dist/domain/types.d.ts.map +0 -1
  182. package/dist/domain/types.js +0 -2
  183. package/dist/domain/types.js.map +0 -1
  184. package/dist/domain/validate.d.ts +0 -17
  185. package/dist/domain/validate.d.ts.map +0 -1
  186. package/dist/domain/validate.js +0 -204
  187. package/dist/domain/validate.js.map +0 -1
  188. package/dist/effect/index.d.ts +0 -4
  189. package/dist/effect/index.d.ts.map +0 -1
  190. package/dist/effect/index.js +0 -4
  191. package/dist/effect/index.js.map +0 -1
  192. package/dist/effect/result.d.ts +0 -100
  193. package/dist/effect/result.d.ts.map +0 -1
  194. package/dist/effect/result.js +0 -163
  195. package/dist/effect/result.js.map +0 -1
  196. package/dist/effect/runner.d.ts +0 -98
  197. package/dist/effect/runner.d.ts.map +0 -1
  198. package/dist/effect/runner.js +0 -321
  199. package/dist/effect/runner.js.map +0 -1
  200. package/dist/effect/types.d.ts +0 -169
  201. package/dist/effect/types.d.ts.map +0 -1
  202. package/dist/effect/types.js +0 -28
  203. package/dist/effect/types.js.map +0 -1
  204. package/dist/expression/analyzer.d.ts +0 -42
  205. package/dist/expression/analyzer.d.ts.map +0 -1
  206. package/dist/expression/analyzer.js +0 -166
  207. package/dist/expression/analyzer.js.map +0 -1
  208. package/dist/expression/evaluator.d.ts +0 -16
  209. package/dist/expression/evaluator.d.ts.map +0 -1
  210. package/dist/expression/evaluator.js +0 -382
  211. package/dist/expression/evaluator.js.map +0 -1
  212. package/dist/expression/index.d.ts +0 -5
  213. package/dist/expression/index.d.ts.map +0 -1
  214. package/dist/expression/index.js +0 -5
  215. package/dist/expression/index.js.map +0 -1
  216. package/dist/expression/parser.d.ts +0 -37
  217. package/dist/expression/parser.d.ts.map +0 -1
  218. package/dist/expression/parser.js +0 -201
  219. package/dist/expression/parser.js.map +0 -1
  220. package/dist/expression/types.d.ts +0 -123
  221. package/dist/expression/types.d.ts.map +0 -1
  222. package/dist/expression/types.js +0 -10
  223. package/dist/expression/types.js.map +0 -1
  224. package/dist/policy/field-policy.d.ts +0 -63
  225. package/dist/policy/field-policy.d.ts.map +0 -1
  226. package/dist/policy/field-policy.js +0 -138
  227. package/dist/policy/field-policy.js.map +0 -1
  228. package/dist/policy/index.d.ts +0 -3
  229. package/dist/policy/index.d.ts.map +0 -1
  230. package/dist/policy/index.js +0 -3
  231. package/dist/policy/index.js.map +0 -1
  232. package/dist/policy/precondition.d.ts +0 -58
  233. package/dist/policy/precondition.d.ts.map +0 -1
  234. package/dist/policy/precondition.js +0 -115
  235. package/dist/policy/precondition.js.map +0 -1
  236. package/dist/runtime/index.d.ts +0 -4
  237. package/dist/runtime/index.d.ts.map +0 -1
  238. package/dist/runtime/index.js +0 -4
  239. package/dist/runtime/index.js.map +0 -1
  240. package/dist/runtime/runtime.d.ts +0 -94
  241. package/dist/runtime/runtime.d.ts.map +0 -1
  242. package/dist/runtime/runtime.js +0 -294
  243. package/dist/runtime/runtime.js.map +0 -1
  244. package/dist/runtime/snapshot.d.ts +0 -39
  245. package/dist/runtime/snapshot.d.ts.map +0 -1
  246. package/dist/runtime/snapshot.js +0 -264
  247. package/dist/runtime/snapshot.js.map +0 -1
  248. package/dist/runtime/subscription.d.ts +0 -82
  249. package/dist/runtime/subscription.d.ts.map +0 -1
  250. package/dist/runtime/subscription.js +0 -222
  251. package/dist/runtime/subscription.js.map +0 -1
  252. package/dist/schema/integration.d.ts +0 -89
  253. package/dist/schema/integration.d.ts.map +0 -1
  254. package/dist/schema/integration.js +0 -171
  255. package/dist/schema/integration.js.map +0 -1
  256. package/dist/schema/validation.d.ts +0 -51
  257. package/dist/schema/validation.d.ts.map +0 -1
  258. package/dist/schema/validation.js +0 -212
  259. package/dist/schema/validation.js.map +0 -1
@@ -0,0 +1,103 @@
1
+ import { z } from "zod";
2
+ import { type ExprNode } from "./expr.js";
3
+ /**
4
+ * FlowNode - Declarative state transition programs
5
+ * Flows do NOT execute; they describe.
6
+ * Flows do NOT return values; they modify Snapshot.
7
+ * Flows are NOT Turing-complete; they always terminate.
8
+ */
9
+ export type FlowNode = SeqFlow | IfFlow | PatchFlow | EffectFlow | CallFlow | HaltFlow | FailFlow;
10
+ /**
11
+ * Patch operations
12
+ */
13
+ export declare const PatchOp: z.ZodEnum<{
14
+ set: "set";
15
+ unset: "unset";
16
+ merge: "merge";
17
+ }>;
18
+ export type PatchOp = z.infer<typeof PatchOp>;
19
+ /**
20
+ * seq - Execute steps in order
21
+ */
22
+ export declare const SeqFlow: z.ZodType<{
23
+ kind: "seq";
24
+ steps: FlowNode[];
25
+ }>;
26
+ export type SeqFlow = z.infer<typeof SeqFlow>;
27
+ /**
28
+ * if - Conditional execution
29
+ */
30
+ export declare const IfFlow: z.ZodType<{
31
+ kind: "if";
32
+ cond: ExprNode;
33
+ then: FlowNode;
34
+ else?: FlowNode;
35
+ }>;
36
+ export type IfFlow = z.infer<typeof IfFlow>;
37
+ /**
38
+ * patch - State mutation declaration
39
+ */
40
+ export declare const PatchFlow: z.ZodObject<{
41
+ kind: z.ZodLiteral<"patch">;
42
+ op: z.ZodEnum<{
43
+ set: "set";
44
+ unset: "unset";
45
+ merge: "merge";
46
+ }>;
47
+ path: z.ZodString;
48
+ value: z.ZodOptional<z.ZodType<ExprNode, unknown, z.core.$ZodTypeInternals<ExprNode, unknown>>>;
49
+ }, z.core.$strip>;
50
+ export type PatchFlow = z.infer<typeof PatchFlow>;
51
+ /**
52
+ * effect - External operation requirement declaration
53
+ * Effects are NOT executed by Core. They are declarations recorded in Snapshot.
54
+ */
55
+ export declare const EffectFlow: z.ZodObject<{
56
+ kind: z.ZodLiteral<"effect">;
57
+ type: z.ZodString;
58
+ params: z.ZodRecord<z.ZodString, z.ZodType<ExprNode, unknown, z.core.$ZodTypeInternals<ExprNode, unknown>>>;
59
+ }, z.core.$strip>;
60
+ export type EffectFlow = z.infer<typeof EffectFlow>;
61
+ /**
62
+ * call - Invoke another flow by name
63
+ * Does NOT pass arguments or return values.
64
+ * The called Flow reads from the same Snapshot.
65
+ */
66
+ export declare const CallFlow: z.ZodObject<{
67
+ kind: z.ZodLiteral<"call">;
68
+ flow: z.ZodString;
69
+ }, z.core.$strip>;
70
+ export type CallFlow = z.infer<typeof CallFlow>;
71
+ /**
72
+ * halt - Stop flow execution normally (not an error)
73
+ */
74
+ export declare const HaltFlow: z.ZodObject<{
75
+ kind: z.ZodLiteral<"halt">;
76
+ reason: z.ZodOptional<z.ZodString>;
77
+ }, z.core.$strip>;
78
+ export type HaltFlow = z.infer<typeof HaltFlow>;
79
+ /**
80
+ * fail - Stop flow execution with an error
81
+ * The error is recorded in Snapshot.
82
+ */
83
+ export declare const FailFlow: z.ZodObject<{
84
+ kind: z.ZodLiteral<"fail">;
85
+ code: z.ZodString;
86
+ message: z.ZodOptional<z.ZodType<ExprNode, unknown, z.core.$ZodTypeInternals<ExprNode, unknown>>>;
87
+ }, z.core.$strip>;
88
+ export type FailFlow = z.infer<typeof FailFlow>;
89
+ export declare const FlowNodeSchema: z.ZodType<FlowNode>;
90
+ /**
91
+ * Flow node kinds enum
92
+ */
93
+ export declare const FlowKind: z.ZodEnum<{
94
+ if: "if";
95
+ patch: "patch";
96
+ effect: "effect";
97
+ call: "call";
98
+ halt: "halt";
99
+ fail: "fail";
100
+ seq: "seq";
101
+ }>;
102
+ export type FlowKind = z.infer<typeof FlowKind>;
103
+ //# sourceMappingURL=flow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flow.d.ts","sourceRoot":"","sources":["../../src/schema/flow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAkB,KAAK,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE1D;;;;;GAKG;AAEH,MAAM,MAAM,QAAQ,GAChB,OAAO,GACP,MAAM,GACN,SAAS,GACT,UAAU,GACV,QAAQ,GACR,QAAQ,GACR,QAAQ,CAAC;AAEb;;GAEG;AACH,eAAO,MAAM,OAAO;;;;EAAoC,CAAC;AACzD,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;AAI9C;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,QAAQ,EAAE,CAAA;CAAE,CAGhE,CAAC;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;AAE9C;;GAEG;AACH,eAAO,MAAM,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,CAAC,EAAE,QAAQ,CAAA;CAAE,CAK5F,CAAC;AACH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,CAAC;AAE5C;;GAEG;AACH,eAAO,MAAM,SAAS;;;;;;;;;iBAKpB,CAAC;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,SAAS,CAAC,CAAC;AAElD;;;GAGG;AACH,eAAO,MAAM,UAAU;;;;iBAIrB,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAEpD;;;;GAIG;AACH,eAAO,MAAM,QAAQ;;;iBAGnB,CAAC;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAEhD;;GAEG;AACH,eAAO,MAAM,QAAQ;;;iBAGnB,CAAC;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAEhD;;;GAGG;AACH,eAAO,MAAM,QAAQ;;;;iBAInB,CAAC;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AAIhD,eAAO,MAAM,cAAc,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAQtB,CAAC;AAE1B;;GAEG;AACH,eAAO,MAAM,QAAQ;;;;;;;;EAAmE,CAAC;AACzF,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC"}
@@ -0,0 +1,82 @@
1
+ import { z } from "zod";
2
+ import { SemanticPath } from "./common.js";
3
+ import { ExprNodeSchema } from "./expr.js";
4
+ /**
5
+ * Patch operations
6
+ */
7
+ export const PatchOp = z.enum(["set", "unset", "merge"]);
8
+ // ============ Flow Node Types ============
9
+ /**
10
+ * seq - Execute steps in order
11
+ */
12
+ export const SeqFlow = z.object({
13
+ kind: z.literal("seq"),
14
+ steps: z.array(z.lazy(() => FlowNodeSchema)),
15
+ });
16
+ /**
17
+ * if - Conditional execution
18
+ */
19
+ export const IfFlow = z.object({
20
+ kind: z.literal("if"),
21
+ cond: ExprNodeSchema,
22
+ then: z.lazy(() => FlowNodeSchema),
23
+ else: z.lazy(() => FlowNodeSchema).optional(),
24
+ });
25
+ /**
26
+ * patch - State mutation declaration
27
+ */
28
+ export const PatchFlow = z.object({
29
+ kind: z.literal("patch"),
30
+ op: PatchOp,
31
+ path: SemanticPath,
32
+ value: ExprNodeSchema.optional(),
33
+ });
34
+ /**
35
+ * effect - External operation requirement declaration
36
+ * Effects are NOT executed by Core. They are declarations recorded in Snapshot.
37
+ */
38
+ export const EffectFlow = z.object({
39
+ kind: z.literal("effect"),
40
+ type: z.string(),
41
+ params: z.record(z.string(), ExprNodeSchema),
42
+ });
43
+ /**
44
+ * call - Invoke another flow by name
45
+ * Does NOT pass arguments or return values.
46
+ * The called Flow reads from the same Snapshot.
47
+ */
48
+ export const CallFlow = z.object({
49
+ kind: z.literal("call"),
50
+ flow: z.string(),
51
+ });
52
+ /**
53
+ * halt - Stop flow execution normally (not an error)
54
+ */
55
+ export const HaltFlow = z.object({
56
+ kind: z.literal("halt"),
57
+ reason: z.string().optional(),
58
+ });
59
+ /**
60
+ * fail - Stop flow execution with an error
61
+ * The error is recorded in Snapshot.
62
+ */
63
+ export const FailFlow = z.object({
64
+ kind: z.literal("fail"),
65
+ code: z.string(),
66
+ message: ExprNodeSchema.optional(),
67
+ });
68
+ // ============ Combined Schema ============
69
+ export const FlowNodeSchema = z.union([
70
+ SeqFlow,
71
+ IfFlow,
72
+ PatchFlow,
73
+ EffectFlow,
74
+ CallFlow,
75
+ HaltFlow,
76
+ FailFlow,
77
+ ]);
78
+ /**
79
+ * Flow node kinds enum
80
+ */
81
+ export const FlowKind = z.enum(["seq", "if", "patch", "effect", "call", "halt", "fail"]);
82
+ //# sourceMappingURL=flow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flow.js","sourceRoot":"","sources":["../../src/schema/flow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAiB,MAAM,WAAW,CAAC;AAkB1D;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;AAGzD,4CAA4C;AAE5C;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAkD,CAAC,CAAC,MAAM,CAAC;IAC7E,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IACtB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,CAAC;CAC7C,CAAC,CAAC;AAGH;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAA+E,CAAC,CAAC,MAAM,CAAC;IACzG,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACrB,IAAI,EAAE,cAAc;IACpB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC;IAClC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE;CAC9C,CAAC,CAAC;AAGH;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IACxB,EAAE,EAAE,OAAO;IACX,IAAI,EAAE,YAAY;IAClB,KAAK,EAAE,cAAc,CAAC,QAAQ,EAAE;CACjC,CAAC,CAAC;AAGH;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;IACzB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,cAAc,CAAC;CAC7C,CAAC,CAAC;AAGH;;;;GAIG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/B,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACvB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;CACjB,CAAC,CAAC;AAGH;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/B,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACvB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAC;AAGH;;;GAGG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/B,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACvB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,OAAO,EAAE,cAAc,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAC;AAGH,4CAA4C;AAE5C,MAAM,CAAC,MAAM,cAAc,GAAwB,CAAC,CAAC,KAAK,CAAC;IACzD,OAAO;IACP,MAAM;IACN,SAAS;IACT,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,QAAQ;CACT,CAAwB,CAAC;AAE1B;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC"}
@@ -1,3 +1,12 @@
1
- export * from './integration.js';
2
- export * from './validation.js';
1
+ export * from "./common.js";
2
+ export * from "./field.js";
3
+ export * from "./expr.js";
4
+ export * from "./flow.js";
5
+ export * from "./computed.js";
6
+ export * from "./action.js";
7
+ export * from "./domain.js";
8
+ export * from "./snapshot.js";
9
+ export * from "./patch.js";
10
+ export * from "./trace.js";
11
+ export * from "./result.js";
3
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AACA,cAAc,aAAa,CAAC;AAG5B,cAAc,YAAY,CAAC;AAG3B,cAAc,WAAW,CAAC;AAG1B,cAAc,WAAW,CAAC;AAG1B,cAAc,eAAe,CAAC;AAG9B,cAAc,aAAa,CAAC;AAG5B,cAAc,aAAa,CAAC;AAG5B,cAAc,eAAe,CAAC;AAG9B,cAAc,YAAY,CAAC;AAG3B,cAAc,YAAY,CAAC;AAG3B,cAAc,aAAa,CAAC"}
@@ -1,3 +1,23 @@
1
- export * from './integration.js';
2
- export * from './validation.js';
1
+ // Common types
2
+ export * from "./common.js";
3
+ // Field and State types
4
+ export * from "./field.js";
5
+ // Expression types
6
+ export * from "./expr.js";
7
+ // Flow types
8
+ export * from "./flow.js";
9
+ // Computed types
10
+ export * from "./computed.js";
11
+ // Action types
12
+ export * from "./action.js";
13
+ // Domain schema
14
+ export * from "./domain.js";
15
+ // Snapshot types
16
+ export * from "./snapshot.js";
17
+ // Patch and Intent types
18
+ export * from "./patch.js";
19
+ // Trace types
20
+ export * from "./trace.js";
21
+ // Result types
22
+ export * from "./result.js";
3
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA,eAAe;AACf,cAAc,aAAa,CAAC;AAE5B,wBAAwB;AACxB,cAAc,YAAY,CAAC;AAE3B,mBAAmB;AACnB,cAAc,WAAW,CAAC;AAE1B,aAAa;AACb,cAAc,WAAW,CAAC;AAE1B,iBAAiB;AACjB,cAAc,eAAe,CAAC;AAE9B,eAAe;AACf,cAAc,aAAa,CAAC;AAE5B,gBAAgB;AAChB,cAAc,aAAa,CAAC;AAE5B,iBAAiB;AACjB,cAAc,eAAe,CAAC;AAE9B,yBAAyB;AACzB,cAAc,YAAY,CAAC;AAE3B,cAAc;AACd,cAAc,YAAY,CAAC;AAE3B,eAAe;AACf,cAAc,aAAa,CAAC"}
@@ -0,0 +1,59 @@
1
+ import { z } from "zod";
2
+ import { SemanticPath } from "./common.js";
3
+ /**
4
+ * Patch - A single state modification operation.
5
+ * Only three operations: set, unset, merge.
6
+ */
7
+ export declare const Patch: z.ZodDiscriminatedUnion<[z.ZodObject<{
8
+ op: z.ZodLiteral<"set">;
9
+ path: z.ZodString;
10
+ value: z.ZodUnknown;
11
+ }, z.core.$strip>, z.ZodObject<{
12
+ op: z.ZodLiteral<"unset">;
13
+ path: z.ZodString;
14
+ }, z.core.$strip>, z.ZodObject<{
15
+ op: z.ZodLiteral<"merge">;
16
+ path: z.ZodString;
17
+ value: z.ZodRecord<z.ZodString, z.ZodUnknown>;
18
+ }, z.core.$strip>], "op">;
19
+ export type Patch = z.infer<typeof Patch>;
20
+ /**
21
+ * SetPatch - Set value at path
22
+ */
23
+ export type SetPatch = Extract<Patch, {
24
+ op: "set";
25
+ }>;
26
+ /**
27
+ * UnsetPatch - Remove value at path
28
+ */
29
+ export type UnsetPatch = Extract<Patch, {
30
+ op: "unset";
31
+ }>;
32
+ /**
33
+ * MergePatch - Shallow merge object at path
34
+ */
35
+ export type MergePatch = Extract<Patch, {
36
+ op: "merge";
37
+ }>;
38
+ /**
39
+ * Intent - A request to perform an action
40
+ */
41
+ export declare const Intent: z.ZodObject<{
42
+ type: z.ZodString;
43
+ input: z.ZodOptional<z.ZodUnknown>;
44
+ intentId: z.ZodString;
45
+ }, z.core.$strip>;
46
+ export type Intent = z.infer<typeof Intent>;
47
+ /**
48
+ * Helper to create a set patch
49
+ */
50
+ export declare function setPatch(path: SemanticPath, value: unknown): SetPatch;
51
+ /**
52
+ * Helper to create an unset patch
53
+ */
54
+ export declare function unsetPatch(path: SemanticPath): UnsetPatch;
55
+ /**
56
+ * Helper to create a merge patch
57
+ */
58
+ export declare function mergePatch(path: SemanticPath, value: Record<string, unknown>): MergePatch;
59
+ //# sourceMappingURL=patch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"patch.d.ts","sourceRoot":"","sources":["../../src/schema/patch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C;;;GAGG;AACH,eAAO,MAAM,KAAK;;;;;;;;;;;yBAehB,CAAC;AACH,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAC;AAE1C;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,EAAE;IAAE,EAAE,EAAE,KAAK,CAAA;CAAE,CAAC,CAAC;AAErD;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,EAAE;IAAE,EAAE,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC;AAEzD;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,EAAE;IAAE,EAAE,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC;AAEzD;;GAEG;AACH,eAAO,MAAM,MAAM;;;;iBAiBjB,CAAC;AACH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,CAAC;AAE5C;;GAEG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,GAAG,QAAQ,CAErE;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,YAAY,GAAG,UAAU,CAEzD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,UAAU,CAEzF"}
@@ -0,0 +1,60 @@
1
+ import { z } from "zod";
2
+ import { SemanticPath } from "./common.js";
3
+ /**
4
+ * Patch - A single state modification operation.
5
+ * Only three operations: set, unset, merge.
6
+ */
7
+ export const Patch = z.discriminatedUnion("op", [
8
+ z.object({
9
+ op: z.literal("set"),
10
+ path: SemanticPath,
11
+ value: z.unknown(),
12
+ }),
13
+ z.object({
14
+ op: z.literal("unset"),
15
+ path: SemanticPath,
16
+ }),
17
+ z.object({
18
+ op: z.literal("merge"),
19
+ path: SemanticPath,
20
+ value: z.record(z.string(), z.unknown()),
21
+ }),
22
+ ]);
23
+ /**
24
+ * Intent - A request to perform an action
25
+ */
26
+ export const Intent = z.object({
27
+ /**
28
+ * Action type identifier
29
+ */
30
+ type: z.string(),
31
+ /**
32
+ * Action input parameters
33
+ */
34
+ input: z.unknown().optional(),
35
+ /**
36
+ * Unique identifier for this processing attempt.
37
+ * MUST be unique per processing attempt.
38
+ * MUST be stable across re-invocations for same attempt.
39
+ */
40
+ intentId: z.string(),
41
+ });
42
+ /**
43
+ * Helper to create a set patch
44
+ */
45
+ export function setPatch(path, value) {
46
+ return { op: "set", path, value };
47
+ }
48
+ /**
49
+ * Helper to create an unset patch
50
+ */
51
+ export function unsetPatch(path) {
52
+ return { op: "unset", path };
53
+ }
54
+ /**
55
+ * Helper to create a merge patch
56
+ */
57
+ export function mergePatch(path, value) {
58
+ return { op: "merge", path, value };
59
+ }
60
+ //# sourceMappingURL=patch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"patch.js","sourceRoot":"","sources":["../../src/schema/patch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C;;;GAGG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,kBAAkB,CAAC,IAAI,EAAE;IAC9C,CAAC,CAAC,MAAM,CAAC;QACP,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;QACpB,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE;KACnB,CAAC;IACF,CAAC,CAAC,MAAM,CAAC;QACP,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;QACtB,IAAI,EAAE,YAAY;KACnB,CAAC;IACF,CAAC,CAAC,MAAM,CAAC;QACP,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;QACtB,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;KACzC,CAAC;CACH,CAAC,CAAC;AAkBH;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7B;;OAEG;IACH,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAEhB;;OAEG;IACH,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAE7B;;;;OAIG;IACH,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;CACrB,CAAC,CAAC;AAGH;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,IAAkB,EAAE,KAAc;IACzD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,IAAkB;IAC3C,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC/B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,IAAkB,EAAE,KAA8B;IAC3E,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AACtC,CAAC"}
@@ -0,0 +1,130 @@
1
+ import { z } from "zod";
2
+ import { TraceNode } from "./trace.js";
3
+ /**
4
+ * ComputeStatus - Result of a compute() call
5
+ */
6
+ export declare const ComputeStatus: z.ZodEnum<{
7
+ error: "error";
8
+ pending: "pending";
9
+ complete: "complete";
10
+ halted: "halted";
11
+ }>;
12
+ export type ComputeStatus = z.infer<typeof ComputeStatus>;
13
+ /**
14
+ * ComputeResult - Result of compute() call
15
+ */
16
+ export declare const ComputeResult: z.ZodObject<{
17
+ snapshot: z.ZodObject<{
18
+ data: z.ZodUnknown;
19
+ computed: z.ZodRecord<z.ZodString, z.ZodUnknown>;
20
+ system: z.ZodObject<{
21
+ status: z.ZodEnum<{
22
+ error: "error";
23
+ idle: "idle";
24
+ computing: "computing";
25
+ pending: "pending";
26
+ }>;
27
+ lastError: z.ZodNullable<z.ZodObject<{
28
+ code: z.ZodString;
29
+ message: z.ZodString;
30
+ source: z.ZodObject<{
31
+ actionId: z.ZodString;
32
+ nodePath: z.ZodString;
33
+ }, z.core.$strip>;
34
+ timestamp: z.ZodNumber;
35
+ context: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
36
+ }, z.core.$strip>>;
37
+ errors: z.ZodArray<z.ZodObject<{
38
+ code: z.ZodString;
39
+ message: z.ZodString;
40
+ source: z.ZodObject<{
41
+ actionId: z.ZodString;
42
+ nodePath: z.ZodString;
43
+ }, z.core.$strip>;
44
+ timestamp: z.ZodNumber;
45
+ context: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
46
+ }, z.core.$strip>>;
47
+ pendingRequirements: z.ZodArray<z.ZodObject<{
48
+ id: z.ZodString;
49
+ type: z.ZodString;
50
+ params: z.ZodRecord<z.ZodString, z.ZodUnknown>;
51
+ actionId: z.ZodString;
52
+ flowPosition: z.ZodObject<{
53
+ nodePath: z.ZodString;
54
+ snapshotVersion: z.ZodNumber;
55
+ }, z.core.$strip>;
56
+ createdAt: z.ZodNumber;
57
+ }, z.core.$strip>>;
58
+ currentAction: z.ZodNullable<z.ZodString>;
59
+ }, z.core.$strip>;
60
+ input: z.ZodUnknown;
61
+ meta: z.ZodObject<{
62
+ version: z.ZodNumber;
63
+ timestamp: z.ZodNumber;
64
+ schemaHash: z.ZodString;
65
+ }, z.core.$strip>;
66
+ }, z.core.$strip>;
67
+ trace: z.ZodObject<{
68
+ root: z.ZodType<TraceNode, unknown, z.core.$ZodTypeInternals<TraceNode, unknown>>;
69
+ nodes: z.ZodRecord<z.ZodString, z.ZodType<TraceNode, unknown, z.core.$ZodTypeInternals<TraceNode, unknown>>>;
70
+ intent: z.ZodObject<{
71
+ type: z.ZodString;
72
+ input: z.ZodUnknown;
73
+ }, z.core.$strip>;
74
+ baseVersion: z.ZodNumber;
75
+ resultVersion: z.ZodNumber;
76
+ duration: z.ZodNumber;
77
+ terminatedBy: z.ZodEnum<{
78
+ error: "error";
79
+ effect: "effect";
80
+ halt: "halt";
81
+ complete: "complete";
82
+ }>;
83
+ }, z.core.$strip>;
84
+ status: z.ZodEnum<{
85
+ error: "error";
86
+ pending: "pending";
87
+ complete: "complete";
88
+ halted: "halted";
89
+ }>;
90
+ }, z.core.$strip>;
91
+ export type ComputeResult = z.infer<typeof ComputeResult>;
92
+ /**
93
+ * ValidationError - Single validation error
94
+ */
95
+ export declare const ValidationError: z.ZodObject<{
96
+ code: z.ZodString;
97
+ message: z.ZodString;
98
+ path: z.ZodOptional<z.ZodString>;
99
+ }, z.core.$strip>;
100
+ export type ValidationError = z.infer<typeof ValidationError>;
101
+ /**
102
+ * ValidationResult - Result of validate() call
103
+ */
104
+ export declare const ValidationResult: z.ZodObject<{
105
+ valid: z.ZodBoolean;
106
+ errors: z.ZodArray<z.ZodObject<{
107
+ code: z.ZodString;
108
+ message: z.ZodString;
109
+ path: z.ZodOptional<z.ZodString>;
110
+ }, z.core.$strip>>;
111
+ }, z.core.$strip>;
112
+ export type ValidationResult = z.infer<typeof ValidationResult>;
113
+ /**
114
+ * ExplainResult - Result of explain() call
115
+ */
116
+ export declare const ExplainResult: z.ZodObject<{
117
+ value: z.ZodUnknown;
118
+ trace: z.ZodType<TraceNode, unknown, z.core.$ZodTypeInternals<TraceNode, unknown>>;
119
+ deps: z.ZodArray<z.ZodString>;
120
+ }, z.core.$strip>;
121
+ export type ExplainResult = z.infer<typeof ExplainResult>;
122
+ /**
123
+ * Create a successful validation result
124
+ */
125
+ export declare function validResult(): ValidationResult;
126
+ /**
127
+ * Create a failed validation result
128
+ */
129
+ export declare function invalidResult(errors: ValidationError[]): ValidationResult;
130
+ //# sourceMappingURL=result.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../../src/schema/result.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAc,SAAS,EAAE,MAAM,YAAY,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;EAKxB,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAE1D;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAexB,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAE1D;;GAEG;AACH,eAAO,MAAM,eAAe;;;;iBAe1B,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAE9D;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;iBAU3B,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,aAAa;;;;iBAexB,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAE1D;;GAEG;AACH,wBAAgB,WAAW,IAAI,gBAAgB,CAE9C;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,gBAAgB,CAEzE"}
@@ -0,0 +1,90 @@
1
+ import { z } from "zod";
2
+ import { SemanticPath } from "./common.js";
3
+ import { Snapshot } from "./snapshot.js";
4
+ import { TraceGraph, TraceNode } from "./trace.js";
5
+ /**
6
+ * ComputeStatus - Result of a compute() call
7
+ */
8
+ export const ComputeStatus = z.enum([
9
+ "complete", // Flow finished, no pending requirements
10
+ "pending", // Flow encountered effect, waiting for Host
11
+ "halted", // Flow explicitly halted
12
+ "error", // Flow encountered error
13
+ ]);
14
+ /**
15
+ * ComputeResult - Result of compute() call
16
+ */
17
+ export const ComputeResult = z.object({
18
+ /**
19
+ * New snapshot after computation
20
+ */
21
+ snapshot: Snapshot,
22
+ /**
23
+ * Computation trace
24
+ */
25
+ trace: TraceGraph,
26
+ /**
27
+ * Computation status
28
+ */
29
+ status: ComputeStatus,
30
+ });
31
+ /**
32
+ * ValidationError - Single validation error
33
+ */
34
+ export const ValidationError = z.object({
35
+ /**
36
+ * Error code (e.g., "V-001", "V-002")
37
+ */
38
+ code: z.string(),
39
+ /**
40
+ * Human-readable message
41
+ */
42
+ message: z.string(),
43
+ /**
44
+ * Path in the schema where error occurred
45
+ */
46
+ path: z.string().optional(),
47
+ });
48
+ /**
49
+ * ValidationResult - Result of validate() call
50
+ */
51
+ export const ValidationResult = z.object({
52
+ /**
53
+ * Whether the schema is valid
54
+ */
55
+ valid: z.boolean(),
56
+ /**
57
+ * List of validation errors (empty if valid)
58
+ */
59
+ errors: z.array(ValidationError),
60
+ });
61
+ /**
62
+ * ExplainResult - Result of explain() call
63
+ */
64
+ export const ExplainResult = z.object({
65
+ /**
66
+ * The value at the path
67
+ */
68
+ value: z.unknown(),
69
+ /**
70
+ * Trace showing how the value was computed
71
+ */
72
+ trace: TraceNode,
73
+ /**
74
+ * Dependencies that affect this value
75
+ */
76
+ deps: z.array(SemanticPath),
77
+ });
78
+ /**
79
+ * Create a successful validation result
80
+ */
81
+ export function validResult() {
82
+ return { valid: true, errors: [] };
83
+ }
84
+ /**
85
+ * Create a failed validation result
86
+ */
87
+ export function invalidResult(errors) {
88
+ return { valid: false, errors };
89
+ }
90
+ //# sourceMappingURL=result.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result.js","sourceRoot":"","sources":["../../src/schema/result.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEnD;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,CAAC;IAClC,UAAU,EAAE,yCAAyC;IACrD,SAAS,EAAG,4CAA4C;IACxD,QAAQ,EAAI,yBAAyB;IACrC,OAAO,EAAK,yBAAyB;CACtC,CAAC,CAAC;AAGH;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC;;OAEG;IACH,QAAQ,EAAE,QAAQ;IAElB;;OAEG;IACH,KAAK,EAAE,UAAU;IAEjB;;OAEG;IACH,MAAM,EAAE,aAAa;CACtB,CAAC,CAAC;AAGH;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC;;OAEG;IACH,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAEhB;;OAEG;IACH,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IAEnB;;OAEG;IACH,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC5B,CAAC,CAAC;AAGH;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC;;OAEG;IACH,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE;IAElB;;OAEG;IACH,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC;CACjC,CAAC,CAAC;AAGH;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC;;OAEG;IACH,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE;IAElB;;OAEG;IACH,KAAK,EAAE,SAAS;IAEhB;;OAEG;IACH,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC;CAC5B,CAAC,CAAC;AAGH;;GAEG;AACH,MAAM,UAAU,WAAW;IACzB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,MAAyB;IACrD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AAClC,CAAC"}