lacuna-cli 0.1.8 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/README.md +94 -11
  2. package/dist/agent/context.d.ts +1 -0
  3. package/dist/agent/context.d.ts.map +1 -1
  4. package/dist/agent/context.js +141 -6
  5. package/dist/agent/context.js.map +1 -1
  6. package/dist/agent/fix-loop.d.ts +1 -0
  7. package/dist/agent/fix-loop.d.ts.map +1 -1
  8. package/dist/agent/fix-loop.js +245 -40
  9. package/dist/agent/fix-loop.js.map +1 -1
  10. package/dist/agent/generator.d.ts +7 -0
  11. package/dist/agent/generator.d.ts.map +1 -1
  12. package/dist/agent/generator.js +205 -35
  13. package/dist/agent/generator.js.map +1 -1
  14. package/dist/agent/loop.d.ts +1 -1
  15. package/dist/agent/loop.d.ts.map +1 -1
  16. package/dist/agent/loop.js +154 -11
  17. package/dist/agent/loop.js.map +1 -1
  18. package/dist/agent/prompts/index.d.ts +4 -1
  19. package/dist/agent/prompts/index.d.ts.map +1 -1
  20. package/dist/agent/prompts/index.js +182 -37
  21. package/dist/agent/prompts/index.js.map +1 -1
  22. package/dist/agent/prompts/react-native.d.ts.map +1 -1
  23. package/dist/agent/prompts/react-native.js +15 -4
  24. package/dist/agent/prompts/react-native.js.map +1 -1
  25. package/dist/agent/prompts/react.js +1 -1
  26. package/dist/agent/prompts/runners/vitest.js +1 -1
  27. package/dist/commands/analyze.d.ts.map +1 -1
  28. package/dist/commands/analyze.js +4 -0
  29. package/dist/commands/analyze.js.map +1 -1
  30. package/dist/commands/fix.d.ts +1 -0
  31. package/dist/commands/fix.d.ts.map +1 -1
  32. package/dist/commands/fix.js +24 -5
  33. package/dist/commands/fix.js.map +1 -1
  34. package/dist/commands/generate.d.ts.map +1 -1
  35. package/dist/commands/generate.js +10 -0
  36. package/dist/commands/generate.js.map +1 -1
  37. package/dist/commands/init.d.ts.map +1 -1
  38. package/dist/commands/init.js +6 -1
  39. package/dist/commands/init.js.map +1 -1
  40. package/dist/commands/run.d.ts.map +1 -1
  41. package/dist/commands/run.js +4 -0
  42. package/dist/commands/run.js.map +1 -1
  43. package/dist/lib/config.d.ts +10 -2
  44. package/dist/lib/config.d.ts.map +1 -1
  45. package/dist/lib/config.js +43 -21
  46. package/dist/lib/config.js.map +1 -1
  47. package/dist/lib/extract-error.d.ts.map +1 -1
  48. package/dist/lib/extract-error.js +8 -2
  49. package/dist/lib/extract-error.js.map +1 -1
  50. package/dist/lib/reporter.d.ts.map +1 -1
  51. package/dist/lib/reporter.js +11 -1
  52. package/dist/lib/reporter.js.map +1 -1
  53. package/dist/lib/typecheck.d.ts +1 -0
  54. package/dist/lib/typecheck.d.ts.map +1 -1
  55. package/dist/lib/typecheck.js +119 -7
  56. package/dist/lib/typecheck.js.map +1 -1
  57. package/dist/lib/validate.d.ts +37 -1
  58. package/dist/lib/validate.d.ts.map +1 -1
  59. package/dist/lib/validate.js +659 -11
  60. package/dist/lib/validate.js.map +1 -1
  61. package/lacuna.schema.json +150 -0
  62. package/package.json +14 -7
  63. package/oclif.manifest.json +0 -309
