@acpus/core 0.6.0 → 0.7.0-alpha.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 (210) hide show
  1. package/README.md +128 -4
  2. package/dist/.tsbuildinfo +1 -0
  3. package/dist/graph/builder.d.ts +103 -0
  4. package/dist/graph/builder.d.ts.map +1 -0
  5. package/dist/graph/builder.js +209 -0
  6. package/dist/graph/builder.js.map +1 -0
  7. package/dist/graph/lowering.d.ts +8 -0
  8. package/dist/graph/lowering.d.ts.map +1 -0
  9. package/dist/graph/lowering.js +45 -0
  10. package/dist/graph/lowering.js.map +1 -0
  11. package/dist/graph/refs.d.ts +11 -0
  12. package/dist/graph/refs.d.ts.map +1 -0
  13. package/dist/graph/refs.js +12 -0
  14. package/dist/graph/refs.js.map +1 -0
  15. package/dist/graph/scope.d.ts +21 -0
  16. package/dist/graph/scope.d.ts.map +1 -0
  17. package/dist/graph/scope.js +22 -0
  18. package/dist/graph/scope.js.map +1 -0
  19. package/dist/index.d.ts +11 -25
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +4 -15
  22. package/dist/index.js.map +1 -1
  23. package/dist/internal/symbols.d.ts +9 -0
  24. package/dist/internal/symbols.d.ts.map +1 -0
  25. package/dist/internal/symbols.js +9 -0
  26. package/dist/internal/symbols.js.map +1 -0
  27. package/dist/internal/type-utils.d.ts +7 -0
  28. package/dist/internal/type-utils.d.ts.map +1 -0
  29. package/dist/internal/type-utils.js +8 -0
  30. package/dist/internal/type-utils.js.map +1 -0
  31. package/dist/ir/types.d.ts +218 -0
  32. package/dist/ir/types.d.ts.map +1 -0
  33. package/dist/ir/types.js.map +1 -0
  34. package/dist/ir/validator.d.ts +3 -0
  35. package/dist/ir/validator.d.ts.map +1 -0
  36. package/dist/ir/validator.js +671 -0
  37. package/dist/ir/validator.js.map +1 -0
  38. package/dist/ir.d.ts +3 -0
  39. package/dist/ir.d.ts.map +1 -0
  40. package/dist/ir.js +2 -0
  41. package/dist/ir.js.map +1 -0
  42. package/dist/nodes/composite/fanout.d.ts +24 -0
  43. package/dist/nodes/composite/fanout.d.ts.map +1 -0
  44. package/dist/nodes/composite/fanout.js +24 -0
  45. package/dist/nodes/composite/fanout.js.map +1 -0
  46. package/dist/nodes/composite/if.d.ts +12 -0
  47. package/dist/nodes/composite/if.d.ts.map +1 -0
  48. package/dist/nodes/composite/if.js +13 -0
  49. package/dist/nodes/composite/if.js.map +1 -0
  50. package/dist/nodes/composite/loop.d.ts +17 -0
  51. package/dist/nodes/composite/loop.d.ts.map +1 -0
  52. package/dist/nodes/composite/loop.js +22 -0
  53. package/dist/nodes/composite/loop.js.map +1 -0
  54. package/dist/nodes/composite/parallel.d.ts +29 -0
  55. package/dist/nodes/composite/parallel.d.ts.map +1 -0
  56. package/dist/nodes/composite/parallel.js +18 -0
  57. package/dist/nodes/composite/parallel.js.map +1 -0
  58. package/dist/nodes/composite/shared.d.ts +38 -0
  59. package/dist/nodes/composite/shared.d.ts.map +1 -0
  60. package/dist/nodes/composite/shared.js +2 -0
  61. package/dist/nodes/composite/shared.js.map +1 -0
  62. package/dist/nodes/composite/switch.d.ts +22 -0
  63. package/dist/nodes/composite/switch.d.ts.map +1 -0
  64. package/dist/nodes/composite/switch.js +12 -0
  65. package/dist/nodes/composite/switch.js.map +1 -0
  66. package/dist/nodes/control/assert.d.ts +10 -0
  67. package/dist/nodes/control/assert.d.ts.map +1 -0
  68. package/dist/nodes/control/assert.js +14 -0
  69. package/dist/nodes/control/assert.js.map +1 -0
  70. package/dist/nodes/leaf/agent.d.ts +63 -0
  71. package/dist/nodes/leaf/agent.d.ts.map +1 -0
  72. package/dist/nodes/leaf/agent.js +56 -0
  73. package/dist/nodes/leaf/agent.js.map +1 -0
  74. package/dist/nodes/leaf/shared.d.ts +11 -0
  75. package/dist/nodes/leaf/shared.d.ts.map +1 -0
  76. package/dist/nodes/leaf/shared.js +2 -0
  77. package/dist/nodes/leaf/shared.js.map +1 -0
  78. package/dist/nodes/leaf/signal.d.ts +27 -0
  79. package/dist/nodes/leaf/signal.d.ts.map +1 -0
  80. package/dist/nodes/leaf/signal.js +18 -0
  81. package/dist/nodes/leaf/signal.js.map +1 -0
  82. package/dist/nodes/leaf/task.d.ts +71 -0
  83. package/dist/nodes/leaf/task.d.ts.map +1 -0
  84. package/dist/nodes/leaf/task.js +88 -0
  85. package/dist/nodes/leaf/task.js.map +1 -0
  86. package/dist/runtime/dollar.d.ts +42 -0
  87. package/dist/runtime/dollar.d.ts.map +1 -0
  88. package/dist/runtime/dollar.js +82 -0
  89. package/dist/runtime/dollar.js.map +1 -0
  90. package/dist/runtime/secret.d.ts +10 -0
  91. package/dist/runtime/secret.d.ts.map +1 -0
  92. package/dist/runtime/secret.js +12 -0
  93. package/dist/runtime/secret.js.map +1 -0
  94. package/dist/runtime/task-context.d.ts +28 -0
  95. package/dist/runtime/task-context.d.ts.map +1 -0
  96. package/dist/runtime/task-context.js +2 -0
  97. package/dist/runtime/task-context.js.map +1 -0
  98. package/dist/runtime.d.ts +5 -0
  99. package/dist/runtime.d.ts.map +1 -0
  100. package/dist/runtime.js +3 -0
  101. package/dist/runtime.js.map +1 -0
  102. package/dist/schema/index.d.ts +6 -2
  103. package/dist/schema/index.d.ts.map +1 -1
  104. package/dist/schema/index.js +3 -2
  105. package/dist/schema/index.js.map +1 -1
  106. package/dist/schema/lower.d.ts +25 -0
  107. package/dist/schema/lower.d.ts.map +1 -0
  108. package/dist/schema/lower.js +198 -0
  109. package/dist/schema/lower.js.map +1 -0
  110. package/dist/schema/validate.d.ts +18 -0
  111. package/dist/schema/validate.d.ts.map +1 -0
  112. package/dist/schema/validate.js +22 -0
  113. package/dist/schema/validate.js.map +1 -0
  114. package/dist/schema/zod.d.ts +17 -0
  115. package/dist/schema/zod.d.ts.map +1 -0
  116. package/dist/schema/zod.js +15 -0
  117. package/dist/schema/zod.js.map +1 -0
  118. package/dist/schema.d.ts +3 -0
  119. package/dist/schema.d.ts.map +1 -0
  120. package/dist/schema.js +2 -0
  121. package/dist/schema.js.map +1 -0
  122. package/dist/template/template.d.ts +5 -0
  123. package/dist/template/template.d.ts.map +1 -0
  124. package/dist/template/template.js +10 -0
  125. package/dist/template/template.js.map +1 -0
  126. package/dist/workflow.d.ts +3 -0
  127. package/dist/workflow.d.ts.map +1 -0
  128. package/dist/workflow.js +2 -0
  129. package/dist/workflow.js.map +1 -0
  130. package/package.json +35 -20
  131. package/dist/agent-overrides.d.ts +0 -33
  132. package/dist/agent-overrides.d.ts.map +0 -1
  133. package/dist/agent-overrides.js +0 -178
  134. package/dist/agent-overrides.js.map +0 -1
  135. package/dist/cel-ast.d.ts +0 -39
  136. package/dist/cel-ast.d.ts.map +0 -1
  137. package/dist/cel-ast.js +0 -157
  138. package/dist/cel-ast.js.map +0 -1
  139. package/dist/cel-environment.d.ts +0 -6
  140. package/dist/cel-environment.d.ts.map +0 -1
  141. package/dist/cel-environment.js +0 -44
  142. package/dist/cel-environment.js.map +0 -1
  143. package/dist/compiler.d.ts +0 -4
  144. package/dist/compiler.d.ts.map +0 -1
  145. package/dist/compiler.js +0 -702
  146. package/dist/compiler.js.map +0 -1
  147. package/dist/composite-contract.d.ts +0 -46
  148. package/dist/composite-contract.d.ts.map +0 -1
  149. package/dist/composite-contract.js +0 -97
  150. package/dist/composite-contract.js.map +0 -1
  151. package/dist/diagnostics.d.ts +0 -9
  152. package/dist/diagnostics.d.ts.map +0 -1
  153. package/dist/diagnostics.js +0 -16
  154. package/dist/diagnostics.js.map +0 -1
  155. package/dist/duration.d.ts +0 -13
  156. package/dist/duration.d.ts.map +0 -1
  157. package/dist/duration.js +0 -32
  158. package/dist/duration.js.map +0 -1
  159. package/dist/expression-scope.d.ts +0 -23
  160. package/dist/expression-scope.d.ts.map +0 -1
  161. package/dist/expression-scope.js +0 -545
  162. package/dist/expression-scope.js.map +0 -1
  163. package/dist/expressions-shared.d.ts +0 -19
  164. package/dist/expressions-shared.d.ts.map +0 -1
  165. package/dist/expressions-shared.js +0 -27
  166. package/dist/expressions-shared.js.map +0 -1
  167. package/dist/expressions.d.ts +0 -9
  168. package/dist/expressions.d.ts.map +0 -1
  169. package/dist/expressions.js +0 -95
  170. package/dist/expressions.js.map +0 -1
  171. package/dist/hash.d.ts +0 -19
  172. package/dist/hash.d.ts.map +0 -1
  173. package/dist/hash.js +0 -120
  174. package/dist/hash.js.map +0 -1
  175. package/dist/hook-validation.d.ts +0 -9
  176. package/dist/hook-validation.d.ts.map +0 -1
  177. package/dist/hook-validation.js +0 -73
  178. package/dist/hook-validation.js.map +0 -1
  179. package/dist/hooks.d.ts +0 -150
  180. package/dist/hooks.d.ts.map +0 -1
  181. package/dist/hooks.js +0 -18
  182. package/dist/hooks.js.map +0 -1
  183. package/dist/schedule.d.ts +0 -3
  184. package/dist/schedule.d.ts.map +0 -1
  185. package/dist/schedule.js +0 -21
  186. package/dist/schedule.js.map +0 -1
  187. package/dist/schema/dsl.d.ts +0 -34
  188. package/dist/schema/dsl.d.ts.map +0 -1
  189. package/dist/schema/dsl.js +0 -231
  190. package/dist/schema/dsl.js.map +0 -1
  191. package/dist/schema/helpers.d.ts +0 -24
  192. package/dist/schema/helpers.d.ts.map +0 -1
  193. package/dist/schema/helpers.js +0 -61
  194. package/dist/schema/helpers.js.map +0 -1
  195. package/dist/schema-validator.d.ts +0 -29
  196. package/dist/schema-validator.d.ts.map +0 -1
  197. package/dist/schema-validator.js +0 -666
  198. package/dist/schema-validator.js.map +0 -1
  199. package/dist/source-resolver.d.ts +0 -22
  200. package/dist/source-resolver.d.ts.map +0 -1
  201. package/dist/source-resolver.js +0 -43
  202. package/dist/source-resolver.js.map +0 -1
  203. package/dist/types.d.ts +0 -126
  204. package/dist/types.d.ts.map +0 -1
  205. package/dist/types.js.map +0 -1
  206. package/dist/workflow-schema.d.ts +0 -10
  207. package/dist/workflow-schema.d.ts.map +0 -1
  208. package/dist/workflow-schema.js +0 -523
  209. package/dist/workflow-schema.js.map +0 -1
  210. /package/dist/{types.js → ir/types.js} +0 -0
