agentic-qe 3.6.9 → 3.6.10

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 (55) hide show
  1. package/.claude/skills/.validation/schemas/skill-eval.schema.json +11 -1
  2. package/.claude/skills/pr-review/SKILL.md +2 -2
  3. package/.claude/skills/qcsd-production-swarm/SKILL.md +2781 -0
  4. package/.claude/skills/qcsd-production-swarm/evals/qcsd-production-swarm.yaml +246 -0
  5. package/.claude/skills/qcsd-production-swarm/schemas/output.json +505 -0
  6. package/.claude/skills/qcsd-production-swarm/scripts/validate-config.json +25 -0
  7. package/.claude/skills/skills-manifest.json +5 -5
  8. package/package.json +1 -1
  9. package/scripts/benchmark-hnsw-loading.ts +480 -0
  10. package/scripts/benchmark-kg-assisted.ts +725 -0
  11. package/scripts/collect-production-telemetry.sh +291 -0
  12. package/scripts/detect-skill-conflicts.ts +347 -0
  13. package/scripts/eval-driven-workflow.ts +704 -0
  14. package/scripts/run-skill-eval.ts +210 -10
  15. package/scripts/score-skill-quality.ts +511 -0
  16. package/v3/CHANGELOG.md +19 -0
  17. package/v3/assets/skills/pr-review/SKILL.md +2 -2
  18. package/v3/dist/cli/bundle.js +1064 -363
  19. package/v3/dist/cli/commands/hooks.d.ts.map +1 -1
  20. package/v3/dist/cli/commands/hooks.js +143 -2
  21. package/v3/dist/cli/commands/hooks.js.map +1 -1
  22. package/v3/dist/cli/commands/test.d.ts.map +1 -1
  23. package/v3/dist/cli/commands/test.js +6 -0
  24. package/v3/dist/cli/commands/test.js.map +1 -1
  25. package/v3/dist/domains/test-generation/generators/jest-vitest-generator.d.ts.map +1 -1
  26. package/v3/dist/domains/test-generation/generators/jest-vitest-generator.js +58 -6
  27. package/v3/dist/domains/test-generation/generators/jest-vitest-generator.js.map +1 -1
  28. package/v3/dist/domains/test-generation/generators/mocha-generator.d.ts.map +1 -1
  29. package/v3/dist/domains/test-generation/generators/mocha-generator.js +79 -7
  30. package/v3/dist/domains/test-generation/generators/mocha-generator.js.map +1 -1
  31. package/v3/dist/domains/test-generation/generators/pytest-generator.d.ts +4 -0
  32. package/v3/dist/domains/test-generation/generators/pytest-generator.d.ts.map +1 -1
  33. package/v3/dist/domains/test-generation/generators/pytest-generator.js +77 -10
  34. package/v3/dist/domains/test-generation/generators/pytest-generator.js.map +1 -1
  35. package/v3/dist/domains/test-generation/interfaces/test-generator.interface.d.ts +21 -0
  36. package/v3/dist/domains/test-generation/interfaces/test-generator.interface.d.ts.map +1 -1
  37. package/v3/dist/domains/test-generation/interfaces.d.ts +21 -0
  38. package/v3/dist/domains/test-generation/interfaces.d.ts.map +1 -1
  39. package/v3/dist/domains/test-generation/services/test-generator.d.ts +22 -0
  40. package/v3/dist/domains/test-generation/services/test-generator.d.ts.map +1 -1
  41. package/v3/dist/domains/test-generation/services/test-generator.js +163 -3
  42. package/v3/dist/domains/test-generation/services/test-generator.js.map +1 -1
  43. package/v3/dist/kernel/unified-memory-hnsw.d.ts +29 -0
  44. package/v3/dist/kernel/unified-memory-hnsw.d.ts.map +1 -1
  45. package/v3/dist/kernel/unified-memory-hnsw.js +136 -0
  46. package/v3/dist/kernel/unified-memory-hnsw.js.map +1 -1
  47. package/v3/dist/kernel/unified-memory.d.ts +2 -2
  48. package/v3/dist/kernel/unified-memory.d.ts.map +1 -1
  49. package/v3/dist/kernel/unified-memory.js +7 -9
  50. package/v3/dist/kernel/unified-memory.js.map +1 -1
  51. package/v3/dist/learning/qe-hooks.d.ts.map +1 -1
  52. package/v3/dist/learning/qe-hooks.js +34 -3
  53. package/v3/dist/learning/qe-hooks.js.map +1 -1
  54. package/v3/dist/mcp/bundle.js +857 -329
  55. package/v3/package.json +1 -1
