@memberjunction/query-gen 3.4.0 → 4.1.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 (77) hide show
  1. package/.turbo/turbo-build.log +2 -2
  2. package/CHANGELOG.md +54 -0
  3. package/README.md +30 -2
  4. package/dist/cli/commands/export.js +35 -65
  5. package/dist/cli/commands/export.js.map +1 -1
  6. package/dist/cli/commands/generate.d.ts.map +1 -1
  7. package/dist/cli/commands/generate.js +114 -115
  8. package/dist/cli/commands/generate.js.map +1 -1
  9. package/dist/cli/commands/validate.js +40 -70
  10. package/dist/cli/commands/validate.js.map +1 -1
  11. package/dist/cli/config.d.ts +1 -0
  12. package/dist/cli/config.d.ts.map +1 -1
  13. package/dist/cli/config.js +8 -7
  14. package/dist/cli/config.js.map +1 -1
  15. package/dist/cli/index.js +11 -10
  16. package/dist/cli/index.js.map +1 -1
  17. package/dist/core/EntityGrouper.d.ts +5 -2
  18. package/dist/core/EntityGrouper.d.ts.map +1 -1
  19. package/dist/core/EntityGrouper.js +94 -39
  20. package/dist/core/EntityGrouper.js.map +1 -1
  21. package/dist/core/MetadataExporter.d.ts +2 -2
  22. package/dist/core/MetadataExporter.js +9 -36
  23. package/dist/core/MetadataExporter.js.map +1 -1
  24. package/dist/core/QueryDatabaseWriter.d.ts +1 -1
  25. package/dist/core/QueryDatabaseWriter.js +8 -12
  26. package/dist/core/QueryDatabaseWriter.js.map +1 -1
  27. package/dist/core/QueryFixer.d.ts +2 -2
  28. package/dist/core/QueryFixer.js +11 -17
  29. package/dist/core/QueryFixer.js.map +1 -1
  30. package/dist/core/QueryRefiner.d.ts +3 -3
  31. package/dist/core/QueryRefiner.js +22 -29
  32. package/dist/core/QueryRefiner.js.map +1 -1
  33. package/dist/core/QueryTester.d.ts +2 -2
  34. package/dist/core/QueryTester.js +11 -44
  35. package/dist/core/QueryTester.js.map +1 -1
  36. package/dist/core/QueryWriter.d.ts +2 -2
  37. package/dist/core/QueryWriter.js +12 -18
  38. package/dist/core/QueryWriter.js.map +1 -1
  39. package/dist/core/QuestionGenerator.d.ts +2 -2
  40. package/dist/core/QuestionGenerator.js +16 -22
  41. package/dist/core/QuestionGenerator.js.map +1 -1
  42. package/dist/data/schema.js +1 -2
  43. package/dist/data/schema.js.map +1 -1
  44. package/dist/index.d.ts +18 -18
  45. package/dist/index.js +18 -59
  46. package/dist/index.js.map +1 -1
  47. package/dist/prompts/PromptNames.js +5 -8
  48. package/dist/prompts/PromptNames.js.map +1 -1
  49. package/dist/utils/category-builder.d.ts +2 -2
  50. package/dist/utils/category-builder.js +2 -7
  51. package/dist/utils/category-builder.js.map +1 -1
  52. package/dist/utils/entity-helpers.d.ts +1 -1
  53. package/dist/utils/entity-helpers.js +7 -17
  54. package/dist/utils/entity-helpers.js.map +1 -1
  55. package/dist/utils/error-handlers.js +3 -9
  56. package/dist/utils/error-handlers.js.map +1 -1
  57. package/dist/utils/graph-helpers.js +3 -9
  58. package/dist/utils/graph-helpers.js.map +1 -1
  59. package/dist/utils/prompt-helpers.d.ts +1 -1
  60. package/dist/utils/prompt-helpers.js +8 -12
  61. package/dist/utils/prompt-helpers.js.map +1 -1
  62. package/dist/utils/user-helpers.js +3 -7
  63. package/dist/utils/user-helpers.js.map +1 -1
  64. package/dist/vectors/EmbeddingService.d.ts +1 -1
  65. package/dist/vectors/EmbeddingService.js +3 -8
  66. package/dist/vectors/EmbeddingService.js.map +1 -1
  67. package/dist/vectors/SimilaritySearch.d.ts +1 -1
  68. package/dist/vectors/SimilaritySearch.js +19 -20
  69. package/dist/vectors/SimilaritySearch.js.map +1 -1
  70. package/package.json +24 -17
  71. package/src/__tests__/golden-queries-loader.test.js +181 -0
  72. package/src/cli/commands/generate.ts +52 -21
  73. package/src/cli/config.ts +10 -2
  74. package/src/cli/index.ts +4 -1
  75. package/src/core/EntityGrouper.ts +75 -11
  76. package/src/core/QueryTester.ts +1 -1
  77. package/tsconfig.json +5 -35
