lacuna-cli 0.1.5 → 0.1.6

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 (61) hide show
  1. package/README.md +38 -10
  2. package/dist/agent/fix-loop.d.ts +5 -0
  3. package/dist/agent/fix-loop.d.ts.map +1 -1
  4. package/dist/agent/fix-loop.js +342 -35
  5. package/dist/agent/fix-loop.js.map +1 -1
  6. package/dist/agent/generator.d.ts +4 -1
  7. package/dist/agent/generator.d.ts.map +1 -1
  8. package/dist/agent/generator.js +42 -3
  9. package/dist/agent/generator.js.map +1 -1
  10. package/dist/agent/loop.d.ts +8 -0
  11. package/dist/agent/loop.d.ts.map +1 -1
  12. package/dist/agent/loop.js +26 -9
  13. package/dist/agent/loop.js.map +1 -1
  14. package/dist/agent/prompts.d.ts +8 -0
  15. package/dist/agent/prompts.d.ts.map +1 -1
  16. package/dist/agent/prompts.js +285 -70
  17. package/dist/agent/prompts.js.map +1 -1
  18. package/dist/commands/fix.d.ts +2 -0
  19. package/dist/commands/fix.d.ts.map +1 -1
  20. package/dist/commands/fix.js +31 -2
  21. package/dist/commands/fix.js.map +1 -1
  22. package/dist/commands/init.d.ts.map +1 -1
  23. package/dist/commands/init.js +107 -21
  24. package/dist/commands/init.js.map +1 -1
  25. package/dist/lib/config.d.ts +3 -3
  26. package/dist/lib/config.d.ts.map +1 -1
  27. package/dist/lib/config.js +3 -1
  28. package/dist/lib/config.js.map +1 -1
  29. package/dist/lib/coverage/gaps.d.ts +2 -2
  30. package/dist/lib/coverage/gaps.d.ts.map +1 -1
  31. package/dist/lib/coverage/gaps.js +4 -4
  32. package/dist/lib/coverage/gaps.js.map +1 -1
  33. package/dist/lib/detector.d.ts +1 -0
  34. package/dist/lib/detector.d.ts.map +1 -1
  35. package/dist/lib/detector.js +19 -0
  36. package/dist/lib/detector.js.map +1 -1
  37. package/dist/lib/providers/anthropic.d.ts.map +1 -1
  38. package/dist/lib/providers/anthropic.js +16 -2
  39. package/dist/lib/providers/anthropic.js.map +1 -1
  40. package/dist/lib/providers/openai-compatible.d.ts +1 -1
  41. package/dist/lib/providers/openai-compatible.d.ts.map +1 -1
  42. package/dist/lib/providers/openai-compatible.js +9 -1
  43. package/dist/lib/providers/openai-compatible.js.map +1 -1
  44. package/dist/lib/skeleton.d.ts +4 -0
  45. package/dist/lib/skeleton.d.ts.map +1 -1
  46. package/dist/lib/skeleton.js +220 -0
  47. package/dist/lib/skeleton.js.map +1 -1
  48. package/dist/lib/validate.d.ts +1 -0
  49. package/dist/lib/validate.d.ts.map +1 -1
  50. package/dist/lib/validate.js +132 -0
  51. package/dist/lib/validate.js.map +1 -1
  52. package/dist/lib/worker-display.d.ts +3 -0
  53. package/dist/lib/worker-display.d.ts.map +1 -1
  54. package/dist/lib/worker-display.js +19 -4
  55. package/dist/lib/worker-display.js.map +1 -1
  56. package/package.json +1 -1
  57. package/dist/lib/report-upload.d.ts +0 -3
  58. package/dist/lib/report-upload.d.ts.map +0 -1
  59. package/dist/lib/report-upload.js +0 -15
  60. package/dist/lib/report-upload.js.map +0 -1
  61. package/oclif.manifest.json +0 -295
