@rcrsr/rill 0.4.5 → 0.6.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 (246) hide show
  1. package/dist/generated/introspection-data.d.ts +2 -0
  2. package/dist/generated/introspection-data.d.ts.map +1 -0
  3. package/dist/generated/introspection-data.js +539 -0
  4. package/dist/generated/introspection-data.js.map +1 -0
  5. package/dist/generated/version-data.d.ts +18 -0
  6. package/dist/generated/version-data.d.ts.map +1 -0
  7. package/dist/generated/version-data.js +16 -0
  8. package/dist/generated/version-data.js.map +1 -0
  9. package/dist/highlight-map.d.ts +4 -0
  10. package/dist/highlight-map.d.ts.map +1 -0
  11. package/dist/highlight-map.js +71 -0
  12. package/dist/highlight-map.js.map +1 -0
  13. package/dist/index.d.ts +3 -1
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +9 -1
  16. package/dist/index.js.map +1 -1
  17. package/dist/lexer/errors.d.ts +3 -2
  18. package/dist/lexer/errors.d.ts.map +1 -1
  19. package/dist/lexer/errors.js +25 -4
  20. package/dist/lexer/errors.js.map +1 -1
  21. package/dist/lexer/operators.d.ts.map +1 -1
  22. package/dist/lexer/operators.js +2 -1
  23. package/dist/lexer/operators.js.map +1 -1
  24. package/dist/lexer/readers.d.ts.map +1 -1
  25. package/dist/lexer/readers.js +4 -4
  26. package/dist/lexer/readers.js.map +1 -1
  27. package/dist/lexer/tokenizer.d.ts.map +1 -1
  28. package/dist/lexer/tokenizer.js +1 -15
  29. package/dist/lexer/tokenizer.js.map +1 -1
  30. package/dist/parser/helpers.d.ts +8 -0
  31. package/dist/parser/helpers.d.ts.map +1 -1
  32. package/dist/parser/helpers.js +7 -5
  33. package/dist/parser/helpers.js.map +1 -1
  34. package/dist/parser/index.d.ts.map +1 -1
  35. package/dist/parser/index.js +1 -1
  36. package/dist/parser/index.js.map +1 -1
  37. package/dist/parser/parser-collect.js +1 -1
  38. package/dist/parser/parser-collect.js.map +1 -1
  39. package/dist/parser/parser-control.js +6 -4
  40. package/dist/parser/parser-control.js.map +1 -1
  41. package/dist/parser/parser-expr.d.ts.map +1 -1
  42. package/dist/parser/parser-expr.js +52 -10
  43. package/dist/parser/parser-expr.js.map +1 -1
  44. package/dist/parser/parser-extract.js +7 -3
  45. package/dist/parser/parser-extract.js.map +1 -1
  46. package/dist/parser/parser-functions.d.ts.map +1 -1
  47. package/dist/parser/parser-functions.js +8 -18
  48. package/dist/parser/parser-functions.js.map +1 -1
  49. package/dist/parser/parser-literals.js +15 -15
  50. package/dist/parser/parser-literals.js.map +1 -1
  51. package/dist/parser/parser-script.js +5 -3
  52. package/dist/parser/parser-script.js.map +1 -1
  53. package/dist/parser/parser-variables.js +10 -6
  54. package/dist/parser/parser-variables.js.map +1 -1
  55. package/dist/parser/state.d.ts +1 -1
  56. package/dist/parser/state.d.ts.map +1 -1
  57. package/dist/parser/state.js +2 -2
  58. package/dist/parser/state.js.map +1 -1
  59. package/dist/runtime/core/callable.d.ts +28 -0
  60. package/dist/runtime/core/callable.d.ts.map +1 -1
  61. package/dist/runtime/core/callable.js +30 -7
  62. package/dist/runtime/core/callable.js.map +1 -1
  63. package/dist/runtime/core/context.d.ts +21 -0
  64. package/dist/runtime/core/context.d.ts.map +1 -1
  65. package/dist/runtime/core/context.js +90 -10
  66. package/dist/runtime/core/context.js.map +1 -1
  67. package/dist/runtime/core/equals.d.ts.map +1 -1
  68. package/dist/runtime/core/equals.js +2 -1
  69. package/dist/runtime/core/equals.js.map +1 -1
  70. package/dist/runtime/core/eval/base.d.ts.map +1 -1
  71. package/dist/runtime/core/eval/base.js +3 -3
  72. package/dist/runtime/core/eval/base.js.map +1 -1
  73. package/dist/runtime/core/eval/index.d.ts.map +1 -1
  74. package/dist/runtime/core/eval/index.js +2 -0
  75. package/dist/runtime/core/eval/index.js.map +1 -1
  76. package/dist/runtime/core/eval/mixins/annotations.js +3 -3
  77. package/dist/runtime/core/eval/mixins/annotations.js.map +1 -1
  78. package/dist/runtime/core/eval/mixins/closures.d.ts.map +1 -1
  79. package/dist/runtime/core/eval/mixins/closures.js +75 -40
  80. package/dist/runtime/core/eval/mixins/closures.js.map +1 -1
  81. package/dist/runtime/core/eval/mixins/collections.js +15 -15
  82. package/dist/runtime/core/eval/mixins/collections.js.map +1 -1
  83. package/dist/runtime/core/eval/mixins/control-flow.d.ts.map +1 -1
  84. package/dist/runtime/core/eval/mixins/control-flow.js +12 -12
  85. package/dist/runtime/core/eval/mixins/control-flow.js.map +1 -1
  86. package/dist/runtime/core/eval/mixins/core.d.ts.map +1 -1
  87. package/dist/runtime/core/eval/mixins/core.js +39 -17
  88. package/dist/runtime/core/eval/mixins/core.js.map +1 -1
  89. package/dist/runtime/core/eval/mixins/expressions.d.ts +2 -0
  90. package/dist/runtime/core/eval/mixins/expressions.d.ts.map +1 -1
  91. package/dist/runtime/core/eval/mixins/expressions.js +81 -28
  92. package/dist/runtime/core/eval/mixins/expressions.js.map +1 -1
  93. package/dist/runtime/core/eval/mixins/extraction.d.ts.map +1 -1
  94. package/dist/runtime/core/eval/mixins/extraction.js +15 -15
  95. package/dist/runtime/core/eval/mixins/extraction.js.map +1 -1
  96. package/dist/runtime/core/eval/mixins/literals.d.ts +4 -1
  97. package/dist/runtime/core/eval/mixins/literals.d.ts.map +1 -1
  98. package/dist/runtime/core/eval/mixins/literals.js +45 -25
  99. package/dist/runtime/core/eval/mixins/literals.js.map +1 -1
  100. package/dist/runtime/core/eval/mixins/types.js +4 -4
  101. package/dist/runtime/core/eval/mixins/types.js.map +1 -1
  102. package/dist/runtime/core/eval/mixins/variables.js +34 -34
  103. package/dist/runtime/core/eval/mixins/variables.js.map +1 -1
  104. package/dist/runtime/core/execute.js +3 -3
  105. package/dist/runtime/core/execute.js.map +1 -1
  106. package/dist/runtime/core/introspection.d.ts +88 -0
  107. package/dist/runtime/core/introspection.d.ts.map +1 -0
  108. package/dist/runtime/core/introspection.js +166 -0
  109. package/dist/runtime/core/introspection.js.map +1 -0
  110. package/dist/runtime/core/types.d.ts +11 -0
  111. package/dist/runtime/core/types.d.ts.map +1 -1
  112. package/dist/runtime/core/types.js.map +1 -1
  113. package/dist/runtime/ext/builtins.js +22 -22
  114. package/dist/runtime/ext/builtins.js.map +1 -1
  115. package/dist/runtime/ext/extensions.d.ts +1 -1
  116. package/dist/runtime/ext/extensions.d.ts.map +1 -1
  117. package/dist/runtime/ext/extensions.js +4 -5
  118. package/dist/runtime/ext/extensions.js.map +1 -1
  119. package/dist/runtime/index.d.ts +8 -2
  120. package/dist/runtime/index.d.ts.map +1 -1
  121. package/dist/runtime/index.js +4 -1
  122. package/dist/runtime/index.js.map +1 -1
  123. package/dist/types.d.ts +141 -32
  124. package/dist/types.d.ts.map +1 -1
  125. package/dist/types.js +806 -40
  126. package/dist/types.js.map +1 -1
  127. package/package.json +7 -64
  128. package/README.md +0 -223
  129. package/dist/check/config.d.ts +0 -20
  130. package/dist/check/config.d.ts.map +0 -1
  131. package/dist/check/config.js +0 -151
  132. package/dist/check/config.js.map +0 -1
  133. package/dist/check/fixer.d.ts +0 -39
  134. package/dist/check/fixer.d.ts.map +0 -1
  135. package/dist/check/fixer.js +0 -119
  136. package/dist/check/fixer.js.map +0 -1
  137. package/dist/check/index.d.ts +0 -10
  138. package/dist/check/index.d.ts.map +0 -1
  139. package/dist/check/index.js +0 -21
  140. package/dist/check/index.js.map +0 -1
  141. package/dist/check/rules/anti-patterns.d.ts +0 -65
  142. package/dist/check/rules/anti-patterns.d.ts.map +0 -1
  143. package/dist/check/rules/anti-patterns.js +0 -481
  144. package/dist/check/rules/anti-patterns.js.map +0 -1
  145. package/dist/check/rules/closures.d.ts +0 -66
  146. package/dist/check/rules/closures.d.ts.map +0 -1
  147. package/dist/check/rules/closures.js +0 -370
  148. package/dist/check/rules/closures.js.map +0 -1
  149. package/dist/check/rules/collections.d.ts +0 -90
  150. package/dist/check/rules/collections.d.ts.map +0 -1
  151. package/dist/check/rules/collections.js +0 -373
  152. package/dist/check/rules/collections.js.map +0 -1
  153. package/dist/check/rules/conditionals.d.ts +0 -41
  154. package/dist/check/rules/conditionals.d.ts.map +0 -1
  155. package/dist/check/rules/conditionals.js +0 -134
  156. package/dist/check/rules/conditionals.js.map +0 -1
  157. package/dist/check/rules/flow.d.ts +0 -46
  158. package/dist/check/rules/flow.d.ts.map +0 -1
  159. package/dist/check/rules/flow.js +0 -206
  160. package/dist/check/rules/flow.js.map +0 -1
  161. package/dist/check/rules/formatting.d.ts +0 -133
  162. package/dist/check/rules/formatting.d.ts.map +0 -1
  163. package/dist/check/rules/formatting.js +0 -648
  164. package/dist/check/rules/formatting.js.map +0 -1
  165. package/dist/check/rules/helpers.d.ts +0 -26
  166. package/dist/check/rules/helpers.d.ts.map +0 -1
  167. package/dist/check/rules/helpers.js +0 -66
  168. package/dist/check/rules/helpers.js.map +0 -1
  169. package/dist/check/rules/index.d.ts +0 -21
  170. package/dist/check/rules/index.d.ts.map +0 -1
  171. package/dist/check/rules/index.js +0 -78
  172. package/dist/check/rules/index.js.map +0 -1
  173. package/dist/check/rules/loops.d.ts +0 -77
  174. package/dist/check/rules/loops.d.ts.map +0 -1
  175. package/dist/check/rules/loops.js +0 -310
  176. package/dist/check/rules/loops.js.map +0 -1
  177. package/dist/check/rules/naming.d.ts +0 -21
  178. package/dist/check/rules/naming.d.ts.map +0 -1
  179. package/dist/check/rules/naming.js +0 -174
  180. package/dist/check/rules/naming.js.map +0 -1
  181. package/dist/check/rules/strings.d.ts +0 -28
  182. package/dist/check/rules/strings.d.ts.map +0 -1
  183. package/dist/check/rules/strings.js +0 -79
  184. package/dist/check/rules/strings.js.map +0 -1
  185. package/dist/check/rules/types.d.ts +0 -41
  186. package/dist/check/rules/types.d.ts.map +0 -1
  187. package/dist/check/rules/types.js +0 -167
  188. package/dist/check/rules/types.js.map +0 -1
  189. package/dist/check/types.d.ts +0 -112
  190. package/dist/check/types.d.ts.map +0 -1
  191. package/dist/check/types.js +0 -6
  192. package/dist/check/types.js.map +0 -1
  193. package/dist/check/validator.d.ts +0 -18
  194. package/dist/check/validator.d.ts.map +0 -1
  195. package/dist/check/validator.js +0 -110
  196. package/dist/check/validator.js.map +0 -1
  197. package/dist/check/visitor.d.ts +0 -33
  198. package/dist/check/visitor.d.ts.map +0 -1
  199. package/dist/check/visitor.js +0 -258
  200. package/dist/check/visitor.js.map +0 -1
  201. package/dist/cli-check.d.ts +0 -43
  202. package/dist/cli-check.d.ts.map +0 -1
  203. package/dist/cli-check.js +0 -369
  204. package/dist/cli-check.js.map +0 -1
  205. package/dist/cli-eval.d.ts +0 -15
  206. package/dist/cli-eval.d.ts.map +0 -1
  207. package/dist/cli-eval.js +0 -117
  208. package/dist/cli-eval.js.map +0 -1
  209. package/dist/cli-exec.d.ts +0 -49
  210. package/dist/cli-exec.d.ts.map +0 -1
  211. package/dist/cli-exec.js +0 -184
  212. package/dist/cli-exec.js.map +0 -1
  213. package/dist/cli-module-loader.d.ts +0 -19
  214. package/dist/cli-module-loader.d.ts.map +0 -1
  215. package/dist/cli-module-loader.js +0 -83
  216. package/dist/cli-module-loader.js.map +0 -1
  217. package/dist/cli-shared.d.ts +0 -42
  218. package/dist/cli-shared.d.ts.map +0 -1
  219. package/dist/cli-shared.js +0 -112
  220. package/dist/cli-shared.js.map +0 -1
  221. package/dist/cli.d.ts +0 -13
  222. package/dist/cli.d.ts.map +0 -1
  223. package/dist/cli.js +0 -62
  224. package/dist/cli.js.map +0 -1
  225. package/docs/00_INDEX.md +0 -67
  226. package/docs/01_guide.md +0 -390
  227. package/docs/02_types.md +0 -482
  228. package/docs/03_variables.md +0 -324
  229. package/docs/04_operators.md +0 -608
  230. package/docs/05_control-flow.md +0 -630
  231. package/docs/06_closures.md +0 -787
  232. package/docs/07_collections.md +0 -688
  233. package/docs/08_iterators.md +0 -330
  234. package/docs/09_strings.md +0 -205
  235. package/docs/10_parsing.md +0 -366
  236. package/docs/11_reference.md +0 -599
  237. package/docs/12_examples.md +0 -748
  238. package/docs/13_modules.md +0 -519
  239. package/docs/14_host-integration.md +0 -833
  240. package/docs/15_grammar.ebnf +0 -755
  241. package/docs/16_conventions.md +0 -695
  242. package/docs/17_cli-tools.md +0 -184
  243. package/docs/18_design-principles.md +0 -247
  244. package/docs/19_cookbook.md +0 -628
  245. package/docs/99_llm-reference.txt +0 -601
  246. package/docs/assets/logo.png +0 -0