@@ -42,7 +42,7 @@ export function buildReactCauses(isJSRunner, mockApi) {
42
42
 
43
43
  - Infinite retry guard: never generate recursive waitFor → trigger → waitFor chains. If a condition does not resolve within a single waitFor block, fail explicitly.
44
44
 
45
- - React 18 act() flush rule: wrap async mock resolutions in await act(async () => {}) before test exit to flush pending updates.
45
+ - React 18 act() flush rule: when an event handler awaits a service mock and then calls setState, do NOT try to wrap the event in await act(async () => { ... }) act flushes only one microtask level and misses multi-hop mockResolvedValue chains. The correct fix is await waitFor(() => expect(element).toBeInTheDocument()) after the triggering event. waitFor polls inside act until the assertion passes, draining all async hops.
46
46
  `;
47
47
  }
48
48
  //# sourceMappingURL=react.js.map
@@ -3,7 +3,7 @@ export function buildVitestCauses() {
3
3
  - Never use require() in Vitest: Vitest runs files as ESM — dynamic require() fails at transform time. Always use static ES import + vi.mocked().
4
4
  - vi.mock() ORDERING: write all import statements first, then vi.mock() calls after them. Vitest hoists vi.mock() at runtime, but ESLint's import/first rule errors if vi.mock() appears before any import in the source. WRONG: \`vi.mock(...); import React from 'react'\` — RIGHT: \`import React from 'react'; ... vi.mock(...)\`
5
5
  - Shared mock file factory syntax: \`vi.mock('../service', async () => await import('../../test/mocks'))\` — synchronous factory cannot import external files in Vitest.
6
- - vi.hoisted() for shared mock references: when a mock object is created inside vi.mock() AND configured in beforeEach, use vi.hoisted() so both closures reference the same object instance. CONSTRUCTABLE MOCK PATTERN: if the source calls \`new Module()\` (especially at module scope in the imported file, e.g. \`const resend = new Resend(key)\`), the vi.mock() factory must return something constructable. Arrow functions are NOT constructable — \`new (() => {})()\` throws "not a constructor". Use vi.hoisted() to define the mock outside the factory, then use a regular function expression (not an arrow function) in mockImplementation: \`const MockResend = vi.hoisted(() => vi.fn().mockImplementation(function() { return { emails: { send: mockSend } }; }))\` — regular function expressions ARE constructable with \`new\`. Then reference MockResend inside the vi.mock() factory.
6
+ - vi.hoisted() for shared mock references: when a mock object is created inside vi.mock() AND configured in beforeEach, use vi.hoisted() so both closures reference the same object instance. CONSTRUCTABLE MOCK PATTERN: if the source calls \`new Module()\` (especially at module scope in the imported file, e.g. \`const resend = new Resend(key)\`), the vi.mock() factory must return something constructable. Arrow functions are NOT constructable — \`new (() => {})()\` throws "not a constructor". Use vi.hoisted() to define the mock outside the factory, then use a regular function expression (not an arrow function) in mockImplementation: \`const MockResend = vi.hoisted(() => vi.fn().mockImplementation(function() { return { emails: { send: mockSend } }; }))\` — regular function expressions ARE constructable with \`new\`. Then reference MockResend inside the vi.mock() factory. STATIC METHODS ON MOCKED CLASSES: if the real class has static methods (getInstance, create, build, from, etc.) AND any imported module calls them at module scope (outside a function body, e.g. \`const db = SomeClass.getInstance()\`), the mock MUST attach those static methods to the mock constructor — otherwise the module crashes on import with \`TypeError: default.<method> is not a function\` before any test runs. vi.fn() by itself has no static methods. Pattern: \`const MockClass = vi.fn().mockImplementation(() => mockInstance); MockClass.getInstance = vi.fn().mockReturnValue(mockInstance); return { default: MockClass };\`
7
7
  - Complete hook self-replacement for *.client-importing hooks: when a hook imports *.client services that chain into browser/server-only modules, mock the entire hook — \`vi.mock('../useMyHook', () => ({ useMyHook: vi.fn() }))\` — rather than each sub-dependency.
8
8
  - server-only resolution in Next.js: \`Failed to resolve import "server-only"\` is a config issue, not a test issue. Add an alias in vitest.config.ts: \`'server-only': path.resolve(__dirname, './test/empty-module.ts')\` and create that file with \`export default {}\`.
9
9
  - Top-level await (TS1378): NEVER use \`await\` at the top level of a test file. Every \`await\` must be inside an async callback: \`it("...", async () => { ... })\`.
@@ -1 +1 @@
1
- {"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAA;AAc5C,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,OAAO;IAC1C,MAAM,CAAC,WAAW,SAA+D;IAEjF,MAAM,CAAC,QAAQ,WAKd;IAED,MAAM,CAAC,KAAK;;;;;MAoBX;IAEK,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAoI3B"}
1
+ {"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAA;AAc5C,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,OAAO;IAC1C,MAAM,CAAC,WAAW,SAA+D;IAEjF,MAAM,CAAC,QAAQ,WAKd;IAED,MAAM,CAAC,KAAK;;;;;MAoBX;IAEK,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAsI3B"}
@@ -40,7 +40,11 @@ export default class Analyze extends Command {
40
40
  async run() {
41
41
  const { flags } = await this.parse(Analyze);
42
42
  const config = await loadConfig();
43
+ if (config.testEnv)
44
+ Object.assign(process.env, config.testEnv);
43
45
  const env = await detectEnvironment(process.cwd(), config.testRunner);
46
+ if (config.testCommand)
47
+ env.testCommand = config.testCommand;
44
48
  const threshold = flags.threshold ?? config.threshold;
45
49
  if (flags.format === 'terminal') {
46
50
  this.log(chalk.bold('\nlacuna analyze\n'));
@@ -1 +1 @@
1
- {"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ export default class Fix extends Command {
11
11
  fresh: import("@oclif/core/interfaces").BooleanFlag<boolean>;
12
12
  'regenerate-on-failure': import("@oclif/core/interfaces").BooleanFlag<boolean>;
13
13
  'fix-polluters': import("@oclif/core/interfaces").BooleanFlag<boolean>;
14
+ types: import("@oclif/core/interfaces").BooleanFlag<boolean>;
14
15
  };
15
16
  run(): Promise<void>;
16
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"fix.d.ts","sourceRoot":"","sources":["../../src/commands/fix.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAA;AAO5C,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,OAAO;IACtC,MAAM,CAAC,WAAW,SAAgG;IAElH,MAAM,CAAC,QAAQ,WAOd;IAED,MAAM,CAAC,KAAK;;;;;;;;;MAoCX;IAEK,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CA0F3B"}
1
+ {"version":3,"file":"fix.d.ts","sourceRoot":"","sources":["../../src/commands/fix.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAA;AAQ5C,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,OAAO;IACtC,MAAM,CAAC,WAAW,SAAgG;IAElH,MAAM,CAAC,QAAQ,WAOd;IAED,MAAM,CAAC,KAAK;;;;;;;;;;MAwCX;IAEK,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAmG3B"}
@@ -3,6 +3,7 @@ import chalk from 'chalk';
3
3
  import { loadConfig, applyModelOverride } from '../lib/config.js';
4
4
  import { detectEnvironment } from '../lib/detector.js';
5
5
  import { runFixLoop } from '../agent/fix-loop.js';
6
+ import { debugLogPattern } from '../agent/generator.js';
6
7
  import { showStarNudge, showIssueNudge } from '../lib/feedback.js';
7
8
  export default class Fix extends Command {
8
9
  static description = 'Find and fix failing tests using AI — preserves existing tests, only repairs what is broken';
@@ -50,18 +51,33 @@ export default class Fix extends Command {
50
51
  description: 'After fixing, bisect the test suite to identify files that corrupt shared state, then use AI to add cleanup',
51
52
  default: false,
52
53
  }),
54
+ types: Flags.boolean({
55
+ description: 'Select files by TypeScript type errors instead of test failures — repairs test files that pass but fail type-checking (one project-wide tsc, honors --workers)',
56
+ default: false,
57
+ }),
53
58
  };
54
59
  async run() {
55
60
  const { flags } = await this.parse(Fix);
56
61
  const config = await loadConfig();
57
62
  if (flags.model)
58
63
  applyModelOverride(config, flags.model);
64
+ if (config.testEnv)
65
+ Object.assign(process.env, config.testEnv);
59
66
  const env = await detectEnvironment(process.cwd(), config.testRunner);
67
+ if (config.testCommand)
68
+ env.testCommand = config.testCommand;
60
69
  this.log(chalk.bold('\nlacuna fix\n'));
61
70
  this.log(`${chalk.dim('Model:')} ${chalk.cyan(config.model)}`);
62
71
  this.log(`${chalk.dim('Runner:')} ${chalk.cyan(env.testRunner)}`);
72
+ if (flags.types)
73
+ this.log(`${chalk.dim('Mode:')} ${chalk.cyan('type errors')} ${chalk.dim('(selecting files by TypeScript errors, not test failures)')}`);
63
74
  if (flags.workers > 1)
64
75
  this.log(`${chalk.dim('Workers:')} ${flags.workers}`);
76
+ if (config.mocksFile)
77
+ this.log(`${chalk.dim('Mocks:')} ${chalk.cyan(config.mocksFile)}`);
78
+ const debugPattern = debugLogPattern(config.debug);
79
+ if (debugPattern)
80
+ this.log(`${chalk.dim('Debug:')} ${chalk.green('on')} ${chalk.dim(`→ ${debugPattern}`)}`);
65
81
  if (flags['dry-run'])
66
82
  this.log(chalk.yellow(' [dry-run — no files will be written]'));
67
83
  if (flags.file)
@@ -83,6 +99,7 @@ export default class Fix extends Command {
83
99
  fresh: flags.fresh,
84
100
  regenerateOnFailure: flags['regenerate-on-failure'],
85
101
  fixPolluters: flags['fix-polluters'],
102
+ types: flags.types,
86
103
  log: (msg) => this.log(msg),
87
104
  });
88
105
  }
@@ -104,9 +121,11 @@ export default class Fix extends Command {
104
121
  }
105
122
  const stillFailing = result.filesProcessed - result.filesFixed - result.filesAlreadyPassing;
106
123
  if (stillFailing > 0) {
107
- this.log(` ${chalk.dim('Still failing:')} ${chalk.red(String(stillFailing))}`);
124
+ this.log(` ${chalk.dim(flags.types ? 'Still erroring:' : 'Still failing:')} ${chalk.red(String(stillFailing))}`);
108
125
  }
109
- if (result.filesAlreadyPassing > 0 && !flags['fix-polluters']) {
126
+ // The pollution hint only makes sense for suite-failure selection — in --types mode a
127
+ // "skipped" file is a type-clean false match, not a pollution victim.
128
+ if (result.filesAlreadyPassing > 0 && !flags['fix-polluters'] && !flags.types) {
110
129
  this.log(chalk.dim(`\n ${result.filesAlreadyPassing} file(s) passed in isolation but fail in the suite. Use --fix-polluters to bisect + regenerate them.`));
111
130
  }
112
131
  if (result.errors.length > 0) {
@@ -124,15 +143,15 @@ export default class Fix extends Command {
124
143
  this.exit(0);
125
144
  }
126
145
  else if (stillFailing === 0) {
127
- if (result.filesAlreadyPassing > 0 && result.filesFixed === 0) {
146
+ if (result.filesAlreadyPassing > 0 && result.filesFixed === 0 && !flags.types) {
128
147
  this.log(chalk.yellow(`\n No tests were repaired — all skipped as already passing. Run lacuna fix --fresh to re-scan.`));
129
148
  this.exit(1);
130
149
  }
131
- this.log(chalk.green('\n All failing tests fixed.'));
150
+ this.log(chalk.green(flags.types ? '\n All type errors fixed.' : '\n All failing tests fixed.'));
132
151
  this.exit(0);
133
152
  }
134
153
  else {
135
- this.log(chalk.yellow(`\n ${stillFailing} file(s) still failing. Re-run lacuna fix or check errors above.`));
154
+ this.log(chalk.yellow(`\n ${stillFailing} file(s) ${flags.types ? 'still have type errors' : 'still failing'}. Re-run lacuna fix or check errors above.`));
136
155
  this.exit(1);
137
156
  }
138
157
  }
@@ -1 +1 @@
1
- {"version":3,"file":"fix.js","sourceRoot":"","sources":["../../src/commands/fix.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fix.js","sourceRoot":"","sources":["../../src/commands/fix.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAElE,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,OAAO;IACtC,MAAM,CAAC,WAAW,GAAG,6FAA6F,CAAA;IAElH,MAAM,CAAC,QAAQ,GAAG;QAChB,cAAc;QACd,0BAA0B;QAC1B,4CAA4C;QAC5C,wBAAwB;QACxB,sCAAsC;QACtC,8BAA8B;KAC/B,CAAA;IAED,MAAM,CAAC,KAAK,GAAG;QACb,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC;YACvB,WAAW,EAAE,kDAAkD;YAC/D,OAAO,EAAE,KAAK;SACf,CAAC;QACF,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC;YACjB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,0DAA0D;SACxE,CAAC;QACF,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,6CAA6C;YAC1D,OAAO,EAAE,KAAK;SACf,CAAC;QACF,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC;YAClB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,uCAAuC;SACrD,CAAC;QACF,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,8DAA8D;YAC3E,OAAO,EAAE,CAAC;SACX,CAAC;QACF,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;YACnB,WAAW,EAAE,wEAAwE;YACrF,OAAO,EAAE,KAAK;SACf,CAAC;QACF,uBAAuB,EAAE,KAAK,CAAC,OAAO,CAAC;YACrC,WAAW,EAAE,uIAAuI;YACpJ,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,IAAI;SACd,CAAC;QACF,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC;YAC7B,WAAW,EAAE,6GAA6G;YAC1H,OAAO,EAAE,KAAK;SACf,CAAC;QACF,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;YACnB,WAAW,EAAE,gKAAgK;YAC7K,OAAO,EAAE,KAAK;SACf,CAAC;KACH,CAAA;IAED,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAEvC,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAA;QACjC,IAAI,KAAK,CAAC,KAAK;YAAE,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;QACxD,IAAI,MAAM,CAAC,OAAO;YAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;QAE9D,MAAM,GAAG,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,UAAU,CAAC,CAAA;QACrE,IAAI,MAAM,CAAC,WAAW;YAAE,GAAG,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAA;QAE5D,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAA;QACtC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAChE,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;QAClE,IAAI,KAAK,CAAC,KAAK;YAAE,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,2DAA2D,CAAC,EAAE,CAAC,CAAA;QAC5J,IAAI,KAAK,CAAC,OAAO,GAAG,CAAC;YAAE,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;QAC5E,IAAI,MAAM,CAAC,SAAS;YAAE,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAC1F,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAClD,IAAI,YAAY;YAAE,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,YAAY,EAAE,CAAC,EAAE,CAAC,CAAA;QAC7G,IAAI,KAAK,CAAC,SAAS,CAAC;YAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,wCAAwC,CAAC,CAAC,CAAA;QACtF,IAAI,KAAK,CAAC,IAAI;YAAE,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;QAElE,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAA;YAC1E,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACd,CAAC;QAED,IAAI,MAAM,CAAA;QACV,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,UAAU,CAAC;gBACxB,MAAM;gBACN,GAAG;gBACH,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;gBAClB,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC;gBACxB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,UAAU,EAAE,KAAK,CAAC,IAAI;gBACtB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,mBAAmB,EAAE,KAAK,CAAC,uBAAuB,CAAC;gBACnD,YAAY,EAAE,KAAK,CAAC,eAAe,CAAC;gBACpC,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;aAC5B,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;QAC9D,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACZ,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAA;QAC/B,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC,CAAA;QACvE,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,QAAQ,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAA;QAExF,IAAI,MAAM,CAAC,mBAAmB,GAAG,CAAC,EAAE,CAAC;YACnC,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAA;QACjG,CAAC;QACD,IAAI,MAAM,CAAC,cAAc,GAAG,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAA;QAC9F,CAAC;QACD,IAAI,MAAM,CAAC,kBAAkB,GAAG,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAA;QAClG,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,mBAAmB,CAAA;QAC3F,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAA;QACpH,CAAC;QAED,sFAAsF;QACtF,sEAAsE;QACtE,IAAI,MAAM,CAAC,mBAAmB,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YAC9E,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,MAAM,CAAC,mBAAmB,sGAAsG,CAAC,CAAC,CAAA;QAC9J,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,YAAY,CAAC,CAAC,CAAA;YAC5D,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAChC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC1C,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;YAChD,CAAC;QACH,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YACtB,aAAa,CAAC,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAA;YAC5D,cAAc,CAAC,YAAY,EAAE,KAAK,CAAC,CAAA;QACrC,CAAC;QAED,IAAI,MAAM,CAAC,cAAc,KAAK,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACd,CAAC;aAAM,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;YAC9B,IAAI,MAAM,CAAC,mBAAmB,GAAG,CAAC,IAAI,MAAM,CAAC,UAAU,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;gBAC9E,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,iGAAiG,CAAC,CAAC,CAAA;gBACzH,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACd,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAA;YAClG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACd,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,YAAY,YAAY,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,eAAe,4CAA4C,CAAC,CAAC,CAAA;YAC3J,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACd,CAAC;IACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAA;AAU5C,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,OAAO;IAC3C,MAAM,CAAC,WAAW,SAA4E;IAE9F,MAAM,CAAC,QAAQ,WAKd;IAED,MAAM,CAAC,KAAK;;;;;;;;;;MAyCX;IAEK,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAyE3B"}
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAA;AAW5C,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,OAAO;IAC3C,MAAM,CAAC,WAAW,SAA4E;IAE9F,MAAM,CAAC,QAAQ,WAKd;IAED,MAAM,CAAC,KAAK;;;;;;;;;;MAyCX;IAEK,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CA8E3B"}
@@ -4,6 +4,7 @@ import chalk from 'chalk';
4
4
  import { loadConfig, applyModelOverride } from '../lib/config.js';
5
5
  import { detectEnvironment } from '../lib/detector.js';
6
6
  import { runAgentLoop } from '../agent/loop.js';
7
+ import { debugLogPattern } from '../agent/generator.js';
7
8
  import { reportTerminal, buildJsonReport, buildMarkdownReport, getExitCode } from '../lib/reporter.js';
8
9
  import { showStarNudge, showIssueNudge } from '../lib/feedback.js';
9
10
  export default class Generate extends Command {
@@ -63,13 +64,22 @@ export default class Generate extends Command {
63
64
  applyModelOverride(config, flags.model);
64
65
  if (flags.threshold)
65
66
  config.threshold = flags.threshold;
67
+ if (config.testEnv)
68
+ Object.assign(process.env, config.testEnv);
66
69
  const env = await detectEnvironment(process.cwd(), config.testRunner);
70
+ if (config.testCommand)
71
+ env.testCommand = config.testCommand;
67
72
  this.log(chalk.bold('\nlacuna generate\n'));
68
73
  this.log(`${chalk.dim('Model:')} ${chalk.cyan(config.model)}`);
69
74
  this.log(`${chalk.dim('Runner:')} ${chalk.cyan(env.testRunner)}`);
70
75
  this.log(`${chalk.dim('Threshold:')} ${config.threshold}%`);
71
76
  if (flags.workers > 1)
72
77
  this.log(`${chalk.dim('Workers:')} ${flags.workers}`);
78
+ if (config.mocksFile)
79
+ this.log(`${chalk.dim('Mocks:')} ${chalk.cyan(config.mocksFile)}`);
80
+ const debugPattern = debugLogPattern(config.debug);
81
+ if (debugPattern)
82
+ this.log(`${chalk.dim('Debug:')} ${chalk.green('on')} ${chalk.dim(`→ ${debugPattern}`)}`);
73
83
  if (flags['dry-run'])
74
84
  this.log(chalk.yellow(' [dry-run — no files will be written]'));
75
85
  if (flags.file)
@@ -1 +1 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAEtG,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAElE,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,OAAO;IAC3C,MAAM,CAAC,WAAW,GAAG,yEAAyE,CAAA;IAE9F,MAAM,CAAC,QAAQ,GAAG;QAChB,mBAAmB;QACnB,6BAA6B;QAC7B,4CAA4C;QAC5C,sDAAsD;KACvD,CAAA;IAED,MAAM,CAAC,KAAK,GAAG;QACb,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC;YACvB,WAAW,EAAE,6DAA6D;YAC1E,OAAO,EAAE,KAAK;SACf,CAAC;QACF,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC;YACjB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,4DAA4D;SAC1E,CAAC;QACF,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,6CAA6C;YAC1D,OAAO,EAAE,KAAK;SACf,CAAC;QACF,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC;YAClB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,uCAAuC;SACrD,CAAC;QACF,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC;YACvB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,6BAA6B;SAC3C,CAAC;QACF,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,oCAAoC;YACjD,OAAO,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC;YACzC,OAAO,EAAE,UAAU;SACpB,CAAC;QACF,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,wCAAwC;SACtD,CAAC;QACF,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,8DAA8D;YAC3E,OAAO,EAAE,CAAC;SACX,CAAC;QACF,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;YACnB,WAAW,EAAE,mEAAmE;YAChF,OAAO,EAAE,KAAK;SACf,CAAC;KACH,CAAA;IAED,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QAE5C,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAA;QACjC,IAAI,KAAK,CAAC,KAAK;YAAE,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;QACxD,IAAI,KAAK,CAAC,SAAS;YAAE,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QAEvD,MAAM,GAAG,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,UAAU,CAAC,CAAA;QAErE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAA;QAC3C,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QACnE,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;QACrE,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,MAAM,CAAC,SAAS,GAAG,CAAC,CAAA;QAC5D,IAAI,KAAK,CAAC,OAAO,GAAG,CAAC;YAAE,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;QAC/E,IAAI,KAAK,CAAC,SAAS,CAAC;YAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,wCAAwC,CAAC,CAAC,CAAA;QACtF,IAAI,KAAK,CAAC,IAAI;YAAE,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC,CAAA;QAErE,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAA;YAC1E,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACd,CAAC;QAED,IAAI,UAAU,CAAA;QACd,IAAI,CAAC;YACH,UAAU,GAAG,MAAM,YAAY,CAAC;gBAC9B,MAAM;gBACN,GAAG;gBACH,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;gBAClB,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC;gBACxB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,UAAU,EAAE,KAAK,CAAC,IAAI;gBACtB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;aAC5B,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;QAC9D,CAAC;QAED,MAAM,KAAK,GAAgB;YACzB,IAAI,EAAE,UAAU;YAChB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,cAAc,EAAE,CAAC;YACjB,QAAQ,EAAE,UAAU;SACrB,CAAA;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;YAC3D,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBACjB,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,CAAA;gBAC3C,IAAI,CAAC,GAAG,CAAC,uBAAuB,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;YACjD,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,CAAA;YACtB,CAAC;QACH,CAAC;aAAM,IAAI,KAAK,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YACvC,MAAM,GAAG,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAA;YACtC,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBACjB,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,CAAA;gBAC3C,IAAI,CAAC,GAAG,CAAC,uBAAuB,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;YACjD,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,CAAA;YACtB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,cAAc,CAAC,KAAK,CAAC,CAAA;QACvB,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YACrD,aAAa,CAAC,UAAU,CAAC,YAAY,CAAC,CAAA;YACtC,cAAc,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;QACtD,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAA;IAC/B,CAAC"}
1
+ {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAwnBrC,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,OAAO;IACvC,MAAM,CAAC,WAAW,SAAiE;IACnF,MAAM,CAAC,QAAQ,WAAoB;IAE7B,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CA2K3B"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AA4nBrC,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,OAAO;IACvC,MAAM,CAAC,WAAW,SAAiE;IACnF,MAAM,CAAC,QAAQ,WAAoB;IAE7B,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CA6K3B"}
@@ -6,6 +6,9 @@ import { select, input, confirm } from '@inquirer/prompts';
6
6
  import chalk from 'chalk';
7
7
  import { detectEnvironment } from '../lib/detector.js';
8
8
  import { PRESETS } from '../lib/providers/index.js';
9
+ // Hosted JSON Schema for .lacuna.json — gives editor key completion + hover docs.
10
+ // Hosted (not a node_modules path) because lacuna installs globally, so there's no local copy.
11
+ const LACUNA_SCHEMA_URL = 'https://raw.githubusercontent.com/Octagon-simon/lacuna/main/lacuna.schema.json';
9
12
  async function readProjectMeta(cwd) {
10
13
  try {
11
14
  const pkg = JSON.parse(await readFile(join(cwd, 'package.json'), 'utf-8'));
@@ -689,7 +692,9 @@ export default class Init extends Command {
689
692
  if (setupFile)
690
693
  config.setupFile = setupFile;
691
694
  const clean = Object.fromEntries(Object.entries(config).filter(([, v]) => v !== undefined));
692
- await writeFile(configPath, JSON.stringify(clean, null, 2) + '\n');
695
+ // $schema first so editors (VS Code, etc.) offer key completion + hover docs in .lacuna.json.
696
+ const withSchema = { $schema: LACUNA_SCHEMA_URL, ...clean };
697
+ await writeFile(configPath, JSON.stringify(withSchema, null, 2) + '\n');
693
698
  // ── Summary ───────────────────────────────────────────────────────────────
694
699
  this.log(chalk.green('\n✓ Created .lacuna.json\n'));
695
700
  this.log(chalk.bold('Setup summary:'));
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAA;AAM5C,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,OAAO;IACtC,MAAM,CAAC,WAAW,SAA2C;IAE7D,MAAM,CAAC,QAAQ,WAEd;IAED,MAAM,CAAC,KAAK;;MAMX;IAEK,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAgC3B"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAA;AAM5C,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,OAAO;IACtC,MAAM,CAAC,WAAW,SAA2C;IAE7D,MAAM,CAAC,QAAQ,WAEd;IAED,MAAM,CAAC,KAAK;;MAMX;IAEK,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAkC3B"}
@@ -18,7 +18,11 @@ export default class Run extends Command {
18
18
  async run() {
19
19
  const { flags } = await this.parse(Run);
20
20
  const config = await loadConfig();
21
+ if (config.testEnv)
22
+ Object.assign(process.env, config.testEnv);
21
23
  const env = await detectEnvironment(process.cwd(), config.testRunner);
24
+ if (config.testCommand)
25
+ env.testCommand = config.testCommand;
22
26
  this.log(chalk.bold('\nlacuna run\n'));
23
27
  if (env.testRunner === 'unknown') {
24
28
  this.warn('Could not detect test runner.');
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,OAAO;IACtC,MAAM,CAAC,WAAW,GAAG,wCAAwC,CAAA;IAE7D,MAAM,CAAC,QAAQ,GAAG;QAChB,cAAc;KACf,CAAA;IAED,MAAM,CAAC,KAAK,GAAG;QACb,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,uBAAuB;YACpC,OAAO,EAAE,KAAK;SACf,CAAC;KACH,CAAA;IAED,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACvC,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAA;QACjC,MAAM,GAAG,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,UAAU,CAAC,CAAA;QAErE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAA;QAEtC,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAA;YAC1C,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACd,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QACnE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,WAAW,IAAI,CAAC,CAAC,CAAA;QAE7C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;QAEhD,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACzB,CAAC;QAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAA;QAC9C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAA;YACtC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YACvB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YACvB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACd,CAAC;QAED,KAAK,MAAM,CAAA;IACb,CAAC"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,OAAO;IACtC,MAAM,CAAC,WAAW,GAAG,wCAAwC,CAAA;IAE7D,MAAM,CAAC,QAAQ,GAAG;QAChB,cAAc;KACf,CAAA;IAED,MAAM,CAAC,KAAK,GAAG;QACb,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,uBAAuB;YACpC,OAAO,EAAE,KAAK;SACf,CAAC;KACH,CAAA;IAED,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACvC,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAA;QACjC,IAAI,MAAM,CAAC,OAAO;YAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;QAC9D,MAAM,GAAG,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,UAAU,CAAC,CAAA;QACrE,IAAI,MAAM,CAAC,WAAW;YAAE,GAAG,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAA;QAE5D,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAA;QAEtC,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAA;YAC1C,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACd,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QACnE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,WAAW,IAAI,CAAC,CAAC,CAAA;QAE7C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;QAEhD,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACzB,CAAC;QAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAA;QAC9C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAA;YACtC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YACvB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YACvB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACd,CAAC;QAED,KAAK,MAAM,CAAA;IACb,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { z } from 'zod';
2
- declare const ConfigSchema: z.ZodObject<{
2
+ export declare const ConfigSchema: z.ZodObject<{
3
3
  testRunner: z.ZodOptional<z.ZodEnum<["jest", "vitest", "pytest", "mocha", "go-test", "phpunit", "pest", "rspec", "cargo-test", "dotnet-test", "gradle-test", "maven-test", "swift-test"]>>;
4
4
  coverageFormat: z.ZodDefault<z.ZodEnum<["lcov", "json-summary", "cobertura"]>>;
5
5
  coverageDir: z.ZodDefault<z.ZodString>;
@@ -16,6 +16,9 @@ declare const ConfigSchema: z.ZodObject<{
16
16
  baseURL: z.ZodDefault<z.ZodString>;
17
17
  apiKeyEnv: z.ZodDefault<z.ZodString>;
18
18
  maxTokens: z.ZodDefault<z.ZodNumber>;
19
+ testCommand: z.ZodOptional<z.ZodString>;
20
+ testEnv: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
21
+ debug: z.ZodOptional<z.ZodBoolean>;
19
22
  }, "strip", z.ZodTypeAny, {
20
23
  coverageFormat: "lcov" | "json-summary" | "cobertura";
21
24
  coverageDir: string;
@@ -29,12 +32,16 @@ declare const ConfigSchema: z.ZodObject<{
29
32
  baseURL: string;
30
33
  apiKeyEnv: string;
31
34
  maxTokens: number;
35
+ testEnv: Record<string, string>;
32
36
  testRunner?: "jest" | "vitest" | "pytest" | "mocha" | "go-test" | "phpunit" | "pest" | "rspec" | "cargo-test" | "dotnet-test" | "gradle-test" | "maven-test" | "swift-test" | undefined;
37
+ testCommand?: string | undefined;
33
38
  testDir?: string | undefined;
34
39
  mocksFile?: string | undefined;
35
40
  setupFile?: string | undefined;
41
+ debug?: boolean | undefined;
36
42
  }, {
37
43
  testRunner?: "jest" | "vitest" | "pytest" | "mocha" | "go-test" | "phpunit" | "pest" | "rspec" | "cargo-test" | "dotnet-test" | "gradle-test" | "maven-test" | "swift-test" | undefined;
44
+ testCommand?: string | undefined;
38
45
  coverageFormat?: "lcov" | "json-summary" | "cobertura" | undefined;
39
46
  coverageDir?: string | undefined;
40
47
  sourceDir?: string | string[] | undefined;
@@ -50,9 +57,10 @@ declare const ConfigSchema: z.ZodObject<{
50
57
  baseURL?: string | undefined;
51
58
  apiKeyEnv?: string | undefined;
52
59
  maxTokens?: number | undefined;
60
+ testEnv?: Record<string, string> | undefined;
61
+ debug?: boolean | undefined;
53
62
  }>;
54
63
  export type LacunaConfig = z.infer<typeof ConfigSchema>;
55
64
  export declare function applyModelOverride(config: LacunaConfig, model: string): void;
56
65
  export declare function loadConfig(cwd?: string): Promise<LacunaConfig>;
57
- export {};
58
66
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuBhB,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAA;AAmBvD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAkB5E;AAED,wBAAsB,UAAU,CAAC,GAAG,GAAE,MAAsB,GAAG,OAAO,CAAC,YAAY,CAAC,CAInF"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAMvB,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwCvB,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAA;AAmBvD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAkB5E;AAED,wBAAsB,UAAU,CAAC,GAAG,GAAE,MAAsB,GAAG,OAAO,CAAC,YAAY,CAAC,CAInF"}
@@ -1,27 +1,49 @@
1
1
  import { cosmiconfig } from 'cosmiconfig';
2
2
  import { z } from 'zod';
3
3
  import { PRESETS } from './providers/types.js';
4
- const ConfigSchema = z.object({
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
- coverageFormat: z.enum(['lcov', 'json-summary', 'cobertura']).default('lcov'),
7
- coverageDir: z.string().default('coverage'),
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])),
11
- threshold: z.number().min(0).max(100).default(80),
12
- maxIterations: z.number().min(1).max(10).default(3),
13
- coverageTimeout: z.number().min(30).default(300), // seconds; kills hung test suite
14
- testDir: z.string().optional(),
15
- ignore: z.array(z.string()).default([]),
16
- // mock configuration
17
- mocksFile: z.string().optional(), // path to shared mock file (e.g. src/test/mocks.ts)
18
- setupFile: z.string().optional(), // path to test setup file (e.g. src/test/setup.ts)
19
- // provider config
20
- provider: z.enum(['anthropic', 'openai-compatible']).default('openai-compatible'),
21
- model: z.string().default('deepseek-chat'),
22
- baseURL: z.string().default('https://api.deepseek.com/v1'),
23
- apiKeyEnv: z.string().default('DEEPSEEK_API_KEY'),
24
- maxTokens: z.number().min(1024).max(128000).default(16000),
4
+ // NOTE: the .describe() text on each field is the single source of truth for both code
5
+ // readers AND the generated JSON Schema (lacuna.schema.json) that powers editor completion
6
+ // and hover docs in .lacuna.json. Keep descriptions concise and user-facing.
7
+ export const ConfigSchema = z.object({
8
+ testRunner: z.enum(['jest', 'vitest', 'pytest', 'mocha', 'go-test', 'phpunit', 'pest', 'rspec', 'cargo-test', 'dotnet-test', 'gradle-test', 'maven-test', 'swift-test']).optional()
9
+ .describe('Test runner. Auto-detected from your project dependencies if omitted.'),
10
+ coverageFormat: z.enum(['lcov', 'json-summary', 'cobertura']).default('lcov')
11
+ .describe('Coverage report format your test runner produces.'),
12
+ coverageDir: z.string().default('coverage')
13
+ .describe('Directory where your test runner writes its coverage report.'),
14
+ sourceDir: z.union([z.string(), z.array(z.string())]).default('src')
15
+ .describe('Source directory (or directories) to scan for coverage gaps. A string, or an array like ["src","lib"] when source lives in multiple top-level dirs.')
16
+ .transform((v) => (Array.isArray(v) ? v : [v])),
17
+ threshold: z.number().min(0).max(100).default(80)
18
+ .describe('Minimum line-coverage % a file must reach to be considered covered.'),
19
+ maxIterations: z.number().min(1).max(10).default(3)
20
+ .describe('How many times to retry a failing generated/fixed test before giving up.'),
21
+ coverageTimeout: z.number().min(30).default(300)
22
+ .describe('Seconds before the test suite is killed — guards against hung open handles (unclosed servers, timers).'),
23
+ testDir: z.string().optional()
24
+ .describe('Optional explicit test directory. Rarely needed — test locations are auto-detected.'),
25
+ ignore: z.array(z.string()).default([])
26
+ .describe('Path substrings to exclude from gap detection, e.g. ["src/graphql/", "src/theme/"].'),
27
+ mocksFile: z.string().optional()
28
+ .describe('Path to a shared mock file every generated test imports from, e.g. "src/test/mocks.ts".'),
29
+ setupFile: z.string().optional()
30
+ .describe('Path to your test setup file. Its contents are shown to the AI so it knows which globals/matchers exist.'),
31
+ provider: z.enum(['anthropic', 'openai-compatible']).default('openai-compatible')
32
+ .describe('AI provider. "anthropic" uses the Anthropic SDK; "openai-compatible" covers DeepSeek, OpenAI, Groq, OpenRouter, Ollama, etc.'),
33
+ model: z.string().default('deepseek-chat')
34
+ .describe('Model name, e.g. "deepseek-chat", "claude-sonnet-4-6", "gpt-4o".'),
35
+ baseURL: z.string().default('https://api.deepseek.com/v1')
36
+ .describe('API base URL. Required for the "openai-compatible" provider.'),
37
+ apiKeyEnv: z.string().default('DEEPSEEK_API_KEY')
38
+ .describe('Name of the environment variable that holds your API key.'),
39
+ maxTokens: z.number().min(1024).max(128000).default(16000)
40
+ .describe('Maximum output tokens per model call. Lower for strict providers (Groq free tier ~8000); raise if large test files are cut off.'),
41
+ testCommand: z.string().optional()
42
+ .describe('Override the auto-detected test command, e.g. "npx jest --no-coverage". Use to add flags.'),
43
+ testEnv: z.record(z.string()).default({})
44
+ .describe('Environment variables injected into every test-runner invocation, e.g. { "NODE_CONFIG_DIR": "packages/server/config" }.'),
45
+ debug: z.boolean().optional()
46
+ .describe('Set true to log every raw model prompt + response. Each target file gets its own log (lacuna-debug.<file>.txt). Equivalent to LACUNA_DEBUG=1.'),
25
47
  });
26
48
  const explorer = cosmiconfig('lacuna', {
27
49
  searchPlaces: [