@@ -5,7 +5,9 @@ const ConfigSchema = z.object({
5
5
  testRunner: z.enum(['jest', 'vitest', 'pytest', 'mocha', 'go-test', 'phpunit', 'pest', 'rspec', 'cargo-test', 'dotnet-test', 'gradle-test', 'maven-test', 'swift-test']).optional(),
6
6
  coverageFormat: z.enum(['lcov', 'json-summary', 'cobertura']).default('lcov'),
7
7
  coverageDir: z.string().default('coverage'),
8
- sourceDir: z.string().default('src'),
8
+ // sourceDir accepts a string OR an array — both are normalised to string[] internally.
9
+ // Use an array when source files live in multiple top-level dirs (e.g. ["src", "lib", "utils"]).
10
+ sourceDir: z.union([z.string(), z.array(z.string())]).default('src').transform((v) => (Array.isArray(v) ? v : [v])),
9
11
  threshold: z.number().min(0).max(100).default(80),
10
12
  maxIterations: z.number().min(1).max(10).default(3),
11
13
  coverageTimeout: z.number().min(30).default(300), // seconds; kills hung test suite
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  import type { CoverageReport, CoverageGap } from './types.js';
2
2
  export declare function extractGaps(report: CoverageReport, threshold: number): CoverageGap[];
3
3
  export declare function filterTestableGaps(gaps: CoverageGap[], userIgnore?: string[]): Promise<CoverageGap[]>;
4
- export declare function findUncoveredFiles(report: CoverageReport, sourceDir: string, cwd: string, userIgnore?: string[]): Promise<CoverageGap[]>;
4
+ export declare function findUncoveredFiles(report: CoverageReport, sourceDir: string | string[], cwd: string, userIgnore?: string[]): Promise<CoverageGap[]>;
5
5
  export declare function formatCoverageSummary(report: CoverageReport): string;
6
6
  export declare function findTestFiles(cwd: string, _env: {
7
7
  sourceDir?: string;
8
8
  }, config: {
9
- sourceDir: string;
9
+ sourceDir: string | string[];
10
10
  ignore: string[];
11
11
  }): Promise<string[]>;
12
12
  //# sourceMappingURL=gaps.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"gaps.d.ts","sourceRoot":"","sources":["../../../src/lib/coverage/gaps.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE7D,wBAAgB,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,GAAG,WAAW,EAAE,CASpF;AAID,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,UAAU,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAU/G;AA4HD,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,cAAc,EACtB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,UAAU,GAAE,MAAM,EAAO,GACxB,OAAO,CAAC,WAAW,EAAE,CAAC,CAyBxB;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAIpE;AAID,wBAAsB,aAAa,CACjC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,EAC5B,MAAM,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,GAC9C,OAAO,CAAC,MAAM,EAAE,CAAC,CAOnB"}
1
+ {"version":3,"file":"gaps.d.ts","sourceRoot":"","sources":["../../../src/lib/coverage/gaps.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE7D,wBAAgB,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,GAAG,WAAW,EAAE,CASpF;AAID,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,UAAU,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAU/G;AA4HD,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,cAAc,EACtB,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,EAC5B,GAAG,EAAE,MAAM,EACX,UAAU,GAAE,MAAM,EAAO,GACxB,OAAO,CAAC,WAAW,EAAE,CAAC,CAyBxB;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAIpE;AAID,wBAAsB,aAAa,CACjC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,EAC5B,MAAM,EAAE;IAAE,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,GACzD,OAAO,CAAC,MAAM,EAAE,CAAC,CAOnB"}
@@ -150,8 +150,8 @@ export async function findUncoveredFiles(report, sourceDir, cwd, userIgnore = []
150
150
  // Normalize LCOV paths: they can be absolute or relative depending on the runner.
151
151
  // walkDir always returns absolute paths, so normalise here to avoid false misses.
152
152
  const coveredPaths = new Set(report.files.map((f) => (f.path.startsWith('/') ? f.path : join(cwd, f.path))));
153
- const absoluteSourceDir = join(cwd, sourceDir);
154
- const allSourceFiles = await walkDir(absoluteSourceDir).catch(() => []);
153
+ const dirs = (Array.isArray(sourceDir) ? sourceDir : [sourceDir]).map(d => join(cwd, d));
154
+ const allSourceFiles = (await Promise.all(dirs.map(d => walkDir(d).catch(() => [])))).flat();
155
155
  const uncovered = [];
156
156
  for (const absPath of allSourceFiles) {
157
157
  if (shouldIgnore(absPath, userIgnore))
@@ -176,8 +176,8 @@ export function formatCoverageSummary(report) {
176
176
  }
177
177
  const TEST_FILE_RE = /\.(test|spec)\.[^.]+$|^test_[^/]+$|_test\.[^.]+$/;
178
178
  export async function findTestFiles(cwd, _env, config) {
179
- const root = join(cwd, config.sourceDir);
180
- const all = await walkDir(root).catch(() => []);
179
+ const dirs = (Array.isArray(config.sourceDir) ? config.sourceDir : [config.sourceDir]).map(d => join(cwd, d));
180
+ const all = (await Promise.all(dirs.map(d => walkDir(d).catch(() => [])))).flat();
181
181
  return all.filter((f) => {
182
182
  const rel = f.replace(cwd + sep, '').replace(cwd + '/', '');
183
183
  return TEST_FILE_RE.test(rel) && !shouldIgnore(f, config.ignore);
@@ -1 +1 @@
1
- {"version":3,"file":"gaps.js","sourceRoot":"","sources":["../../../src/lib/coverage/gaps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gaps.js","sourceRoot":"","sources":["../../../src/lib/coverage/gaps.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ export interface DetectedEnvironment {
8
8
  testCommand: string;
9
9
  }
10
10
  export declare function envForRunner(runner: string): DetectedEnvironment;
11
+ export declare function multiFileTestCommand(env: DetectedEnvironment, files: string[]): string;
11
12
  export declare function fileTestCommand(env: DetectedEnvironment, testFilePath: string): string;
12
13
  export declare function detectEnvironment(cwd?: string, configRunner?: string): Promise<DetectedEnvironment>;
13
14
  //# sourceMappingURL=detector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"detector.d.ts","sourceRoot":"","sources":["../../src/lib/detector.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,YAAY,GAAG,aAAa,GAAG,aAAa,GAAG,YAAY,GAAG,YAAY,GAAG,SAAS,CAAA;AACnM,MAAM,MAAM,QAAQ,GAAG,YAAY,GAAG,YAAY,GAAG,QAAQ,GAAG,IAAI,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAA;AAExI,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,UAAU,CAAA;IACtB,QAAQ,EAAE,QAAQ,CAAA;IAClB,eAAe,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,MAAM,CAAA;IACvB,WAAW,EAAE,MAAM,CAAA;CACpB;AAgGD,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAUhE;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAoBtF;AAED,wBAAsB,iBAAiB,CACrC,GAAG,GAAE,MAAsB,EAC3B,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,mBAAmB,CAAC,CAyE9B"}
1
+ {"version":3,"file":"detector.d.ts","sourceRoot":"","sources":["../../src/lib/detector.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,YAAY,GAAG,aAAa,GAAG,aAAa,GAAG,YAAY,GAAG,YAAY,GAAG,SAAS,CAAA;AACnM,MAAM,MAAM,QAAQ,GAAG,YAAY,GAAG,YAAY,GAAG,QAAQ,GAAG,IAAI,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAA;AAExI,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,UAAU,CAAA;IACtB,QAAQ,EAAE,QAAQ,CAAA;IAClB,eAAe,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,MAAM,CAAA;IACvB,WAAW,EAAE,MAAM,CAAA;CACpB;AAgGD,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAUhE;AAMD,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CActF;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAoBtF;AAED,wBAAsB,iBAAiB,CACrC,GAAG,GAAE,MAAsB,EAC3B,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,mBAAmB,CAAC,CAyE9B"}
@@ -102,6 +102,25 @@ export function envForRunner(runner) {
102
102
  testCommand: '',
103
103
  });
104
104
  }
105
+ // Run multiple test files in a single invocation, with the victim always last.
106
+ // Forces sequential execution in a single thread with shared module registry so that
107
+ // state pollution (module singletons, globals, localStorage) from earlier files is
108
+ // visible to the victim — required for bisect to reproduce ordering failures.
109
+ export function multiFileTestCommand(env, files) {
110
+ const fileList = files.join(' ');
111
+ switch (env.testRunner) {
112
+ case 'vitest':
113
+ // --poolOptions.threads.singleThread=true: all files run in one worker thread (shared globals)
114
+ // --no-isolate: all files share the same module registry (shared module singletons)
115
+ return `npx vitest run --poolOptions.threads.singleThread=true --no-isolate ${fileList}`;
116
+ case 'jest':
117
+ return `npx jest --runInBand ${fileList}`;
118
+ case 'mocha':
119
+ return `npx mocha ${fileList}`;
120
+ default:
121
+ return fileTestCommand(env, files[files.length - 1]);
122
+ }
123
+ }
105
124
  export function fileTestCommand(env, testFilePath) {
106
125
  switch (env.testRunner) {
107
126
  case 'vitest': return `npx vitest run ${testFilePath}`;
@@ -1 +1 @@
1
- {"version":3,"file":"detector.js","sourceRoot":"","sources":["../../src/lib/detector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAa3B,MAAM,eAAe,GAAgE;IACnF,MAAM,EAAE;QACN,UAAU,EAAE,QAAQ;QACpB,QAAQ,EAAE,YAAY;QACtB,eAAe,EAAE,kCAAkC;QACnD,eAAe,EAAE,2BAA2B;QAC5C,WAAW,EAAE,gBAAgB;KAC9B;IACD,IAAI,EAAE;QACJ,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,YAAY;QACtB,eAAe,EAAE,kCAAkC;QACnD,eAAe,EAAE,qBAAqB;QACtC,WAAW,EAAE,UAAU;KACxB;IACD,KAAK,EAAE;QACL,UAAU,EAAE,OAAO;QACnB,QAAQ,EAAE,YAAY;QACtB,eAAe,EAAE,2BAA2B;QAC5C,eAAe,EAAE,eAAe;QAChC,WAAW,EAAE,WAAW;KACzB;IACD,MAAM,EAAE;QACN,UAAU,EAAE,QAAQ;QACpB,QAAQ,EAAE,QAAQ;QAClB,eAAe,EAAE,WAAW;QAC5B,eAAe,EAAE,0CAA0C;QAC3D,WAAW,EAAE,kBAAkB;KAChC;IACD,SAAS,EAAE;QACT,UAAU,EAAE,SAAS;QACrB,QAAQ,EAAE,IAAI;QACd,eAAe,EAAE,WAAW;QAC5B,eAAe,EAAE,gDAAgD;QACjE,WAAW,EAAE,eAAe;KAC7B;IACD,OAAO,EAAE;QACP,UAAU,EAAE,SAAS;QACrB,QAAQ,EAAE,KAAK;QACf,eAAe,EAAE,cAAc;QAC/B,eAAe,EAAE,4DAA4D;QAC7E,WAAW,EAAE,sBAAsB;KACpC;IACD,IAAI,EAAE;QACJ,UAAU,EAAE,MAAM;QAClB,QAAQ,EAAE,KAAK;QACf,eAAe,EAAE,eAAe;QAChC,eAAe,EAAE,oEAAoE;QACrF,WAAW,EAAE,mBAAmB;KACjC;IACD,KAAK,EAAE;QACL,UAAU,EAAE,OAAO;QACnB,QAAQ,EAAE,MAAM;QAChB,eAAe,EAAE,mBAAmB;QACpC,eAAe,EAAE,mBAAmB;QACpC,WAAW,EAAE,mBAAmB;KACjC;IACD,YAAY,EAAE;QACZ,UAAU,EAAE,YAAY;QACxB,QAAQ,EAAE,MAAM;QAChB,eAAe,EAAE,aAAa;QAC9B,eAAe,EAAE,kDAAkD;QACnE,WAAW,EAAE,YAAY;KAC1B;IACD,aAAa,EAAE;QACb,UAAU,EAAE,aAAa;QACzB,QAAQ,EAAE,QAAQ;QAClB,eAAe,EAAE,cAAc;QAC/B,eAAe,EAAE,6CAA6C;QAC9D,WAAW,EAAE,aAAa;KAC3B;IACD,aAAa,EAAE;QACb,UAAU,EAAE,aAAa;QACzB,QAAQ,EAAE,MAAM;QAChB,eAAe,EAAE,wBAAwB;QACzC,eAAe,EAAE,iCAAiC;QAClD,WAAW,EAAE,gBAAgB;KAC9B;IACD,YAAY,EAAE;QACZ,UAAU,EAAE,YAAY;QACxB,QAAQ,EAAE,MAAM;QAChB,eAAe,EAAE,wBAAwB;QACzC,eAAe,EAAE,wBAAwB;QACzC,WAAW,EAAE,UAAU;KACxB;IACD,YAAY,EAAE;QACZ,UAAU,EAAE,YAAY;QACxB,QAAQ,EAAE,OAAO;QACjB,eAAe,EAAE,iBAAiB;QAClC,eAAe,EAAE,mCAAmC;QACpD,WAAW,EAAE,YAAY;KAC1B;CACF,CAAA;AAED,MAAM,UAAU,YAAY,CAAC,MAAc;IACzC,OAAO,CACL,eAAe,CAAC,MAAwC,CAAC,IAAI;QAC3D,UAAU,EAAE,SAAuB;QACnC,QAAQ,EAAE,SAAqB;QAC/B,eAAe,EAAE,aAAa;QAC9B,eAAe,EAAE,EAAE;QACnB,WAAW,EAAE,EAAE;KAChB,CACF,CAAA;AACH,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAwB,EAAE,YAAoB;IAC5E,QAAQ,GAAG,CAAC,UAAU,EAAE,CAAC;QACvB,KAAK,QAAQ,CAAC,CAAC,OAAO,kBAAkB,YAAY,EAAE,CAAA;QACtD,KAAK,MAAM,CAAC,CAAG,OAAO,8BAA8B,YAAY,EAAE,CAAA;QAClE,KAAK,OAAO,CAAC,CAAE,OAAO,aAAa,YAAY,EAAE,CAAA;QACjD,KAAK,QAAQ,CAAC,CAAC,OAAO,oBAAoB,YAAY,KAAK,CAAA;QAC3D,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,GAAG,GAAG,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;YACnF,OAAO,aAAa,GAAG,MAAM,CAAA;QAC/B,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,OAAO,wBAAwB,YAAY,EAAE,CAAA;QAC7D,KAAK,MAAM,CAAC,CAAI,OAAO,qBAAqB,YAAY,EAAE,CAAA;QAC1D,KAAK,OAAO,CAAC,CAAG,OAAO,qBAAqB,YAAY,EAAE,CAAA;QAC1D,KAAK,YAAY,CAAC,CAAC,OAAO,YAAY,CAAA;QACtC,KAAK,aAAa,CAAC,CAAC,OAAO,yBAAyB,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,GAAG,CAAA;QACjH,KAAK,aAAa,CAAC,CAAC,OAAO,2BAA2B,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,GAAG,CAAA;QACpH,KAAK,YAAY,CAAC,CAAC,OAAO,oBAAoB,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,GAAG,CAAA;QAC5G,KAAK,YAAY,CAAC,CAAC,OAAO,wBAAwB,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,GAAG,CAAA;QAClH,OAAO,CAAC,CAAC,OAAO,GAAG,GAAG,CAAC,WAAW,IAAI,YAAY,EAAE,CAAA;IACtD,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAc,OAAO,CAAC,GAAG,EAAE,EAC3B,YAAqB;IAErB,yCAAyC;IACzC,IAAI,YAAY,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/C,OAAO,YAAY,CAAC,YAAY,CAAC,CAAA;IACnC,CAAC;IAED,IAAI,GAAG,GAA4B,EAAE,CAAA;IACrC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAA;QAC9D,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACvB,CAAC;IAAC,MAAM,CAAC,CAAC,wBAAwB,CAAC,CAAC;IAEpC,MAAM,IAAI,GAAG;QACX,GAAG,CAAE,GAAG,CAAC,YAAuC,IAAI,EAAE,CAAC;QACvD,GAAG,CAAE,GAAG,CAAC,eAA0C,IAAI,EAAE,CAAC;KAC3D,CAAA;IAED,IAAI,QAAQ,IAAI,IAAI;QAAE,OAAO,eAAe,CAAC,MAAM,CAAA;IACnD,IAAI,MAAM,IAAI,IAAI,IAAI,YAAY,IAAI,IAAI;QAAE,OAAO,eAAe,CAAC,IAAI,CAAA;IACvE,IAAI,OAAO,IAAI,IAAI;QAAE,OAAO,eAAe,CAAC,KAAK,CAAA;IAEjD,IAAI,CAAC;QACH,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,EAAE,OAAO,CAAC,CAAA;QAChD,OAAO,eAAe,CAAC,MAAM,CAAA;IAC/B,CAAC;IAAC,MAAM,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAE5B,IAAI,CAAC;QACH,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,gBAAgB,CAAC,EAAE,OAAO,CAAC,CAAA;QACpD,OAAO,eAAe,CAAC,MAAM,CAAA;IAC/B,CAAC;IAAC,MAAM,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAE5B,IAAI,CAAC;QACH,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAA;QAC5C,OAAO,eAAe,CAAC,SAAS,CAAC,CAAA;IACnC,CAAC;IAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;IAExB,IAAI,CAAC;QAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,EAAE,OAAO,CAAC,CAAC;QAAC,OAAO,eAAe,CAAC,YAAY,CAAC,CAAA;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC;IAEvH,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,OAAO,CAAC,CAAA;QAC7D,IAAI,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,eAAe,CAAC,KAAK,CAAA;IAC7D,CAAC;IAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC;IAE1B,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,EAAE,OAAO,CAAC,CAAA;QACpE,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAiF,CAAA;QACzH,MAAM,YAAY,GAAG,EAAE,GAAG,CAAC,YAAY,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,EAAE,CAAA;QAChG,IAAI,cAAc,IAAI,YAAY;YAAE,OAAO,eAAe,CAAC,IAAI,CAAA;QAC/D,IAAI,iBAAiB,IAAI,YAAY;YAAE,OAAO,eAAe,CAAC,OAAO,CAAA;QACrE,OAAO,eAAe,CAAC,OAAO,CAAA,CAAC,yCAAyC;IAC1E,CAAC;IAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC;IAEzB,IAAI,CAAC;QAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,uBAAuB,CAAC,EAAE,OAAO,CAAC,CAAC;QAAC,OAAO,eAAe,CAAC,aAAa,CAAC,CAAA;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC;IAEnI,8CAA8C;IAC9C,IAAI,CAAC;QACH,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAA;QAC/C,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAA;QAClC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAAE,OAAO,eAAe,CAAC,aAAa,CAAC,CAAA;IAC3G,CAAC;IAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;IAExB,IAAI,CAAC;QAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAC;QAAC,OAAO,eAAe,CAAC,aAAa,CAAC,CAAA;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAC5H,IAAI,CAAC;QAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,CAAC,EAAE,OAAO,CAAC,CAAC;QAAC,OAAO,eAAe,CAAC,aAAa,CAAC,CAAA;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,uBAAuB,CAAC,CAAC;IACvI,IAAI,CAAC;QAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,OAAO,CAAC,CAAC;QAAC,OAAO,eAAe,CAAC,YAAY,CAAC,CAAA;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC;IACrH,IAAI,CAAC;QAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC,EAAE,OAAO,CAAC,CAAC;QAAC,OAAO,eAAe,CAAC,YAAY,CAAC,CAAA;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC;IAE3H,OAAO;QACL,UAAU,EAAE,SAAS;QACrB,QAAQ,EAAE,SAAS;QACnB,eAAe,EAAE,aAAa;QAC9B,eAAe,EAAE,EAAE;QACnB,WAAW,EAAE,EAAE;KAChB,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"detector.js","sourceRoot":"","sources":["../../src/lib/detector.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../../src/lib/providers/anthropic.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE5D,qBAAa,iBAAkB,YAAW,aAAa;IACrD,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,KAAK,CAAQ;gBAET,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAKnC,QAAQ,CACZ,QAAQ,EAAE,WAAW,EAAE,EACvB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,EACjC,SAAS,SAAQ,EACjB,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,CAAC;CA8CnB"}
1
+ {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../../src/lib/providers/anthropic.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE5D,qBAAa,iBAAkB,YAAW,aAAa;IACrD,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,KAAK,CAAQ;gBAET,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAKnC,QAAQ,CACZ,QAAQ,EAAE,WAAW,EAAE,EACvB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,EACjC,SAAS,SAAQ,EACjB,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,CAAC;CA6DnB"}
@@ -8,14 +8,28 @@ export class AnthropicProvider {
8
8
  }
9
9
  async generate(messages, system, onToken, maxTokens = 16000, temperature) {
10
10
  let content = '';
11
+ // Mark the first user message as cacheable — it holds the large initial context
12
+ // (source file, existing test, mocks, type definitions) that stays identical
13
+ // across all retries for a given file. Cache hits cost 10% of normal input price.
14
+ const anthropicMessages = messages.map((msg, i) => {
15
+ if (i === 0 && msg.role === 'user') {
16
+ return {
17
+ role: 'user',
18
+ content: [{ type: 'text', text: msg.content, cache_control: { type: 'ephemeral' } }],
19
+ };
20
+ }
21
+ return { role: msg.role, content: msg.content };
22
+ });
11
23
  try {
12
24
  const stream = this.client.messages.stream({
13
25
  model: this.model,
14
26
  max_tokens: maxTokens,
15
27
  stop_sequences: ['</code_output>'],
16
28
  ...(temperature !== undefined ? { temperature } : {}),
17
- system,
18
- messages,
29
+ // Cache the system prompt — same ~3000 tokens sent on every generate/fix/retry
30
+ // call and across all parallel workers. Without caching each call pays full price.
31
+ system: [{ type: 'text', text: system, cache_control: { type: 'ephemeral' } }],
32
+ messages: anthropicMessages,
19
33
  });
20
34
  for await (const event of stream) {
21
35
  if (event.type === 'content_block_delta' && event.delta.type === 'text_delta') {
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../../src/lib/providers/anthropic.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,mBAAmB,CAAA;AAGzC,MAAM,OAAO,iBAAiB;IACpB,MAAM,CAAW;IACjB,KAAK,CAAQ;IAErB,YAAY,KAAa,EAAE,MAAc;QACvC,IAAI,CAAC,MAAM,GAAG,IAAI,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;QACvC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;IACpB,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,QAAuB,EACvB,MAAc,EACd,OAAiC,EACjC,SAAS,GAAG,KAAK,EACjB,WAAoB;QAEpB,IAAI,OAAO,GAAG,EAAE,CAAA;QAEhB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACzC,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,UAAU,EAAE,SAAS;gBACrB,cAAc,EAAE,CAAC,gBAAgB,CAAC;gBAClC,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrD,MAAM;gBACN,QAAQ;aACT,CAAC,CAAA;YAEF,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBACjC,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;oBAC9E,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAA;oBAC3B,OAAO,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gBAC7B,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YAE5D,IAAI,wDAAwD,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvE,MAAM,IAAI,KAAK,CACb,GAAG,IAAI,CAAC,KAAK,6CAA6C;oBAC1D,+GAA+G;oBAC/G,sFAAsF,CACvF,CAAA;YACH,CAAC;YAED,IAAI,kEAAkE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjF,MAAM,IAAI,KAAK,CACb,mGAAmG;oBACnG,YAAY;oBACZ,+FAA+F;oBAC/F,mFAAmF;oBACnF,+EAA+E;oBAC/E,0FAA0F,CAC3F,CAAA;YACH,CAAC;YAED,MAAM,GAAG,CAAA;QACX,CAAC;QAED,OAAO,OAAO,CAAC,IAAI,EAAE,CAAA;IACvB,CAAC;CACF"}
1
+ {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../../src/lib/providers/anthropic.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,6 @@ export declare class OpenAICompatibleProvider implements ModelProvider {
6
6
  baseURL: string;
7
7
  apiKey?: string;
8
8
  });
9
- generate(messages: ChatMessage[], system: string, onToken?: (token: string) => void, maxTokens?: number, temperature?: number): Promise<string>;
9
+ generate(messages: ChatMessage[], system: string, onToken?: (token: string) => void, maxTokens?: number, temperature?: number, _attempt?: number): Promise<string>;
10
10
  }
11
11
  //# sourceMappingURL=openai-compatible.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"openai-compatible.d.ts","sourceRoot":"","sources":["../../../src/lib/providers/openai-compatible.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE5D,qBAAa,wBAAyB,YAAW,aAAa;IAC5D,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,KAAK,CAAQ;gBAET,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;IAqDlE,QAAQ,CACZ,QAAQ,EAAE,WAAW,EAAE,EACvB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,EACjC,SAAS,SAAQ,EACjB,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,CAAC;CA8CnB"}
1
+ {"version":3,"file":"openai-compatible.d.ts","sourceRoot":"","sources":["../../../src/lib/providers/openai-compatible.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE5D,qBAAa,wBAAyB,YAAW,aAAa;IAC5D,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,KAAK,CAAQ;gBAET,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;IAqDlE,QAAQ,CACZ,QAAQ,EAAE,WAAW,EAAE,EACvB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,EACjC,SAAS,SAAQ,EACjB,WAAW,CAAC,EAAE,MAAM,EACpB,QAAQ,SAAI,GACX,OAAO,CAAC,MAAM,CAAC;CAsDnB"}
@@ -55,7 +55,7 @@ export class OpenAICompatibleProvider {
55
55
  });
56
56
  this.model = model;
57
57
  }
58
- async generate(messages, system, onToken, maxTokens = 16000, temperature) {
58
+ async generate(messages, system, onToken, maxTokens = 16000, temperature, _attempt = 0) {
59
59
  let content = '';
60
60
  try {
61
61
  const stream = await this.client.chat.completions.create({
@@ -93,6 +93,14 @@ export class OpenAICompatibleProvider {
93
93
  }
94
94
  throw new Error(`${this.model} API error (HTTP ${e.status ?? '?'}): ${body}`);
95
95
  }
96
+ // Transient network termination (ECONNRESET, stream aborted, "terminated") —
97
+ // common when many parallel workers flood a single API endpoint. Retry once
98
+ // with a short backoff before surfacing the error.
99
+ const msg = err instanceof Error ? err.message : String(err);
100
+ if (_attempt === 0 && /terminated|ECONNRESET|ECONNREFUSED|socket hang up|network error|aborted/i.test(msg)) {
101
+ await new Promise(r => setTimeout(r, 2000 + Math.random() * 1000));
102
+ return this.generate(messages, system, onToken, maxTokens, temperature, 1);
103
+ }
96
104
  throw err;
97
105
  }
98
106
  return content.trim();
@@ -1 +1 @@
1
- {"version":3,"file":"openai-compatible.js","sourceRoot":"","sources":["../../../src/lib/providers/openai-compatible.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai-compatible.js","sourceRoot":"","sources":["../../../src/lib/providers/openai-compatible.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,7 @@
1
+ export declare function filterMockFileForTest(mocksCode: string, testCode: string): string;
2
+ export declare function filterMockFileForSource(mocksCode: string, sourceCode: string): string;
3
+ export declare function compressMockFile(code: string): string;
4
+ export declare function compressSource(source: string): string;
1
5
  export declare function shouldUseSkeleton(code: string): boolean;
2
6
  /**
3
7
  * Returns a skeletonized version of sourceCode.
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton.d.ts","sourceRoot":"","sources":["../../src/lib/skeleton.ts"],"names":[],"mappings":"AAoEA,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,eAAe,GAAE,MAAM,EAAO,GAAG,MAAM,CAwD9F"}
1
+ {"version":3,"file":"skeleton.d.ts","sourceRoot":"","sources":["../../src/lib/skeleton.ts"],"names":[],"mappings":"AAMA,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAqEjF;AAOD,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAmFrF;AAMD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAoCrD;AAMD,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAiBrD;AAsED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,eAAe,GAAE,MAAM,EAAO,GAAG,MAAM,CAwD9F"}
@@ -1,3 +1,223 @@
1
+ // Filters a shared mock file to only the sections the failing test actually uses.
2
+ // Scans the test file's imports from the mock file, then returns:
3
+ // - export declarations for those specific names
4
+ // - vi.mock() blocks that reference any of those names
5
+ // Falls back to the full file if no imports can be detected.
6
+ // This prevents burning tokens on 40 unrelated service mocks when fixing a billing test.
7
+ export function filterMockFileForTest(mocksCode, testCode) {
8
+ // Extract mock variable names the test imports from the mock file
9
+ const importedNames = new Set();
10
+ for (const m of testCode.matchAll(/import\s*\{([^}]+)\}\s*from\s*['"][^'"]*mock[s]?[^'"]*['"]/g)) {
11
+ for (const part of m[1].split(',')) {
12
+ const name = part.trim().split(/\s+as\s+/)[0].trim();
13
+ if (name && /^\w+$/.test(name))
14
+ importedNames.add(name);
15
+ }
16
+ }
17
+ if (importedNames.size === 0)
18
+ return mocksCode;
19
+ const lines = mocksCode.split('\n');
20
+ const include = new Set();
21
+ // Include export declaration lines for imported names
22
+ for (let i = 0; i < lines.length; i++) {
23
+ for (const name of importedNames) {
24
+ if (new RegExp(`\\bexport\\b[^{\\n]*\\b${name}\\b`).test(lines[i])) {
25
+ include.add(i);
26
+ }
27
+ }
28
+ }
29
+ // Include vi.mock() blocks that reference any imported name
30
+ let i = 0;
31
+ while (i < lines.length) {
32
+ if (/\bvi\.mock\(/.test(lines[i])) {
33
+ const blockStart = i;
34
+ let depth = 0;
35
+ let j = i;
36
+ // Scan to the end of this mock call (balanced parens)
37
+ while (j < lines.length) {
38
+ for (const ch of lines[j]) {
39
+ if (ch === '(')
40
+ depth++;
41
+ if (ch === ')')
42
+ depth--;
43
+ }
44
+ j++;
45
+ if (depth === 0)
46
+ break;
47
+ }
48
+ const blockText = lines.slice(blockStart, j).join('\n');
49
+ for (const name of importedNames) {
50
+ if (new RegExp(`\\b${name}\\b`).test(blockText)) {
51
+ for (let k = blockStart; k < j; k++)
52
+ include.add(k);
53
+ break;
54
+ }
55
+ }
56
+ i = j;
57
+ continue;
58
+ }
59
+ i++;
60
+ }
61
+ // Reconstruct, collapsing gaps to a single blank line
62
+ const result = [];
63
+ let gapped = false;
64
+ for (let i = 0; i < lines.length; i++) {
65
+ if (include.has(i)) {
66
+ result.push(lines[i]);
67
+ gapped = false;
68
+ }
69
+ else if (!gapped) {
70
+ result.push('');
71
+ gapped = true;
72
+ }
73
+ }
74
+ const filtered = result.join('\n').replace(/\n{3,}/g, '\n\n').trim();
75
+ // Safety: if filter stripped too aggressively, fall back to full file
76
+ return filtered.length < 50 ? mocksCode : filtered;
77
+ }
78
+ // Filters a shared mock file to sections relevant to the source file being tested.
79
+ // Used in generate prompts (no test file exists yet) — scans the source file's imports
80
+ // and returns vi.mock() blocks for those same module paths, plus any mock variables
81
+ // whose name matches the pattern mock<ImportedName> (e.g. WorkspacesClient → mockWorkspacesClient).
82
+ // This gives the AI the shapes of mocks it will need without sending the whole file.
83
+ export function filterMockFileForSource(mocksCode, sourceCode) {
84
+ // Extract module paths the source imports from
85
+ const importedPaths = new Set();
86
+ for (const m of sourceCode.matchAll(/^import[^'"]*['"]([^'"]+)['"]/gm)) {
87
+ importedPaths.add(m[1]);
88
+ }
89
+ if (importedPaths.size === 0)
90
+ return mocksCode;
91
+ const lines = mocksCode.split('\n');
92
+ const include = new Set();
93
+ // Include vi.mock() blocks whose module path matches a source import
94
+ let i = 0;
95
+ while (i < lines.length) {
96
+ const mockMatch = lines[i].match(/\bvi\.mock\(\s*(['"])([^'"]+)\1/);
97
+ if (mockMatch) {
98
+ const mockedPath = mockMatch[2];
99
+ const blockStart = i;
100
+ let depth = 0;
101
+ let j = i;
102
+ while (j < lines.length) {
103
+ for (const ch of lines[j]) {
104
+ if (ch === '(')
105
+ depth++;
106
+ if (ch === ')')
107
+ depth--;
108
+ }
109
+ j++;
110
+ if (depth === 0)
111
+ break;
112
+ }
113
+ // Include if the mocked path is directly imported by the source, or the source
114
+ // imports something from the same package (e.g. source imports WorkspacesClient
115
+ // from '@/lib/client/services/index.client' → include index.client mock block)
116
+ const relevant = [...importedPaths].some(p => p === mockedPath || p.includes(mockedPath) || mockedPath.includes(p.split('/').pop() ?? ''));
117
+ if (relevant) {
118
+ for (let k = blockStart; k < j; k++)
119
+ include.add(k);
120
+ }
121
+ i = j;
122
+ continue;
123
+ }
124
+ i++;
125
+ }
126
+ // Include export declarations for mock variables inferred from source imports.
127
+ // e.g. source imports `getSession` → look for `mockGetSession` (capitalise the first letter
128
+ // after the `mock` prefix to match the camelCase convention used in mock files).
129
+ // Also try lowercase fallback (`mockgetSession`) in case the file uses it.
130
+ const inferredNames = new Set();
131
+ for (const m of sourceCode.matchAll(/\bimport\s*\{([^}]+)\}/gm)) {
132
+ for (const part of m[1].split(',')) {
133
+ const name = part.trim().split(/\s+as\s+/)[0].trim();
134
+ if (!name)
135
+ continue;
136
+ // Capitalised prefix: mock + GetSession
137
+ inferredNames.add(`mock${name[0].toUpperCase()}${name.slice(1)}`);
138
+ // Lowercase prefix fallback: mock + getSession
139
+ inferredNames.add(`mock${name}`);
140
+ }
141
+ }
142
+ for (let i = 0; i < lines.length; i++) {
143
+ for (const name of inferredNames) {
144
+ if (new RegExp(`\\bexport\\b[^{\\n]*\\b${name}\\b`).test(lines[i])) {
145
+ include.add(i);
146
+ }
147
+ }
148
+ }
149
+ if (include.size === 0)
150
+ return mocksCode;
151
+ const result = [];
152
+ let gapped = false;
153
+ for (let i = 0; i < lines.length; i++) {
154
+ if (include.has(i)) {
155
+ result.push(lines[i]);
156
+ gapped = false;
157
+ }
158
+ else if (!gapped) {
159
+ result.push('');
160
+ gapped = true;
161
+ }
162
+ }
163
+ const filtered = result.join('\n').replace(/\n{3,}/g, '\n\n').trim();
164
+ return filtered.length < 50 ? mocksCode : filtered;
165
+ }
166
+ // Compresses a shared mock file before sending in a fix prompt.
167
+ // The generate prompt skips the raw file entirely (inventory + exports list suffices).
168
+ // Here we keep the file readable but strip multi-line vi.fn() implementations —
169
+ // the AI only needs to know the mock EXISTS and its name, not its JSX body.
170
+ export function compressMockFile(code) {
171
+ const lines = code.split('\n');
172
+ const result = [];
173
+ let i = 0;
174
+ while (i < lines.length) {
175
+ const line = lines[i];
176
+ // Detect a multi-line vi.fn() body: `export const mockFoo = vi.fn(` that doesn't close on the same line.
177
+ // These are icon/component mocks returning React.createElement — the AI only needs the name.
178
+ const multiLineFn = line.match(/^(export const \w+) = vi\.fn\(/);
179
+ if (multiLineFn) {
180
+ const openParens = (line.match(/\(/g) ?? []).length;
181
+ const closeParens = (line.match(/\)/g) ?? []).length;
182
+ if (openParens > closeParens) {
183
+ // Multi-line — scan forward to find the closing paren, then emit a collapsed form
184
+ let depth = openParens - closeParens;
185
+ i++;
186
+ while (i < lines.length && depth > 0) {
187
+ for (const ch of lines[i]) {
188
+ if (ch === '(')
189
+ depth++;
190
+ if (ch === ')')
191
+ depth--;
192
+ }
193
+ i++;
194
+ }
195
+ result.push(`${multiLineFn[1]} = vi.fn()`);
196
+ continue;
197
+ }
198
+ }
199
+ result.push(line);
200
+ i++;
201
+ }
202
+ // Collapse 3+ blank lines to 1
203
+ return result.join('\n').replace(/\n{3,}/g, '\n\n').trim();
204
+ }
205
+ // Removes documentation dead-weight from source code before sending to the AI.
206
+ // Targets content that costs tokens but adds no signal for test generation:
207
+ // license headers, long JSDoc blocks, and excessive blank lines.
208
+ // Intentionally conservative: short JSDoc (≤6 lines) and all inline // comments are kept.
209
+ export function compressSource(source) {
210
+ let out = source;
211
+ // Strip license / copyright block comments at the very top of the file.
212
+ // These are always before the first import and never describe testable behaviour.
213
+ out = out.replace(/^(?:\/\*[\s\S]*?(?:license|copyright|\bMIT\b|\bApache\b|\bGPL\b|@license)[\s\S]*?\*\/\s*)+/i, '');
214
+ // Strip block comments longer than 6 lines. Short ones (≤6 lines) describe
215
+ // edge cases and error conditions worth keeping; long ones are @param/@example boilerplate.
216
+ out = out.replace(/\/\*[\s\S]*?\*\//g, (match) => match.split('\n').length > 6 ? '' : match);
217
+ // Collapse 3+ consecutive blank lines to 1.
218
+ out = out.replace(/\n{3,}/g, '\n\n');
219
+ return out.trim();
220
+ }
1
221
  // Generates a compact structural summary of a TypeScript/JavaScript source file.
2
222
  // Large files are skeletonized: only the functions that need to be tested are expanded
3
223
  // to their full implementation; everything else is collapsed to its signature.
@@ -1 +1 @@
1
- {"version":3,"file":"skeleton.js","sourceRoot":"","sources":["../../src/lib/skeleton.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skeleton.js","sourceRoot":"","sources":["../../src/lib/skeleton.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ export declare function sanitizeMocksContent(raw: string): {
11
11
  code: string;
12
12
  stripped: boolean;
13
13
  };
14
+ export declare function deduplicateViMocks(code: string): string;
14
15
  export declare function buildStructureBrokenMessage(initialError: string, currentError: string): string;
15
16
  export declare function buildRegressionMessage(initialError: string, currentError: string, baselinePass: number, currentPass: number): string;
16
17
  //# sourceMappingURL=validate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/lib/validate.ts"],"names":[],"mappings":"AAYA,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGtD;AAID,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAgBzD;AAID,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEtD;AAKD,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAOrD;AAOD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAWzF;AAOD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAqC5E;AA0CD,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAiDrF;AAMD,wBAAgB,2BAA2B,CAAC,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAgB9F;AAID,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,GAClB,MAAM,CAYR"}
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/lib/validate.ts"],"names":[],"mappings":"AAYA,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGtD;AAID,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAgBzD;AAID,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEtD;AAKD,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAOrD;AAOD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAWzF;AAOD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAqC5E;AA0CD,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAiDrF;AAOD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAkHvD;AAMD,wBAAgB,2BAA2B,CAAC,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAgB9F;AAID,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,GAClB,MAAM,CAYR"}