@@ -30,7 +30,7 @@
30
30
  *
31
31
  * @internal
32
32
  */
33
- import { RuntimeError, RILL_ERROR_CODES } from '../../../../types.js';
33
+ import { RuntimeError } from '../../../../types.js';
34
34
  import { inferType } from '../../values.js';
35
35
  import { getVariable, hasVariable } from '../../context.js';
36
36
  import { isDict, isCallable } from '../../callable.js';
@@ -64,7 +64,7 @@ function createVariablesMixin(Base) {
64
64
  const valueType = inferType(value);
65
65
  // Check explicit type annotation matches value
66
66
  if (explicitType !== undefined && explicitType !== valueType) {
67
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Type mismatch: cannot assign ${valueType} to $${name}:${explicitType}`, location, {
67
+ throw new RuntimeError('RILL-R001', `RILL-R001: Type mismatch: cannot assign ${valueType} to $${name}:${explicitType}`, location, {
68
68
  variableName: name,
69
69
  expectedType: explicitType,
70
70
  actualType: valueType,
@@ -75,12 +75,12 @@ function createVariablesMixin(Base) {
75
75
  if (!this.ctx.variables.has(name) &&
76
76
  this.ctx.parent &&
77
77
  hasVariable(this.ctx.parent, name)) {
78
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Cannot reassign outer variable $${name} from child scope`, location, { variableName: name });
78
+ throw new RuntimeError('RILL-R001', `RILL-R001: Cannot reassign outer variable $${name} from child scope`, location, { variableName: name });
79
79
  }
