typekro 0.2.2 → 0.3.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 (197) hide show
  1. package/README.md +4 -3
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/core/composition/imperative.d.ts.map +1 -1
  4. package/dist/core/composition/imperative.js +15 -2
  5. package/dist/core/composition/imperative.js.map +1 -1
  6. package/dist/core/composition/typekro-runtime/typekro-runtime.d.ts.map +1 -1
  7. package/dist/core/composition/typekro-runtime/typekro-runtime.js +24 -25
  8. package/dist/core/composition/typekro-runtime/typekro-runtime.js.map +1 -1
  9. package/dist/core/dependencies/type-guards.d.ts.map +1 -1
  10. package/dist/core/dependencies/type-guards.js +7 -2
  11. package/dist/core/dependencies/type-guards.js.map +1 -1
  12. package/dist/core/deployment/engine.d.ts +0 -1
  13. package/dist/core/deployment/engine.d.ts.map +1 -1
  14. package/dist/core/deployment/engine.js +0 -1
  15. package/dist/core/deployment/engine.js.map +1 -1
  16. package/dist/core/errors.d.ts +85 -0
  17. package/dist/core/errors.d.ts.map +1 -1
  18. package/dist/core/errors.js +135 -0
  19. package/dist/core/errors.js.map +1 -1
  20. package/dist/core/expressions/analyzer.d.ts +584 -0
  21. package/dist/core/expressions/analyzer.d.ts.map +1 -0
  22. package/dist/core/expressions/analyzer.js +2956 -0
  23. package/dist/core/expressions/analyzer.js.map +1 -0
  24. package/dist/core/expressions/cache.d.ts +136 -0
  25. package/dist/core/expressions/cache.d.ts.map +1 -0
  26. package/dist/core/expressions/cache.js +347 -0
  27. package/dist/core/expressions/cache.js.map +1 -0
  28. package/dist/core/expressions/cel-conversion-engine.d.ts +126 -0
  29. package/dist/core/expressions/cel-conversion-engine.d.ts.map +1 -0
  30. package/dist/core/expressions/cel-conversion-engine.js +293 -0
  31. package/dist/core/expressions/cel-conversion-engine.js.map +1 -0
  32. package/dist/core/expressions/compile-time-validation.d.ts +270 -0
  33. package/dist/core/expressions/compile-time-validation.d.ts.map +1 -0
  34. package/dist/core/expressions/compile-time-validation.js +506 -0
  35. package/dist/core/expressions/compile-time-validation.js.map +1 -0
  36. package/dist/core/expressions/composition-integration.d.ts +315 -0
  37. package/dist/core/expressions/composition-integration.d.ts.map +1 -0
  38. package/dist/core/expressions/composition-integration.js +936 -0
  39. package/dist/core/expressions/composition-integration.js.map +1 -0
  40. package/dist/core/expressions/conditional-expression-processor.d.ts +154 -0
  41. package/dist/core/expressions/conditional-expression-processor.d.ts.map +1 -0
  42. package/dist/core/expressions/conditional-expression-processor.js +479 -0
  43. package/dist/core/expressions/conditional-expression-processor.js.map +1 -0
  44. package/dist/core/expressions/conditional-integration.d.ts +133 -0
  45. package/dist/core/expressions/conditional-integration.d.ts.map +1 -0
  46. package/dist/core/expressions/conditional-integration.js +293 -0
  47. package/dist/core/expressions/conditional-integration.js.map +1 -0
  48. package/dist/core/expressions/conditional-validation.d.ts +181 -0
  49. package/dist/core/expressions/conditional-validation.d.ts.map +1 -0
  50. package/dist/core/expressions/conditional-validation.js +460 -0
  51. package/dist/core/expressions/conditional-validation.js.map +1 -0
  52. package/dist/core/expressions/context-aware-generator.d.ts +127 -0
  53. package/dist/core/expressions/context-aware-generator.d.ts.map +1 -0
  54. package/dist/core/expressions/context-aware-generator.js +500 -0
  55. package/dist/core/expressions/context-aware-generator.js.map +1 -0
  56. package/dist/core/expressions/context-detector.d.ts +148 -0
  57. package/dist/core/expressions/context-detector.d.ts.map +1 -0
  58. package/dist/core/expressions/context-detector.js +546 -0
  59. package/dist/core/expressions/context-detector.js.map +1 -0
  60. package/dist/core/expressions/context-switcher.d.ts +185 -0
  61. package/dist/core/expressions/context-switcher.d.ts.map +1 -0
  62. package/dist/core/expressions/context-switcher.js +515 -0
  63. package/dist/core/expressions/context-switcher.js.map +1 -0
  64. package/dist/core/expressions/context-validator.d.ts +176 -0
  65. package/dist/core/expressions/context-validator.d.ts.map +1 -0
  66. package/dist/core/expressions/context-validator.js +452 -0
  67. package/dist/core/expressions/context-validator.js.map +1 -0
  68. package/dist/core/expressions/custom-context-manager.d.ts +194 -0
  69. package/dist/core/expressions/custom-context-manager.d.ts.map +1 -0
  70. package/dist/core/expressions/custom-context-manager.js +390 -0
  71. package/dist/core/expressions/custom-context-manager.js.map +1 -0
  72. package/dist/core/expressions/expression-proxy.d.ts +80 -0
  73. package/dist/core/expressions/expression-proxy.d.ts.map +1 -0
  74. package/dist/core/expressions/expression-proxy.js +227 -0
  75. package/dist/core/expressions/expression-proxy.js.map +1 -0
  76. package/dist/core/expressions/factory-integration.d.ts +132 -0
  77. package/dist/core/expressions/factory-integration.d.ts.map +1 -0
  78. package/dist/core/expressions/factory-integration.js +327 -0
  79. package/dist/core/expressions/factory-integration.js.map +1 -0
  80. package/dist/core/expressions/factory-pattern-handler.d.ts +88 -0
  81. package/dist/core/expressions/factory-pattern-handler.d.ts.map +1 -0
  82. package/dist/core/expressions/factory-pattern-handler.js +336 -0
  83. package/dist/core/expressions/factory-pattern-handler.js.map +1 -0
  84. package/dist/core/expressions/field-hydration-processor.d.ts +188 -0
  85. package/dist/core/expressions/field-hydration-processor.d.ts.map +1 -0
  86. package/dist/core/expressions/field-hydration-processor.js +562 -0
  87. package/dist/core/expressions/field-hydration-processor.js.map +1 -0
  88. package/dist/core/expressions/imperative-analyzer.d.ts +21 -0
  89. package/dist/core/expressions/imperative-analyzer.d.ts.map +1 -0
  90. package/dist/core/expressions/imperative-analyzer.js +343 -0
  91. package/dist/core/expressions/imperative-analyzer.js.map +1 -0
  92. package/dist/core/expressions/index.d.ts +54 -0
  93. package/dist/core/expressions/index.d.ts.map +1 -0
  94. package/dist/core/expressions/index.js +50 -0
  95. package/dist/core/expressions/index.js.map +1 -0
  96. package/dist/core/expressions/lazy-analysis.d.ts +1128 -0
  97. package/dist/core/expressions/lazy-analysis.d.ts.map +1 -0
  98. package/dist/core/expressions/lazy-analysis.js +2443 -0
  99. package/dist/core/expressions/lazy-analysis.js.map +1 -0
  100. package/dist/core/expressions/magic-assignable-analyzer.d.ts +123 -0
  101. package/dist/core/expressions/magic-assignable-analyzer.d.ts.map +1 -0
  102. package/dist/core/expressions/magic-assignable-analyzer.js +352 -0
  103. package/dist/core/expressions/magic-assignable-analyzer.js.map +1 -0
  104. package/dist/core/expressions/magic-proxy-analyzer.d.ts +206 -0
  105. package/dist/core/expressions/magic-proxy-analyzer.d.ts.map +1 -0
  106. package/dist/core/expressions/magic-proxy-analyzer.js +639 -0
  107. package/dist/core/expressions/magic-proxy-analyzer.js.map +1 -0
  108. package/dist/core/expressions/magic-proxy-detector.d.ts +154 -0
  109. package/dist/core/expressions/magic-proxy-detector.d.ts.map +1 -0
  110. package/dist/core/expressions/magic-proxy-detector.js +242 -0
  111. package/dist/core/expressions/magic-proxy-detector.js.map +1 -0
  112. package/dist/core/expressions/migration-helpers.d.ts +133 -0
  113. package/dist/core/expressions/migration-helpers.d.ts.map +1 -0
  114. package/dist/core/expressions/migration-helpers.js +443 -0
  115. package/dist/core/expressions/migration-helpers.js.map +1 -0
  116. package/dist/core/expressions/optionality-handler.d.ts +503 -0
  117. package/dist/core/expressions/optionality-handler.d.ts.map +1 -0
  118. package/dist/core/expressions/optionality-handler.js +1306 -0
  119. package/dist/core/expressions/optionality-handler.js.map +1 -0
  120. package/dist/core/expressions/readiness-integration.d.ts +119 -0
  121. package/dist/core/expressions/readiness-integration.d.ts.map +1 -0
  122. package/dist/core/expressions/readiness-integration.js +386 -0
  123. package/dist/core/expressions/readiness-integration.js.map +1 -0
  124. package/dist/core/expressions/resource-analyzer.d.ts +486 -0
  125. package/dist/core/expressions/resource-analyzer.d.ts.map +1 -0
  126. package/dist/core/expressions/resource-analyzer.js +1086 -0
  127. package/dist/core/expressions/resource-analyzer.js.map +1 -0
  128. package/dist/core/expressions/resource-validation.d.ts +187 -0
  129. package/dist/core/expressions/resource-validation.d.ts.map +1 -0
  130. package/dist/core/expressions/resource-validation.js +552 -0
  131. package/dist/core/expressions/resource-validation.js.map +1 -0
  132. package/dist/core/expressions/runtime-error-mapper.d.ts +138 -0
  133. package/dist/core/expressions/runtime-error-mapper.d.ts.map +1 -0
  134. package/dist/core/expressions/runtime-error-mapper.js +412 -0
  135. package/dist/core/expressions/runtime-error-mapper.js.map +1 -0
  136. package/dist/core/expressions/source-map.d.ts +168 -0
  137. package/dist/core/expressions/source-map.d.ts.map +1 -0
  138. package/dist/core/expressions/source-map.js +350 -0
  139. package/dist/core/expressions/source-map.js.map +1 -0
  140. package/dist/core/expressions/status-builder-analyzer.d.ts +353 -0
  141. package/dist/core/expressions/status-builder-analyzer.d.ts.map +1 -0
  142. package/dist/core/expressions/status-builder-analyzer.js +1301 -0
  143. package/dist/core/expressions/status-builder-analyzer.js.map +1 -0
  144. package/dist/core/expressions/type-inference.d.ts +184 -0
  145. package/dist/core/expressions/type-inference.d.ts.map +1 -0
  146. package/dist/core/expressions/type-inference.js +838 -0
  147. package/dist/core/expressions/type-inference.js.map +1 -0
  148. package/dist/core/expressions/type-safety.d.ts +203 -0
  149. package/dist/core/expressions/type-safety.d.ts.map +1 -0
  150. package/dist/core/expressions/type-safety.js +442 -0
  151. package/dist/core/expressions/type-safety.js.map +1 -0
  152. package/dist/core/expressions/types.d.ts +282 -0
  153. package/dist/core/expressions/types.d.ts.map +1 -0
  154. package/dist/core/expressions/types.js +8 -0
  155. package/dist/core/expressions/types.js.map +1 -0
  156. package/dist/core/kubernetes/client-provider.js +2 -2
  157. package/dist/core/kubernetes/client-provider.js.map +1 -1
  158. package/dist/core/serialization/core.d.ts.map +1 -1
  159. package/dist/core/serialization/core.js +573 -9
  160. package/dist/core/serialization/core.js.map +1 -1
  161. package/dist/core/types/deployment.d.ts +4 -0
  162. package/dist/core/types/deployment.d.ts.map +1 -1
  163. package/dist/core/types/deployment.js.map +1 -1
  164. package/dist/core/types/index.d.ts +1 -0
  165. package/dist/core/types/index.d.ts.map +1 -1
  166. package/dist/core/types/index.js.map +1 -1
  167. package/dist/core.d.ts +1 -1
  168. package/dist/core.d.ts.map +1 -1
  169. package/dist/core.js +1 -1
  170. package/dist/core.js.map +1 -1
  171. package/dist/factories/helm/helm-release.d.ts.map +1 -1
  172. package/dist/factories/helm/helm-release.js +0 -5
  173. package/dist/factories/helm/helm-release.js.map +1 -1
  174. package/dist/factories/helm/types.d.ts +1 -1
  175. package/dist/factories/helm/types.d.ts.map +1 -1
  176. package/dist/factories/shared.d.ts.map +1 -1
  177. package/dist/factories/shared.js +21 -1
  178. package/dist/factories/shared.js.map +1 -1
  179. package/dist/factories/simple/index.d.ts +2 -2
  180. package/dist/factories/simple/index.d.ts.map +1 -1
  181. package/dist/factories/simple/workloads/deployment.d.ts +3 -3
  182. package/dist/factories/simple/workloads/deployment.d.ts.map +1 -1
  183. package/dist/factories/simple/workloads/deployment.js +37 -11
  184. package/dist/factories/simple/workloads/deployment.js.map +1 -1
  185. package/dist/index.d.ts +1 -1
  186. package/dist/index.d.ts.map +1 -1
  187. package/dist/index.js +1 -1
  188. package/dist/index.js.map +1 -1
  189. package/dist/utils/index.d.ts +1 -1
  190. package/dist/utils/index.d.ts.map +1 -1
  191. package/dist/utils/index.js +1 -1
  192. package/dist/utils/index.js.map +1 -1
  193. package/dist/utils/type-guards.d.ts +6 -0
  194. package/dist/utils/type-guards.d.ts.map +1 -1
  195. package/dist/utils/type-guards.js +25 -2
  196. package/dist/utils/type-guards.js.map +1 -1
  197. package/package.json +6 -1