@@ -1,231 +0,0 @@
1
- /**
2
- * Acpus recursive schema DSL compiler.
3
- *
4
- * User-facing YAML examples:
5
- *
6
- * ok: boolean
7
- * summary?: string
8
- * issues:
9
- * - description: string
10
- * severity?: string
11
- * metadata:
12
- * title: string
13
- *
14
- * The compiler emits JSON Schema for IR/runtime validation. The user-facing
15
- * DSL is intentionally smaller than JSON Schema and rejects unsupported
16
- * object-form schema keys rather than silently ignoring them.
17
- */
18
- import { isRecord, normalizeType, parseDefaultValue, parseKey, VALID_TYPES, } from "./helpers.js";
19
- const OBJECT_FORM_KEYS = new Set(["type", "required", "default", "description"]);
20
- const UNSUPPORTED_SCHEMA_KEY_HINTS = new Set(["items", "properties", "elements"]);
21
- /**
22
- * Compile an Acpus recursive schema DSL map into JSON Schema.
23
- */
24
- export function compileSchemaDsl(schemaDsl, options) {
25
- const strict = options?.strictObjectKeys ?? true;
26
- return compileSchemaMap(schemaDsl, "", strict);
27
- }
28
- function compileSchemaMap(map, path, strict) {
29
- const properties = {};
30
- const required = [];
31
- const errors = [];
32
- for (const [rawKey, value] of Object.entries(map)) {
33
- const { name, optional } = parseKey(rawKey);
34
- if (name.length === 0) {
35
- errors.push({ field: path, message: `Schema DSL field name from key '${rawKey}' must be non-empty.` });
36
- continue;
37
- }
38
- const fieldPath = path ? `${path}.${name}` : name;
39
- const result = parseFieldValue(name, value, optional, fieldPath, strict);
40
- errors.push(...result.errors);
41
- // Only include the field in properties when it has no errors.
42
- // Sibling valid fields are preserved; the caller checks errors to
43
- // decide whether to use the schema.
44
- if (result.errors.length === 0) {
45
- properties[name] = result.property;
46
- if (result.isRequired) {
47
- required.push(name);
48
- }
49
- }
50
- }
51
- const schema = {
52
- type: "object",
53
- properties,
54
- };
55
- if (strict) {
56
- schema.additionalProperties = false;
57
- }
58
- if (required.length > 0) {
59
- schema.required = required;
60
- }
61
- return { schema, errors };
62
- }
63
- function parseFieldValue(name, value, keyOptional, path, strict) {
64
- if (typeof value === "string") {
65
- return parseStringShorthand(name, value, keyOptional, path, strict);
66
- }
67
- if (Array.isArray(value)) {
68
- return parseArrayShorthand(name, value, keyOptional, path, strict);
69
- }
70
- if (isRecord(value)) {
71
- if ("type" in value) {
72
- return parseObjectForm(name, value, keyOptional, path, strict);
73
- }
74
- return parseNestedObject(name, value, keyOptional, path, strict);
75
- }
76
- return {
77
- property: {},
78
- isRequired: false,
79
- errors: [{ field: path, message: `schema DSL field '${name}' must be a type string, a nested object map, an array schema, or an object form with type.` }],
80
- };
81
- }
82
- function parseStringShorthand(name, value, keyOptional, path, strict) {
83
- const eqIndex = value.indexOf("=");
84
- let typePart;
85
- let defaultValue = undefined;
86
- let hasDefault = false;
87
- if (eqIndex !== -1) {
88
- typePart = value.slice(0, eqIndex).trim();
89
- const rawDefault = value.slice(eqIndex + 1).trim();
90
- hasDefault = true;
91
- defaultValue = parseDefaultValue(rawDefault);
92
- }
93
- else {
94
- typePart = value.trim();
95
- }
96
- const normalized = normalizeType(typePart);
97
- if (!normalized) {
98
- return invalidType(name, typePart, path);
99
- }
100
- const property = { type: normalized };
101
- if (normalized === "object" && strict) {
102
- property.additionalProperties = false;
103
- }
104
- if (hasDefault) {
105
- property.default = defaultValue;
106
- }
107
- return {
108
- property,
109
- isRequired: !keyOptional && !hasDefault,
110
- errors: [],
111
- };
112
- }
113
- function parseArrayShorthand(name, value, keyOptional, path, strict) {
114
- if (value.length !== 1) {
115
- return {
116
- property: {},
117
- isRequired: false,
118
- errors: [{ field: path, message: `Array schema for field '${name}' must contain exactly one item schema.` }],
119
- };
120
- }
121
- const itemSchema = value[0];
122
- const itemResult = parseArrayItemSchema(`${name}[]`, itemSchema, `${path}[]`, strict);
123
- if (itemResult.errors.length > 0) {
124
- return { property: {}, isRequired: false, errors: itemResult.errors };
125
- }
126
- return {
127
- property: {
128
- type: "array",
129
- items: itemResult.property,
130
- },
131
- isRequired: !keyOptional,
132
- errors: [],
133
- };
134
- }
135
- function parseArrayItemSchema(name, value, path, strict) {
136
- if (typeof value === "string") {
137
- const parsed = parseStringShorthand(name, value, false, path, strict);
138
- return { property: parsed.property, errors: parsed.errors };
139
- }
140
- if (Array.isArray(value)) {
141
- const parsed = parseArrayShorthand(name, value, false, path, strict);
142
- return { property: parsed.property, errors: parsed.errors };
143
- }
144
- if (isRecord(value)) {
145
- if ("type" in value) {
146
- const parsed = parseObjectForm(name, value, false, path, strict);
147
- return { property: parsed.property, errors: parsed.errors };
148
- }
149
- const nested = compileSchemaMap(value, path, strict);
150
- return { property: nested.schema, errors: nested.errors };
151
- }
152
- return {
153
- property: {},
154
- errors: [{ field: path, message: `Array item schema for field '${name}' must be a type string, a nested object map, an array schema, or an object form with type.` }],
155
- };
156
- }
157
- function parseNestedObject(_name, value, keyOptional, path, strict) {
158
- const nested = compileSchemaMap(value, path, strict);
159
- return {
160
- property: nested.schema,
161
- isRequired: !keyOptional,
162
- errors: nested.errors,
163
- };
164
- }
165
- function parseObjectForm(name, value, keyOptional, path, strict) {
166
- // Collect ALL errors before returning so the user gets a complete picture.
167
- const errors = validateObjectFormKeys(name, value, path);
168
- const rawType = value.type;
169
- if (typeof rawType !== "string") {
170
- errors.push({ field: path, message: `Object form for field '${name}' must include a string 'type'.` });
171
- }
172
- else {
173
- // Also validate the type string even if there are unsupported-key errors,
174
- // so the user sees all problems at once.
175
- const normalized = normalizeType(rawType);
176
- if (!normalized) {
177
- errors.push({ field: path, message: `Invalid type '${rawType}' for field '${name}'. Valid types: ${[...VALID_TYPES].join(", ")}.` });
178
- }
179
- }
180
- if (errors.length > 0) {
181
- return { property: {}, isRequired: false, errors };
182
- }
183
- const normalized = normalizeType(rawType);
184
- const property = { type: normalized };
185
- if (normalized === "object" && strict) {
186
- property.additionalProperties = false;
187
- }
188
- if ("description" in value && typeof value.description === "string") {
189
- property.description = value.description;
190
- }
191
- if ("default" in value) {
192
- property.default = value.default;
193
- }
194
- const hasDefault = "default" in value;
195
- const explicitRequired = value.required;
196
- let isRequired;
197
- if (explicitRequired !== undefined) {
198
- isRequired = !!explicitRequired;
199
- }
200
- else if (hasDefault) {
201
- isRequired = false;
202
- }
203
- else {
204
- isRequired = !keyOptional;
205
- }
206
- return { property, isRequired, errors: [] };
207
- }
208
- function validateObjectFormKeys(name, value, path) {
209
- const errors = [];
210
- for (const key of Object.keys(value)) {
211
- if (OBJECT_FORM_KEYS.has(key)) {
212
- continue;
213
- }
214
- const suffix = UNSUPPORTED_SCHEMA_KEY_HINTS.has(key)
215
- ? " Use the Acpus recursive DSL instead of raw schema keys."
216
- : "";
217
- errors.push({
218
- field: `${path}.${key}`,
219
- message: `Unsupported object-form key '${key}' for field '${name}'. Allowed keys: ${[...OBJECT_FORM_KEYS].join(", ")}.${suffix}`,
220
- });
221
- }
222
- return errors;
223
- }
224
- function invalidType(name, rawType, path) {
225
- return {
226
- property: {},
227
- isRequired: false,
228
- errors: [{ field: path, message: `Invalid type '${rawType}' for field '${name}'. Valid types: ${[...VALID_TYPES].join(", ")}.` }],
229
- };
230
- }
231
- //# sourceMappingURL=dsl.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dsl.js","sourceRoot":"","sources":["../../src/schema/dsl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EACL,QAAQ,EACR,aAAa,EACb,iBAAiB,EACjB,QAAQ,EACR,WAAW,GACZ,MAAM,cAAc,CAAC;AAuBtB,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC;AACjF,MAAM,4BAA4B,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC;AAElF;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAAkC,EAAE,OAAiC;IACpG,MAAM,MAAM,GAAG,OAAO,EAAE,gBAAgB,IAAI,IAAI,CAAC;IACjD,OAAO,gBAAgB,CAAC,SAAS,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;AACjD,CAAC;AAED,SAAS,gBAAgB,CAAC,GAA4B,EAAE,IAAY,EAAE,MAAe;IACnF,MAAM,UAAU,GAA4B,EAAE,CAAC;IAC/C,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,MAAM,GAAqB,EAAE,CAAC;IAEpC,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAClD,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,mCAAmC,MAAM,sBAAsB,EAAE,CAAC,CAAC;YACvG,SAAS;QACX,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAClD,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QACzE,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QAE9B,8DAA8D;QAC9D,kEAAkE;QAClE,oCAAoC;QACpC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC;YACnC,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBACtB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAA4B;QACtC,IAAI,EAAE,QAAQ;QACd,UAAU;KACX,CAAC;IACF,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,CAAC,oBAAoB,GAAG,KAAK,CAAC;IACtC,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAC5B,CAAC;AAED,SAAS,eAAe,CACtB,IAAY,EACZ,KAAc,EACd,WAAoB,EACpB,IAAY,EACZ,MAAe;IAEf,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,oBAAoB,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACtE,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,mBAAmB,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;YACpB,OAAO,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QACjE,CAAC;QACD,OAAO,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACnE,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,qBAAqB,IAAI,6FAA6F,EAAE,CAAC;KAC3J,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAC3B,IAAY,EACZ,KAAa,EACb,WAAoB,EACpB,IAAY,EACZ,MAAe;IAEf,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACnC,IAAI,QAAgB,CAAC;IACrB,IAAI,YAAY,GAAY,SAAS,CAAC;IACtC,IAAI,UAAU,GAAG,KAAK,CAAC;IAEvB,IAAI,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC;QACnB,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;QAC1C,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACnD,UAAU,GAAG,IAAI,CAAC;QAClB,YAAY,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAC/C,CAAC;SAAM,CAAC;QACN,QAAQ,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC1B,CAAC;IAED,MAAM,UAAU,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC3C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,WAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,QAAQ,GAA4B,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;IAC/D,IAAI,UAAU,KAAK,QAAQ,IAAI,MAAM,EAAE,CAAC;QACtC,QAAQ,CAAC,oBAAoB,GAAG,KAAK,CAAC;IACxC,CAAC;IACD,IAAI,UAAU,EAAE,CAAC;QACf,QAAQ,CAAC,OAAO,GAAG,YAAY,CAAC;IAClC,CAAC;IAED,OAAO;QACL,QAAQ;QACR,UAAU,EAAE,CAAC,WAAW,IAAI,CAAC,UAAU;QACvC,MAAM,EAAE,EAAE;KACX,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAC1B,IAAY,EACZ,KAAgB,EAChB,WAAoB,EACpB,IAAY,EACZ,MAAe;IAEf,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO;YACL,QAAQ,EAAE,EAAE;YACZ,UAAU,EAAE,KAAK;YACjB,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,2BAA2B,IAAI,yCAAyC,EAAE,CAAC;SAC7G,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAC5B,MAAM,UAAU,GAAG,oBAAoB,CAAC,GAAG,IAAI,IAAI,EAAE,UAAU,EAAE,GAAG,IAAI,IAAI,EAAE,MAAM,CAAC,CAAC;IACtF,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC;IACxE,CAAC;IAED,OAAO;QACL,QAAQ,EAAE;YACR,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,UAAU,CAAC,QAAQ;SAC3B;QACD,UAAU,EAAE,CAAC,WAAW;QACxB,MAAM,EAAE,EAAE;KACX,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAY,EAAE,KAAc,EAAE,IAAY,EAAE,MAAe;IACvF,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,oBAAoB,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;IAC9D,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;IAC9D,CAAC;IAED,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;YACpB,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;QAC9D,CAAC;QACD,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;IAC5D,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,gCAAgC,IAAI,6FAA6F,EAAE,CAAC;KACtK,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CACxB,KAAa,EACb,KAA8B,EAC9B,WAAoB,EACpB,IAAY,EACZ,MAAe;IAEf,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACrD,OAAO;QACL,QAAQ,EAAE,MAAM,CAAC,MAAM;QACvB,UAAU,EAAE,CAAC,WAAW;QACxB,MAAM,EAAE,MAAM,CAAC,MAAM;KACtB,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CACtB,IAAY,EACZ,KAA8B,EAC9B,WAAoB,EACpB,IAAY,EACZ,MAAe;IAEf,2EAA2E;IAC3E,MAAM,MAAM,GAAG,sBAAsB,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACzD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC;IAE3B,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,0BAA0B,IAAI,iCAAiC,EAAE,CAAC,CAAC;IACzG,CAAC;SAAM,CAAC;QACN,0EAA0E;QAC1E,yCAAyC;QACzC,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,iBAAiB,OAAO,gBAAgB,IAAI,mBAAmB,CAAC,GAAG,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACvI,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IACrD,CAAC;IAED,MAAM,UAAU,GAAG,aAAa,CAAC,OAAiB,CAAE,CAAC;IAErD,MAAM,QAAQ,GAA4B,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;IAC/D,IAAI,UAAU,KAAK,QAAQ,IAAI,MAAM,EAAE,CAAC;QACtC,QAAQ,CAAC,oBAAoB,GAAG,KAAK,CAAC;IACxC,CAAC;IACD,IAAI,aAAa,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;QACpE,QAAQ,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;IAC3C,CAAC;IACD,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;QACvB,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IACnC,CAAC;IAED,MAAM,UAAU,GAAG,SAAS,IAAI,KAAK,CAAC;IACtC,MAAM,gBAAgB,GAAG,KAAK,CAAC,QAAQ,CAAC;IACxC,IAAI,UAAmB,CAAC;IACxB,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACnC,UAAU,GAAG,CAAC,CAAC,gBAAgB,CAAC;IAClC,CAAC;SAAM,IAAI,UAAU,EAAE,CAAC;QACtB,UAAU,GAAG,KAAK,CAAC;IACrB,CAAC;SAAM,CAAC;QACN,UAAU,GAAG,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;AAC9C,CAAC;AAED,SAAS,sBAAsB,CAAC,IAAY,EAAE,KAA8B,EAAE,IAAY;IACxF,MAAM,MAAM,GAAqB,EAAE,CAAC;IACpC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACrC,IAAI,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,SAAS;QACX,CAAC;QACD,MAAM,MAAM,GAAG,4BAA4B,CAAC,GAAG,CAAC,GAAG,CAAC;YAClD,CAAC,CAAC,0DAA0D;YAC5D,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,CAAC,IAAI,CAAC;YACV,KAAK,EAAE,GAAG,IAAI,IAAI,GAAG,EAAE;YACvB,OAAO,EAAE,gCAAgC,GAAG,gBAAgB,IAAI,oBAAoB,CAAC,GAAG,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,EAAE;SACjI,CAAC,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,WAAW,CAAC,IAAY,EAAE,OAAe,EAAE,IAAY;IAC9D,OAAO;QACL,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,KAAK;QACjB,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,iBAAiB,OAAO,gBAAgB,IAAI,mBAAmB,CAAC,GAAG,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;KAClI,CAAC;AACJ,CAAC"}
@@ -1,24 +0,0 @@
1
- /**
2
- * Shared schema helpers used by the recursive schema DSL compiler (dsl.ts).
3
- */
4
- /** JSON Schema primitive types allowed in Acpus schema DSL shorthand. */
5
- export declare const VALID_TYPES: Set<string>;
6
- /** Alias map: common short forms → canonical JSON Schema type names. */
7
- export declare const TYPE_ALIASES: Record<string, string>;
8
- /** Normalize a type string to its canonical JSON Schema form. */
9
- export declare function normalizeType(raw: string): string | undefined;
10
- /** Parse `field?` into `{ name: "field", optional: true }`. */
11
- export declare function parseKey(rawKey: string): {
12
- name: string;
13
- optional: boolean;
14
- };
15
- /**
16
- * Parse a default value string into its JS representation.
17
- *
18
- * Handles: integers, floats, booleans, null, quoted strings, and
19
- * falls through to raw string for anything else.
20
- */
21
- export declare function parseDefaultValue(raw: string): unknown;
22
- /** Type guard for plain record objects (not null, not array). */
23
- export declare function isRecord(value: unknown): value is Record<string, unknown>;
24
- //# sourceMappingURL=helpers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/schema/helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,yEAAyE;AACzE,eAAO,MAAM,WAAW,aAOtB,CAAC;AAEH,wEAAwE;AACxE,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAK/C,CAAC;AAEF,iEAAiE;AACjE,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAG7D;AAED,+DAA+D;AAC/D,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAK5E;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAiBtD;AAED,iEAAiE;AACjE,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEzE"}
@@ -1,61 +0,0 @@
1
- /**
2
- * Shared schema helpers used by the recursive schema DSL compiler (dsl.ts).
3
- */
4
- /** JSON Schema primitive types allowed in Acpus schema DSL shorthand. */
5
- export const VALID_TYPES = new Set([
6
- "string",
7
- "integer",
8
- "number",
9
- "boolean",
10
- "array",
11
- "object",
12
- ]);
13
- /** Alias map: common short forms → canonical JSON Schema type names. */
14
- export const TYPE_ALIASES = {
15
- int: "integer",
16
- str: "string",
17
- bool: "boolean",
18
- num: "number",
19
- };
20
- /** Normalize a type string to its canonical JSON Schema form. */
21
- export function normalizeType(raw) {
22
- const lower = raw.toLowerCase();
23
- return TYPE_ALIASES[lower] ?? (VALID_TYPES.has(lower) ? lower : undefined);
24
- }
25
- /** Parse `field?` into `{ name: "field", optional: true }`. */
26
- export function parseKey(rawKey) {
27
- if (rawKey.endsWith("?")) {
28
- return { name: rawKey.slice(0, -1), optional: true };
29
- }
30
- return { name: rawKey, optional: false };
31
- }
32
- /**
33
- * Parse a default value string into its JS representation.
34
- *
35
- * Handles: integers, floats, booleans, null, quoted strings, and
36
- * falls through to raw string for anything else.
37
- */
38
- export function parseDefaultValue(raw) {
39
- if (/^-?\d+$/.test(raw)) {
40
- return parseInt(raw, 10);
41
- }
42
- if (/^-?\d+\.\d+$/.test(raw)) {
43
- return parseFloat(raw);
44
- }
45
- if (raw === "true")
46
- return true;
47
- if (raw === "false")
48
- return false;
49
- if (raw === "null")
50
- return null;
51
- if ((raw.startsWith('"') && raw.endsWith('"')) ||
52
- (raw.startsWith("'") && raw.endsWith("'"))) {
53
- return raw.slice(1, -1);
54
- }
55
- return raw;
56
- }
57
- /** Type guard for plain record objects (not null, not array). */
58
- export function isRecord(value) {
59
- return typeof value === "object" && value !== null && !Array.isArray(value);
60
- }
61
- //# sourceMappingURL=helpers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/schema/helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,yEAAyE;AACzE,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC;IACjC,QAAQ;IACR,SAAS;IACT,QAAQ;IACR,SAAS;IACT,OAAO;IACP,QAAQ;CACT,CAAC,CAAC;AAEH,wEAAwE;AACxE,MAAM,CAAC,MAAM,YAAY,GAA2B;IAClD,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,QAAQ;IACb,IAAI,EAAE,SAAS;IACf,GAAG,EAAE,QAAQ;CACd,CAAC;AAEF,iEAAiE;AACjE,MAAM,UAAU,aAAa,CAAC,GAAW;IACvC,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;IAChC,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AAC7E,CAAC;AAED,+DAA+D;AAC/D,MAAM,UAAU,QAAQ,CAAC,MAAc;IACrC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACvD,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AAC3C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAW;IAC3C,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,OAAO,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC3B,CAAC;IACD,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC7B,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IACD,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IAChC,IAAI,GAAG,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IAClC,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IAChC,IACE,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC1C,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAC1C,CAAC;QACD,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,iEAAiE;AACjE,MAAM,UAAU,QAAQ,CAAC,KAAc;IACrC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC"}
@@ -1,29 +0,0 @@
1
- /**
2
- * Schema-based structural validation for Acpus workflow specs.
3
- *
4
- * Compiles WORKFLOW_SCHEMA with Ajv and maps validation errors to
5
- * diagnostic codes used by the compiler. This handles:
6
- * - Unknown fields (additionalProperties: false)
7
- * - Type / enum / required constraints
8
- * - if/then cross-field dependencies
9
- * - oneOf step-kind dispatch
10
- *
11
- * Duration format validation and semantic checks (cross-references,
12
- * DSL compilation) remain in the hand-written compiler code.
13
- */
14
- import type { DiagnosticBag } from "./diagnostics.js";
15
- /**
16
- * Map Ajv validation errors to compiler diagnostics.
17
- *
18
- * Strategy:
19
- * - `additionalProperties` → SPEC_SHAPE / AGENT_SHAPE / STEP_SHAPE based on path
20
- * - `required` → specific code based on missingProperty
21
- * - `enum` / `const` → specific code based on allowedValues context
22
- * - Step-level oneOf failures: suppress structural oneOf/const errors that are
23
- * artifacts of branch-matching; only report STEP_KIND if no specific
24
- * property-level error can be extracted.
25
- * - Sub-oneOf errors (timeout, cmd, fanout.over) are classified individually.
26
- * - Everything else → SPEC_SHAPE as fallback
27
- */
28
- export declare function validateWithSchema(spec: unknown, diagnostics: DiagnosticBag): void;
29
- //# sourceMappingURL=schema-validator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema-validator.d.ts","sourceRoot":"","sources":["../src/schema-validator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAStD;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,aAAa,GAAG,IAAI,CAKlF"}