80
80
  // Check if variable already has a locked type in current scope
81
81
  const lockedType = this.ctx.variableTypes.get(name);
82
82
  if (lockedType !== undefined && lockedType !== valueType) {
83
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Type mismatch: cannot assign ${valueType} to $${name} (locked as ${lockedType})`, location, {
83
+ throw new RuntimeError('RILL-R001', `RILL-R001: Type mismatch: cannot assign ${valueType} to $${name} (locked as ${lockedType})`, location, {
84
84
  variableName: name,
85
85
  expectedType: lockedType,
86
86
  actualType: valueType,
@@ -106,7 +106,7 @@ function createVariablesMixin(Base) {
106
106
  // Handle pipe variable ($)
107
107
  if (node.isPipeVar && !node.name) {
108
108
  if (this.ctx.pipeValue === null) {
109
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_UNDEFINED_VARIABLE, 'Undefined variable: $', this.getNodeLocation(node), { variable: '$' });
109
+ throw new RuntimeError('RILL-R005', 'RILL-R005: Undefined variable: $', this.getNodeLocation(node), { variable: '$' });
110
110
  }
111
111
  return this.ctx.pipeValue;
112
112
  }
@@ -114,12 +114,12 @@ function createVariablesMixin(Base) {
114
114
  if (node.name) {
115
115
  const result = getVariable(this.ctx, node.name);
116
116
  if (result === undefined) {
117
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_UNDEFINED_VARIABLE, `Undefined variable: $${node.name}`, this.getNodeLocation(node), { variable: node.name });
117
+ throw new RuntimeError('RILL-R005', `RILL-R005: Undefined variable: $${node.name}`, this.getNodeLocation(node), { variable: node.name });
118
118
  }
119
119
  return result;
120
120
  }
121
121
  // Should not reach here - all variable nodes have either isPipeVar or name
122
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_UNDEFINED_VARIABLE, 'Invalid variable node', this.getNodeLocation(node));
122
+ throw new RuntimeError('RILL-R005', 'RILL-R005: Invalid variable node', this.getNodeLocation(node));
123
123
  }
124
124
  /**
125
125
  * Evaluate variable access asynchronously.
@@ -133,7 +133,7 @@ function createVariablesMixin(Base) {
133
133
  if (node.isPipeVar && !node.name) {
134
134
  // Pipe variable ($)
135
135
  if (this.ctx.pipeValue === null) {
136
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_UNDEFINED_VARIABLE, 'Undefined variable: $', this.getNodeLocation(node), { variable: '$' });
136
+ throw new RuntimeError('RILL-R005', 'RILL-R005: Undefined variable: $', this.getNodeLocation(node), { variable: '$' });
137
137
  }
138
138
  value = this.ctx.pipeValue;
139
139
  }
@@ -141,12 +141,12 @@ function createVariablesMixin(Base) {
141
141
  // Named variable ($name)
142
142
  const result = getVariable(this.ctx, node.name);
143
143
  if (result === undefined) {
144
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_UNDEFINED_VARIABLE, `Undefined variable: $${node.name}`, this.getNodeLocation(node), { variable: node.name });
144
+ throw new RuntimeError('RILL-R005', `RILL-R005: Undefined variable: $${node.name}`, this.getNodeLocation(node), { variable: node.name });
145
145
  }
146
146
  value = result;
147
147
  }
148
148
  else {
149
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_UNDEFINED_VARIABLE, 'Invalid variable node', this.getNodeLocation(node));
149
+ throw new RuntimeError('RILL-R005', 'RILL-R005: Invalid variable node', this.getNodeLocation(node));
150
150
  }
151
151
  // Apply access chain ($.field, $var.field, etc.)
152
152
  for (const access of node.accessChain) {
@@ -156,7 +156,7 @@ function createVariablesMixin(Base) {
156
156
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
157
157
  return this.evaluateBody(node.defaultValue);
158
158
  }
159
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Cannot access property on null`, this.getNodeLocation(node));
159
+ throw new RuntimeError('RILL-R009', `Cannot access property on null`, this.getNodeLocation(node));
160
160
  }
161
161
  // Check if this is a bracket access
162
162
  if ('accessKind' in access) {
@@ -165,7 +165,7 @@ function createVariablesMixin(Base) {
165
165
  const indexValue = await this.evaluatePipeChain(access.expression);
166
166
  if (Array.isArray(value)) {
167
167
  if (typeof indexValue !== 'number') {
168
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `List index must be number, got ${inferType(indexValue)}`, this.getNodeLocation(node));
168
+ throw new RuntimeError('RILL-R002', `List index must be number, got ${inferType(indexValue)}`, this.getNodeLocation(node));
169
169
  }
170
170
  let index = indexValue;
171
171
  // Handle negative indices
@@ -174,22 +174,22 @@ function createVariablesMixin(Base) {
174
174
  }
175
175
  const result = value[index];
176
176
  if (result === undefined) {
177
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `List index out of bounds: ${indexValue}`, this.getNodeLocation(node));
177
+ throw new RuntimeError('RILL-R009', `List index out of bounds: ${indexValue}`, this.getNodeLocation(node));
178
178
  }
179
179
  value = result;
180
180
  }
181
181
  else if (isDict(value)) {
182
182
  if (typeof indexValue !== 'string') {
183
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Dict key must be string, got ${inferType(indexValue)}`, this.getNodeLocation(node));
183
+ throw new RuntimeError('RILL-R002', `Dict key must be string, got ${inferType(indexValue)}`, this.getNodeLocation(node));
184
184
  }
185
185
  const result = value[indexValue];
186
186
  if (result === undefined) {
187
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Undefined dict key: ${indexValue}`, this.getNodeLocation(node));
187
+ throw new RuntimeError('RILL-R009', `Undefined dict key: ${indexValue}`, this.getNodeLocation(node));
188
188
  }
189
189
  value = result;
190
190
  }
191
191
  else {
192
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Cannot index ${inferType(value)}`, this.getNodeLocation(node));
192
+ throw new RuntimeError('RILL-R002', `Cannot index ${inferType(value)}`, this.getNodeLocation(node));
193
193
  }
194
194
  continue;
195
195
  }
@@ -208,7 +208,7 @@ function createVariablesMixin(Base) {
208
208
  value = null;
209
209
  }
210
210
  else {
211
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Cannot access .params on ${inferType(value)}`, this.getNodeLocation(node), { actualType: inferType(value) });
211
+ throw new RuntimeError('RILL-R003', `Cannot access .params on ${inferType(value)}`, this.getNodeLocation(node), { actualType: inferType(value) });
212
212
  }
213
213
  }
214
214
  }
@@ -240,7 +240,7 @@ function createVariablesMixin(Base) {
240
240
  }