@@ -35,18 +35,38 @@ export class MochaGenerator extends BaseTestGenerator {
35
35
  * Generate complete test file from analysis
36
36
  */
37
37
  generateTests(context) {
38
- const { moduleName, importPath, testType, patterns, analysis } = context;
38
+ const { moduleName, importPath, testType, patterns, analysis, dependencies } = context;
39
39
  if (!analysis || (analysis.functions.length === 0 && analysis.classes.length === 0)) {
40
40
  return this.generateStubTests(context);
41
41
  }
42
42
  const patternComment = this.generatePatternComment(patterns);
43
43
  const exports = this.extractExports(analysis.functions, analysis.classes);
44
44
  const importStatement = this.generateImportStatement(exports, importPath, moduleName);
45
+ // KG: Add sinon stubs for known dependencies
46
+ let sinonImport = '';
47
+ let stubSetup = '';
48
+ if (dependencies && dependencies.imports.length > 0) {
49
+ sinonImport = `import sinon from 'sinon';\n`;
50
+ const depsToMock = dependencies.imports.slice(0, 5);
51
+ stubSetup += ` // Auto-generated stubs from Knowledge Graph dependency analysis\n`;
52
+ stubSetup += ` let stubs;\n\n`;
53
+ stubSetup += ` beforeEach(function() {\n`;
54
+ stubSetup += ` stubs = {\n`;
55
+ for (const dep of depsToMock) {
56
+ const depName = dep.split('/').pop()?.replace(/[^a-zA-Z0-9_]/g, '_') || dep;
57
+ stubSetup += ` ${depName}: sinon.stub(),\n`;
58
+ }
59
+ stubSetup += ` };\n`;
60
+ stubSetup += ` });\n\n`;
61
+ stubSetup += ` afterEach(function() {\n`;
62
+ stubSetup += ` sinon.restore();\n`;
63
+ stubSetup += ` });\n\n`;
64
+ }
45
65
  let code = `${patternComment}import { expect } from 'chai';
46
- ${importStatement}
66
+ ${sinonImport}${importStatement}
47
67
 
48
68
  describe('${moduleName} - ${testType} tests', function() {
49
- `;
69
+ ${stubSetup}`;
50
70
  for (const fn of analysis.functions) {
51
71
  code += this.generateFunctionTests(fn, testType);
52
72
  }
@@ -110,17 +130,69 @@ describe('${moduleName} - ${testType} tests', function() {
110
130
  * Generate stub tests when no AST analysis is available
111
131
  */
112
132
  generateStubTests(context) {
113
- const { moduleName, importPath, testType, patterns } = context;
133
+ const { moduleName, importPath, testType, patterns, dependencies, similarCode } = context;
114
134
  const patternComment = this.generatePatternComment(patterns);
115
135
  // Determine if async tests needed based on patterns
116
136
  const isAsync = patterns.some((p) => p.name.toLowerCase().includes('async') || p.name.toLowerCase().includes('promise'));
117
137
  const asyncSetup = isAsync ? 'async ' : '';
138
+ // KG: Add sinon stubs for known dependencies
139
+ let sinonImport = '';
140
+ let stubSetup = '';
141
+ let stubTeardown = '';
142
+ if (dependencies && dependencies.imports.length > 0) {
143
+ sinonImport = `import sinon from 'sinon';\n`;
144
+ const depsToMock = dependencies.imports.slice(0, 5);
145
+ stubSetup += `\n // Auto-generated stubs from Knowledge Graph dependency analysis\n`;
146
+ stubSetup += ` let stubs;\n\n`;
147
+ stubSetup += ` beforeEach(function() {\n`;
148
+ stubSetup += ` stubs = {\n`;
149
+ for (const dep of depsToMock) {
150
+ const depName = dep.split('/').pop()?.replace(/[^a-zA-Z0-9_]/g, '_') || dep;
151
+ stubSetup += ` ${depName}: sinon.stub(),\n`;
152
+ }
153
+ stubSetup += ` };\n`;
154
+ stubSetup += ` });\n\n`;
155
+ stubTeardown += ` afterEach(function() {\n`;
156
+ stubTeardown += ` sinon.restore();\n`;
157
+ stubTeardown += ` });\n\n`;
158
+ }
159
+ // KG: Similarity comment
160
+ let similarityComment = '';
161
+ if (similarCode && similarCode.snippets.length > 0) {
162
+ similarityComment += ` // KG: Similar modules found - consider testing shared patterns:\n`;
163
+ for (const s of similarCode.snippets.slice(0, 3)) {
164
+ similarityComment += ` // - ${s.file} (${(s.score * 100).toFixed(0)}% similar)\n`;
165
+ }
166
+ similarityComment += `\n`;
167
+ }
168
+ // KG: Dependency interaction test
169
+ let depTest = '';
170
+ if (dependencies && dependencies.imports.length > 0) {
171
+ depTest += `\n it('should interact with dependencies correctly', function() {\n`;
172
+ depTest += ` // KG-informed: module depends on ${dependencies.imports.length} imports\n`;
173
+ depTest += ` const instance = typeof ${moduleName} === 'function'\n`;
174
+ depTest += ` ? new ${moduleName}()\n`;
175
+ depTest += ` : ${moduleName};\n`;
176
+ depTest += ` expect(instance).to.exist;\n`;
177
+ depTest += ` });\n`;
178
+ }
179
+ // KG: Public API surface test for modules with consumers
180
+ let callerTest = '';
181
+ if (dependencies && dependencies.importedBy.length > 0) {
182
+ callerTest += `\n it('should expose stable API for ${dependencies.importedBy.length} consumers', function() {\n`;
183
+ callerTest += ` // KG-informed: used by ${dependencies.importedBy.slice(0, 3).join(', ')}\n`;
184
+ callerTest += ` const publicKeys = Object.keys(typeof ${moduleName} === 'function'\n`;
185
+ callerTest += ` ? ${moduleName}.prototype || {}\n`;
186
+ callerTest += ` : ${moduleName});\n`;
187
+ callerTest += ` expect(publicKeys.length).to.be.greaterThan(0);\n`;
188
+ callerTest += ` });\n`;
189
+ }
118
190
  return `${patternComment}import { expect } from 'chai';
119
- import { ${moduleName} } from '${importPath}';
191
+ ${sinonImport}import { ${moduleName} } from '${importPath}';
120
192
 
121
193
  describe('${moduleName}', function() {
122
194
  describe('${testType} tests', function() {
123
- it('should be defined', function() {
195
+ ${stubSetup}${stubTeardown}${similarityComment} it('should be defined', function() {
124
196
  expect(${moduleName}).to.not.be.undefined;
125
197
  });
126
198
 
@@ -154,7 +226,7 @@ describe('${moduleName}', function() {
154
226
  : ${moduleName};
155
227
  return instance;
156
228
  }).to.not.throw();
157
- });
229
+ });${depTest}${callerTest}
158
230
  });
159
231
  });
160
232
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"mocha-generator.js","sourceRoot":"","sources":["../../../../src/domains/test-generation/generators/mocha-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mocha-generator.js","sourceRoot":"","sources":["../../../../src/domains/test-generation/generators/mocha-generator.ts"],"names":[],"mappings":"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"}
@@ -42,6 +42,10 @@ export declare class PytestGenerator extends BaseTestGenerator {
42
42
  * Generate tests for a standalone function
43
43
  */
44
44
  generateFunctionTests(fn: FunctionInfo, _testType: TestType): string;
45
+ /**
46
+ * Generate tests for a function with @patch decorators from KG dependencies
47
+ */
48
+ private generateFunctionTestsWithPatches;
45
49
  /**
46
50
  * Generate tests for a class
47
51
  */
@@ -1 +1 @@
1
- {"version":3,"file":"pytest-generator.d.ts","sourceRoot":"","sources":["../../../../src/domains/test-generation/generators/pytest-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EACV,aAAa,EACb,QAAQ,EACR,YAAY,EACZ,SAAS,EAET,qBAAqB,EAEtB,MAAM,eAAe,CAAC;AAEvB;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,eAAgB,SAAQ,iBAAiB;IACpD,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAY;IAE7C;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM;IAoCrD;;OAEG;IACH,qBAAqB,CAAC,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,GAAG,MAAM;IAwBpE;;OAEG;IACH,kBAAkB,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,GAAG,MAAM;IA0B/D;;OAEG;IACH,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM;IAwDzD;;OAEG;IACH,qBAAqB,CACnB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EAAE,GACd,MAAM;IAiCT;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAKpC;;OAEG;IACH,OAAO,CAAC,uBAAuB;CAsBhC"}
1
+ {"version":3,"file":"pytest-generator.d.ts","sourceRoot":"","sources":["../../../../src/domains/test-generation/generators/pytest-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EACV,aAAa,EACb,QAAQ,EACR,YAAY,EACZ,SAAS,EAET,qBAAqB,EAEtB,MAAM,eAAe,CAAC;AAEvB;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,eAAgB,SAAQ,iBAAiB;IACpD,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAY;IAE7C;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM;IAiDrD;;OAEG;IACH,qBAAqB,CAAC,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,GAAG,MAAM;IAIpE;;OAEG;IACH,OAAO,CAAC,gCAAgC;IA+BxC;;OAEG;IACH,kBAAkB,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,GAAG,MAAM;IA0B/D;;OAEG;IACH,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM;IA0GzD;;OAEG;IACH,qBAAqB,CACnB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EAAE,GACd,MAAM;IAiCT;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAKpC;;OAEG;IACH,OAAO,CAAC,uBAAuB;CAsBhC"}
@@ -38,7 +38,7 @@ export class PytestGenerator extends BaseTestGenerator {
38
38
  * Generate complete test file from analysis
39
39
  */
40
40
  generateTests(context) {
41
- const { moduleName, importPath, testType, patterns, analysis } = context;
41
+ const { moduleName, importPath, testType, patterns, analysis, dependencies } = context;
42
42
  if (!analysis || (analysis.functions.length === 0 && analysis.classes.length === 0)) {
43
43
  return this.generateStubTests(context);
44
44
  }
@@ -48,8 +48,19 @@ export class PytestGenerator extends BaseTestGenerator {
48
48
  const importStatement = exports.length > 0
49
49
  ? `from ${pythonImport} import ${exports.join(', ')}`
50
50
  : `import ${pythonImport} as ${moduleName}`;
51
+ // KG: Add mock imports for known dependencies
52
+ let mockImport = '';
53
+ if (dependencies && dependencies.imports.length > 0) {
54
+ mockImport = `from unittest.mock import patch, MagicMock\n`;
55
+ }
56
+ // KG: Build @patch decorator stack for known dependencies
57
+ const depsToMock = dependencies?.imports.slice(0, 5) || [];
58
+ const patchDecorators = depsToMock.map((dep) => {
59
+ const depModule = dep.replace(/\//g, '.').replace(/\.py$/, '');
60
+ return `@patch('${depModule}')`;
61
+ });
51
62
  let code = `${patternComment}import pytest
52
- ${importStatement}
63
+ ${mockImport}${importStatement}
53
64
 
54
65
 
55
66
  class Test${this.pascalCase(moduleName)}:
@@ -57,7 +68,7 @@ class Test${this.pascalCase(moduleName)}:
57
68
 
58
69
  `;
59
70
  for (const fn of analysis.functions) {
60
- code += this.generateFunctionTests(fn, testType);
71
+ code += this.generateFunctionTestsWithPatches(fn, testType, patchDecorators);
61
72
  }
62
73
  for (const cls of analysis.classes) {
63
74
  code += this.generateClassTests(cls, testType);
@@ -68,15 +79,26 @@ class Test${this.pascalCase(moduleName)}:
68
79
  * Generate tests for a standalone function
69
80
  */
70
81
  generateFunctionTests(fn, _testType) {
82
+ return this.generateFunctionTestsWithPatches(fn, _testType, []);
83
+ }
84
+ /**
85
+ * Generate tests for a function with @patch decorators from KG dependencies
86
+ */
87
+ generateFunctionTestsWithPatches(fn, _testType, patchDecorators) {
71
88
  const validParams = fn.parameters.map((p) => this.generatePythonTestValue(p)).join(', ');
72
- let code = ` def test_${fn.name}_valid_input(self):\n`;
89
+ // Build mock params for patch decorators (injected right-to-left by Python)
90
+ const mockParams = patchDecorators.map((_, i) => `mock_dep_${i}`).reverse().join(', ');
91
+ const allParams = mockParams ? `self, ${mockParams}` : 'self';
92
+ // Indent patch decorators at class method level
93
+ const patchPrefix = patchDecorators.map((d) => ` ${d}\n`).join('');
94
+ let code = `${patchPrefix} def test_${fn.name}_valid_input(${allParams}):\n`;
73
95
  code += ` """Test ${fn.name} with valid input"""\n`;
74
96
  code += ` result = ${fn.name}(${validParams})\n`;
75
97
  code += ` assert result is not None\n\n`;
76
- // Test for edge cases
98
+ // Test for edge cases (no patches needed — they test the function directly)
77
99
  for (const param of fn.parameters) {
78
100
  if (!param.optional && param.type?.includes('str')) {
79
- code += ` def test_${fn.name}_empty_${param.name}(self):\n`;
101
+ code += `${patchPrefix} def test_${fn.name}_empty_${param.name}(${allParams}):\n`;
80
102
  code += ` """Test ${fn.name} with empty ${param.name}"""\n`;
81
103
  const paramsWithEmpty = fn.parameters
82
104
  .map((p) => (p.name === param.name ? '""' : this.generatePythonTestValue(p)))
@@ -115,20 +137,65 @@ class Test${this.pascalCase(moduleName)}:
115
137
  * Generate stub tests when no AST analysis is available
116
138
  */
117
139
  generateStubTests(context) {
118
- const { moduleName, importPath, testType, patterns } = context;
140
+ const { moduleName, importPath, testType, patterns, dependencies, similarCode } = context;
119
141
  const patternComment = this.generatePythonPatternComment(patterns);
120
142
  // Determine if async tests needed based on patterns
121
143
  const isAsync = patterns.some((p) => p.name.toLowerCase().includes('async') || p.name.toLowerCase().includes('promise'));
122
144
  const asyncDecorator = isAsync ? '@pytest.mark.asyncio\n ' : '';
123
145
  const asyncDef = isAsync ? 'async def' : 'def';
146
+ // KG: Generate mock patches for known dependencies
147
+ let mockImports = '';
148
+ let mockPatches = '';
149
+ if (dependencies && dependencies.imports.length > 0) {
150
+ mockImports = `from unittest.mock import patch, MagicMock\n`;
151
+ const depsToMock = dependencies.imports.slice(0, 5);
152
+ for (const dep of depsToMock) {
153
+ const depModule = dep.replace(/\//g, '.').replace(/\.py$/, '');
154
+ mockPatches += ` @patch('${depModule}')\n`;
155
+ }
156
+ }
157
+ // KG: Generate similarity-informed test hints
158
+ let similarityComment = '';
159
+ if (similarCode && similarCode.snippets.length > 0) {
160
+ similarityComment = ` # KG: Similar modules found - consider testing shared patterns:\n`;
161
+ for (const s of similarCode.snippets.slice(0, 3)) {
162
+ similarityComment += ` # - ${s.file} (${(s.score * 100).toFixed(0)}% similar)\n`;
163
+ }
164
+ similarityComment += `\n`;
165
+ }
166
+ // KG: Generate dependency integration tests
167
+ let depTests = '';
168
+ if (dependencies && dependencies.imports.length > 0) {
169
+ depTests += `\n def test_dependencies_importable(self):\n`;
170
+ depTests += ` """Verify all dependencies are importable (KG-informed)."""\n`;
171
+ for (const dep of dependencies.imports.slice(0, 5)) {
172
+ const depModule = dep.replace(/\//g, '.').replace(/\.py$/, '');
173
+ depTests += ` import importlib\n`;
174
+ depTests += ` mod = importlib.import_module('${depModule}')\n`;
175
+ depTests += ` assert mod is not None\n`;
176
+ }
177
+ depTests += `\n def test_dependency_interactions(self):\n`;
178
+ depTests += ` """Test module interactions with its dependencies (KG-informed)."""\n`;
179
+ depTests += ` # Module should handle dependency failures gracefully\n`;
180
+ depTests += ` assert ${moduleName} is not None\n`;
181
+ depTests += ` assert hasattr(${moduleName}, '__name__') or hasattr(${moduleName}, '__class__')\n`;
182
+ }
183
+ // KG: Generate callers-aware API surface tests
184
+ let callerTests = '';
185
+ if (dependencies && dependencies.importedBy.length > 0) {
186
+ callerTests += `\n def test_public_api_surface(self):\n`;
187
+ callerTests += ` """Verify public API used by ${dependencies.importedBy.length} consumers (KG-informed)."""\n`;
188
+ callerTests += ` public_attrs = [a for a in dir(${moduleName}) if not a.startswith('_')]\n`;
189
+ callerTests += ` assert len(public_attrs) > 0, "Module should expose public API"\n`;
190
+ }
124
191
  return `${patternComment}import pytest
125
- from ${importPath} import ${moduleName}
192
+ ${mockImports}from ${importPath} import ${moduleName}
126
193
 
127
194
 
128
195
  class Test${this.pascalCase(moduleName)}:
129
196
  """${testType} tests for ${moduleName}"""
130
197
 
131
- def test_is_defined(self):
198
+ ${similarityComment} def test_is_defined(self):
132
199
  """Verify the module is properly exported and defined."""
133
200
  assert ${moduleName} is not None
134
201
 
@@ -162,7 +229,7 @@ class Test${this.pascalCase(moduleName)}:
162
229
  except TypeError:
163
230
  # Expected if constructor requires arguments
164
231
  pass
165
- `;
232
+ ${depTests}${callerTests}`;
166
233
  }
167
234
  /**
168
235
  * Generate coverage-focused tests for specific lines
@@ -1 +1 @@
1
- {"version":3,"file":"pytest-generator.js","sourceRoot":"","sources":["../../../../src/domains/test-generation/generators/pytest-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pytest-generator.js","sourceRoot":"","sources":["../../../../src/domains/test-generation/generators/pytest-generator.ts"],"names":[],"mappings":"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"}
@@ -79,6 +79,25 @@ export interface CodeAnalysis {
79
79
  functions: FunctionInfo[];
80
80
  classes: ClassInfo[];
81
81
  }
82
+ /**
83
+ * KG-sourced dependency context for a file
84
+ */
85
+ export interface KGDependencyContext {
86
+ imports: string[];
87
+ importedBy: string[];
88
+ callees: string[];
89
+ callers: string[];
90
+ }
91
+ /**
92
+ * KG-sourced similar code context
93
+ */
94
+ export interface KGSimilarCodeContext {
95
+ snippets: Array<{
96
+ file: string;
97
+ snippet: string;
98
+ score: number;
99
+ }>;
100
+ }
82
101
  /**
83
102
  * Context for test generation
84
103
  */
@@ -88,6 +107,8 @@ export interface TestGenerationContext {
88
107
  testType: TestType;
89
108
  patterns: Pattern[];
90
109
  analysis?: CodeAnalysis;
110
+ dependencies?: KGDependencyContext;
111
+ similarCode?: KGSimilarCodeContext;
91
112
  }
92
113
  /**
93
114
  * ITestGenerator - Strategy interface for framework-specific test generation
@@ -1 +1 @@
1
- {"version":3,"file":"test-generator.interface.d.ts","sourceRoot":"","sources":["../../../../src/domains/test-generation/interfaces/test-generator.interface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-generator.interface.d.ts","sourceRoot":"","sources":["../../../../src/domains/test-generation/interfaces/test-generator.interface.ts"],"names":[],"mappings":"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"}
@@ -159,6 +159,25 @@ export interface ICodeAnalysis {
159
159
  functions: IFunctionInfo[];
160
160
  classes: IClassInfo[];
161
161
  }
162
+ /**
163
+ * KG-sourced dependency context for a file
164
+ */
165
+ export interface KGDependencyContext {
166
+ imports: string[];
167
+ importedBy: string[];
168
+ callees: string[];
169
+ callers: string[];
170
+ }
171
+ /**
172
+ * KG-sourced similar code context
173
+ */
174
+ export interface KGSimilarCodeContext {
175
+ snippets: Array<{
176
+ file: string;
177
+ snippet: string;
178
+ score: number;
179
+ }>;
180
+ }
162
181
  /**
163
182
  * Context for test generation
164
183
  */
@@ -168,6 +187,8 @@ export interface ITestGenerationContext {
168
187
  testType: TestType;
169
188
  patterns: IPattern[];
170
189
  analysis?: ICodeAnalysis;
190
+ dependencies?: KGDependencyContext;
191
+ similarCode?: KGSimilarCodeContext;
171
192
  }
172
193
  /**
173
194
  * ITestGenerator - Strategy interface for framework-specific test generation
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/domains/test-generation/interfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/domains/test-generation/interfaces.ts"],"names":[],"mappings":"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"}
@@ -119,6 +119,28 @@ export declare class TestGeneratorService implements ITestGenerationService {
119
119
  private extractClassInfo;
120
120
  private extractParameters;
121
121
  private calculateComplexity;
122
+ /**
123
+ * Check if KG vectors exist by probing a vector search.
124
+ * Returns true if vectorSearch returns any results (indicating indexed code exists).
125
+ */
126
+ private hasKGVectors;
127
+ /**
128
+ * Query KG for dependency information about a file.
129
+ * Extracts imports from source and cross-references with KG vector index
130
+ * to find which indexed modules this file depends on and which depend on it.
131
+ */
132
+ private queryKGDependencies;
133
+ /**
134
+ * Query KG for semantically similar code snippets.
135
+ * Uses vector search against the persisted vectors table.
136
+ * KG nodes are stored as vectors with IDs like code-intelligence:kg:node:*
137
+ */
138
+ private queryKGSimilarCode;
139
+ /**
140
+ * Generate a simple pseudo-embedding for vector search.
141
+ * Uses token-based feature extraction similar to semantic-analyzer.
142
+ */
143
+ private generatePseudoEmbedding;
122
144
  private findApplicablePatterns;
123
145
  private groupConsecutiveLines;
124
146
  private getTestFilePath;
@@ -1 +1 @@
1
- {"version":3,"file":"test-generator.d.ts","sourceRoot":"","sources":["../../../../src/domains/test-generation/services/test-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-generator.d.ts","sourceRoot":"","sources":["../../../../src/domains/test-generation/services/test-generator.ts"],"names":[],"mappings":"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"}