@@ -6,7 +6,7 @@
6
6
  * of the SQL template during the Save() operation.
7
7
  */
8
8
  import { UserInfo } from '@memberjunction/core';
9
- import { ValidatedQuery, WriteResult } from '../data/schema';
9
+ import { ValidatedQuery, WriteResult } from '../data/schema.js';
10
10
  /**
11
11
  * QueryDatabaseWriter class
12
12
  * Writes validated queries directly to the database
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  /**
3
2
  * QueryDatabaseWriter - Write validated queries directly to the database
4
3
  *
@@ -6,17 +5,15 @@
6
5
  * are automatically extracted by QueryEntity.server.ts using AI analysis
7
6
  * of the SQL template during the Save() operation.
8
7
  */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.QueryDatabaseWriter = void 0;
11
- const core_1 = require("@memberjunction/core");
12
- const error_handlers_1 = require("../utils/error-handlers");
8
+ import { Metadata, RunView } from '@memberjunction/core';
9
+ import { extractErrorMessage } from '../utils/error-handlers.js';
13
10
  /**
14
11
  * QueryDatabaseWriter class
15
12
  * Writes validated queries directly to the database
16
13
  */
17
- class QueryDatabaseWriter {
18
- categoryCache = new Map();
14
+ export class QueryDatabaseWriter {
19
15
  constructor() {
16
+ this.categoryCache = new Map();
20
17
  // No config needed - category info comes from ValidatedQuery
21
18
  }
22
19
  /**
@@ -33,7 +30,7 @@ class QueryDatabaseWriter {
33
30
  * @returns Write result with success status and per-query results
34
31
  */
35
32
  async writeQueriesToDatabase(validatedQueries, contextUser) {
36
- const md = new core_1.Metadata();
33
+ const md = new Metadata();
37
34
  const results = [];
38
35
  // Process each query
39
36
  for (const vq of validatedQueries) {
@@ -64,7 +61,7 @@ class QueryDatabaseWriter {
64
61
  results.push(`✓ ${query.Name} (ID: ${query.ID}) - AI extraction queued`);
65
62
  }
66
63
  catch (error) {
67
- results.push(`✗ ${vq.businessQuestion.userQuestion}: ${(0, error_handlers_1.extractErrorMessage)(error, 'Database Write')}`);
64
+ results.push(`✗ ${vq.businessQuestion.userQuestion}: ${extractErrorMessage(error, 'Database Write')}`);
68
65
  }
69
66
  }
70
67
  return {
@@ -112,7 +109,7 @@ class QueryDatabaseWriter {
112
109
  * @returns Category ID
113
110
  */
114
111
  async findOrCreateCategory(categoryName, parentCategoryId, description, contextUser) {
115
- const rv = new core_1.RunView();
112
+ const rv = new RunView();
116
113
  // Build filter to match both name and parent
117
114
  let filter = `Name='${categoryName.replace(/'/g, "''")}'`;
118
115
  if (parentCategoryId) {
@@ -134,7 +131,7 @@ class QueryDatabaseWriter {
134
131
  return result.Results[0].ID;
135
132
  }
136
133
  // Category doesn't exist, create it
137
- const md = new core_1.Metadata();
134
+ const md = new Metadata();
138
135
  const category = await md.GetEntityObject('Query Categories', contextUser);
139
136
  category.NewRecord();
140
137
  category.Name = categoryName;
@@ -147,5 +144,4 @@ class QueryDatabaseWriter {
147
144
  return category.ID;
148
145
  }
149
146
  }
150
- exports.QueryDatabaseWriter = QueryDatabaseWriter;
151
147
  //# sourceMappingURL=QueryDatabaseWriter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"QueryDatabaseWriter.js","sourceRoot":"","sources":["../../src/core/QueryDatabaseWriter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueryDatabaseWriter.js","sourceRoot":"","sources":["../../src/core/QueryDatabaseWriter.ts"],"names":[],"mappings":"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"}
@@ -5,8 +5,8 @@
5
5
  * corrected SQL queries with updated metadata.
6
6
  */
7
7
  import { UserInfo } from '@memberjunction/core';
8
- import { GeneratedQuery, EntityMetadataForPrompt, BusinessQuestion } from '../data/schema';
9
- import { QueryGenConfig } from '../cli/config';
8
+ import { GeneratedQuery, EntityMetadataForPrompt, BusinessQuestion } from '../data/schema.js';
9
+ import { QueryGenConfig } from '../cli/config.js';
10
10
  /**
11
11
  * QueryFixer class
12
12
  * Fixes SQL queries that fail to execute
@@ -1,24 +1,19 @@
1
- "use strict";
2
1
  /**
3
2
  * QueryFixer - Fixes SQL queries that fail execution
4
3
  *
5
4
  * Uses the SQL Query Fixer AI prompt to analyze errors and generate
6
5
  * corrected SQL queries with updated metadata.
7
6
  */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.QueryFixer = void 0;
10
- const aiengine_1 = require("@memberjunction/aiengine");
11
- const core_1 = require("@memberjunction/core");
12
- const error_handlers_1 = require("../utils/error-handlers");
13
- const PromptNames_1 = require("../prompts/PromptNames");
14
- const prompt_helpers_1 = require("../utils/prompt-helpers");
7
+ import { AIEngine } from '@memberjunction/aiengine';
8
+ import { LogStatus } from '@memberjunction/core';
9
+ import { extractErrorMessage } from '../utils/error-handlers.js';
10
+ import { PROMPT_SQL_QUERY_FIXER } from '../prompts/PromptNames.js';
11
+ import { executePromptWithOverrides } from '../utils/prompt-helpers.js';
15
12
  /**
16
13
  * QueryFixer class
17
14
  * Fixes SQL queries that fail to execute
18
15
  */
19
- class QueryFixer {
20
- contextUser;
21
- config;
16
+ export class QueryFixer {
22
17
  constructor(contextUser, config) {
23
18
  this.contextUser = contextUser;
24
19
  this.config = config;
@@ -36,10 +31,10 @@ class QueryFixer {
36
31
  async fixQuery(query, errorMessage, entityMetadata, businessQuestion) {
37
32
  try {
38
33
  // Ensure AIEngine is configured
39
- const aiEngine = aiengine_1.AIEngine.Instance;
34
+ const aiEngine = AIEngine.Instance;
40
35
  await aiEngine.Config(false, this.contextUser);
41
36
  // Find the SQL Query Fixer prompt
42
- const prompt = this.findPromptByName(aiEngine, PromptNames_1.PROMPT_SQL_QUERY_FIXER);
37
+ const prompt = this.findPromptByName(aiEngine, PROMPT_SQL_QUERY_FIXER);
43
38
  // Prepare prompt data
44
39
  const promptData = {
45
40
  queryName: query.queryName,
@@ -57,7 +52,7 @@ class QueryFixer {
57
52
  return fixedQuery;
58
53
  }
59
54
  catch (error) {
60
- throw new Error((0, error_handlers_1.extractErrorMessage)(error, 'QueryFixer.fixQuery'));
55
+ throw new Error(extractErrorMessage(error, 'QueryFixer.fixQuery'));
61
56
  }
62
57
  }
63
58
  /**
@@ -77,7 +72,7 @@ class QueryFixer {
77
72
  */
78
73
  async executePrompt(prompt, promptData) {
79
74
  // The SQL Query Fixer template returns { newSQL, reasoning }
80
- const result = await (0, prompt_helpers_1.executePromptWithOverrides)(prompt, promptData, this.contextUser, this.config);
75
+ const result = await executePromptWithOverrides(prompt, promptData, this.contextUser, this.config);
81
76
  if (!result || !result.success) {
82
77
  throw new Error(`AI prompt execution failed: ${result?.errorMessage || 'Unknown error'}`);
83
78
  }
@@ -86,7 +81,7 @@ class QueryFixer {
86
81
  }
87
82
  // Log the reasoning
88
83
  if (this.config.verbose && result.result.reasoning) {
89
- (0, core_1.LogStatus)(`Query fix reasoning: ${result.result.reasoning}`);
84
+ LogStatus(`Query fix reasoning: ${result.result.reasoning}`);
90
85
  }
91
86
  // Return GeneratedQuery format, preserving original parameters and queryName
92
87
  return {
@@ -113,5 +108,4 @@ class QueryFixer {
113
108
  }
114
109
  }
115
110
  }
116
- exports.QueryFixer = QueryFixer;
117
111
  //# sourceMappingURL=QueryFixer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"QueryFixer.js","sourceRoot":"","sources":["../../src/core/QueryFixer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueryFixer.js","sourceRoot":"","sources":["../../src/core/QueryFixer.ts"],"names":[],"mappings":"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"}
@@ -5,9 +5,9 @@
5
5
  * the business question correctly and improve them through iterations.
6
6
  */
7
7
  import { UserInfo } from '@memberjunction/core';
8
- import { GeneratedQuery, BusinessQuestion, EntityMetadataForPrompt, RefinedQuery } from '../data/schema';
9
- import { QueryTester } from './QueryTester';
10
- import { QueryGenConfig } from '../cli/config';
8
+ import { GeneratedQuery, BusinessQuestion, EntityMetadataForPrompt, RefinedQuery } from '../data/schema.js';
9
+ import { QueryTester } from './QueryTester.js';
10
+ import { QueryGenConfig } from '../cli/config.js';
11
11
  /**
12
12
  * QueryRefiner class
13
13
  * Iteratively refines queries based on evaluation feedback
@@ -1,30 +1,24 @@
1
- "use strict";
2
1
  /**
3
2
  * QueryRefiner - Iteratively improves queries based on evaluation feedback
4
3
  *
5
4
  * Uses evaluation and refinement AI prompts to assess if queries answer
6
5
  * the business question correctly and improve them through iterations.
7
6
  */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.QueryRefiner = void 0;
10
- const aiengine_1 = require("@memberjunction/aiengine");
11
- const core_1 = require("@memberjunction/core");
12
- const error_handlers_1 = require("../utils/error-handlers");
13
- const PromptNames_1 = require("../prompts/PromptNames");
14
- const prompt_helpers_1 = require("../utils/prompt-helpers");
7
+ import { AIEngine } from '@memberjunction/aiengine';
8
+ import { LogStatus } from '@memberjunction/core';
9
+ import { extractErrorMessage } from '../utils/error-handlers.js';
10
+ import { PROMPT_QUERY_EVALUATOR, PROMPT_QUERY_REFINER } from '../prompts/PromptNames.js';
11
+ import { executePromptWithOverrides } from '../utils/prompt-helpers.js';
15
12
  /**
16
13
  * QueryRefiner class
17
14
  * Iteratively refines queries based on evaluation feedback
18
15
  */
19
- class QueryRefiner {
20
- tester;
21
- contextUser;
22
- config;
23
- entityMetadata = [];
16
+ export class QueryRefiner {
24
17
  constructor(tester, contextUser, config) {
25
18
  this.tester = tester;
26
19
  this.contextUser = contextUser;
27
20
  this.config = config;
21
+ this.entityMetadata = [];
28
22
  }
29
23
  /**
30
24
  * Refine a query through evaluation and improvement iterations
@@ -61,7 +55,7 @@ class QueryRefiner {
61
55
  catch (error) {
62
56
  // Query broke during refinement - revert to last working version
63
57
  if (this.config.verbose) {
64
- (0, core_1.LogStatus)(`Refinement produced broken query: ${(0, error_handlers_1.extractErrorMessage)(error, 'Refinement Test')}. Reverting to last working version.`);
58
+ LogStatus(`Refinement produced broken query: ${extractErrorMessage(error, 'Refinement Test')}. Reverting to last working version.`);
65
59
  }
66
60
  // If we have a previous working version, use that
67
61
  if (lastWorkingTestResult && lastWorkingEvaluation) {
@@ -80,7 +74,7 @@ class QueryRefiner {
80
74
  // 4. Refine the query based on suggestions
81
75
  refinementCount++;
82
76
  if (this.config.verbose) {
83
- (0, core_1.LogStatus)(`Refinement iteration ${refinementCount}/${maxRefinements}`);
77
+ LogStatus(`Refinement iteration ${refinementCount}/${maxRefinements}`);
84
78
  }
85
79
  currentQuery = await this.performRefinement(currentQuery, businessQuestion, evaluation, entityMetadata);
86
80
  }
@@ -104,11 +98,11 @@ class QueryRefiner {
104
98
  */
105
99
  async configureAIEngine() {
106
100
  try {
107
- const aiEngine = aiengine_1.AIEngine.Instance;
101
+ const aiEngine = AIEngine.Instance;
108
102
  await aiEngine.Config(false, this.contextUser);
109
103
  }
110
104
  catch (error) {
111
- throw new Error((0, error_handlers_1.extractErrorMessage)(error, 'AIEngine Configuration'));
105
+ throw new Error(extractErrorMessage(error, 'AIEngine Configuration'));
112
106
  }
113
107
  }
114
108
  /**
@@ -166,8 +160,8 @@ class QueryRefiner {
166
160
  */
167
161
  async evaluateQuery(query, businessQuestion, testResult) {
168
162
  try {
169
- const aiEngine = aiengine_1.AIEngine.Instance;
170
- const prompt = this.findPromptByName(aiEngine, PromptNames_1.PROMPT_QUERY_EVALUATOR);
163
+ const aiEngine = AIEngine.Instance;
164
+ const prompt = this.findPromptByName(aiEngine, PROMPT_QUERY_EVALUATOR);
171
165
  // Limit sample results to first 10 rows for efficiency
172
166
  const sampleResults = testResult.sampleRows?.slice(0, 10) || [];
173
167
  const promptData = {
@@ -184,7 +178,7 @@ class QueryRefiner {
184
178
  return evaluation;
185
179
  }
186
180
  catch (error) {
187
- throw new Error((0, error_handlers_1.extractErrorMessage)(error, 'QueryRefiner.evaluateQuery'));
181
+ throw new Error(extractErrorMessage(error, 'QueryRefiner.evaluateQuery'));
188
182
  }
189
183
  }
190
184
  /**
@@ -199,8 +193,8 @@ class QueryRefiner {
199
193
  */
200
194
  async performRefinement(query, businessQuestion, evaluation, entityMetadata) {
201
195
  try {
202
- const aiEngine = aiengine_1.AIEngine.Instance;
203
- const prompt = this.findPromptByName(aiEngine, PromptNames_1.PROMPT_QUERY_REFINER);
196
+ const aiEngine = AIEngine.Instance;
197
+ const prompt = this.findPromptByName(aiEngine, PROMPT_QUERY_REFINER);
204
198
  const promptData = {
205
199
  userQuestion: businessQuestion.userQuestion,
206
200
  description: businessQuestion.description,
@@ -210,7 +204,7 @@ class QueryRefiner {
210
204
  };
211
205
  const refinedQuery = await this.executePrompt(prompt, promptData);
212
206
  if (this.config.verbose) {
213
- (0, core_1.LogStatus)(`Refinements applied: ${refinedQuery.improvementsSummary}`);
207
+ LogStatus(`Refinements applied: ${refinedQuery.improvementsSummary}`);
214
208
  }
215
209
  return {
216
210
  queryName: refinedQuery.queryName,
@@ -219,7 +213,7 @@ class QueryRefiner {
219
213
  };
220
214
  }
221
215
  catch (error) {
222
- throw new Error((0, error_handlers_1.extractErrorMessage)(error, 'QueryRefiner.performRefinement'));
216
+ throw new Error(extractErrorMessage(error, 'QueryRefiner.performRefinement'));
223
217
  }
224
218
  }
225
219
  /**
@@ -238,7 +232,7 @@ class QueryRefiner {
238
232
  * Generic method for any prompt type
239
233
  */
240
234
  async executePrompt(prompt, promptData) {
241
- const result = await (0, prompt_helpers_1.executePromptWithOverrides)(prompt, promptData, this.contextUser, this.config);
235
+ const result = await executePromptWithOverrides(prompt, promptData, this.contextUser, this.config);
242
236
  if (!result || !result.success) {
243
237
  throw new Error(`AI prompt execution failed: ${result?.errorMessage || 'Unknown error'}`);
244
238
  }
@@ -253,16 +247,15 @@ class QueryRefiner {
253
247
  logEvaluation(evaluation) {
254
248
  if (!this.config.verbose)
255
249
  return;
256
- (0, core_1.LogStatus)(`Evaluation: answersQuestion=${evaluation.answersQuestion}, ` +
250
+ LogStatus(`Evaluation: answersQuestion=${evaluation.answersQuestion}, ` +
257
251
  `confidence=${evaluation.confidence}, ` +
258
252
  `needsRefinement=${evaluation.needsRefinement}`);
259
253
  if (evaluation.reasoning) {
260
- (0, core_1.LogStatus)(`Reasoning: ${evaluation.reasoning}`);
254
+ LogStatus(`Reasoning: ${evaluation.reasoning}`);
261
255
  }
262
256
  if (evaluation.suggestions.length > 0) {
263
- (0, core_1.LogStatus)(`Suggestions: ${evaluation.suggestions.join('; ')}`);
257
+ LogStatus(`Suggestions: ${evaluation.suggestions.join('; ')}`);
264
258
  }
265
259
  }
266
260
  }
267
- exports.QueryRefiner = QueryRefiner;
268
261
  //# sourceMappingURL=QueryRefiner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"QueryRefiner.js","sourceRoot":"","sources":["../../src/core/QueryRefiner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueryRefiner.js","sourceRoot":"","sources":["../../src/core/QueryRefiner.ts"],"names":[],"mappings":"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"}
@@ -5,8 +5,8 @@
5
5
  * queries against the database. Handles error fixing with retry loop.
6
6
  */
7
7
  import { DatabaseProviderBase, UserInfo } from '@memberjunction/core';
8
- import { GeneratedQuery, QueryTestResult, EntityMetadataForPrompt, BusinessQuestion } from '../data/schema';
9
- import { QueryGenConfig } from '../cli/config';
8
+ import { GeneratedQuery, QueryTestResult, EntityMetadataForPrompt, BusinessQuestion } from '../data/schema.js';
9
+ import { QueryGenConfig } from '../cli/config.js';
10
10
  /**
11
11
  * QueryTester class
12
12
  * Tests SQL queries by rendering templates and executing against database
@@ -1,50 +1,18 @@
1
- "use strict";
2
1
  /**
3
2
  * QueryTester - Tests and validates SQL queries
4
3
  *
5
4
  * Renders Nunjucks templates with sample parameter values and executes
6
5
  * queries against the database. Handles error fixing with retry loop.
7
6
  */
8
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
- if (k2 === undefined) k2 = k;
10
- var desc = Object.getOwnPropertyDescriptor(m, k);
11
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
- desc = { enumerable: true, get: function() { return m[k]; } };
13
- }
14
- Object.defineProperty(o, k2, desc);
15
- }) : (function(o, m, k, k2) {
16
- if (k2 === undefined) k2 = k;
17
- o[k2] = m[k];
18
- }));
19
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
20
- Object.defineProperty(o, "default", { enumerable: true, value: v });
21
- }) : function(o, v) {
22
- o["default"] = v;
23
- });
24
- var __importStar = (this && this.__importStar) || function (mod) {
25
- if (mod && mod.__esModule) return mod;
26
- var result = {};
27
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
28
- __setModuleDefault(result, mod);
29
- return result;
30
- };
31
- Object.defineProperty(exports, "__esModule", { value: true });
32
- exports.QueryTester = void 0;
33
- const nunjucks = __importStar(require("nunjucks"));
34
- const core_1 = require("@memberjunction/core");
35
- const error_handlers_1 = require("../utils/error-handlers");
36
- const QueryFixer_1 = require("./QueryFixer");
7
+ import nunjucks from 'nunjucks';
8
+ import { RunQuerySQLFilterManager, LogError, } from '@memberjunction/core';
9
+ import { extractErrorMessage } from '../utils/error-handlers.js';
10
+ import { QueryFixer } from './QueryFixer.js';
37
11
  /**
38
12
  * QueryTester class
39
13
  * Tests SQL queries by rendering templates and executing against database
40
14
  */
41
- class QueryTester {
42
- dataProvider;
43
- entityMetadata;
44
- businessQuestion;
45
- contextUser;
46
- config;
47
- nunjucksEnv;
15
+ export class QueryTester {
48
16
  constructor(dataProvider, entityMetadata, businessQuestion, contextUser, config) {
49
17
  this.dataProvider = dataProvider;
50
18
  this.entityMetadata = entityMetadata;
@@ -59,7 +27,7 @@ class QueryTester {
59
27
  lstripBlocks: true,
60
28
  });
61
29
  // Add custom SQL-safe filters from RunQuerySQLFilterManager
62
- const filterManager = core_1.RunQuerySQLFilterManager.Instance;
30
+ const filterManager = RunQuerySQLFilterManager.Instance;
63
31
  const filters = filterManager.getAllFilters();
64
32
  for (const filter of filters) {
65
33
  if (filter.implementation) {
@@ -100,9 +68,9 @@ class QueryTester {
100
68
  };
101
69
  }
102
70
  catch (error) {
103
- lastError = (0, error_handlers_1.extractErrorMessage)(error, 'Query Testing');
71
+ lastError = extractErrorMessage(error, 'Query Testing');
104
72
  if (this.config.verbose) {
105
- (0, core_1.LogError)(`Attempt ${attempt}/${maxAttempts} failed: ${lastError}`);
73
+ LogError(`Attempt ${attempt}/${maxAttempts} failed: ${lastError}`);
106
74
  }
107
75
  // 5. If not last attempt, try to fix the query
108
76
  if (attempt < maxAttempts) {
@@ -139,7 +107,7 @@ class QueryTester {
139
107
  return renderedSQL;
140
108
  }
141
109
  catch (error) {
142
- throw new Error(`Template rendering failed: ${(0, error_handlers_1.extractErrorMessage)(error, 'Nunjucks')}`);
110
+ throw new Error(`Template rendering failed: ${extractErrorMessage(error, 'Nunjucks')}`);
143
111
  }
144
112
  }
145
113
  /**
@@ -223,7 +191,7 @@ class QueryTester {
223
191
  return result;
224
192
  }
225
193
  catch (error) {
226
- throw new Error(`SQL execution failed: ${(0, error_handlers_1.extractErrorMessage)(error, 'Database')}`);
194
+ throw new Error(`SQL execution failed: ${extractErrorMessage(error, 'Database')}`);
227
195
  }
228
196
  }
229
197
  /**
@@ -235,9 +203,8 @@ class QueryTester {
235
203
  * @returns Corrected query
236
204
  */
237
205
  async fixQuery(query, errorMessage) {
238
- const fixer = new QueryFixer_1.QueryFixer(this.contextUser, this.config);
206
+ const fixer = new QueryFixer(this.contextUser, this.config);
239
207
  return await fixer.fixQuery(query, errorMessage, this.entityMetadata, this.businessQuestion);
240
208
  }
241
209
  }
242
- exports.QueryTester = QueryTester;
243
210
  //# sourceMappingURL=QueryTester.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"QueryTester.js","sourceRoot":"","sources":["../../src/core/QueryTester.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueryTester.js","sourceRoot":"","sources":["../../src/core/QueryTester.ts"],"names":[],"mappings":"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"}
@@ -5,8 +5,8 @@
5
5
  * based on business questions and similar golden query examples.
6
6
  */
7
7
  import { UserInfo } from '@memberjunction/core';
8
- import { QueryGenConfig } from '../cli/config';
9
- import { BusinessQuestion, GeneratedQuery, EntityMetadataForPrompt, GoldenQuery } from '../data/schema';
8
+ import { QueryGenConfig } from '../cli/config.js';
9
+ import { BusinessQuestion, GeneratedQuery, EntityMetadataForPrompt, GoldenQuery } from '../data/schema.js';
10
10
  /**
11
11
  * QueryWriter class
12
12
  * Generates Nunjucks SQL query templates using AI with few-shot learning
@@ -1,24 +1,19 @@
1
- "use strict";
2
1
  /**
3
2
  * QueryWriter - Generates SQL query templates using AI with few-shot learning
4
3
  *
5
4
  * Uses the SQL Query Writer AI prompt to generate Nunjucks SQL templates
6
5
  * based on business questions and similar golden query examples.
7
6
  */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.QueryWriter = void 0;
10
- const aiengine_1 = require("@memberjunction/aiengine");
11
- const core_1 = require("@memberjunction/core");
12
- const error_handlers_1 = require("../utils/error-handlers");
13
- const prompt_helpers_1 = require("../utils/prompt-helpers");
14
- const PromptNames_1 = require("../prompts/PromptNames");
7
+ import { AIEngine } from '@memberjunction/aiengine';
8
+ import { LogStatus } from '@memberjunction/core';
9
+ import { extractErrorMessage } from '../utils/error-handlers.js';
10
+ import { executePromptWithOverrides } from '../utils/prompt-helpers.js';
11
+ import { PROMPT_SQL_QUERY_WRITER } from '../prompts/PromptNames.js';
15
12
  /**
16
13
  * QueryWriter class
17
14
  * Generates Nunjucks SQL query templates using AI with few-shot learning
18
15
  */
19
- class QueryWriter {
20
- contextUser;
21
- config;
16
+ export class QueryWriter {
22
17
  constructor(contextUser, config) {
23
18
  this.contextUser = contextUser;
24
19
  this.config = config;
@@ -35,10 +30,10 @@ class QueryWriter {
35
30
  async generateQuery(businessQuestion, entityMetadata, fewShotExamples) {
36
31
  try {
37
32
  // Ensure AIEngine is configured
38
- const aiEngine = aiengine_1.AIEngine.Instance;
33
+ const aiEngine = AIEngine.Instance;
39
34
  await aiEngine.Config(false, this.contextUser);
40
35
  // Find the SQL Query Writer prompt
41
- const prompt = this.findPromptByName(aiEngine, PromptNames_1.PROMPT_SQL_QUERY_WRITER);
36
+ const prompt = this.findPromptByName(aiEngine, PROMPT_SQL_QUERY_WRITER);
42
37
  // Prepare prompt data
43
38
  const promptData = {
44
39
  userQuestion: businessQuestion.userQuestion,
@@ -54,7 +49,7 @@ class QueryWriter {
54
49
  return generatedQuery;
55
50
  }
56
51
  catch (error) {
57
- throw new Error((0, error_handlers_1.extractErrorMessage)(error, 'QueryWriter.generateQuery'));
52
+ throw new Error(extractErrorMessage(error, 'QueryWriter.generateQuery'));
58
53
  }
59
54
  }
60
55
  /**
@@ -79,7 +74,7 @@ class QueryWriter {
79
74
  for (let attempt = 0; attempt <= maxRetries; attempt++) {
80
75
  try {
81
76
  // Execute AI prompt
82
- const result = await (0, prompt_helpers_1.executePromptWithOverrides)(prompt, promptData, this.contextUser, this.config);
77
+ const result = await executePromptWithOverrides(prompt, promptData, this.contextUser, this.config);
83
78
  if (!result || !result.success) {
84
79
  throw new Error(`AI prompt execution failed: ${result?.errorMessage || 'Unknown error'}`);
85
80
  }
@@ -101,8 +96,8 @@ class QueryWriter {
101
96
  }
102
97
  // Log retry attempt
103
98
  if (this.config.verbose) {
104
- (0, core_1.LogStatus)(`⚠️ Query validation failed on attempt ${attempt + 1}/${maxRetries + 1}: ${lastError.message}`);
105
- (0, core_1.LogStatus)(` Retrying with validation feedback...`);
99
+ LogStatus(`⚠️ Query validation failed on attempt ${attempt + 1}/${maxRetries + 1}: ${lastError.message}`);
100
+ LogStatus(` Retrying with validation feedback...`);
106
101
  }
107
102
  // Add validation feedback to the prompt data for next attempt
108
103
  // This helps the LLM correct its mistakes
@@ -180,5 +175,4 @@ class QueryWriter {
180
175
  }
181
176
  }
182
177
  }
183
- exports.QueryWriter = QueryWriter;
184
178
  //# sourceMappingURL=QueryWriter.js.map