@memberjunction/query-gen 2.126.1 → 2.128.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.
- package/.turbo/turbo-build.log +1 -1
- package/CHANGELOG.md +33 -0
- package/dist/cli/commands/export.js +0 -1
- package/dist/cli/commands/export.js.map +1 -1
- package/dist/cli/commands/generate.d.ts.map +1 -1
- package/dist/cli/commands/generate.js +1 -1
- package/dist/cli/commands/generate.js.map +1 -1
- package/dist/cli/commands/validate.js +1 -0
- package/dist/cli/commands/validate.js.map +1 -1
- package/dist/cli/config.d.ts +1 -0
- package/dist/cli/config.d.ts.map +1 -1
- package/dist/cli/config.js +1 -0
- package/dist/cli/config.js.map +1 -1
- package/dist/core/EntityGrouper.d.ts +2 -3
- package/dist/core/EntityGrouper.d.ts.map +1 -1
- package/dist/core/EntityGrouper.js +45 -4
- package/dist/core/EntityGrouper.js.map +1 -1
- package/dist/core/MetadataExporter.d.ts +13 -3
- package/dist/core/MetadataExporter.d.ts.map +1 -1
- package/dist/core/MetadataExporter.js +41 -13
- package/dist/core/MetadataExporter.js.map +1 -1
- package/dist/core/QueryDatabaseWriter.d.ts.map +1 -1
- package/dist/core/QueryDatabaseWriter.js +1 -2
- package/dist/core/QueryDatabaseWriter.js.map +1 -1
- package/dist/core/QueryFixer.d.ts.map +1 -1
- package/dist/core/QueryFixer.js +3 -1
- package/dist/core/QueryFixer.js.map +1 -1
- package/dist/core/QueryRefiner.d.ts.map +1 -1
- package/dist/core/QueryRefiner.js +1 -0
- package/dist/core/QueryRefiner.js.map +1 -1
- package/dist/core/QuestionGenerator.d.ts +4 -5
- package/dist/core/QuestionGenerator.d.ts.map +1 -1
- package/dist/core/QuestionGenerator.js +38 -24
- package/dist/core/QuestionGenerator.js.map +1 -1
- package/dist/data/schema.d.ts +1 -1
- package/dist/data/schema.d.ts.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -3
- package/dist/index.js.map +1 -1
- package/package.json +10 -10
- package/src/cli/commands/export.ts +0 -1
- package/src/cli/commands/generate.ts +1 -2
- package/src/cli/commands/validate.ts +1 -0
- package/src/cli/config.ts +3 -0
- package/src/core/EntityGrouper.ts +55 -4
- package/src/core/MetadataExporter.ts +46 -14
- package/src/core/QueryDatabaseWriter.ts +1 -2
- package/src/core/QueryFixer.ts +4 -1
- package/src/core/QueryRefiner.ts +1 -0
- package/src/core/QuestionGenerator.ts +51 -37
- package/src/data/schema.ts +1 -1
- package/src/index.ts +0 -1
- package/dist/utils/query-helpers.d.ts +0 -23
- package/dist/utils/query-helpers.d.ts.map +0 -1
- package/dist/utils/query-helpers.js +0 -34
- package/dist/utils/query-helpers.js.map +0 -1
- package/src/utils/query-helpers.ts +0 -32
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueryFixer.js","sourceRoot":"","sources":["../../src/core/QueryFixer.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,uDAAoD;AAEpD,+CAA2D;AAC3D,4DAA8D;AAM9D,wDAAgE;AAEhE,4DAAqE;AAErE;;;GAGG;AACH,MAAa,UAAU;IAEX;IACA;IAFV,YACU,WAAqB,EACrB,MAAsB;QADtB,gBAAW,GAAX,WAAW,CAAU;QACrB,WAAM,GAAN,MAAM,CAAgB;IAC7B,CAAC;IAEJ;;;;;;;;;OASG;IACH,KAAK,CAAC,QAAQ,CACZ,KAAqB,EACrB,YAAoB,EACpB,cAAyC,EACzC,gBAAkC;QAElC,IAAI,CAAC;YACH,gCAAgC;YAChC,MAAM,QAAQ,GAAG,mBAAQ,CAAC,QAAQ,CAAC;YACnC,MAAM,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YAE/C,kCAAkC;YAClC,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,oCAAsB,CAAC,CAAC;YAEvE,sBAAsB;YACtB,MAAM,UAAU,GAAG;gBACjB,WAAW,EAAE,KAAK,CAAC,GAAG;gBACtB,YAAY;gBACZ,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,cAAc;gBACd,YAAY,EAAE,gBAAgB,CAAC,YAAY;gBAC3C,WAAW,EAAE,gBAAgB,CAAC,WAAW;aAC1C,CAAC;YAEF,qCAAqC;YACrC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YAEhE,qCAAqC;YACrC,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;YAEpC,OAAO,UAAU,CAAC;QACpB,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,IAAA,oCAAmB,EAAC,KAAK,EAAE,qBAAqB,CAAC,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,gBAAgB,CACtB,QAAkB,EAClB,UAAkB;QAElB,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;QACnE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,WAAW,UAAU,+BAA+B,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,aAAa,CACzB,MAA8B,EAC9B,
|
|
1
|
+
{"version":3,"file":"QueryFixer.js","sourceRoot":"","sources":["../../src/core/QueryFixer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueryRefiner.d.ts","sourceRoot":"","sources":["../../src/core/QueryRefiner.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,QAAQ,EAAa,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,uBAAuB,EACvB,YAAY,EAGb,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAG/C;;;GAGG;AACH,qBAAa,YAAY;IAIrB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,MAAM;IALhB,OAAO,CAAC,cAAc,CAAiC;gBAG7C,MAAM,EAAE,WAAW,EACnB,WAAW,EAAE,QAAQ,EACrB,MAAM,EAAE,cAAc;IAGhC;;;;;;;;;;;OAWG;IACG,WAAW,CACf,KAAK,EAAE,cAAc,EACrB,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,uBAAuB,EAAE,EACzC,cAAc,GAAE,MAAU,GACzB,OAAO,CAAC,YAAY,CAAC;IA+FxB;;;OAGG;YACW,iBAAiB;IAS/B;;;OAGG;YACW,gBAAgB;IAY9B;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAI1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;;OAGG;YACW,gBAAgB;IAqB9B;;;;;;;;OAQG;YACW,aAAa;IAkC3B;;;;;;;;;OASG;YACW,iBAAiB;
|
|
1
|
+
{"version":3,"file":"QueryRefiner.d.ts","sourceRoot":"","sources":["../../src/core/QueryRefiner.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,QAAQ,EAAa,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,uBAAuB,EACvB,YAAY,EAGb,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAG/C;;;GAGG;AACH,qBAAa,YAAY;IAIrB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,MAAM;IALhB,OAAO,CAAC,cAAc,CAAiC;gBAG7C,MAAM,EAAE,WAAW,EACnB,WAAW,EAAE,QAAQ,EACrB,MAAM,EAAE,cAAc;IAGhC;;;;;;;;;;;OAWG;IACG,WAAW,CACf,KAAK,EAAE,cAAc,EACrB,gBAAgB,EAAE,gBAAgB,EAClC,cAAc,EAAE,uBAAuB,EAAE,EACzC,cAAc,GAAE,MAAU,GACzB,OAAO,CAAC,YAAY,CAAC;IA+FxB;;;OAGG;YACW,iBAAiB;IAS/B;;;OAGG;YACW,gBAAgB;IAY9B;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAI1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;;OAGG;YACW,gBAAgB;IAqB9B;;;;;;;;OAQG;YACW,aAAa;IAkC3B;;;;;;;;;OASG;YACW,iBAAiB;IAsC/B;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAWxB;;;OAGG;YACW,aAAa;IAwB3B;;OAEG;IACH,OAAO,CAAC,aAAa;CAiBtB"}
|
|
@@ -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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"}
|
|
@@ -36,10 +36,11 @@ export declare class QuestionGenerator {
|
|
|
36
36
|
/**
|
|
37
37
|
* Validate and filter business questions
|
|
38
38
|
* Removes low-quality or unanswerable questions
|
|
39
|
+
* Corrects entity name casing to match exact entity group names
|
|
39
40
|
*
|
|
40
41
|
* @param questions - Raw questions from AI
|
|
41
42
|
* @param entityGroup - Entity group for validation context
|
|
42
|
-
* @returns Filtered array of valid questions
|
|
43
|
+
* @returns Filtered array of valid questions with corrected entity names
|
|
43
44
|
*/
|
|
44
45
|
private validateQuestions;
|
|
45
46
|
/**
|
|
@@ -48,11 +49,9 @@ export declare class QuestionGenerator {
|
|
|
48
49
|
private hasRequiredFields;
|
|
49
50
|
/**
|
|
50
51
|
* Check if question references entities in the group
|
|
52
|
+
* Uses case-insensitive matching to handle minor casing differences
|
|
53
|
+
* Also accepts base view names as valid references
|
|
51
54
|
*/
|
|
52
55
|
private referencesGroupEntities;
|
|
53
|
-
/**
|
|
54
|
-
* Check if question is too generic to be useful
|
|
55
|
-
*/
|
|
56
|
-
private isTooGeneric;
|
|
57
56
|
}
|
|
58
57
|
//# sourceMappingURL=QuestionGenerator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuestionGenerator.d.ts","sourceRoot":"","sources":["../../src/core/QuestionGenerator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,QAAQ,EAAa,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAI/C,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAU/D;;;GAGG;AACH,qBAAa,iBAAiB;IAE1B,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,MAAM;gBADN,WAAW,EAAE,QAAQ,EACrB,MAAM,EAAE,cAAc;IAGhC;;;;;;OAMG;IACG,iBAAiB,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAyC9E;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAWxB;;;OAGG;YACW,aAAa;IAuB3B
|
|
1
|
+
{"version":3,"file":"QuestionGenerator.d.ts","sourceRoot":"","sources":["../../src/core/QuestionGenerator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,QAAQ,EAAa,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAI/C,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAU/D;;;GAGG;AACH,qBAAa,iBAAiB;IAE1B,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,MAAM;gBADN,WAAW,EAAE,QAAQ,EACrB,MAAM,EAAE,cAAc;IAGhC;;;;;;OAMG;IACG,iBAAiB,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAyC9E;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAWxB;;;OAGG;YACW,aAAa;IAuB3B;;;;;;;;OAQG;IACH,OAAO,CAAC,iBAAiB;IAmDzB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAWzB;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;CAShC"}
|
|
@@ -87,27 +87,52 @@ class QuestionGenerator {
|
|
|
87
87
|
/**
|
|
88
88
|
* Validate and filter business questions
|
|
89
89
|
* Removes low-quality or unanswerable questions
|
|
90
|
+
* Corrects entity name casing to match exact entity group names
|
|
90
91
|
*
|
|
91
92
|
* @param questions - Raw questions from AI
|
|
92
93
|
* @param entityGroup - Entity group for validation context
|
|
93
|
-
* @returns Filtered array of valid questions
|
|
94
|
+
* @returns Filtered array of valid questions with corrected entity names
|
|
94
95
|
*/
|
|
95
96
|
validateQuestions(questions, entityGroup) {
|
|
96
|
-
|
|
97
|
-
|
|
97
|
+
// Create case-insensitive lookup map: lowercase -> exact entity name
|
|
98
|
+
// Also map BaseView names to correct entity names (in case LLM returns view names)
|
|
99
|
+
const entityNameLookup = new Map();
|
|
100
|
+
for (const entity of entityGroup.entities) {
|
|
101
|
+
// Map entity name (case-insensitive)
|
|
102
|
+
entityNameLookup.set(entity.Name.toLowerCase(), entity.Name);
|
|
103
|
+
// Map base view name to entity name (case-insensitive) as backup
|
|
104
|
+
if (entity.BaseView) {
|
|
105
|
+
entityNameLookup.set(entity.BaseView.toLowerCase(), entity.Name);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
return questions
|
|
109
|
+
.filter((q) => {
|
|
98
110
|
// Must have required fields
|
|
99
111
|
if (!this.hasRequiredFields(q)) {
|
|
112
|
+
if (this.config.verbose) {
|
|
113
|
+
(0, core_1.LogStatus)(` ❌ Filtered: Missing required fields - "${q.userQuestion?.substring(0, 60)}..."`);
|
|
114
|
+
}
|
|
100
115
|
return false;
|
|
101
116
|
}
|
|
102
|
-
// Must reference entities in the group
|
|
103
|
-
if (!this.referencesGroupEntities(q,
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
if (this.isTooGeneric(q)) {
|
|
117
|
+
// Must reference entities in the group (by name or base view)
|
|
118
|
+
if (!this.referencesGroupEntities(q, entityNameLookup)) {
|
|
119
|
+
if (this.config.verbose) {
|
|
120
|
+
(0, core_1.LogStatus)(` ❌ Filtered: Doesn't reference group entities - "${q.userQuestion.substring(0, 60)}..." (references: ${q.entities.join(', ')})`);
|
|
121
|
+
}
|
|
108
122
|
return false;
|
|
109
123
|
}
|
|
110
124
|
return true;
|
|
125
|
+
})
|
|
126
|
+
.map((q) => {
|
|
127
|
+
// Correct entity name casing to match exact entity group names
|
|
128
|
+
const correctedEntities = q.entities.map((entityName) => {
|
|
129
|
+
const exactName = entityNameLookup.get(entityName.toLowerCase());
|
|
130
|
+
return exactName || entityName; // Use exact name if found, otherwise keep original
|
|
131
|
+
});
|
|
132
|
+
return {
|
|
133
|
+
...q,
|
|
134
|
+
entities: correctedEntities
|
|
135
|
+
};
|
|
111
136
|
});
|
|
112
137
|
}
|
|
113
138
|
/**
|
|
@@ -123,22 +148,11 @@ class QuestionGenerator {
|
|
|
123
148
|
}
|
|
124
149
|
/**
|
|
125
150
|
* Check if question references entities in the group
|
|
151
|
+
* Uses case-insensitive matching to handle minor casing differences
|
|
152
|
+
* Also accepts base view names as valid references
|
|
126
153
|
*/
|
|
127
|
-
referencesGroupEntities(question,
|
|
128
|
-
return question.entities.some((entityName) =>
|
|
129
|
-
}
|
|
130
|
-
/**
|
|
131
|
-
* Check if question is too generic to be useful
|
|
132
|
-
*/
|
|
133
|
-
isTooGeneric(question) {
|
|
134
|
-
const genericPatterns = [
|
|
135
|
-
/show\s+me\s+all/i,
|
|
136
|
-
/list\s+all/i,
|
|
137
|
-
/get\s+all/i,
|
|
138
|
-
/display\s+all/i,
|
|
139
|
-
/^what\s+is/i,
|
|
140
|
-
];
|
|
141
|
-
return genericPatterns.some((pattern) => pattern.test(question.userQuestion));
|
|
154
|
+
referencesGroupEntities(question, entityNameLookup) {
|
|
155
|
+
return question.entities.some((entityName) => entityNameLookup.has(entityName.toLowerCase()));
|
|
142
156
|
}
|
|
143
157
|
}
|
|
144
158
|
exports.QuestionGenerator = QuestionGenerator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuestionGenerator.js","sourceRoot":"","sources":["../../src/core/QuestionGenerator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"QuestionGenerator.js","sourceRoot":"","sources":["../../src/core/QuestionGenerator.ts"],"names":[],"mappings":"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"}
|
package/dist/data/schema.d.ts
CHANGED
|
@@ -72,6 +72,7 @@ export interface BusinessQuestion {
|
|
|
72
72
|
* Note: selectClause removed - QueryEntity automatically creates QueryFieldEntity records from SQL
|
|
73
73
|
*/
|
|
74
74
|
export interface GeneratedQuery {
|
|
75
|
+
queryName: string;
|
|
75
76
|
sql: string;
|
|
76
77
|
parameters: QueryParameter[];
|
|
77
78
|
}
|
|
@@ -206,7 +207,6 @@ export interface QueryMetadataRecord {
|
|
|
206
207
|
Description: string;
|
|
207
208
|
TechnicalDescription: string;
|
|
208
209
|
SQL: string;
|
|
209
|
-
OriginalSQL: string;
|
|
210
210
|
UsesTemplate: boolean;
|
|
211
211
|
Status: string;
|
|
212
212
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/data/schema.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/data/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -24,5 +24,4 @@ export { validateCommand } from './cli/commands/validate';
|
|
|
24
24
|
export { exportCommand } from './cli/commands/export';
|
|
25
25
|
export { extractErrorMessage, requireValue, getPropertyOrDefault } from './utils/error-handlers';
|
|
26
26
|
export { formatEntityMetadataForPrompt, formatEntityGroupForPrompt, findEntityById, getPrimaryKeyFields, getForeignKeyFields, hasRelationships, getRelationshipCount } from './utils/entity-helpers';
|
|
27
|
-
export { generateQueryName } from './utils/query-helpers';
|
|
28
27
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAGjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAG9D,cAAc,eAAe,CAAC;AAG9B,cAAc,uBAAuB,CAAC;AAGtC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAGtD,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACjG,OAAO,EACL,6BAA6B,EAC7B,0BAA0B,EAC1B,cAAc,EACd,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,wBAAwB,CAAC
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAGjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAG9D,cAAc,eAAe,CAAC;AAG9B,cAAc,uBAAuB,CAAC;AAGtC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAGtD,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACjG,OAAO,EACL,6BAA6B,EAC7B,0BAA0B,EAC1B,cAAc,EACd,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,wBAAwB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -22,7 +22,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
22
22
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
23
23
|
};
|
|
24
24
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
-
exports.
|
|
25
|
+
exports.getRelationshipCount = exports.hasRelationships = exports.getForeignKeyFields = exports.getPrimaryKeyFields = exports.findEntityById = exports.formatEntityGroupForPrompt = exports.formatEntityMetadataForPrompt = exports.getPropertyOrDefault = exports.requireValue = exports.extractErrorMessage = exports.exportCommand = exports.validateCommand = exports.generateCommand = exports.loadConfig = exports.EmbeddingService = exports.SimilaritySearch = exports.QueryDatabaseWriter = exports.MetadataExporter = exports.QueryRefiner = exports.QueryFixer = exports.QueryTester = exports.QueryWriter = exports.QuestionGenerator = exports.EntityGrouper = void 0;
|
|
26
26
|
// Export core classes
|
|
27
27
|
var EntityGrouper_1 = require("./core/EntityGrouper");
|
|
28
28
|
Object.defineProperty(exports, "EntityGrouper", { enumerable: true, get: function () { return EntityGrouper_1.EntityGrouper; } });
|
|
@@ -72,6 +72,4 @@ Object.defineProperty(exports, "getPrimaryKeyFields", { enumerable: true, get: f
|
|
|
72
72
|
Object.defineProperty(exports, "getForeignKeyFields", { enumerable: true, get: function () { return entity_helpers_1.getForeignKeyFields; } });
|
|
73
73
|
Object.defineProperty(exports, "hasRelationships", { enumerable: true, get: function () { return entity_helpers_1.hasRelationships; } });
|
|
74
74
|
Object.defineProperty(exports, "getRelationshipCount", { enumerable: true, get: function () { return entity_helpers_1.getRelationshipCount; } });
|
|
75
|
-
var query_helpers_1 = require("./utils/query-helpers");
|
|
76
|
-
Object.defineProperty(exports, "generateQueryName", { enumerable: true, get: function () { return query_helpers_1.generateQueryName; } });
|
|
77
75
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;;;;;;;;;;;;;;;AAEH,sBAAsB;AACtB,sDAAqD;AAA5C,8GAAA,aAAa,OAAA;AACtB,8DAA6D;AAApD,sHAAA,iBAAiB,OAAA;AAC1B,kDAAiD;AAAxC,0GAAA,WAAW,OAAA;AACpB,kDAAiD;AAAxC,0GAAA,WAAW,OAAA;AACpB,gDAA+C;AAAtC,wGAAA,UAAU,OAAA;AACnB,oDAAmD;AAA1C,4GAAA,YAAY,OAAA;AACrB,4DAA2D;AAAlD,oHAAA,gBAAgB,OAAA;AACzB,kEAAiE;AAAxD,0HAAA,mBAAmB,OAAA;AAE5B,yBAAyB;AACzB,+DAA8D;AAArD,oHAAA,gBAAgB,OAAA;AACzB,+DAA8D;AAArD,oHAAA,gBAAgB,OAAA;AAEzB,eAAe;AACf,gDAA8B;AAE9B,sBAAsB;AACtB,wDAAsC;AAEtC,uBAAuB;AACvB,uCAA0D;AAAjC,oGAAA,UAAU,OAAA;AAEnC,sBAAsB;AACtB,oDAA0D;AAAjD,2GAAA,eAAe,OAAA;AACxB,oDAA0D;AAAjD,2GAAA,eAAe,OAAA;AACxB,gDAAsD;AAA7C,uGAAA,aAAa,OAAA;AAEtB,mBAAmB;AACnB,yDAAiG;AAAxF,qHAAA,mBAAmB,OAAA;AAAE,8GAAA,YAAY,OAAA;AAAE,sHAAA,oBAAoB,OAAA;AAChE,yDAQgC;AAP9B,+HAAA,6BAA6B,OAAA;AAC7B,4HAAA,0BAA0B,OAAA;AAC1B,gHAAA,cAAc,OAAA;AACd,qHAAA,mBAAmB,OAAA;AACnB,qHAAA,mBAAmB,OAAA;AACnB,kHAAA,gBAAgB,OAAA;AAChB,sHAAA,oBAAoB,OAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;;;;;;;;;;;;;;;AAEH,sBAAsB;AACtB,sDAAqD;AAA5C,8GAAA,aAAa,OAAA;AACtB,8DAA6D;AAApD,sHAAA,iBAAiB,OAAA;AAC1B,kDAAiD;AAAxC,0GAAA,WAAW,OAAA;AACpB,kDAAiD;AAAxC,0GAAA,WAAW,OAAA;AACpB,gDAA+C;AAAtC,wGAAA,UAAU,OAAA;AACnB,oDAAmD;AAA1C,4GAAA,YAAY,OAAA;AACrB,4DAA2D;AAAlD,oHAAA,gBAAgB,OAAA;AACzB,kEAAiE;AAAxD,0HAAA,mBAAmB,OAAA;AAE5B,yBAAyB;AACzB,+DAA8D;AAArD,oHAAA,gBAAgB,OAAA;AACzB,+DAA8D;AAArD,oHAAA,gBAAgB,OAAA;AAEzB,eAAe;AACf,gDAA8B;AAE9B,sBAAsB;AACtB,wDAAsC;AAEtC,uBAAuB;AACvB,uCAA0D;AAAjC,oGAAA,UAAU,OAAA;AAEnC,sBAAsB;AACtB,oDAA0D;AAAjD,2GAAA,eAAe,OAAA;AACxB,oDAA0D;AAAjD,2GAAA,eAAe,OAAA;AACxB,gDAAsD;AAA7C,uGAAA,aAAa,OAAA;AAEtB,mBAAmB;AACnB,yDAAiG;AAAxF,qHAAA,mBAAmB,OAAA;AAAE,8GAAA,YAAY,OAAA;AAAE,sHAAA,oBAAoB,OAAA;AAChE,yDAQgC;AAP9B,+HAAA,6BAA6B,OAAA;AAC7B,4HAAA,0BAA0B,OAAA;AAC1B,gHAAA,cAAc,OAAA;AACd,qHAAA,mBAAmB,OAAA;AACnB,qHAAA,mBAAmB,OAAA;AACnB,kHAAA,gBAAgB,OAAA;AAChB,sHAAA,oBAAoB,OAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/query-gen",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.128.0",
|
|
4
4
|
"description": "AI-powered generation of domain-specific SQL query templates with automatic testing, refinement, and metadata export",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -25,15 +25,15 @@
|
|
|
25
25
|
"author": "MemberJunction",
|
|
26
26
|
"license": "MIT",
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@memberjunction/ai": "2.
|
|
29
|
-
"@memberjunction/ai-core-plus": "2.
|
|
30
|
-
"@memberjunction/aiengine": "2.
|
|
31
|
-
"@memberjunction/ai-prompts": "2.
|
|
32
|
-
"@memberjunction/ai-vectors-memory": "2.
|
|
33
|
-
"@memberjunction/core": "2.
|
|
34
|
-
"@memberjunction/core-entities": "2.
|
|
35
|
-
"@memberjunction/global": "2.
|
|
36
|
-
"@memberjunction/sqlserver-dataprovider": "2.
|
|
28
|
+
"@memberjunction/ai": "2.128.0",
|
|
29
|
+
"@memberjunction/ai-core-plus": "2.128.0",
|
|
30
|
+
"@memberjunction/aiengine": "2.128.0",
|
|
31
|
+
"@memberjunction/ai-prompts": "2.128.0",
|
|
32
|
+
"@memberjunction/ai-vectors-memory": "2.128.0",
|
|
33
|
+
"@memberjunction/core": "2.128.0",
|
|
34
|
+
"@memberjunction/core-entities": "2.128.0",
|
|
35
|
+
"@memberjunction/global": "2.128.0",
|
|
36
|
+
"@memberjunction/sqlserver-dataprovider": "2.128.0",
|
|
37
37
|
"chalk": "^4.1.2",
|
|
38
38
|
"commander": "^11.1.0",
|
|
39
39
|
"nunjucks": "^3.2.4",
|
|
@@ -155,7 +155,6 @@ async function convertQueryToMetadata(
|
|
|
155
155
|
Description: query.Description || '',
|
|
156
156
|
TechnicalDescription: query.TechnicalDescription || '',
|
|
157
157
|
SQL: query.SQL || '',
|
|
158
|
-
OriginalSQL: query.OriginalSQL || query.SQL || '',
|
|
159
158
|
UsesTemplate: query.UsesTemplate || false,
|
|
160
159
|
Status: query.Status || 'Active',
|
|
161
160
|
},
|
|
@@ -254,8 +254,7 @@ export async function generateCommand(options: Record<string, unknown>): Promise
|
|
|
254
254
|
const exportResult = await exporter.exportQueries(
|
|
255
255
|
allValidatedQueries,
|
|
256
256
|
uniqueCategories,
|
|
257
|
-
config
|
|
258
|
-
config.outputCategoryDirectory
|
|
257
|
+
config
|
|
259
258
|
);
|
|
260
259
|
spinner.succeed(chalk.green(`Exported to ${exportResult.outputPath}`));
|
|
261
260
|
}
|
|
@@ -179,6 +179,7 @@ async function loadQueryFiles(queryPath: string): Promise<Array<{ file: string;
|
|
|
179
179
|
*/
|
|
180
180
|
function convertMetadataToGeneratedQuery(record: QueryMetadataRecord): GeneratedQuery {
|
|
181
181
|
return {
|
|
182
|
+
queryName: record.fields.Name,
|
|
182
183
|
sql: record.fields.SQL,
|
|
183
184
|
parameters: [], // Not needed for validation - QueryEntity will extract
|
|
184
185
|
};
|
package/src/cli/config.ts
CHANGED
|
@@ -45,6 +45,7 @@ export interface QueryGenConfig {
|
|
|
45
45
|
outputMode: 'metadata' | 'database' | 'both';
|
|
46
46
|
outputDirectory: string;
|
|
47
47
|
outputCategoryDirectory?: string; // Optional: defaults to outputDirectory if not provided
|
|
48
|
+
externalizeSQLToFiles: boolean; // When true, creates separate .sql files and uses @file: references
|
|
48
49
|
|
|
49
50
|
// Query Category Configuration
|
|
50
51
|
rootQueryCategory: string;
|
|
@@ -84,6 +85,7 @@ const DEFAULT_CONFIG: QueryGenConfig = {
|
|
|
84
85
|
},
|
|
85
86
|
outputMode: 'metadata',
|
|
86
87
|
outputDirectory: './metadata/queries',
|
|
88
|
+
externalizeSQLToFiles: true,
|
|
87
89
|
rootQueryCategory: 'Auto-Generated',
|
|
88
90
|
autoCreateEntityQueryCategories: false,
|
|
89
91
|
parallelGenerations: 1,
|
|
@@ -116,6 +118,7 @@ export function loadConfig(cliOptions: Record<string, unknown>): QueryGenConfig
|
|
|
116
118
|
}
|
|
117
119
|
|
|
118
120
|
// Override with CLI options
|
|
121
|
+
|
|
119
122
|
if (cliOptions.entities) {
|
|
120
123
|
config.includeEntities = parseArrayOption(cliOptions.entities);
|
|
121
124
|
}
|
|
@@ -118,9 +118,8 @@ export class EntityGrouper {
|
|
|
118
118
|
/**
|
|
119
119
|
* Prepare schema data for LLM prompt
|
|
120
120
|
*
|
|
121
|
-
*
|
|
122
|
-
*
|
|
123
|
-
* schema and relationship graph for intelligent analysis.
|
|
121
|
+
* Calculates a target group count based on entity count and group size constraints
|
|
122
|
+
* to guide the LLM toward appropriate coverage.
|
|
124
123
|
*
|
|
125
124
|
* @param entities - Entities within a single schema
|
|
126
125
|
* @param schemaName - Name of the schema being processed
|
|
@@ -129,12 +128,64 @@ export class EntityGrouper {
|
|
|
129
128
|
const formattedEntities = formatEntitiesForPrompt(entities);
|
|
130
129
|
const relationshipGraph = generateRelationshipGraph(entities);
|
|
131
130
|
|
|
131
|
+
// Calculate target group count using graph theory metrics
|
|
132
|
+
// This approach uses actual schema connectivity instead of arbitrary thresholds
|
|
133
|
+
const avgGroupSize = (this.config.minGroupSize + this.config.maxGroupSize) / 2;
|
|
134
|
+
|
|
135
|
+
// Calculate graph metrics
|
|
136
|
+
const totalRelationships = entities.reduce((sum, e) => sum + e.RelatedEntities.length, 0);
|
|
137
|
+
const avgDegree = totalRelationships / entities.length;
|
|
138
|
+
|
|
139
|
+
// Identify hub entities (>5 relationships) - these create many group opportunities
|
|
140
|
+
const hubEntities = entities.filter(e => e.RelatedEntities.length > 5);
|
|
141
|
+
const hubCount = hubEntities.length;
|
|
142
|
+
const maxHubDegree = hubCount > 0 ? Math.max(...hubEntities.map(e => e.RelatedEntities.length)) : 0;
|
|
143
|
+
|
|
144
|
+
// Base coverage: Start with full coverage (1.0) for any connected schema
|
|
145
|
+
// Boost if there are hub entities that create multiple grouping opportunities
|
|
146
|
+
let baseCoverage = 1.0;
|
|
147
|
+
|
|
148
|
+
// Hub multiplier: Each hub entity can participate in many groups
|
|
149
|
+
// A hub with 30 relationships can create ~15 meaningful 2-entity groups
|
|
150
|
+
if (hubCount > 0) {
|
|
151
|
+
// Each hub adds potential groups proportional to its degree
|
|
152
|
+
const hubBoost = (maxHubDegree / entities.length) * 0.5;
|
|
153
|
+
baseCoverage = Math.min(1.0 + hubBoost, 1.5);
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
// Connectivity multiplier: Higher average degree = more overlapping groups possible
|
|
157
|
+
const connectivityMultiplier = Math.min(1.0 + (avgDegree / 10), 1.3);
|
|
158
|
+
|
|
159
|
+
// Final target combining both metrics
|
|
160
|
+
const targetGroupCount = Math.ceil(
|
|
161
|
+
(entities.length * baseCoverage * connectivityMultiplier) / avgGroupSize
|
|
162
|
+
);
|
|
163
|
+
|
|
164
|
+
// Log metrics in verbose mode
|
|
165
|
+
if (this.config.verbose) {
|
|
166
|
+
LogStatus(`\nSchema Graph Metrics (${schemaName}):`);
|
|
167
|
+
LogStatus(` Total entities: ${entities.length}`);
|
|
168
|
+
LogStatus(` Total relationships: ${totalRelationships}`);
|
|
169
|
+
LogStatus(` Average degree: ${avgDegree.toFixed(2)}`);
|
|
170
|
+
LogStatus(` Hub entities (>5 rels): ${hubCount}`);
|
|
171
|
+
if (hubCount > 0) {
|
|
172
|
+
LogStatus(` Largest hub degree: ${maxHubDegree}`);
|
|
173
|
+
}
|
|
174
|
+
LogStatus(` Base coverage: ${baseCoverage.toFixed(2)}`);
|
|
175
|
+
LogStatus(` Connectivity multiplier: ${connectivityMultiplier.toFixed(2)}`);
|
|
176
|
+
LogStatus(` → Target group count: ${targetGroupCount}\n`);
|
|
177
|
+
}
|
|
178
|
+
|
|
132
179
|
return {
|
|
133
180
|
schemaName,
|
|
134
181
|
entities: formattedEntities,
|
|
135
182
|
relationshipGraph,
|
|
136
183
|
minGroupSize: this.config.minGroupSize,
|
|
137
|
-
maxGroupSize: this.config.maxGroupSize
|
|
184
|
+
maxGroupSize: this.config.maxGroupSize,
|
|
185
|
+
targetGroupCount,
|
|
186
|
+
avgDegree: avgDegree.toFixed(1),
|
|
187
|
+
hubCount,
|
|
188
|
+
maxHubDegree: hubCount > 0 ? maxHubDegree : undefined
|
|
138
189
|
};
|
|
139
190
|
}
|
|
140
191
|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
import { promises as fs } from 'fs';
|
|
9
9
|
import * as path from 'path';
|
|
10
10
|
import { ValidatedQuery, ExportResult, QueryMetadataRecord, QueryCategoryInfo } from '../data/schema';
|
|
11
|
-
import {
|
|
11
|
+
import { QueryGenConfig } from '../cli/config';
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* MetadataExporter class
|
|
@@ -22,30 +22,41 @@ export class MetadataExporter {
|
|
|
22
22
|
* and writes them to timestamped JSON files:
|
|
23
23
|
* - .query-categories-{timestamp}.json for the categories
|
|
24
24
|
* - .queries-{timestamp}.json for the queries
|
|
25
|
+
* - SQL/{query-name}.sql files if externalizeSQLToFiles is enabled
|
|
25
26
|
*
|
|
26
27
|
* @param validatedQueries - Array of validated queries to export
|
|
27
28
|
* @param uniqueCategories - Pre-built unique categories for all queries
|
|
28
|
-
* @param
|
|
29
|
-
* @param outputCategoryDirectory - Optional directory for categories file (defaults to outputDirectory)
|
|
29
|
+
* @param config - QueryGen configuration
|
|
30
30
|
* @returns Export result with file path and query count
|
|
31
31
|
*/
|
|
32
32
|
async exportQueries(
|
|
33
33
|
validatedQueries: ValidatedQuery[],
|
|
34
34
|
uniqueCategories: QueryCategoryInfo[],
|
|
35
|
-
|
|
36
|
-
outputCategoryDirectory?: string
|
|
35
|
+
config: QueryGenConfig
|
|
37
36
|
): Promise<ExportResult> {
|
|
38
37
|
// Generate shared timestamp for both files
|
|
39
38
|
const timestamp = Date.now();
|
|
40
39
|
|
|
41
|
-
|
|
42
|
-
const categoryDir = outputCategoryDirectory || outputDirectory;
|
|
40
|
+
const outputDirectory = config.outputDirectory;
|
|
41
|
+
const categoryDir = config.outputCategoryDirectory || outputDirectory;
|
|
43
42
|
|
|
44
|
-
// 1.
|
|
45
|
-
|
|
43
|
+
// 1. If externalizing SQL, create SQL directory and write files
|
|
44
|
+
if (config.externalizeSQLToFiles) {
|
|
45
|
+
const sqlDir = path.join(outputDirectory, 'SQL');
|
|
46
|
+
await fs.mkdir(sqlDir, { recursive: true });
|
|
47
|
+
|
|
48
|
+
for (const query of validatedQueries) {
|
|
49
|
+
const fileName = this.sanitizeFileName(query.query.queryName);
|
|
50
|
+
const sqlFilePath = path.join(sqlDir, `${fileName}.sql`);
|
|
51
|
+
await fs.writeFile(sqlFilePath, query.query.sql, 'utf-8');
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
// 2. Transform to MJ metadata format
|
|
56
|
+
const queryMetadata = validatedQueries.map(q => this.toQueryMetadata(q, config.externalizeSQLToFiles));
|
|
46
57
|
const categoryMetadata = uniqueCategories.map(c => this.toCategoryMetadata(c));
|
|
47
58
|
|
|
48
|
-
//
|
|
59
|
+
// 3. Ensure output directories exist
|
|
49
60
|
await fs.mkdir(outputDirectory, { recursive: true });
|
|
50
61
|
if (categoryDir !== outputDirectory) {
|
|
51
62
|
await fs.mkdir(categoryDir, { recursive: true });
|
|
@@ -85,21 +96,26 @@ export class MetadataExporter {
|
|
|
85
96
|
* This happens asynchronously during the Save() operation.
|
|
86
97
|
*
|
|
87
98
|
* @param query - Validated query to transform
|
|
99
|
+
* @param externalizeSQLToFiles - Whether SQL is externalized to separate files
|
|
88
100
|
* @returns Query metadata record
|
|
89
101
|
*/
|
|
90
|
-
private toQueryMetadata(query: ValidatedQuery): QueryMetadataRecord {
|
|
102
|
+
private toQueryMetadata(query: ValidatedQuery, externalizeSQLToFiles: boolean): QueryMetadataRecord {
|
|
91
103
|
// Build category lookup path (e.g., "Golden-Queries/Members" becomes lookup filter)
|
|
92
104
|
const categoryLookup = this.buildCategoryLookup(query.category);
|
|
93
105
|
|
|
106
|
+
// If externalizing SQL, use @file: reference; otherwise embed SQL directly
|
|
107
|
+
const sqlValue = externalizeSQLToFiles
|
|
108
|
+
? `@file:SQL/${this.sanitizeFileName(query.query.queryName)}.sql`
|
|
109
|
+
: query.query.sql;
|
|
110
|
+
|
|
94
111
|
return {
|
|
95
112
|
fields: {
|
|
96
|
-
Name:
|
|
113
|
+
Name: query.query.queryName,
|
|
97
114
|
CategoryID: categoryLookup,
|
|
98
115
|
UserQuestion: query.businessQuestion.userQuestion,
|
|
99
116
|
Description: query.businessQuestion.description,
|
|
100
117
|
TechnicalDescription: query.businessQuestion.technicalDescription,
|
|
101
|
-
SQL:
|
|
102
|
-
OriginalSQL: query.query.sql,
|
|
118
|
+
SQL: sqlValue,
|
|
103
119
|
UsesTemplate: true,
|
|
104
120
|
Status: 'Pending'
|
|
105
121
|
}
|
|
@@ -145,4 +161,20 @@ export class MetadataExporter {
|
|
|
145
161
|
return `@lookup:Query Categories.Name=${category.name}&ParentID=null`;
|
|
146
162
|
}
|
|
147
163
|
}
|
|
164
|
+
|
|
165
|
+
/**
|
|
166
|
+
* Sanitize query name for use as a file name
|
|
167
|
+
* Removes or replaces characters that are invalid in file names
|
|
168
|
+
*
|
|
169
|
+
* @param queryName - The query name to sanitize
|
|
170
|
+
* @returns Sanitized file name
|
|
171
|
+
*/
|
|
172
|
+
private sanitizeFileName(queryName: string): string {
|
|
173
|
+
return queryName
|
|
174
|
+
.replace(/[<>:"/\\|?*]/g, '-') // Replace invalid file name characters with dash
|
|
175
|
+
.replace(/\s+/g, '-') // Replace spaces with dash
|
|
176
|
+
.replace(/-+/g, '-') // Replace multiple dashes with single dash
|
|
177
|
+
.replace(/^-|-$/g, '') // Remove leading/trailing dashes
|
|
178
|
+
.toLowerCase(); // Convert to lowercase for consistency
|
|
179
|
+
}
|
|
148
180
|
}
|
|
@@ -13,7 +13,6 @@ import {
|
|
|
13
13
|
} from '@memberjunction/core-entities';
|
|
14
14
|
import { ValidatedQuery, WriteResult } from '../data/schema';
|
|
15
15
|
import { extractErrorMessage } from '../utils/error-handlers';
|
|
16
|
-
import { generateQueryName } from '../utils/query-helpers';
|
|
17
16
|
|
|
18
17
|
/**
|
|
19
18
|
* QueryDatabaseWriter class
|
|
@@ -60,7 +59,7 @@ export class QueryDatabaseWriter {
|
|
|
60
59
|
// - Set UsesTemplate flag
|
|
61
60
|
const query = await md.GetEntityObject<QueryEntity>('Queries', contextUser);
|
|
62
61
|
query.NewRecord();
|
|
63
|
-
query.Name =
|
|
62
|
+
query.Name = vq.query.queryName;
|
|
64
63
|
query.CategoryID = categoryId;
|
|
65
64
|
query.UserQuestion = vq.businessQuestion.userQuestion;
|
|
66
65
|
query.Description = vq.businessQuestion.description;
|
package/src/core/QueryFixer.ts
CHANGED
|
@@ -54,6 +54,7 @@ export class QueryFixer {
|
|
|
54
54
|
|
|
55
55
|
// Prepare prompt data
|
|
56
56
|
const promptData = {
|
|
57
|
+
queryName: query.queryName,
|
|
57
58
|
originalSQL: query.sql,
|
|
58
59
|
errorMessage,
|
|
59
60
|
parameters: query.parameters,
|
|
@@ -96,6 +97,7 @@ export class QueryFixer {
|
|
|
96
97
|
private async executePrompt(
|
|
97
98
|
prompt: AIPromptEntityExtended,
|
|
98
99
|
promptData: {
|
|
100
|
+
queryName: string;
|
|
99
101
|
originalSQL: string;
|
|
100
102
|
errorMessage: string;
|
|
101
103
|
parameters: GeneratedQuery['parameters'];
|
|
@@ -125,8 +127,9 @@ export class QueryFixer {
|
|
|
125
127
|
LogStatus(`Query fix reasoning: ${result.result.reasoning}`);
|
|
126
128
|
}
|
|
127
129
|
|
|
128
|
-
// Return GeneratedQuery format, preserving original parameters
|
|
130
|
+
// Return GeneratedQuery format, preserving original parameters and queryName
|
|
129
131
|
return {
|
|
132
|
+
queryName: promptData.queryName,
|
|
130
133
|
sql: result.result.newSQL,
|
|
131
134
|
parameters: promptData.parameters,
|
|
132
135
|
};
|