@@ -0,0 +1,343 @@
1
+ /**
2
+ * Imperative Composition Analyzer
3
+ *
4
+ * This module analyzes imperative composition functions to detect JavaScript expressions
5
+ * that contain KubernetesRef objects and converts them to CEL expressions.
6
+ */
7
+ import { Parser } from 'acorn';
8
+ import * as estraverse from 'estraverse';
9
+ import { Cel } from '../references/cel.js';
10
+ import { getComponentLogger } from '../logging/index.js';
11
+ const logger = getComponentLogger('imperative-analyzer');
12
+ /**
13
+ * Analyze an imperative composition function to detect JavaScript expressions
14
+ * that should be converted to CEL expressions.
15
+ */
16
+ export function analyzeImperativeComposition(compositionFn, resources, options) {
17
+ logger.debug('Analyzing imperative composition function', {
18
+ resourceCount: Object.keys(resources).length,
19
+ factoryType: options.factoryType,
20
+ resourceIds: Object.keys(resources)
21
+ });
22
+ try {
23
+ // Parse the composition function source code
24
+ const functionSource = compositionFn.toString();
25
+ logger.debug('Parsing composition function source', {
26
+ sourceLength: functionSource.length,
27
+ functionSource: functionSource.substring(0, 500) + (functionSource.length > 500 ? '...' : '')
28
+ });
29
+ const ast = Parser.parse(functionSource, {
30
+ ecmaVersion: 2022,
31
+ sourceType: 'script',
32
+ locations: true,
33
+ ranges: true
34
+ });
35
+ // Find the return statement in the composition function
36
+ const returnStatement = findReturnStatement(ast);
37
+ if (!returnStatement || !returnStatement.argument) {
38
+ logger.debug('No return statement found in composition function');
39
+ return {
40
+ statusMappings: {},
41
+ hasJavaScriptExpressions: false,
42
+ errors: ['No return statement found in composition function']
43
+ };
44
+ }
45
+ // Check if the return statement returns an object literal
46
+ if (returnStatement.argument.type !== 'ObjectExpression') {
47
+ logger.debug('Return statement does not return an object literal');
48
+ return {
49
+ statusMappings: {},
50
+ hasJavaScriptExpressions: false,
51
+ errors: ['Return statement must return an object literal']
52
+ };
53
+ }
54
+ // Analyze each property in the returned object
55
+ const statusMappings = {};
56
+ const errors = [];
57
+ let hasJavaScriptExpressions = false;
58
+ // Process properties recursively to handle nested objects
59
+ function processProperties(properties, parentPath = '') {
60
+ for (const property of properties) {
61
+ if (property.type === 'Property' && property.key.type === 'Identifier') {
62
+ const fieldName = property.key.name;
63
+ const fullFieldName = parentPath ? `${parentPath}.${fieldName}` : fieldName;
64
+ try {
65
+ // Check if this is a nested object
66
+ if (property.value.type === 'ObjectExpression') {
67
+ logger.debug('Found nested object property', { fieldName, fullFieldName });
68
+ // Create nested object in statusMappings
69
+ if (parentPath) {
70
+ // Navigate to the parent object and create the nested structure
71
+ const pathParts = parentPath.split('.');
72
+ let current = statusMappings;
73
+ for (const part of pathParts) {
74
+ if (!current[part])
75
+ current[part] = {};
76
+ current = current[part];
77
+ }
78
+ if (!current[fieldName])
79
+ current[fieldName] = {};
80
+ }
81
+ else {
82
+ if (!statusMappings[fieldName])
83
+ statusMappings[fieldName] = {};
84
+ }
85
+ // Recursively process nested properties
86
+ processProperties(property.value.properties, fullFieldName);
87
+ continue;
88
+ }
89
+ // Convert the property value to source code
90
+ const propertySource = getNodeSource(property.value, functionSource);
91
+ logger.debug('Analyzing property', {
92
+ fieldName,
93
+ fullFieldName,
94
+ propertySource: propertySource.substring(0, 100) + (propertySource.length > 100 ? '...' : '')
95
+ });
96
+ // Check if this expression contains resource references
97
+ if (containsResourceReferences(propertySource)) {
98
+ logger.debug('Found resource references in property', { fieldName, fullFieldName, propertySource });
99
+ // Convert resource references to proper format for CEL
100
+ const convertedSource = convertResourceReferencesToCel(propertySource, resources);
101
+ logger.debug('Converted resource references', {
102
+ fieldName,
103
+ fullFieldName,
104
+ originalSource: propertySource.substring(0, 100),
105
+ convertedSource: convertedSource.substring(0, 100)
106
+ });
107
+ // For imperative compositions, create CEL expressions directly from the converted source
108
+ const celExpression = Cel.expr(convertedSource);
109
+ // Set the CEL expression at the correct nested path
110
+ if (parentPath) {
111
+ const pathParts = parentPath.split('.');
112
+ let current = statusMappings;
113
+ for (const part of pathParts) {
114
+ if (!current[part])
115
+ current[part] = {};
116
+ current = current[part];
117
+ }
118
+ current[fieldName] = celExpression;
119
+ }
120
+ else {
121
+ statusMappings[fieldName] = celExpression;
122
+ }
123
+ hasJavaScriptExpressions = true;
124
+ logger.debug('Created direct CEL expression for property', {
125
+ fieldName,
126
+ fullFieldName,
127
+ expression: convertedSource
128
+ });
129
+ }
130
+ else {
131
+ // No resource references, keep as static value
132
+ const staticValue = evaluateStaticExpression(property.value);
133
+ // Set the static value at the correct nested path
134
+ if (parentPath) {
135
+ const pathParts = parentPath.split('.');
136
+ let current = statusMappings;
137
+ for (const part of pathParts) {
138
+ if (!current[part])
139
+ current[part] = {};
140
+ current = current[part];
141
+ }
142
+ current[fieldName] = staticValue;
143
+ }
144
+ else {
145
+ statusMappings[fieldName] = staticValue;
146
+ }
147
+ logger.debug('Property has no resource references, keeping as static', { fieldName, fullFieldName });
148
+ }
149
+ }
150
+ catch (error) {
151
+ const errorMessage = `Failed to analyze property '${fullFieldName}': ${error instanceof Error ? error.message : String(error)}`;
152
+ errors.push(errorMessage);
153
+ logger.debug('Property analysis failed', { fieldName, fullFieldName, error: errorMessage });
154
+ // Fallback to static evaluation
155
+ try {
156
+ const staticValue = evaluateStaticExpression(property.value);
157
+ if (parentPath) {
158
+ const pathParts = parentPath.split('.');
159
+ let current = statusMappings;
160
+ for (const part of pathParts) {
161
+ if (!current[part])
162
+ current[part] = {};
163
+ current = current[part];
164
+ }
165
+ current[fieldName] = staticValue;
166
+ }
167
+ else {
168
+ statusMappings[fieldName] = staticValue;
169
+ }
170
+ }
171
+ catch (_evalError) {
172
+ if (parentPath) {
173
+ const pathParts = parentPath.split('.');
174
+ let current = statusMappings;
175
+ for (const part of pathParts) {
176
+ if (!current[part])
177
+ current[part] = {};
178
+ current = current[part];
179
+ }
180
+ current[fieldName] = null;
181
+ }
182
+ else {
183
+ statusMappings[fieldName] = null;
184
+ }
185
+ }
186
+ }
187
+ }
188
+ }
189
+ }
190
+ // Start processing from the top-level properties
191
+ processProperties(returnStatement.argument.properties);
192
+ logger.debug('Imperative composition analysis complete', {
193
+ statusFieldCount: Object.keys(statusMappings).length,
194
+ hasJavaScriptExpressions,
195
+ errorCount: errors.length
196
+ });
197
+ return {
198
+ statusMappings,
199
+ hasJavaScriptExpressions,
200
+ errors
201
+ };
202
+ }
203
+ catch (error) {
204
+ const errorMessage = `Failed to analyze imperative composition: ${error instanceof Error ? error.message : String(error)}`;
205
+ logger.error('Imperative composition analysis failed', error);
206
+ return {
207
+ statusMappings: {},
208
+ hasJavaScriptExpressions: false,
209
+ errors: [errorMessage]
210
+ };
211
+ }
212
+ }
213
+ /**
214
+ * Find the return statement in an AST
215
+ */
216
+ function findReturnStatement(ast) {
217
+ let returnStatement = null;
218
+ estraverse.traverse(ast, {
219
+ enter: (node) => {
220
+ if (node.type === 'ReturnStatement') {
221
+ returnStatement = node;
222
+ return estraverse.VisitorOption.Break;
223
+ }
224
+ // Continue normal traversal
225
+ return undefined;
226
+ }
227
+ });
228
+ return returnStatement;
229
+ }
230
+ /**
231
+ * Extract source code for a specific AST node
232
+ */
233
+ function getNodeSource(node, fullSource) {
234
+ if (node.range) {
235
+ return fullSource.substring(node.range[0], node.range[1]);
236
+ }
237
+ // Fallback: try to reconstruct the source
238
+ switch (node.type) {
239
+ case 'Literal':
240
+ return typeof node.value === 'string' ? `"${node.value}"` : String(node.value);
241
+ case 'Identifier':
242
+ return node.name;
243
+ case 'BinaryExpression':
244
+ return `${getNodeSource(node.left, fullSource)} ${node.operator} ${getNodeSource(node.right, fullSource)}`;
245
+ case 'ConditionalExpression':
246
+ return `${getNodeSource(node.test, fullSource)} ? ${getNodeSource(node.consequent, fullSource)} : ${getNodeSource(node.alternate, fullSource)}`;
247
+ case 'LogicalExpression':
248
+ return `${getNodeSource(node.left, fullSource)} ${node.operator} ${getNodeSource(node.right, fullSource)}`;
249
+ case 'MemberExpression': {
250
+ const object = getNodeSource(node.object, fullSource);
251
+ const property = node.computed ? `[${getNodeSource(node.property, fullSource)}]` : `.${node.property.name}`;
252
+ return object + property;
253
+ }
254
+ case 'ObjectExpression': {
255
+ const properties = node.properties.map((prop) => {
256
+ const key = prop.key.name || prop.key.value;
257
+ const value = getNodeSource(prop.value, fullSource);
258
+ return `${key}: ${value}`;
259
+ }).join(', ');
260
+ return `{ ${properties} }`;
261
+ }
262
+ default:
263
+ return '<unknown>';
264
+ }
265
+ }
266
+ /**
267
+ * Check if a source string contains resource references
268
+ */
269
+ function containsResourceReferences(source) {
270
+ // Look for patterns like:
271
+ // - kroHelmRelease.status.phase
272
+ // - fluxHelmRelease.status.phase
273
+ // - variableName.status.something
274
+ // - variableName.metadata.something
275
+ const resourceReferencePatterns = [
276
+ /\w+\.status\./,
277
+ /\w+\.metadata\./,
278
+ /\w+\.spec\./,
279
+ /\w+\.data\./
280
+ ];
281
+ return resourceReferencePatterns.some(pattern => pattern.test(source));
282
+ }
283
+ /**
284
+ * Convert resource references in source code to proper CEL format
285
+ *
286
+ * The key insight is that we need to map JavaScript variable names to actual resource IDs.
287
+ * For example, if the source code has `deployment1.status.readyReplicas` but the resource
288
+ * was created with `id: 'apiDeployment'`, we need to convert it to `apiDeployment.status.readyReplicas`.
289
+ */
290
+ function convertResourceReferencesToCel(source, resources) {
291
+ const convertedSource = source;
292
+ // The issue is that the resources parameter contains resources keyed by their IDs,
293
+ // but the source code contains variable names. We need to create a mapping.
294
+ // For now, let's try a different approach: instead of trying to map variable names to resource IDs,
295
+ // let's assume that the source code already contains the correct resource IDs.
296
+ // This works for cases where the CEL expressions are created properly during execution.
297
+ // Get all resource IDs
298
+ const resourceIds = Object.keys(resources);
299
+ // Sort by length (longest first) to avoid partial matches
300
+ resourceIds.sort((a, b) => b.length - a.length);
301
+ for (const resourceId of resourceIds) {
302
+ // The CEL expressions should already be in the correct format
303
+ // Just validate that the resource references are properly formatted
304
+ const _resourcePattern = new RegExp(`\\b${resourceId}\\.(status|metadata|spec|data)\\b`, 'g');
305
+ // The pattern should exist if the source is already in correct format
306
+ }
307
+ // For the specific case where we have variable names that don't match resource IDs,
308
+ // we need a more sophisticated approach. But for now, return the source as-is
309
+ // since the real fix should be in how the KubernetesRef objects are created.
310
+ return convertedSource;
311
+ }
312
+ /**
313
+ * Evaluate a static expression (no resource references)
314
+ */
315
+ function evaluateStaticExpression(node) {
316
+ switch (node.type) {
317
+ case 'Literal':
318
+ return node.value;
319
+ case 'Identifier':
320
+ // For identifiers, we can't evaluate them statically
321
+ return node.name;
322
+ case 'BinaryExpression':
323
+ // For binary expressions with literals, we could evaluate them
324
+ // But for safety, just return a placeholder
325
+ return null;
326
+ case 'ConditionalExpression':
327
+ return null;
328
+ case 'LogicalExpression':
329
+ return null;
330
+ case 'ObjectExpression': {
331
+ const obj = {};
332
+ for (const prop of node.properties) {
333
+ if (prop.type === 'Property' && prop.key.type === 'Identifier') {
334
+ obj[prop.key.name] = evaluateStaticExpression(prop.value);
335
+ }
336
+ }
337
+ return obj;
338
+ }
339
+ default:
340
+ return null;
341
+ }
342
+ }
343
+ //# sourceMappingURL=imperative-analyzer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"imperative-analyzer.js","sourceRoot":"","sources":["../../../src/core/expressions/imperative-analyzer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * JavaScript to CEL Expression Analysis and Type Safety Integration
3
+ *
4
+ * This module provides comprehensive type safety integration for JavaScript
5
+ * to CEL expression conversion, including compile-time validation, runtime
6
+ * type inference, and resource reference validation.
7
+ */
8
+ export { JavaScriptToCelAnalyzer } from './analyzer.js';
9
+ export type { AnalysisContext, ExpressionValidationReport, ValidationSummary } from './analyzer.js';
10
+ export { ExpressionTypeValidator, TypeRegistry, TypeSafetyUtils, TypeValidationError, TypeValidationWarning } from './type-safety.js';
11
+ export type { TypeInfo, TypeValidationResult } from './type-safety.js';
12
+ export { CelTypeInferenceEngine, TypeInferenceError, TypeInferenceWarning } from './type-inference.js';
13
+ export type { CelTypeInferenceResult, TypeInferenceContext, TypeInferenceMetadata } from './type-inference.js';
14
+ export { ResourceReferenceValidator, ResourceValidationError, ResourceValidationWarning } from './resource-validation.js';
15
+ export type { ResourceValidationResult, ResourceValidationMetadata, ValidationContext } from './resource-validation.js';
16
+ export { CompileTimeTypeChecker, CompileTimeError, CompileTimeWarning } from './compile-time-validation.js';
17
+ export type { CompileTimeValidationResult, CompileTimeTypeInfo, CompileTimeValidationContext, TypeCompatibilityIssue } from './compile-time-validation.js';
18
+ export { DirectFactoryExpressionHandler, KroFactoryExpressionHandler, FactoryPatternHandlerFactory, handleExpressionWithFactoryPattern } from './factory-pattern-handler.js';
19
+ export type { FactoryPatternType, FactoryExpressionHandler } from './factory-pattern-handler.js';
20
+ export { SourceMapBuilder, SourceMapUtils } from './source-map.js';
21
+ export type { SourceMapEntry } from './source-map.js';
22
+ export { CelRuntimeErrorMapper, CelRuntimeErrorUtils } from './runtime-error-mapper.js';
23
+ export type { CelRuntimeError, MappedRuntimeError } from './runtime-error-mapper.js';
24
+ export { MagicAssignableAnalyzer, analyzeMagicAssignable, analyzeMagicAssignableShape } from './magic-assignable-analyzer.js';
25
+ export type { ProcessedMagicAssignable, ProcessedMagicAssignableShape, MagicAssignableAnalysisOptions } from './magic-assignable-analyzer.js';
26
+ export { ExpressionCache, globalExpressionCache } from './cache.js';
27
+ export type { CacheStats, CacheOptions } from './cache.js';
28
+ export { EnhancedTypeOptionalityHandler, analyzeOptionalityRequirements, generateNullSafeCelExpression, handleOptionalChainingWithEnhancedTypes, generateCelWithHasChecks, detectNullSafetyRequirements, integrateWithFieldHydrationTiming, handleUndefinedToDefinedTransitions } from './optionality-handler.js';
29
+ export type { OptionalityAnalysisResult, FieldHydrationState, OptionalityContext, OptionalityHandlingOptions, OptionalChainingPattern, EnhancedTypeFieldInfo, HydrationStateAnalysis, HydrationTransitionPlan, HydrationPhase, HydrationTransitionHandler, HydrationState, UndefinedToDefinedTransitionResult } from './optionality-handler.js';
30
+ export { StatusBuilderAnalyzer, analyzeStatusBuilder, analyzeStatusBuilderForToResourceGraph, analyzeReturnObjectWithMagicProxy, generateStatusContextCel } from './status-builder-analyzer.js';
31
+ export type { StatusBuilderFunction, StatusFieldAnalysisResult, StatusBuilderAnalysisResult, ReturnStatementAnalysis, PropertyAnalysis, StatusBuilderAnalysisOptions, StatusFieldHandlingInfo, StatusHandlingStrategy, StatusFieldCategory, FieldAvailabilityEstimate } from './status-builder-analyzer.js';
32
+ export { ResourceAnalyzer, DependencyTracker, ResourceTypeValidator, analyzeResourceConfig, analyzeFactoryResourceConfig } from './resource-analyzer.js';
33
+ export type { ResourceAnalysisContext, ResourceAnalysisResult, ResourceTypeValidationResult, DependencyInfo, DependencyGraph, DependencyTrackingOptions, CircularDependencyAnalysis, CircularChainAnalysis, CircularDependencyRecommendation, ResourceTypeValidationContext, ResourceTypeInfo, SchemaValidator, SchemaFieldValidationResult, FieldPathValidationResult, TypeCompatibilityValidationResult } from './resource-analyzer.js';
34
+ export { ExpressionContextDetector, contextDetector } from './context-detector.js';
35
+ export type { ExpressionContext, ContextDetectionResult, CelGenerationStrategy, ContextMetadata, ContextDetectionConfig } from './context-detector.js';
36
+ export { LazyAnalyzedExpression, LazyExpressionCollection, OnDemandExpressionAnalyzer, ExpressionTreeAnalyzer, LazyExpressionTreeLoader, MagicProxyLazyIntegration, MemoryOptimizedExpressionManager, ParallelExpressionAnalyzer, ExpressionAnalysisProfiler, OptimizedKubernetesRefDetector, OptimizedExpressionTraverser, ExpressionComplexityAnalyzer, TraversalAction, createLazyExpression, createLazyCollection, shouldUseLazyAnalysis, globalOnDemandAnalyzer, globalTreeAnalyzer, globalLazyTreeLoader, globalMagicProxyIntegration, globalMemoryOptimizedManager, globalParallelAnalyzer, globalExpressionProfiler, globalOptimizedDetector, globalOptimizedTraverser, globalComplexityAnalyzer } from './lazy-analysis.js';
37
+ export type { LazyCollectionStats, ExpressionTreeResult, ExpressionTreeStats, LazyProxyOptions, LazyTreeLoaderStats, MagicProxyIntegrationStats, MemoryOptimizationOptions, MemoryStats, MemoryCleanupResult, ParallelAnalysisStats, AdvancedParallelAnalysisStats, AdaptiveAnalysisOptions, PerformanceProfile, PerformanceStats, TraversalContext, TraversalOptions, TraversalResult, ComplexityThresholds, ComplexityLevel, MemoryImpact, ComplexityMetrics, ComplexityWarning, ComplexityAnalysisResult, ComplexityStats } from './lazy-analysis.js';
38
+ export { ContextAwareCelGenerator, CelGenerationUtils, contextAwareCelGenerator } from './context-aware-generator.js';
39
+ export type { CelGenerationConfig, CelGenerationResult, CelGenerationDebugInfo } from './context-aware-generator.js';
40
+ export { ContextExpressionValidator, ContextValidationUtils, contextValidator } from './context-validator.js';
41
+ export type { ValidationSeverity, ContextValidationRule, ContextValidationConfig, ContextValidationReport, ValidationIssue } from './context-validator.js';
42
+ export { ExpressionContextSwitcher, ContextSwitchingUtils, createContextSwitcher } from './context-switcher.js';
43
+ export type { ContextSwitchingConfig, ContextSwitchingRule, ContextSwitchPoint, ContextSwitchingResult, ContextSwitchingMetrics } from './context-switcher.js';
44
+ export { CelToJavaScriptMigrationHelper, analyzeCelMigrationOpportunities, generateCelMigrationGuide } from './migration-helpers.js';
45
+ export type { MigrationSuggestion, MigrationCategory, MigrationAnalysisResult } from './migration-helpers.js';
46
+ export { FactoryExpressionAnalyzer, factoryExpressionAnalyzer, withExpressionAnalysis, analyzeFactoryConfig, processFactoryValue } from './factory-integration.js';
47
+ export type { FactoryAnalysisConfig, FactoryConfigAnalysisResult, FactoryExpressionContext, ExpressionAnalysisResult, FactoryAnalysisResult } from './factory-integration.js';
48
+ export { MagicProxyDetector, magicProxyDetector, detectMagicProxyRefs, containsMagicProxyRefs, extractMagicProxyRefs, analyzeMagicProxyRefSource } from './magic-proxy-detector.js';
49
+ export type { MagicProxyRefInfo, MagicProxyDetectionResult, MagicProxyDetectionConfig } from './magic-proxy-detector.js';
50
+ export { CelConversionEngine, celConversionEngine, convertToCel, kubernetesRefToCel, needsCelConversion } from './cel-conversion-engine.js';
51
+ export type { CelConversionConfig, CelConversionResult } from './cel-conversion-engine.js';
52
+ export { CompositionExpressionAnalyzer, CompositionIntegrationHooks, CompositionContextTracker, MagicProxyScopeManager, compositionIntegration, compositionUsesKubernetesRefs, getCompositionAnalysis } from './composition-integration.js';
53
+ export type { CompositionAnalysisResult, CompositionPattern, PatternAnalysisConfig, NestedCompositionScope } from './composition-integration.js';
54
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/expressions/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * JavaScript to CEL Expression Analysis and Type Safety Integration
3
+ *
4
+ * This module provides comprehensive type safety integration for JavaScript
5
+ * to CEL expression conversion, including compile-time validation, runtime
6
+ * type inference, and resource reference validation.
7
+ */
8
+ // Core analyzer
9
+ export { JavaScriptToCelAnalyzer } from './analyzer.js';
10
+ // Type safety integration
11
+ export { ExpressionTypeValidator, TypeRegistry, TypeSafetyUtils, TypeValidationError, TypeValidationWarning } from './type-safety.js';
12
+ // Type inference
13
+ export { CelTypeInferenceEngine, TypeInferenceError, TypeInferenceWarning } from './type-inference.js';
14
+ // Resource validation
15
+ export { ResourceReferenceValidator, ResourceValidationError, ResourceValidationWarning } from './resource-validation.js';
16
+ // Compile-time validation
17
+ export { CompileTimeTypeChecker, CompileTimeError, CompileTimeWarning } from './compile-time-validation.js';
18
+ // Factory pattern integration
19
+ export { DirectFactoryExpressionHandler, KroFactoryExpressionHandler, FactoryPatternHandlerFactory, handleExpressionWithFactoryPattern } from './factory-pattern-handler.js';
20
+ // Source mapping and error handling
21
+ export { SourceMapBuilder, SourceMapUtils } from './source-map.js';
22
+ export { CelRuntimeErrorMapper, CelRuntimeErrorUtils } from './runtime-error-mapper.js';
23
+ // MagicAssignable type integration
24
+ export { MagicAssignableAnalyzer, analyzeMagicAssignable, analyzeMagicAssignableShape } from './magic-assignable-analyzer.js';
25
+ // Performance optimization and caching
26
+ export { ExpressionCache, globalExpressionCache } from './cache.js';
27
+ // Enhanced Type Optionality Support
28
+ export { EnhancedTypeOptionalityHandler, analyzeOptionalityRequirements, generateNullSafeCelExpression, handleOptionalChainingWithEnhancedTypes, generateCelWithHasChecks, detectNullSafetyRequirements, integrateWithFieldHydrationTiming, handleUndefinedToDefinedTransitions } from './optionality-handler.js';
29
+ // Status Builder Analysis
30
+ export { StatusBuilderAnalyzer, analyzeStatusBuilder, analyzeStatusBuilderForToResourceGraph, analyzeReturnObjectWithMagicProxy, generateStatusContextCel } from './status-builder-analyzer.js';
31
+ // Resource Builder Integration
32
+ export { ResourceAnalyzer, DependencyTracker, ResourceTypeValidator, analyzeResourceConfig, analyzeFactoryResourceConfig } from './resource-analyzer.js';
33
+ // Context-Aware Conversion
34
+ export { ExpressionContextDetector, contextDetector } from './context-detector.js';
35
+ // Lazy Analysis Support
36
+ export { LazyAnalyzedExpression, LazyExpressionCollection, OnDemandExpressionAnalyzer, ExpressionTreeAnalyzer, LazyExpressionTreeLoader, MagicProxyLazyIntegration, MemoryOptimizedExpressionManager, ParallelExpressionAnalyzer, ExpressionAnalysisProfiler, OptimizedKubernetesRefDetector, OptimizedExpressionTraverser, ExpressionComplexityAnalyzer, TraversalAction, createLazyExpression, createLazyCollection, shouldUseLazyAnalysis, globalOnDemandAnalyzer, globalTreeAnalyzer, globalLazyTreeLoader, globalMagicProxyIntegration, globalMemoryOptimizedManager, globalParallelAnalyzer, globalExpressionProfiler, globalOptimizedDetector, globalOptimizedTraverser, globalComplexityAnalyzer } from './lazy-analysis.js';
37
+ export { ContextAwareCelGenerator, CelGenerationUtils, contextAwareCelGenerator } from './context-aware-generator.js';
38
+ export { ContextExpressionValidator, ContextValidationUtils, contextValidator } from './context-validator.js';
39
+ export { ExpressionContextSwitcher, ContextSwitchingUtils, createContextSwitcher } from './context-switcher.js';
40
+ // Migration helpers
41
+ export { CelToJavaScriptMigrationHelper, analyzeCelMigrationOpportunities, generateCelMigrationGuide } from './migration-helpers.js';
42
+ // Factory integration
43
+ export { FactoryExpressionAnalyzer, factoryExpressionAnalyzer, withExpressionAnalysis, analyzeFactoryConfig, processFactoryValue } from './factory-integration.js';
44
+ // Magic proxy detection
45
+ export { MagicProxyDetector, magicProxyDetector, detectMagicProxyRefs, containsMagicProxyRefs, extractMagicProxyRefs, analyzeMagicProxyRefSource } from './magic-proxy-detector.js';
46
+ // CEL conversion engine
47
+ export { CelConversionEngine, celConversionEngine, convertToCel, kubernetesRefToCel, needsCelConversion } from './cel-conversion-engine.js';
48
+ // Composition integration
49
+ export { CompositionExpressionAnalyzer, CompositionIntegrationHooks, CompositionContextTracker, MagicProxyScopeManager, compositionIntegration, compositionUsesKubernetesRefs, getCompositionAnalysis } from './composition-integration.js';
50
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/expressions/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,gBAAgB;AAChB,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAOxD,0BAA0B;AAC1B,OAAO,EACL,uBAAuB,EACvB,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,qBAAqB,EACtB,MAAM,kBAAkB,CAAC;AAM1B,iBAAiB;AACjB,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,qBAAqB,CAAC;AAO7B,sBAAsB;AACtB,OAAO,EACL,0BAA0B,EAC1B,uBAAuB,EACvB,yBAAyB,EAC1B,MAAM,0BAA0B,CAAC;AAOlC,0BAA0B;AAC1B,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,8BAA8B,CAAC;AAQtC,8BAA8B;AAC9B,OAAO,EACL,8BAA8B,EAC9B,2BAA2B,EAC3B,4BAA4B,EAC5B,kCAAkC,EACnC,MAAM,8BAA8B,CAAC;AAMtC,oCAAoC;AACpC,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGnE,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAMxF,mCAAmC;AACnC,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,2BAA2B,EAC5B,MAAM,gCAAgC,CAAC;AAOxC,uCAAuC;AACvC,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAMpE,oCAAoC;AACpC,OAAO,EACL,8BAA8B,EAC9B,8BAA8B,EAC9B,6BAA6B,EAC7B,uCAAuC,EACvC,wBAAwB,EACxB,4BAA4B,EAC5B,iCAAiC,EACjC,mCAAmC,EACpC,MAAM,0BAA0B,CAAC;AAgBlC,0BAA0B;AAC1B,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,sCAAsC,EACtC,iCAAiC,EACjC,wBAAwB,EACzB,MAAM,8BAA8B,CAAC;AActC,+BAA+B;AAC/B,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,4BAA4B,EAC7B,MAAM,wBAAwB,CAAC;AAmBhC,2BAA2B;AAC3B,OAAO,EACL,yBAAyB,EACzB,eAAe,EAChB,MAAM,uBAAuB,CAAC;AAS/B,wBAAwB;AACxB,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACxB,0BAA0B,EAC1B,sBAAsB,EACtB,wBAAwB,EACxB,yBAAyB,EACzB,gCAAgC,EAChC,0BAA0B,EAC1B,0BAA0B,EAC1B,8BAA8B,EAC9B,4BAA4B,EAC5B,4BAA4B,EAC5B,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,EACpB,2BAA2B,EAC3B,4BAA4B,EAC5B,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,EACzB,MAAM,oBAAoB,CAAC;AA4B5B,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,wBAAwB,EACzB,MAAM,8BAA8B,CAAC;AAOtC,OAAO,EACL,0BAA0B,EAC1B,sBAAsB,EACtB,gBAAgB,EACjB,MAAM,wBAAwB,CAAC;AAShC,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACrB,qBAAqB,EACtB,MAAM,uBAAuB,CAAC;AAS/B,oBAAoB;AACpB,OAAO,EACL,8BAA8B,EAC9B,gCAAgC,EAChC,yBAAyB,EAC1B,MAAM,wBAAwB,CAAC;AAOhC,sBAAsB;AACtB,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;AASlC,wBAAwB;AACxB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,0BAA0B,EAC3B,MAAM,2BAA2B,CAAC;AAOnC,wBAAwB;AACxB,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,4BAA4B,CAAC;AAMpC,0BAA0B;AAC1B,OAAO,EACL,6BAA6B,EAC7B,2BAA2B,EAC3B,yBAAyB,EACzB,sBAAsB,EACtB,sBAAsB,EACtB,6BAA6B,EAC7B,sBAAsB,EACvB,MAAM,8BAA8B,CAAC"}