241
241
  catch (e) {
242
242
  if (e instanceof RuntimeError &&
243
- e.code === RILL_ERROR_CODES.RUNTIME_UNDEFINED_ANNOTATION &&
243
+ e.errorId === 'RILL-R008' &&
244
244
  node.defaultValue !== null) {
245
245
  // Convert missing annotation to null for ?? coalescing
246
246
  value = null;
@@ -253,7 +253,7 @@ function createVariablesMixin(Base) {
253
253
  }
254
254
  else {
255
255
  // Other field access types (block)
256
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Field access kind '${access.kind}' not yet supported`, this.getNodeLocation(node));
256
+ throw new RuntimeError('RILL-R002', `Field access kind '${access.kind}' not yet supported`, this.getNodeLocation(node));
257
257
  }
258
258
  }
259
259
  // Handle existence check (.?field): return boolean instead of value
@@ -287,13 +287,13 @@ function createVariablesMixin(Base) {
287
287
  // EC-9: Variable undefined
288
288
  if (keyValue === undefined) {
289
289
  const varName = finalAccess.variableName ?? '$';
290
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_UNDEFINED_VARIABLE, `Variable '${varName}' is undefined`, this.getNodeLocation(node));
290
+ throw new RuntimeError('RILL-R005', `RILL-R005: Variable '${varName}' is undefined`, this.getNodeLocation(node));
291
291
  }
292
292
  // Check if key exists in dict or list
293
293
  if (isDict(value)) {
294
294
  // EC-10: Key variable non-string
295
295
  if (typeof keyValue !== 'string') {
296
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Existence check key must be string, got ${inferType(keyValue)}`, this.getNodeLocation(node));
296
+ throw new RuntimeError('RILL-R002', `Existence check key must be string, got ${inferType(keyValue)}`, this.getNodeLocation(node));
297
297
  }
298
298
  const fieldValue = value[keyValue];
299
299
  const exists = fieldValue !== undefined && fieldValue !== null;
@@ -318,7 +318,7 @@ function createVariablesMixin(Base) {
318
318
  const keyValue = await this.evaluatePipeChain(finalAccess.expression);
319
319
  // EC-11: Computed key non-string
320
320
  if (typeof keyValue !== 'string') {
321
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Existence check key evaluated to ${inferType(keyValue)}, expected string`, this.getNodeLocation(node));
321
+ throw new RuntimeError('RILL-R002', `Existence check key evaluated to ${inferType(keyValue)}, expected string`, this.getNodeLocation(node));
322
322
  }
323
323
  // Check if computed key exists in dict
324
324
  if (isDict(value)) {
@@ -333,7 +333,7 @@ function createVariablesMixin(Base) {
333
333
  return false;
334
334
  }
335
335
  // For other access kinds (block, alternatives, annotation), not supported
336
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Existence check not yet supported for ${finalAccess.kind} access`, this.getNodeLocation(node));
336
+ throw new RuntimeError('RILL-R002', `Existence check not yet supported for ${finalAccess.kind} access`, this.getNodeLocation(node));
337
337
  }
338
338
  // Apply default value if final result is null
339
339
  if (value === null && node.defaultValue) {
@@ -359,22 +359,22 @@ function createVariablesMixin(Base) {
359
359
  // .$ (pipe variable as key)
360
360
  keyValue = this.ctx.pipeValue ?? undefined;
361
361
  if (keyValue === undefined) {
362
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_UNDEFINED_VARIABLE, `Pipe variable '$' is undefined`, this.getNodeLocation(node));
362
+ throw new RuntimeError('RILL-R005', `RILL-R005: Pipe variable '$' is undefined`, this.getNodeLocation(node));
363
363
  }
364
364
  }
365
365
  else {
366
366
  // .$variable (named variable as key)
367
367
  keyValue = getVariable(this.ctx, access.variableName);
368
368
  if (keyValue === undefined) {
369
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_UNDEFINED_VARIABLE, `Variable '${access.variableName}' is undefined`, this.getNodeLocation(node));
369
+ throw new RuntimeError('RILL-R005', `RILL-R005: Variable '${access.variableName}' is undefined`, this.getNodeLocation(node));
370
370
  }
371
371
  }
372
372
  // Validate key type (EC-2, EC-3)
373
373
  if (typeof keyValue === 'boolean') {
374
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Key must be string or number, got bool`, this.getNodeLocation(node));
374
+ throw new RuntimeError('RILL-R002', `Key must be string or number, got bool`, this.getNodeLocation(node));
375
375
  }
376
376
  if (Array.isArray(keyValue)) {
377
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Key must be string or number, got list`, this.getNodeLocation(node));
377
+ throw new RuntimeError('RILL-R002', `Key must be string or number, got list`, this.getNodeLocation(node));
378
378
  }
379
379
  // Handle string key (dict access)
380
380
  if (typeof keyValue === 'string') {
@@ -399,7 +399,7 @@ function createVariablesMixin(Base) {
399
399
  return null;
400
400
  }
401
401
  // Other types (dict, closure) - fall through to type error
402
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Key must be string or number, got ${inferType(keyValue)}`, this.getNodeLocation(node));
402
+ throw new RuntimeError('RILL-R002', `Key must be string or number, got ${inferType(keyValue)}`, this.getNodeLocation(node));
403
403
  }
404
404
  /**
405
405
  * Evaluate field access using a computed expression as the key.
@@ -417,18 +417,18 @@ function createVariablesMixin(Base) {
417
417
  const keyValue = await this.evaluatePipeChain(access.expression);
418
418
  // EC-4: Expression result is closure
419
419
  if (isCallable(keyValue)) {
420
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Computed key evaluated to closure, expected string or number`, this.getNodeLocation(node));
420
+ throw new RuntimeError('RILL-R002', `Computed key evaluated to closure, expected string or number`, this.getNodeLocation(node));
421
421
  }
422
422
  // EC-5: Expression result is dict
423
423
  if (isDict(keyValue)) {
424
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Computed key evaluated to dict, expected string or number`, this.getNodeLocation(node));
424
+ throw new RuntimeError('RILL-R002', `Computed key evaluated to dict, expected string or number`, this.getNodeLocation(node));
425
425
  }
426
426
  // Other invalid types (boolean, list)
427
427
  if (typeof keyValue === 'boolean') {
428
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Computed key evaluated to bool, expected string or number`, this.getNodeLocation(node));
428
+ throw new RuntimeError('RILL-R002', `Computed key evaluated to bool, expected string or number`, this.getNodeLocation(node));
429
429
  }
430
430
  if (Array.isArray(keyValue)) {
431
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Computed key evaluated to list, expected string or number`, this.getNodeLocation(node));
431
+ throw new RuntimeError('RILL-R002', `Computed key evaluated to list, expected string or number`, this.getNodeLocation(node));
432
432
  }
433
433
  // Handle string key (dict access)
434
434
  if (typeof keyValue === 'string') {
@@ -453,7 +453,7 @@ function createVariablesMixin(Base) {
453
453
  return null;
454
454
  }
455
455
  // Shouldn't reach here due to exhaustive type checks above
456
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Computed key evaluated to unexpected type`, this.getNodeLocation(node));
456
+ throw new RuntimeError('RILL-R002', `Computed key evaluated to unexpected type`, this.getNodeLocation(node));
457
457
  }
