lacuna-cli 0.1.4 → 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.
- package/README.md +51 -21
- package/dist/agent/fix-loop.d.ts +5 -0
- package/dist/agent/fix-loop.d.ts.map +1 -1
- package/dist/agent/fix-loop.js +342 -35
- package/dist/agent/fix-loop.js.map +1 -1
- package/dist/agent/generator.d.ts +4 -1
- package/dist/agent/generator.d.ts.map +1 -1
- package/dist/agent/generator.js +42 -3
- package/dist/agent/generator.js.map +1 -1
- package/dist/agent/loop.d.ts +8 -0
- package/dist/agent/loop.d.ts.map +1 -1
- package/dist/agent/loop.js +26 -9
- package/dist/agent/loop.js.map +1 -1
- package/dist/agent/prompts.d.ts +8 -0
- package/dist/agent/prompts.d.ts.map +1 -1
- package/dist/agent/prompts.js +395 -67
- package/dist/agent/prompts.js.map +1 -1
- package/dist/commands/fix.d.ts +2 -0
- package/dist/commands/fix.d.ts.map +1 -1
- package/dist/commands/fix.js +31 -2
- package/dist/commands/fix.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +245 -34
- package/dist/commands/init.js.map +1 -1
- package/dist/lib/config.d.ts +8 -8
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +8 -6
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/coverage/gaps.d.ts +2 -2
- package/dist/lib/coverage/gaps.d.ts.map +1 -1
- package/dist/lib/coverage/gaps.js +4 -4
- package/dist/lib/coverage/gaps.js.map +1 -1
- package/dist/lib/detector.d.ts +3 -2
- package/dist/lib/detector.d.ts.map +1 -1
- package/dist/lib/detector.js +138 -0
- package/dist/lib/detector.js.map +1 -1
- package/dist/lib/providers/anthropic.d.ts.map +1 -1
- package/dist/lib/providers/anthropic.js +26 -3
- package/dist/lib/providers/anthropic.js.map +1 -1
- package/dist/lib/providers/openai-compatible.d.ts +1 -1
- package/dist/lib/providers/openai-compatible.d.ts.map +1 -1
- package/dist/lib/providers/openai-compatible.js +17 -1
- package/dist/lib/providers/openai-compatible.js.map +1 -1
- package/dist/lib/skeleton.d.ts +4 -0
- package/dist/lib/skeleton.d.ts.map +1 -1
- package/dist/lib/skeleton.js +220 -0
- package/dist/lib/skeleton.js.map +1 -1
- package/dist/lib/validate.d.ts +1 -0
- package/dist/lib/validate.d.ts.map +1 -1
- package/dist/lib/validate.js +132 -0
- package/dist/lib/validate.js.map +1 -1
- package/dist/lib/worker-display.d.ts +3 -0
- package/dist/lib/worker-display.d.ts.map +1 -1
- package/dist/lib/worker-display.js +19 -4
- package/dist/lib/worker-display.js.map +1 -1
- package/package.json +1 -1
- package/dist/lib/report-upload.d.ts +0 -3
- package/dist/lib/report-upload.d.ts.map +0 -1
- package/dist/lib/report-upload.js +0 -15
- package/dist/lib/report-upload.js.map +0 -1
- package/oclif.manifest.json +0 -295
|
@@ -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
|
|
154
|
-
const allSourceFiles = await walkDir(
|
|
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
|
|
180
|
-
const all = await walkDir(
|
|
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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"}
|
package/dist/lib/detector.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export type TestRunner = 'jest' | 'vitest' | 'pytest' | 'mocha' | 'go-test' | 'unknown';
|
|
2
|
-
export type Language = 'typescript' | 'javascript' | 'python' | 'go' | 'unknown';
|
|
1
|
+
export type TestRunner = 'jest' | 'vitest' | 'pytest' | 'mocha' | 'go-test' | 'phpunit' | 'pest' | 'rspec' | 'cargo-test' | 'dotnet-test' | 'gradle-test' | 'maven-test' | 'swift-test' | 'unknown';
|
|
2
|
+
export type Language = 'typescript' | 'javascript' | 'python' | 'go' | 'php' | 'ruby' | 'rust' | 'csharp' | 'java' | 'swift' | 'unknown';
|
|
3
3
|
export interface DetectedEnvironment {
|
|
4
4
|
testRunner: TestRunner;
|
|
5
5
|
language: Language;
|
|
@@ -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,CAAA;
|
|
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"}
|
package/dist/lib/detector.js
CHANGED
|
@@ -36,6 +36,62 @@ const RUNNER_DEFAULTS = {
|
|
|
36
36
|
coverageCommand: 'go test ./... -coverprofile=coverage/lcov.info',
|
|
37
37
|
testCommand: 'go test ./...',
|
|
38
38
|
},
|
|
39
|
+
phpunit: {
|
|
40
|
+
testRunner: 'phpunit',
|
|
41
|
+
language: 'php',
|
|
42
|
+
testFilePattern: '**/*Test.php',
|
|
43
|
+
coverageCommand: './vendor/bin/phpunit --coverage-clover coverage/clover.xml',
|
|
44
|
+
testCommand: './vendor/bin/phpunit',
|
|
45
|
+
},
|
|
46
|
+
pest: {
|
|
47
|
+
testRunner: 'pest',
|
|
48
|
+
language: 'php',
|
|
49
|
+
testFilePattern: '**/*.test.php',
|
|
50
|
+
coverageCommand: './vendor/bin/pest --coverage --coverage-clover coverage/clover.xml',
|
|
51
|
+
testCommand: './vendor/bin/pest',
|
|
52
|
+
},
|
|
53
|
+
rspec: {
|
|
54
|
+
testRunner: 'rspec',
|
|
55
|
+
language: 'ruby',
|
|
56
|
+
testFilePattern: 'spec/**/*_spec.rb',
|
|
57
|
+
coverageCommand: 'bundle exec rspec',
|
|
58
|
+
testCommand: 'bundle exec rspec',
|
|
59
|
+
},
|
|
60
|
+
'cargo-test': {
|
|
61
|
+
testRunner: 'cargo-test',
|
|
62
|
+
language: 'rust',
|
|
63
|
+
testFilePattern: 'src/**/*.rs',
|
|
64
|
+
coverageCommand: 'cargo tarpaulin --out Lcov --output-dir coverage',
|
|
65
|
+
testCommand: 'cargo test',
|
|
66
|
+
},
|
|
67
|
+
'dotnet-test': {
|
|
68
|
+
testRunner: 'dotnet-test',
|
|
69
|
+
language: 'csharp',
|
|
70
|
+
testFilePattern: '**/*Tests.cs',
|
|
71
|
+
coverageCommand: 'dotnet test --collect:"XPlat Code Coverage"',
|
|
72
|
+
testCommand: 'dotnet test',
|
|
73
|
+
},
|
|
74
|
+
'gradle-test': {
|
|
75
|
+
testRunner: 'gradle-test',
|
|
76
|
+
language: 'java',
|
|
77
|
+
testFilePattern: 'src/test/**/*Test.java',
|
|
78
|
+
coverageCommand: './gradlew test jacocoTestReport',
|
|
79
|
+
testCommand: './gradlew test',
|
|
80
|
+
},
|
|
81
|
+
'maven-test': {
|
|
82
|
+
testRunner: 'maven-test',
|
|
83
|
+
language: 'java',
|
|
84
|
+
testFilePattern: 'src/test/**/*Test.java',
|
|
85
|
+
coverageCommand: 'mvn test jacoco:report',
|
|
86
|
+
testCommand: 'mvn test',
|
|
87
|
+
},
|
|
88
|
+
'swift-test': {
|
|
89
|
+
testRunner: 'swift-test',
|
|
90
|
+
language: 'swift',
|
|
91
|
+
testFilePattern: '**/*Tests.swift',
|
|
92
|
+
coverageCommand: 'swift test --enable-code-coverage',
|
|
93
|
+
testCommand: 'swift test',
|
|
94
|
+
},
|
|
39
95
|
};
|
|
40
96
|
export function envForRunner(runner) {
|
|
41
97
|
return (RUNNER_DEFAULTS[runner] ?? {
|
|
@@ -46,6 +102,25 @@ export function envForRunner(runner) {
|
|
|
46
102
|
testCommand: '',
|
|
47
103
|
});
|
|
48
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
|
+
}
|
|
49
124
|
export function fileTestCommand(env, testFilePath) {
|
|
50
125
|
switch (env.testRunner) {
|
|
51
126
|
case 'vitest': return `npx vitest run ${testFilePath}`;
|
|
@@ -56,6 +131,14 @@ export function fileTestCommand(env, testFilePath) {
|
|
|
56
131
|
const dir = testFilePath.includes('/') ? testFilePath.replace(/\/[^/]+$/, '') : '.';
|
|
57
132
|
return `go test ./${dir}/...`;
|
|
58
133
|
}
|
|
134
|
+
case 'phpunit': return `./vendor/bin/phpunit ${testFilePath}`;
|
|
135
|
+
case 'pest': return `./vendor/bin/pest ${testFilePath}`;
|
|
136
|
+
case 'rspec': return `bundle exec rspec ${testFilePath}`;
|
|
137
|
+
case 'cargo-test': return `cargo test`;
|
|
138
|
+
case 'dotnet-test': return `dotnet test --filter "${testFilePath.replace(/.*\//, '').replace(/Tests\.cs$/, '')}"`;
|
|
139
|
+
case 'gradle-test': return `./gradlew test --tests "${testFilePath.replace(/.*\//, '').replace(/Test\.java$/, '')}"`;
|
|
140
|
+
case 'maven-test': return `mvn test -Dtest="${testFilePath.replace(/.*\//, '').replace(/Test\.java$/, '')}"`;
|
|
141
|
+
case 'swift-test': return `swift test --filter "${testFilePath.replace(/.*\//, '').replace(/Tests\.swift$/, '')}"`;
|
|
59
142
|
default: return `${env.testCommand} ${testFilePath}`;
|
|
60
143
|
}
|
|
61
144
|
}
|
|
@@ -95,6 +178,61 @@ export async function detectEnvironment(cwd = process.cwd(), configRunner) {
|
|
|
95
178
|
return RUNNER_DEFAULTS['go-test'];
|
|
96
179
|
}
|
|
97
180
|
catch { /* not Go */ }
|
|
181
|
+
try {
|
|
182
|
+
await readFile(join(cwd, 'Cargo.toml'), 'utf-8');
|
|
183
|
+
return RUNNER_DEFAULTS['cargo-test'];
|
|
184
|
+
}
|
|
185
|
+
catch { /* not Rust */ }
|
|
186
|
+
try {
|
|
187
|
+
const gemfile = await readFile(join(cwd, 'Gemfile'), 'utf-8');
|
|
188
|
+
if (/\brspec\b/.test(gemfile))
|
|
189
|
+
return RUNNER_DEFAULTS.rspec;
|
|
190
|
+
}
|
|
191
|
+
catch { /* not Ruby */ }
|
|
192
|
+
try {
|
|
193
|
+
const composer = await readFile(join(cwd, 'composer.json'), 'utf-8');
|
|
194
|
+
const composerJson = JSON.parse(composer);
|
|
195
|
+
const composerDeps = { ...(composerJson.require ?? {}), ...(composerJson['require-dev'] ?? {}) };
|
|
196
|
+
if ('pestphp/pest' in composerDeps)
|
|
197
|
+
return RUNNER_DEFAULTS.pest;
|
|
198
|
+
if ('phpunit/phpunit' in composerDeps)
|
|
199
|
+
return RUNNER_DEFAULTS.phpunit;
|
|
200
|
+
return RUNNER_DEFAULTS.phpunit; // default to phpunit for any PHP project
|
|
201
|
+
}
|
|
202
|
+
catch { /* not PHP */ }
|
|
203
|
+
try {
|
|
204
|
+
await readFile(join(cwd, 'Directory.Build.props'), 'utf-8');
|
|
205
|
+
return RUNNER_DEFAULTS['dotnet-test'];
|
|
206
|
+
}
|
|
207
|
+
catch { /* not .NET */ }
|
|
208
|
+
// Also detect .csproj / .sln as C# indicators
|
|
209
|
+
try {
|
|
210
|
+
const { readdir } = await import('fs/promises');
|
|
211
|
+
const entries = await readdir(cwd);
|
|
212
|
+
if (entries.some(e => e.endsWith('.csproj') || e.endsWith('.sln')))
|
|
213
|
+
return RUNNER_DEFAULTS['dotnet-test'];
|
|
214
|
+
}
|
|
215
|
+
catch { /* not C# */ }
|
|
216
|
+
try {
|
|
217
|
+
await readFile(join(cwd, 'build.gradle'), 'utf-8');
|
|
218
|
+
return RUNNER_DEFAULTS['gradle-test'];
|
|
219
|
+
}
|
|
220
|
+
catch { /* not Gradle */ }
|
|
221
|
+
try {
|
|
222
|
+
await readFile(join(cwd, 'build.gradle.kts'), 'utf-8');
|
|
223
|
+
return RUNNER_DEFAULTS['gradle-test'];
|
|
224
|
+
}
|
|
225
|
+
catch { /* not Gradle Kotlin */ }
|
|
226
|
+
try {
|
|
227
|
+
await readFile(join(cwd, 'pom.xml'), 'utf-8');
|
|
228
|
+
return RUNNER_DEFAULTS['maven-test'];
|
|
229
|
+
}
|
|
230
|
+
catch { /* not Maven */ }
|
|
231
|
+
try {
|
|
232
|
+
await readFile(join(cwd, 'Package.swift'), 'utf-8');
|
|
233
|
+
return RUNNER_DEFAULTS['swift-test'];
|
|
234
|
+
}
|
|
235
|
+
catch { /* not Swift */ }
|
|
98
236
|
return {
|
|
99
237
|
testRunner: 'unknown',
|
|
100
238
|
language: 'unknown',
|
package/dist/lib/detector.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detector.js","sourceRoot":"","sources":["../../src/lib/detector.ts"],"names":[],"mappings":"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"}
|
|
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;
|
|
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
|
-
|
|
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') {
|
|
@@ -25,11 +39,20 @@ export class AnthropicProvider {
|
|
|
25
39
|
}
|
|
26
40
|
}
|
|
27
41
|
catch (err) {
|
|
28
|
-
|
|
42
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
43
|
+
if (/prompt is too long|max_tokens.*exceed|too many tokens/i.test(msg)) {
|
|
29
44
|
throw new Error(`${this.model} rejected the request — prompt too large.\n` +
|
|
30
45
|
`The assembled context (source file + test file + type definitions + mocks) exceeds the model's input limit.\n` +
|
|
31
46
|
`Try: lower maxTokens in .lacuna.json, or use --file to target a smaller source file.`);
|
|
32
47
|
}
|
|
48
|
+
if (/rate.?limit|429|output tokens per minute|request.*exceed.*limit/i.test(msg)) {
|
|
49
|
+
throw new Error(`Anthropic rate limit hit — your account has a low output-token-per-minute cap (Tier 1: 8k TPM).\n` +
|
|
50
|
+
`Options:\n` +
|
|
51
|
+
` 1. Lower maxTokens in .lacuna.json (e.g. "maxTokens": 4000) to reduce output per request.\n` +
|
|
52
|
+
` 2. Use --workers 1 (default) to avoid parallel requests consuming your quota.\n` +
|
|
53
|
+
` 3. Switch to a cheaper/higher-limit provider: lacuna generate -m deepseek\n` +
|
|
54
|
+
` 4. Upgrade your Anthropic account tier: https://console.anthropic.com/settings/billing`);
|
|
55
|
+
}
|
|
33
56
|
throw err;
|
|
34
57
|
}
|
|
35
58
|
return content.trim();
|
|
@@ -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;
|
|
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,
|
|
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({
|
|
@@ -83,8 +83,24 @@ export class OpenAICompatibleProvider {
|
|
|
83
83
|
const body = e.error?.message
|
|
84
84
|
? `${e.error.message}${e.error.type ? ` (type: ${e.error.type})` : ''}${e.error.code ? ` [${e.error.code}]` : ''}`
|
|
85
85
|
: (e.message ?? 'no message');
|
|
86
|
+
if (e.status === 429 || /rate.?limit|output tokens per minute|request.*exceed.*limit/i.test(body)) {
|
|
87
|
+
throw new Error(`Rate limit hit (HTTP 429) — ${this.model} is rejecting requests due to quota.\n` +
|
|
88
|
+
`Options:\n` +
|
|
89
|
+
` 1. Lower maxTokens in .lacuna.json (e.g. "maxTokens": 4000) to reduce output per request.\n` +
|
|
90
|
+
` 2. Use --workers 1 to avoid parallel requests consuming your quota.\n` +
|
|
91
|
+
` 3. Try a different model: lacuna generate -m deepseek\n` +
|
|
92
|
+
` 4. Check your provider's usage dashboard and upgrade if needed.`);
|
|
93
|
+
}
|
|
86
94
|
throw new Error(`${this.model} API error (HTTP ${e.status ?? '?'}): ${body}`);
|
|
87
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
|
+
}
|
|
88
104
|
throw err;
|
|
89
105
|
}
|
|
90
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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"}
|
package/dist/lib/skeleton.d.ts
CHANGED
|
@@ -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":"
|
|
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"}
|