458
458
  /**
459
459
  * Evaluate field access using alternatives (try keys left-to-right).
@@ -468,7 +468,7 @@ function createVariablesMixin(Base) {
468
468
  async evaluateFieldAccessAlternatives(access, value, node) {
469
469
  // EC-6: Target must be dict
470
470
  if (!isDict(value)) {
471
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_TYPE_ERROR, `Alternative access requires dict, got ${inferType(value)}`, this.getNodeLocation(node));
471
+ throw new RuntimeError('RILL-R002', `Alternative access requires dict, got ${inferType(value)}`, this.getNodeLocation(node));
472
472
  }
473
473
  // Try each alternative left-to-right (short-circuit on first match)
474
474
  for (const key of access.alternatives) {
@@ -1 +1 @@
1
- {"version":3,"file":"variables.js","sourceRoot":"","sources":["../../../../../src/runtime/core/eval/mixins/variables.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"variables.js","sourceRoot":"","sources":["../../../../../src/runtime/core/eval/mixins/variables.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AASH,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAIvD;;;;;;;;;;;;;;;;GAgBG;AACH,SAAS,oBAAoB,CAAC,IAAyC;IACrE,OAAO,MAAM,kBAAmB,SAAQ,IAAI;QAC1C;;;;;;WAMG;QACO,WAAW,CACnB,IAAY,EACZ,KAAgB,EAChB,YAA2B,EAC3B,QAAyB;YAEzB,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;YAEnC,+CAA+C;YAC/C,IAAI,YAAY,KAAK,SAAS,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC7D,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,2CAA2C,SAAS,QAAQ,IAAI,IAAI,YAAY,EAAE,EAClF,QAAQ,EACR;oBACE,YAAY,EAAE,IAAI;oBAClB,YAAY,EAAE,YAAY;oBAC1B,UAAU,EAAE,SAAS;iBACtB,CACF,CAAC;YACJ,CAAC;YAED,8EAA8E;YAC9E,mEAAmE;YACnE,IACE,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC;gBAC7B,IAAI,CAAC,GAAG,CAAC,MAAM;gBACf,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,EAClC,CAAC;gBACD,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,8CAA8C,IAAI,mBAAmB,EACrE,QAAQ,EACR,EAAE,YAAY,EAAE,IAAI,EAAE,CACvB,CAAC;YACJ,CAAC;YAED,+DAA+D;YAC/D,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACpD,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBACzD,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,2CAA2C,SAAS,QAAQ,IAAI,eAAe,UAAU,GAAG,EAC5F,QAAQ,EACR;oBACE,YAAY,EAAE,IAAI;oBAClB,YAAY,EAAE,UAAU;oBACxB,UAAU,EAAE,SAAS;iBACtB,CACF,CAAC;YACJ,CAAC;YAED,sDAAsD;YACtD,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACpC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtC,6EAA6E;gBAC7E,sEAAsE;gBACtE,2DAA2D;gBAC3D,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,IAAI,SAAS,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;QAED;;;;;;WAMG;QACO,gBAAgB,CAAC,IAAkB;YAC3C,2BAA2B;YAC3B,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACjC,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;oBAChC,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,kCAAkC,EAClC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAC1B,EAAE,QAAQ,EAAE,GAAG,EAAE,CAClB,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;YAC5B,CAAC;YAED,gCAAgC;YAChC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBAChD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACzB,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,mCAAmC,IAAI,CAAC,IAAI,EAAE,EAC9C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAC1B,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,CACxB,CAAC;gBACJ,CAAC;gBACD,OAAO,MAAM,CAAC;YAChB,CAAC;YAED,2EAA2E;YAC3E,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,kCAAkC,EAClC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;QACJ,CAAC;QAED;;;;;WAKG;QACO,KAAK,CAAC,qBAAqB,CACnC,IAAkB;YAElB,8BAA8B;YAC9B,IAAI,KAAgB,CAAC;YAErB,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACjC,oBAAoB;gBACpB,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;oBAChC,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,kCAAkC,EAClC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAC1B,EAAE,QAAQ,EAAE,GAAG,EAAE,CAClB,CAAC;gBACJ,CAAC;gBACD,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;YAC7B,CAAC;iBAAM,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACrB,yBAAyB;gBACzB,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBAChD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACzB,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,mCAAmC,IAAI,CAAC,IAAI,EAAE,EAC9C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAC1B,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,CACxB,CAAC;gBACJ,CAAC;gBACD,KAAK,GAAG,MAAM,CAAC;YACjB,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,kCAAkC,EAClC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;YACJ,CAAC;YAED,iDAAiD;YACjD,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACtC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;oBACnB,iCAAiC;oBACjC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;wBACtB,8DAA8D;wBAC9D,OAAQ,IAAY,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBACvD,CAAC;oBACD,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,gCAAgC,EAChC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;gBACJ,CAAC;gBAED,oCAAoC;gBACpC,IAAI,YAAY,IAAI,MAAM,EAAE,CAAC;oBAC3B,yBAAyB;oBACzB,8DAA8D;oBAC9D,MAAM,UAAU,GAAG,MAAO,IAAY,CAAC,iBAAiB,CACtD,MAAM,CAAC,UAAU,CAClB,CAAC;oBAEF,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;wBACzB,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;4BACnC,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,kCAAkC,SAAS,CAAC,UAAU,CAAC,EAAE,EACzD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;wBACJ,CAAC;wBACD,IAAI,KAAK,GAAG,UAAU,CAAC;wBACvB,0BAA0B;wBAC1B,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;4BACd,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;wBAC/B,CAAC;wBACD,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;wBAC5B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;4BACzB,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,6BAA6B,UAAU,EAAE,EACzC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;wBACJ,CAAC;wBACD,KAAK,GAAG,MAAM,CAAC;oBACjB,CAAC;yBAAM,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;wBACzB,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;4BACnC,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,gCAAgC,SAAS,CAAC,UAAU,CAAC,EAAE,EACvD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;wBACJ,CAAC;wBACD,MAAM,MAAM,GAAI,KAAmC,CAAC,UAAU,CAAC,CAAC;wBAChE,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;4BACzB,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,uBAAuB,UAAU,EAAE,EACnC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;wBACJ,CAAC;wBACD,KAAK,GAAG,MAAM,CAAC;oBACjB,CAAC;yBAAM,CAAC;wBACN,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,gBAAgB,SAAS,CAAC,KAAK,CAAC,EAAE,EAClC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;oBACJ,CAAC;oBACD,SAAS;gBACX,CAAC;gBAED,wBAAwB;gBACxB,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;oBAC9B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;oBAC3B,sCAAsC;oBACtC,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;wBACvB,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;4BACtB,8DAA8D;4BAC9D,KAAK,GAAG,MAAO,IAAY,CAAC,sBAAsB,CAChD,KAAK,EACL,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;wBACJ,CAAC;6BAAM,CAAC;4BACN,uEAAuE;4BACvE,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;gCAC/B,KAAK,GAAG,IAAI,CAAC;4BACf,CAAC;iCAAM,CAAC;gCACN,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,4BAA4B,SAAS,CAAC,KAAK,CAAC,EAAE,EAC9C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAC1B,EAAE,UAAU,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,CACjC,CAAC;4BACJ,CAAC;wBACH,CAAC;oBACH,CAAC;yBAAM,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;wBACzB,qEAAqE;wBACrE,MAAM,YAAY,GAChB,IAAI,CAAC,YAAY,KAAK,IAAI,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,CAAC;wBAC7D,KAAK,GAAG,MAAM,IAAI,CAAC,eAAe,CAChC,KAAK,EACL,KAAK,EACL,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAC1B,YAAY,CACb,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,KAAK,GAAG,IAAI,CAAC;oBACf,CAAC;gBACH,CAAC;qBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;oBACtC,KAAK,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;gBACtE,CAAC;qBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;oBACtC,KAAK,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;gBACtE,CAAC;qBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;oBAC1C,KAAK,GAAG,MAAM,IAAI,CAAC,+BAA+B,CAChD,MAAM,EACN,KAAK,EACL,IAAI,CACL,CAAC;gBACJ,CAAC;qBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;oBACxC,+BAA+B;oBAC/B,2DAA2D;oBAC3D,+FAA+F;oBAC/F,IAAI,CAAC;wBACH,8DAA8D;wBAC9D,KAAK,GAAG,MAAO,IAAY,CAAC,wBAAwB,CAClD,KAAK,EACL,MAAM,CAAC,GAAG,EACV,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;oBACJ,CAAC;oBAAC,OAAO,CAAC,EAAE,CAAC;wBACX,IACE,CAAC,YAAY,YAAY;4BACzB,CAAC,CAAC,OAAO,KAAK,WAAW;4BACzB,IAAI,CAAC,YAAY,KAAK,IAAI,EAC1B,CAAC;4BACD,uDAAuD;4BACvD,KAAK,GAAG,IAAI,CAAC;wBACf,CAAC;6BAAM,CAAC;4BACN,0DAA0D;4BAC1D,MAAM,CAAC,CAAC;wBACV,CAAC;oBACH,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,mCAAmC;oBACnC,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,sBAAsB,MAAM,CAAC,IAAI,qBAAqB,EACtD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,oEAAoE;YACpE,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACxB,8EAA8E;gBAC9E,2CAA2C;gBAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC;gBACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC;gBAE9C,IAAI,WAAW,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;oBACnC,wCAAwC;oBACxC,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;wBAClB,MAAM,UAAU,GAAI,KAAmC,CACrD,WAAW,CAAC,KAAK,CAClB,CAAC;wBACF,MAAM,MAAM,GAAG,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,IAAI,CAAC;wBAE/D,+CAA+C;wBAC/C,IAAI,MAAM,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;4BAChC,OAAO,SAAS,CAAC,UAAU,CAAC,KAAK,QAAQ,CAAC;wBAC5C,CAAC;wBAED,OAAO,MAAM,CAAC;oBAChB,CAAC;oBACD,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,IAAI,WAAW,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;oBACpC,qCAAqC;oBACrC,IAAI,QAA+B,CAAC;oBACpC,IAAI,WAAW,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;wBACtC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,SAAS,CAAC;oBAC7C,CAAC;yBAAM,CAAC;wBACN,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,YAAY,CAAC,CAAC;oBAC7D,CAAC;oBAED,2BAA2B;oBAC3B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;wBAC3B,MAAM,OAAO,GAAG,WAAW,CAAC,YAAY,IAAI,GAAG,CAAC;wBAChD,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,wBAAwB,OAAO,gBAAgB,EAC/C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;oBACJ,CAAC;oBAED,sCAAsC;oBACtC,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;wBAClB,iCAAiC;wBACjC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;4BACjC,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,2CAA2C,SAAS,CAAC,QAAQ,CAAC,EAAE,EAChE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;wBACJ,CAAC;wBAED,MAAM,UAAU,GAAI,KAAmC,CAAC,QAAQ,CAAC,CAAC;wBAClE,MAAM,MAAM,GAAG,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,IAAI,CAAC;wBAE/D,+CAA+C;wBAC/C,IAAI,MAAM,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;4BAChC,OAAO,SAAS,CAAC,UAAU,CAAC,KAAK,QAAQ,CAAC;wBAC5C,CAAC;wBAED,OAAO,MAAM,CAAC;oBAChB,CAAC;oBAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;wBACzB,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;4BACjC,MAAM,KAAK,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;4BAChE,OAAO,KAAK,IAAI,CAAC,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;wBAC5C,CAAC;wBACD,OAAO,KAAK,CAAC;oBACf,CAAC;oBAED,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,IAAI,WAAW,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;oBACpC,2CAA2C;oBAC3C,8DAA8D;oBAC9D,MAAM,QAAQ,GAAG,MAAO,IAAY,CAAC,iBAAiB,CACpD,WAAW,CAAC,UAAU,CACvB,CAAC;oBAEF,iCAAiC;oBACjC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;wBACjC,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,oCAAoC,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAC1E,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;oBACJ,CAAC;oBAED,uCAAuC;oBACvC,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;wBAClB,MAAM,UAAU,GAAI,KAAmC,CAAC,QAAQ,CAAC,CAAC;wBAClE,MAAM,MAAM,GAAG,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,IAAI,CAAC;wBAE/D,+CAA+C;wBAC/C,IAAI,MAAM,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;4BAChC,OAAO,SAAS,CAAC,UAAU,CAAC,KAAK,QAAQ,CAAC;wBAC5C,CAAC;wBAED,OAAO,MAAM,CAAC;oBAChB,CAAC;oBAED,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,0EAA0E;gBAC1E,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,yCAAyC,WAAW,CAAC,IAAI,SAAS,EAClE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;YACJ,CAAC;YAED,8CAA8C;YAC9C,IAAI,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACxC,8DAA8D;gBAC9D,OAAQ,IAAY,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACvD,CAAC;YAED,OAAO,KAAK,CAAC;QACf,CAAC;QAED;;;;;;;;;WASG;QACO,KAAK,CAAC,2BAA2B,CACzC,MAGC,EACD,KAAgB,EAChB,IAAkB;YAElB,8BAA8B;YAC9B,IAAI,QAA+B,CAAC;YACpC,IAAI,MAAM,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;gBACjC,4BAA4B;gBAC5B,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,SAAS,CAAC;gBAC3C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC3B,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,2CAA2C,EAC3C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;gBACJ,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,qCAAqC;gBACrC,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;gBACtD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC3B,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,wBAAwB,MAAM,CAAC,YAAY,gBAAgB,EAC3D,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,iCAAiC;YACjC,IAAI,OAAO,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAClC,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,wCAAwC,EACxC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;YACJ,CAAC;YACD,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5B,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,wCAAwC,EACxC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;YACJ,CAAC;YAED,kCAAkC;YAClC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACjC,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;oBAClB,sCAAsC;oBACtC,OAAO,MAAM,IAAI,CAAC,eAAe,CAC/B,KAAK,EACL,QAAQ,EACR,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAC1B,IAAI,CACL,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,kCAAkC;YAClC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACjC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;oBACzB,IAAI,KAAK,GAAG,QAAQ,CAAC;oBACrB,0BAA0B;oBAC1B,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;wBACd,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;oBAC/B,CAAC;oBACD,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;oBAC5B,2DAA2D;oBAC3D,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC9C,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,2DAA2D;YAC3D,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,qCAAqC,SAAS,CAAC,QAAQ,CAAC,EAAE,EAC1D,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;QACJ,CAAC;QAED;;;;;;;;;WASG;QACO,KAAK,CAAC,2BAA2B,CACzC,MAGC,EACD,KAAgB,EAChB,IAAkB;YAElB,yCAAyC;YACzC,8DAA8D;YAC9D,MAAM,QAAQ,GAAG,MAAO,IAAY,CAAC,iBAAiB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAE1E,qCAAqC;YACrC,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACzB,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,8DAA8D,EAC9D,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;YACJ,CAAC;YAED,kCAAkC;YAClC,IAAI,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACrB,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,2DAA2D,EAC3D,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;YACJ,CAAC;YAED,sCAAsC;YACtC,IAAI,OAAO,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAClC,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,2DAA2D,EAC3D,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;YACJ,CAAC;YACD,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5B,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,2DAA2D,EAC3D,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;YACJ,CAAC;YAED,kCAAkC;YAClC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACjC,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;oBAClB,sCAAsC;oBACtC,OAAO,MAAM,IAAI,CAAC,eAAe,CAC/B,KAAK,EACL,QAAQ,EACR,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAC1B,IAAI,CACL,CAAC;gBACJ,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,kCAAkC;YAClC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACjC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;oBACzB,IAAI,KAAK,GAAG,QAAQ,CAAC;oBACrB,0BAA0B;oBAC1B,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;wBACd,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC;oBAC/B,CAAC;oBACD,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;oBAC5B,2DAA2D;oBAC3D,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC9C,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,2DAA2D;YAC3D,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,2CAA2C,EAC3C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;QACJ,CAAC;QAED;;;;;;;;;WASG;QACO,KAAK,CAAC,+BAA+B,CAC7C,MAGC,EACD,KAAgB,EAChB,IAAkB;YAElB,4BAA4B;YAC5B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnB,MAAM,IAAI,YAAY,CACpB,WAAW,EACX,yCAAyC,SAAS,CAAC,KAAK,CAAC,EAAE,EAC3D,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;YACJ,CAAC;YAED,oEAAoE;YACpE,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;gBACtC,MAAM,SAAS,GAAI,KAAmC,CAAC,GAAG,CAAC,CAAC;gBAC5D,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;oBAClD,qDAAqD;oBACrD,IAAI,UAAU,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;wBAClD,oEAAoE;wBACpE,qEAAqE;wBACrE,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;wBACxD,8DAA8D;wBAC9D,OAAO,MAAO,IAAY,CAAC,cAAc,CACvC,SAAS,EACT,IAAI,EACJ,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B,CAAC;oBACJ,CAAC;oBACD,OAAO,SAAS,CAAC;gBACnB,CAAC;YACH,CAAC;YAED,gCAAgC;YAChC,OAAO,IAAI,CAAC;QACd,CAAC;QAED;;;;WAIG;QACO,eAAe,CAAC,IAAiB,EAAE,KAAgB;YAC3D,IAAI,CAAC,WAAW,CACd,IAAI,CAAC,IAAI,EACT,KAAK,EACL,IAAI,CAAC,QAAQ,IAAI,SAAS,EAC1B,IAAI,CAAC,IAAI,CAAC,KAAK,CAChB,CAAC;YACF,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;YACtE,OAAO,KAAK,CAAC;QACf,CAAC;QAED;;;;WAIG;QACgB,aAAa,CAC9B,OAA2B,EAC3B,KAAgB;YAEhB,IAAI,CAAC,OAAO;gBAAE,OAAO,SAAS,CAAC;YAE/B,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACrC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;QACvC,CAAC;KACF,CAAC;AACJ,CAAC;AAED,8DAA8D;AAC9D,gGAAgG;AAChG,8DAA8D;AAC9D,MAAM,CAAC,MAAM,cAAc,GAAG,oBAA2B,CAAC"}
@@ -4,7 +4,7 @@
4
4
  * Public API for executing Rill scripts.
5
5
  * Provides both full execution and step-by-step execution.
6
6
  */
7
- import { RuntimeError, RILL_ERROR_CODES } from '../../types.js';
7
+ import { RuntimeError } from '../../types.js';
8
8
  import { executeStatement, checkAutoExceptions, checkAborted, } from './eval/index.js';
9
9
  import { ReturnSignal } from './signals.js';
10
10
  /**
@@ -82,7 +82,7 @@ export function createStepper(script, context) {
82
82
  try {
83
83
  // Check for RecoveryErrorNode from recovery mode parsing
84
84
  if (isRecoveryErrorNode(stmt)) {
85
- throw RuntimeError.fromNode(RILL_ERROR_CODES.PARSE_INVALID_SYNTAX, `Cannot execute RecoveryErrorNode: ${stmt.message}. Use parse() instead of parseWithRecovery() for execution.`, stmt);
85
+ throw RuntimeError.fromNode('RILL-P002', `Cannot execute RecoveryErrorNode: ${stmt.message}. Use parse() instead of parseWithRecovery() for execution.`, stmt);
86
86
  }
87
87
  // Execute the statement (handles both regular and annotated)
88
88
  const value = await executeStatement(stmt, context);
@@ -146,7 +146,7 @@ export function createStepper(script, context) {
146
146
  // Empty script implicitly evaluates to $
147
147
  if (total === 0) {
148
148
  if (context.pipeValue === null) {
149
- throw new RuntimeError(RILL_ERROR_CODES.RUNTIME_UNDEFINED_VARIABLE, 'Undefined variable: $', undefined, { variable: '$' });
149
+ throw new RuntimeError('RILL-R005', 'Undefined variable: $', undefined, { variable: '$' });
150
150
  }
151
151
  return {
152
152
  value: context.pipeValue,
@@ -1 +1 @@
1
- {"version":3,"file":"execute.js","sourceRoot":"","sources":["../../../src/runtime/core/execute.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,GACb,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAS5C;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,MAAkB,EAClB,OAAuB;IAEvB,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/C,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IACD,OAAO,OAAO,CAAC,SAAS,EAAE,CAAC;AAC7B,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAC3B,MAAkB,EAClB,OAAuB;IAEvB,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;IACrC,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC;IAChC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,SAAS,GAAc,IAAI,CAAC;IAChC,IAAI,MAAM,GAAG,KAAK,KAAK,CAAC,CAAC;IAEzB,MAAM,gBAAgB,GAAG,GAA8B,EAAE;QACvD,MAAM,IAAI,GAA8B,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YAC9C,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QACrB,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,OAAO;QACL,IAAI,IAAI;YACN,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,IAAI,KAAK;YACP,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,KAAK;YACP,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,OAAO;YACT,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,KAAK,CAAC,IAAI;YACR,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO;oBACL,KAAK,EAAE,SAAS;oBAChB,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,KAAK;oBACZ,KAAK;iBACN,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;YAC/B,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,GAAG,IAAI,CAAC;gBACd,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;YACxD,CAAC;YAED,mCAAmC;YACnC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAE5B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAE7B,mBAAmB;YACnB,OAAO,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;gBAClC,KAAK;gBACL,KAAK;gBACL,SAAS,EAAE,OAAO,CAAC,SAAS;aAC7B,CAAC,CAAC;YAEH,IAAI,QAAwD,CAAC;YAE7D,IAAI,CAAC;gBACH,yDAAyD;gBACzD,IAAI,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC9B,MAAM,YAAY,CAAC,QAAQ,CACzB,gBAAgB,CAAC,oBAAoB,EACrC,qCAAqC,IAAI,CAAC,OAAO,6DAA6D,EAC9G,IAAI,CACL,CAAC;gBACJ,CAAC;gBAED,6DAA6D;gBAC7D,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAEpD,6DAA6D;gBAC7D,iEAAiE;gBACjE,MAAM,SAAS,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBAC1C,MAAM,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC;gBAClC,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;oBACxC,QAAQ,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;gBACnD,CAAC;qBAAM,CAAC;oBACN,2DAA2D;oBAC3D,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;wBAC9B,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;4BAC5B,MAAM,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;4BACtD,QAAQ,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,YAAY,IAAI,KAAK,EAAE,CAAC;wBAC/D,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,SAAS,GAAG,KAAK,CAAC;gBAElB,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;gBAE1C,iBAAiB;gBACjB,OAAO,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC;oBAChC,KAAK;oBACL,KAAK;oBACL,KAAK;oBACL,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;iBACnC,CAAC,CAAC;gBAEH,KAAK,EAAE,CAAC;gBACR,MAAM,GAAG,KAAK,IAAI,KAAK,CAAC;gBAExB,OAAO;oBACL,KAAK;oBACL,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE,KAAK,GAAG,CAAC;oBAChB,KAAK;oBACL,QAAQ;iBACT,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,6BAA6B;gBAC7B,IAAI,KAAK,YAAY,YAAY,EAAE,CAAC;oBAClC,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC;oBACxB,MAAM,GAAG,IAAI,CAAC;oBACd,OAAO;wBACL,KAAK,EAAE,SAAS;wBAChB,IAAI,EAAE,IAAI;wBACV,KAAK;wBACL,KAAK;wBACL,QAAQ;qBACT,CAAC;gBACJ,CAAC;gBAED,eAAe;gBACf,OAAO,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;oBAC9B,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAChE,KAAK;iBACN,CAAC,CAAC;gBACH,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QAED,SAAS;YACP,yCAAyC;YACzC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBAChB,IAAI,OAAO,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;oBAC/B,MAAM,IAAI,YAAY,CACpB,gBAAgB,CAAC,0BAA0B,EAC3C,uBAAuB,EACvB,SAAS,EACT,EAAE,QAAQ,EAAE,GAAG,EAAE,CAClB,CAAC;gBACJ,CAAC;gBACD,OAAO;oBACL,KAAK,EAAE,OAAO,CAAC,SAAS;oBACxB,SAAS,EAAE,gBAAgB,EAAE;iBAC9B,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,KAAK,EAAE,SAAS;gBAChB,SAAS,EAAE,gBAAgB,EAAE;aAC9B,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,mBAAmB,CAC1B,IAAgE;IAEhE,OAAO,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC;AACvC,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CACxB,IAA4C;IAE5C,OAAO,IAAI,CAAC,IAAI,KAAK,oBAAoB,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;AACpE,CAAC"}
1
+ {"version":3,"file":"execute.js","sourceRoot":"","sources":["../../../src/runtime/core/execute.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * Runtime Introspection API
3
+ *
4
+ * Functions for inspecting runtime context at runtime.
5
+ * These enable host applications to discover available functions and their signatures.
6
+ */
7
+ import type { RuntimeContext } from './types.js';
8
+ import type { RillValue } from './values.js';
9
+ /**
10
+ * Metadata describing a function's signature and documentation.
11
+ * Returned by introspection APIs like getFunctions().
12
+ */
13
+ export interface FunctionMetadata {
14
+ /** Function name (including namespace if applicable, e.g., "math::add") */
15
+ readonly name: string;
16
+ /** Human-readable description of what the function does */
17
+ readonly description: string;
18
+ /** Parameter metadata in declaration order */
19
+ readonly params: readonly ParamMetadata[];
20
+ /** Return type (default: 'any' for unspecified) */
21
+ readonly returnType: string;
22
+ }
23
+ /**
24
+ * Metadata describing a single function parameter.
25
+ */
26
+ export interface ParamMetadata {
27
+ /** Parameter name */
28
+ readonly name: string;
29
+ /** Type constraint (e.g., "string", "number", "list") */
30
+ readonly type: string;
31
+ /** Human-readable description of the parameter's purpose */
32
+ readonly description: string;
33
+ /** Default value if parameter is optional (undefined if required) */
34
+ readonly defaultValue: RillValue | undefined;
35
+ }
36
+ /**
37
+ * Enumerate all callable functions registered in runtime context.
38
+ *
39
+ * Returns flat list combining host functions, built-ins, and script closures.
40
+ * Namespaced functions preserve `::` separator in name field.
41
+ * Malformed entries silently skipped (valid entries returned).
42
+ * Script closures: reads `^(doc: "...")` annotation for description.
43
+ * Script closures: excludes nested closures in dicts/lists.
44
+ *
45
+ * Order: host functions, then built-ins, then script closures.
46
+ *
47
+ * @param ctx Runtime context
48
+ * @returns Array of function metadata
49
+ */
50
+ export declare function getFunctions(ctx: RuntimeContext): FunctionMetadata[];
51
+ /**
52
+ * Documentation coverage metrics for runtime context.
53
+ * Used to assess quality of function documentation.
54
+ */
55
+ export interface DocumentationCoverageResult {
56
+ /** Total function count */
57
+ readonly total: number;
58
+ /** Functions with complete documentation */
59
+ readonly documented: number;
60
+ /** Percentage (0-100), rounded to 2 decimal places */
61
+ readonly percentage: number;
62
+ }
63
+ /**
64
+ * Analyze documentation coverage of functions in runtime context.
65
+ *
66
+ * Counts function as documented when:
67
+ * - Has non-empty description string (after trim)
68
+ * - All parameters have non-empty description string (after trim)
69
+ *
70
+ * Script closures with `^(doc: "...")` annotation count as having description.
71
+ * Whitespace-only descriptions count as undocumented.
72
+ * Empty context returns `{ total: 0, documented: 0, percentage: 100 }`.
73
+ *
74
+ * @param ctx Runtime context
75
+ * @returns Documentation coverage metrics
76
+ */
77
+ export declare function getDocumentationCoverage(ctx: RuntimeContext): DocumentationCoverageResult;
78
+ /**
79
+ * Return complete rill language reference for LLM prompt context.
80
+ *
81
+ * Returns bundled content from `docs/ref-llm.txt`.
82
+ * Content includes syntax, operators, control flow, type system.
83
+ * Always succeeds at runtime (content embedded at build time).
84
+ *
85
+ * @returns Language reference text
86
+ */
87
+ export declare function getLanguageReference(): string;
88
+ //# sourceMappingURL=introspection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"introspection.d.ts","sourceRoot":"","sources":["../../../src/runtime/core/introspection.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAI7C;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,2EAA2E;IAC3E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,2DAA2D;IAC3D,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,8CAA8C;IAC9C,QAAQ,CAAC,MAAM,EAAE,SAAS,aAAa,EAAE,CAAC;IAC1C,mDAAmD;IACnD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,qBAAqB;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,yDAAyD;IACzD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,qEAAqE;IACrE,QAAQ,CAAC,YAAY,EAAE,SAAS,GAAG,SAAS,CAAC;CAC9C;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,cAAc,GAAG,gBAAgB,EAAE,CA4FpE;AAED;;;GAGG;AACH,MAAM,WAAW,2BAA2B;IAC1C,2BAA2B;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,4CAA4C;IAC5C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,sDAAsD;IACtD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,cAAc,GAClB,2BAA2B,CAkC7B;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C"}
@@ -0,0 +1,166 @@
1
+ /**
2
+ * Runtime Introspection API
3
+ *
4
+ * Functions for inspecting runtime context at runtime.
5
+ * These enable host applications to discover available functions and their signatures.
6
+ */
7
+ import { isApplicationCallable, isScriptCallable } from './callable.js';
8
+ import { LANGUAGE_REFERENCE } from '../../generated/introspection-data.js';
9
+ /**
10
+ * Enumerate all callable functions registered in runtime context.
11
+ *
12
+ * Returns flat list combining host functions, built-ins, and script closures.
13
+ * Namespaced functions preserve `::` separator in name field.
14
+ * Malformed entries silently skipped (valid entries returned).
15
+ * Script closures: reads `^(doc: "...")` annotation for description.
16
+ * Script closures: excludes nested closures in dicts/lists.
17
+ *
18
+ * Order: host functions, then built-ins, then script closures.
19
+ *
20
+ * @param ctx Runtime context
21
+ * @returns Array of function metadata
22
+ */
23
+ export function getFunctions(ctx) {
24
+ const result = [];
25
+ // Defensive: handle invalid context (EC-1)
26
+ if (!ctx || !ctx.functions || !ctx.variables) {
27
+ return result;
28
+ }
29
+ // Separate host functions and built-ins
30
+ const hostFunctions = [];
31
+ const builtinFunctions = [];
32
+ // Enumerate functions in ctx.functions
33
+ for (const [name, fn] of ctx.functions.entries()) {
34
+ try {
35
+ // Check if this is an ApplicationCallable with metadata (host function)
36
+ const callable = fn;
37
+ if (isApplicationCallable(callable)) {
38
+ if (callable.params) {
39
+ const params = callable.params.map((p) => ({
40
+ name: p.name,
41
+ type: p.typeName ?? 'any',
42
+ description: p.description ?? '',
43
+ defaultValue: p.defaultValue ?? undefined,
44
+ }));
45
+ hostFunctions.push({
46
+ name,
47
+ description: callable.description ?? '',
48
+ params,
49
+ returnType: callable.returnType ?? 'any',
50
+ });
51
+ }
52
+ else {
53
+ // ApplicationCallable without params (untyped)
54
+ builtinFunctions.push({
55
+ name,
56
+ description: callable.description ?? '',
57
+ params: [],
58
+ returnType: 'any',
59
+ });
60
+ }
61
+ }
62
+ else {
63
+ // Built-in function (no parameter metadata)
64
+ builtinFunctions.push({
65
+ name,
66
+ description: '',
67
+ params: [],
68
+ returnType: 'any',
69
+ });
70
+ }
71
+ }
72
+ catch {
73
+ // EC-2: Malformed function entry skipped
74
+ continue;
75
+ }
76
+ }
77
+ // Enumerate script closures from variables (top-level only, no nested)
78
+ for (const [name, value] of ctx.variables.entries()) {
79
+ try {
80
+ if (isScriptCallable(value)) {
81
+ // Extract description from ^(doc: "...") annotation
82
+ let description = '';
83
+ if (value.annotations && 'doc' in value.annotations) {
84
+ const docValue = value.annotations['doc'];
85
+ if (typeof docValue === 'string') {
86
+ description = docValue;
87
+ }
88
+ }
89
+ // Convert params to ParamMetadata
90
+ const params = value.params.map((p) => ({
91
+ name: p.name,
92
+ type: p.typeName ?? 'any',
93
+ description: p.description ?? '',
94
+ defaultValue: p.defaultValue ?? undefined,
95
+ }));
96
+ result.push({
97
+ name,
98
+ description,
99
+ params,
100
+ returnType: 'any',
101
+ });
102
+ }
103
+ }
104
+ catch {
105
+ // EC-2: Malformed entry skipped
106
+ continue;
107
+ }
108
+ }
109
+ // Combine in specified order: host, built-ins, script closures
110
+ return [...hostFunctions, ...builtinFunctions, ...result];
111
+ }
112
+ /**
113
+ * Analyze documentation coverage of functions in runtime context.
114
+ *
115
+ * Counts function as documented when:
116
+ * - Has non-empty description string (after trim)
117
+ * - All parameters have non-empty description string (after trim)
118
+ *
119
+ * Script closures with `^(doc: "...")` annotation count as having description.
120
+ * Whitespace-only descriptions count as undocumented.
121
+ * Empty context returns `{ total: 0, documented: 0, percentage: 100 }`.
122
+ *
123
+ * @param ctx Runtime context
124
+ * @returns Documentation coverage metrics
125
+ */
126
+ export function getDocumentationCoverage(ctx) {
127
+ // Get all functions using existing getFunctions helper
128
+ const functions = getFunctions(ctx);
129
+ // Handle empty context (AC-11)
130
+ if (functions.length === 0) {
131
+ return { total: 0, documented: 0, percentage: 100 };
132
+ }
133
+ // Count documented functions
134
+ let documented = 0;
135
+ for (const fn of functions) {
136
+ // Function is documented when:
137
+ // 1. Has non-empty description (after trim)
138
+ // 2. All params have non-empty description (after trim)
139
+ const hasDescription = fn.description.trim().length > 0;
140
+ const allParamsDocumented = fn.params.every((p) => p.description.trim().length > 0);
141
+ // AC-13: Function with 0 params and description counts as documented
142
+ if (hasDescription && allParamsDocumented) {
143
+ documented++;
144
+ }
145
+ }
146
+ // Calculate percentage with spec formula
147
+ const percentage = Math.round((documented / functions.length) * 10000) / 100;
148
+ return {
149
+ total: functions.length,
150
+ documented,
151
+ percentage,
152
+ };
153
+ }
154
+ /**
155
+ * Return complete rill language reference for LLM prompt context.
156
+ *
157
+ * Returns bundled content from `docs/ref-llm.txt`.
158
+ * Content includes syntax, operators, control flow, type system.
159
+ * Always succeeds at runtime (content embedded at build time).
160
+ *
161
+ * @returns Language reference text
162
+ */
163
+ export function getLanguageReference() {
164
+ return LANGUAGE_REFERENCE;
165
+ }
166
+ //# sourceMappingURL=introspection.js.map