genaicode 0.1.1 → 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.
- package/README.md +3 -1
- package/bin/genaicode.cjs +7 -0
- package/dist/ai-service/ai-studio.d.ts +2 -1
- package/dist/ai-service/ai-studio.js +5 -5
- package/dist/ai-service/ai-studio.js.map +1 -1
- package/dist/ai-service/anthropic.d.ts +2 -1
- package/dist/ai-service/anthropic.js +6 -4
- package/dist/ai-service/anthropic.js.map +1 -1
- package/dist/ai-service/chat-gpt.js +2 -1
- package/dist/ai-service/chat-gpt.js.map +1 -1
- package/dist/ai-service/common.d.ts +4 -3
- package/dist/ai-service/common.js.map +1 -1
- package/dist/ai-service/dall-e.js +3 -2
- package/dist/ai-service/dall-e.js.map +1 -1
- package/dist/ai-service/vertex-ai-claude.js +2 -1
- package/dist/ai-service/vertex-ai-claude.js.map +1 -1
- package/dist/ai-service/vertex-ai-imagen.js +3 -0
- package/dist/ai-service/vertex-ai-imagen.js.map +1 -1
- package/dist/ai-service/vertex-ai.d.ts +3 -3
- package/dist/ai-service/vertex-ai.js +18 -23
- package/dist/ai-service/vertex-ai.js.map +1 -1
- package/dist/cli/cli-options.js +2 -2
- package/dist/cli/cli-options.js.map +1 -1
- package/dist/cli/cli-params.d.ts +4 -3
- package/dist/cli/cli-params.js +11 -5
- package/dist/cli/cli-params.js.map +1 -1
- package/dist/cli/validate-cli-params.js +2 -1
- package/dist/cli/validate-cli-params.js.map +1 -1
- package/dist/files/read-files.d.ts +6 -1
- package/dist/files/read-files.js +13 -8
- package/dist/files/read-files.js.map +1 -1
- package/dist/files/read-files.test.js +5 -6
- package/dist/files/read-files.test.js.map +1 -1
- package/dist/files/update-files.d.ts +2 -1
- package/dist/files/update-files.js +6 -6
- package/dist/files/update-files.js.map +1 -1
- package/dist/main/codegen-interactive-utils.d.ts +8 -0
- package/dist/main/codegen-interactive-utils.js +148 -0
- package/dist/main/codegen-interactive-utils.js.map +1 -0
- package/dist/main/codegen-interactive.d.ts +2 -0
- package/dist/main/codegen-interactive.js +68 -0
- package/dist/main/codegen-interactive.js.map +1 -0
- package/dist/main/codegen-types.d.ts +28 -0
- package/dist/main/codegen-types.js +2 -0
- package/dist/main/codegen-types.js.map +1 -0
- package/dist/main/codegen.d.ts +2 -0
- package/dist/main/codegen.js +88 -25
- package/dist/main/codegen.js.map +1 -1
- package/dist/main/codegen.test.js +36 -22
- package/dist/main/codegen.test.js.map +1 -1
- package/dist/main/config-lib.d.ts +8 -0
- package/dist/main/config-lib.js.map +1 -1
- package/dist/main/config.d.ts +2 -1
- package/dist/main/config.js +12 -0
- package/dist/main/config.js.map +1 -1
- package/dist/main/interactive/codegen-interactive.d.ts +2 -0
- package/dist/main/interactive/codegen-interactive.js +55 -0
- package/dist/main/interactive/codegen-interactive.js.map +1 -0
- package/dist/main/interactive/codegen-interactive.test.d.ts +4 -0
- package/dist/main/interactive/codegen-interactive.test.js +77 -0
- package/dist/main/interactive/codegen-interactive.test.js.map +1 -0
- package/dist/main/interactive/codegen-worker.d.ts +3 -0
- package/dist/main/interactive/codegen-worker.js +47 -0
- package/dist/main/interactive/codegen-worker.js.map +1 -0
- package/dist/main/interactive/common.d.ts +5 -0
- package/dist/main/interactive/common.js +51 -0
- package/dist/main/interactive/common.js.map +1 -0
- package/dist/main/interactive/configure.d.ts +2 -0
- package/dist/main/interactive/configure.js +99 -0
- package/dist/main/interactive/configure.js.map +1 -0
- package/dist/main/interactive/error-handling.d.ts +4 -0
- package/dist/main/interactive/error-handling.js +49 -0
- package/dist/main/interactive/error-handling.js.map +1 -0
- package/dist/main/interactive/help.d.ts +1 -0
- package/dist/main/interactive/help.js +22 -0
- package/dist/main/interactive/help.js.map +1 -0
- package/dist/main/interactive/process-comments.d.ts +2 -0
- package/dist/main/interactive/process-comments.js +39 -0
- package/dist/main/interactive/process-comments.js.map +1 -0
- package/dist/main/interactive/select-ai-service.d.ts +2 -0
- package/dist/main/interactive/select-ai-service.js +27 -0
- package/dist/main/interactive/select-ai-service.js.map +1 -0
- package/dist/main/interactive/task-file.d.ts +2 -0
- package/dist/main/interactive/task-file.js +28 -0
- package/dist/main/interactive/task-file.js.map +1 -0
- package/dist/main/interactive/text-prompt.d.ts +2 -0
- package/dist/main/interactive/text-prompt.js +18 -0
- package/dist/main/interactive/text-prompt.js.map +1 -0
- package/dist/main/interactive/user-interrupt.d.ts +1 -0
- package/dist/main/interactive/user-interrupt.js +36 -0
- package/dist/main/interactive/user-interrupt.js.map +1 -0
- package/dist/main/interactive/worker-script.d.ts +1 -0
- package/dist/main/interactive/worker-script.js +24 -0
- package/dist/main/interactive/worker-script.js.map +1 -0
- package/dist/main/interactive/worker.d.ts +2 -0
- package/dist/main/interactive/worker.js +55 -0
- package/dist/main/interactive/worker.js.map +1 -0
- package/dist/prompt/function-calling-validate.d.ts +1 -1
- package/dist/prompt/function-calling-validate.js +21 -15
- package/dist/prompt/function-calling-validate.js.map +1 -1
- package/dist/prompt/function-defs/ask-question.d.ts +35 -1
- package/dist/prompt/function-defs/ask-question.js +36 -1
- package/dist/prompt/function-defs/ask-question.js.map +1 -1
- package/dist/prompt/function-defs/codegen-summary.d.ts +5 -5
- package/dist/prompt/function-defs/codegen-summary.js +8 -8
- package/dist/prompt/function-defs/codegen-summary.js.map +1 -1
- package/dist/prompt/function-defs/generate-image.d.ts +8 -15
- package/dist/prompt/function-defs/generate-image.js +8 -15
- package/dist/prompt/function-defs/generate-image.js.map +1 -1
- package/dist/prompt/limits.js +2 -2
- package/dist/prompt/limits.test.js +5 -5
- package/dist/prompt/prompt-codegen.d.ts +7 -2
- package/dist/prompt/prompt-codegen.js +26 -17
- package/dist/prompt/prompt-codegen.js.map +1 -1
- package/dist/prompt/prompt-codegen.test.js +11 -7
- package/dist/prompt/prompt-codegen.test.js.map +1 -1
- package/dist/prompt/prompt-service-ask-question.test.js +14 -18
- package/dist/prompt/prompt-service-ask-question.test.js.map +1 -1
- package/dist/prompt/prompt-service.d.ts +20 -5
- package/dist/prompt/prompt-service.js +35 -150
- package/dist/prompt/prompt-service.js.map +1 -1
- package/dist/prompt/prompt-service.test.js +42 -22
- package/dist/prompt/prompt-service.test.js.map +1 -1
- package/dist/prompt/steps/step-ask-question.d.ts +6 -0
- package/dist/prompt/steps/step-ask-question.js +82 -0
- package/dist/prompt/steps/step-ask-question.js.map +1 -0
- package/dist/prompt/steps/step-generate-image.d.ts +2 -0
- package/dist/prompt/steps/step-generate-image.js +29 -0
- package/dist/prompt/steps/step-generate-image.js.map +1 -0
- package/dist/prompt/steps/step-validate-recover.d.ts +13 -0
- package/dist/prompt/steps/step-validate-recover.js +51 -0
- package/dist/prompt/steps/step-validate-recover.js.map +1 -0
- package/dist/prompt/steps/step-verify-patch.d.ts +7 -0
- package/dist/prompt/steps/step-verify-patch.js +41 -0
- package/dist/prompt/steps/step-verify-patch.js.map +1 -0
- package/dist/prompt/steps/steps-types.d.ts +4 -0
- package/dist/prompt/steps/steps-types.js +6 -0
- package/dist/prompt/steps/steps-types.js.map +1 -0
- package/dist/prompt/systemprompt.d.ts +2 -1
- package/dist/prompt/systemprompt.js +11 -7
- package/dist/prompt/systemprompt.js.map +1 -1
- package/dist/prompt/systemprompt.test.d.ts +1 -0
- package/dist/prompt/systemprompt.test.js +4 -5
- package/dist/prompt/systemprompt.test.js.map +1 -1
- package/package.json +4 -3
- package/bin/vertex-monkey-patch.cjs +0 -33
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { describe, it, expect, beforeEach, vi } from 'vitest';
|
|
2
2
|
import { promptService } from './prompt-service.js';
|
|
3
|
+
import * as aiStudio from '../ai-service/ai-studio.js';
|
|
3
4
|
import * as vertexAi from '../ai-service/vertex-ai.js';
|
|
5
|
+
import * as vertexAiClaude from '../ai-service/vertex-ai-claude.js';
|
|
4
6
|
import * as chatGpt from '../ai-service/chat-gpt.js';
|
|
5
7
|
import * as anthropic from '../ai-service/anthropic.js';
|
|
6
8
|
import * as cliParams from '../cli/cli-params.js';
|
|
@@ -10,6 +12,9 @@ import mime from 'mime-types';
|
|
|
10
12
|
import { getImageAssets } from '../files/read-files.js';
|
|
11
13
|
import '../files/find-files.js';
|
|
12
14
|
import * as dalleService from '../ai-service/dall-e.js';
|
|
15
|
+
import * as vertexAiImagen from '../ai-service/vertex-ai-imagen.js';
|
|
16
|
+
import { getCodeGenPrompt } from './prompt-codegen.js';
|
|
17
|
+
vi.mock('../ai-service/vertex-ai-claude.js', () => ({ generateContent: vi.fn() }));
|
|
13
18
|
vi.mock('../ai-service/vertex-ai.js', () => ({ generateContent: vi.fn() }));
|
|
14
19
|
vi.mock('../ai-service/chat-gpt.js', () => ({ generateContent: vi.fn() }));
|
|
15
20
|
vi.mock('../ai-service/anthropic.js', () => ({ generateContent: vi.fn() }));
|
|
@@ -34,6 +39,7 @@ vi.mock('fs');
|
|
|
34
39
|
vi.mock('diff');
|
|
35
40
|
vi.mock('mime-types');
|
|
36
41
|
vi.mock('../ai-service/dall-e.js', () => ({ generateImage: vi.fn() }));
|
|
42
|
+
vi.mock('../ai-service/vertex-ai-imagen.js', () => ({ generateImage: vi.fn() }));
|
|
37
43
|
// Mock find-files module
|
|
38
44
|
vi.mock('../files/find-files.js', () => ({
|
|
39
45
|
getSourceFiles: () => [],
|
|
@@ -50,7 +56,19 @@ vi.mock('../main/config.js', () => ({
|
|
|
50
56
|
rootDir: '.',
|
|
51
57
|
extensions: ['.js', '.ts', '.tsx', '.jsx'],
|
|
52
58
|
},
|
|
59
|
+
importantContext: {},
|
|
53
60
|
}));
|
|
61
|
+
const GENERATE_CONTENT_FNS = {
|
|
62
|
+
'vertex-ai-claude': vertexAiClaude.generateContent,
|
|
63
|
+
'vertex-ai': vertexAi.generateContent,
|
|
64
|
+
'ai-studio': aiStudio.generateContent,
|
|
65
|
+
anthropic: anthropic.generateContent,
|
|
66
|
+
'chat-gpt': chatGpt.generateContent,
|
|
67
|
+
};
|
|
68
|
+
const GENERATE_IMAGE_FNS = {
|
|
69
|
+
'dall-e': dalleService.generateImage,
|
|
70
|
+
'vertex-ai': vertexAiImagen.generateImage,
|
|
71
|
+
};
|
|
54
72
|
describe('promptService', () => {
|
|
55
73
|
beforeEach(() => {
|
|
56
74
|
vi.resetAllMocks();
|
|
@@ -68,7 +86,7 @@ describe('promptService', () => {
|
|
|
68
86
|
{ name: 'updateFile', args: { filePath: 'test.js', newContent: 'console.log("Hello");' } },
|
|
69
87
|
];
|
|
70
88
|
vi.mocked(vertexAi.generateContent).mockResolvedValueOnce(mockFunctionCalls);
|
|
71
|
-
const result = await promptService(
|
|
89
|
+
const result = await promptService(GENERATE_CONTENT_FNS, GENERATE_IMAGE_FNS, getCodeGenPrompt({ askQuestion: false, aiService: 'vertex-ai' }));
|
|
72
90
|
expect(result).toEqual(mockFunctionCalls);
|
|
73
91
|
expect(vertexAi.generateContent).toHaveBeenCalled();
|
|
74
92
|
});
|
|
@@ -76,7 +94,7 @@ describe('promptService', () => {
|
|
|
76
94
|
vi.mocked(cliParams).chatGpt = true;
|
|
77
95
|
const mockFunctionCalls = [{ name: 'createFile', args: { filePath: 'new.js', newContent: 'const x = 5;' } }];
|
|
78
96
|
vi.mocked(chatGpt.generateContent).mockResolvedValueOnce(mockFunctionCalls);
|
|
79
|
-
const result = await promptService(
|
|
97
|
+
const result = await promptService(GENERATE_CONTENT_FNS, GENERATE_IMAGE_FNS, getCodeGenPrompt({ askQuestion: false, aiService: 'chat-gpt' }));
|
|
80
98
|
expect(result).toEqual(mockFunctionCalls);
|
|
81
99
|
expect(chatGpt.generateContent).toHaveBeenCalled();
|
|
82
100
|
});
|
|
@@ -84,7 +102,7 @@ describe('promptService', () => {
|
|
|
84
102
|
vi.mocked(cliParams).anthropic = true;
|
|
85
103
|
const mockFunctionCalls = [{ name: 'deleteFile', args: { filePath: 'obsolete.js' } }];
|
|
86
104
|
vi.mocked(anthropic.generateContent).mockResolvedValueOnce(mockFunctionCalls);
|
|
87
|
-
const result = await promptService(
|
|
105
|
+
const result = await promptService(GENERATE_CONTENT_FNS, GENERATE_IMAGE_FNS, getCodeGenPrompt({ askQuestion: false, aiService: 'anthropic' }));
|
|
88
106
|
expect(result).toEqual(mockFunctionCalls);
|
|
89
107
|
expect(anthropic.generateContent).toHaveBeenCalled();
|
|
90
108
|
});
|
|
@@ -95,7 +113,7 @@ describe('promptService', () => {
|
|
|
95
113
|
{ name: 'updateFile', args: { filePath: 'test.js', newContent: 'console.log("Dry run");' } },
|
|
96
114
|
];
|
|
97
115
|
vi.mocked(vertexAi.generateContent).mockResolvedValueOnce(mockFunctionCalls);
|
|
98
|
-
const result = await promptService(
|
|
116
|
+
const result = await promptService(GENERATE_CONTENT_FNS, GENERATE_IMAGE_FNS, getCodeGenPrompt({ askQuestion: false, aiService: 'vertex-ai' }));
|
|
99
117
|
expect(result).toEqual(mockFunctionCalls);
|
|
100
118
|
expect(vertexAi.generateContent).toHaveBeenCalled();
|
|
101
119
|
});
|
|
@@ -139,7 +157,7 @@ describe('promptService', () => {
|
|
|
139
157
|
vi.mocked(fs.readFileSync).mockReturnValue('Original content');
|
|
140
158
|
// Mock diff.applyPatch to fail for the invalid patch
|
|
141
159
|
vi.mocked(diff.applyPatch).mockReturnValue(false);
|
|
142
|
-
const result = await promptService(
|
|
160
|
+
const result = await promptService(GENERATE_CONTENT_FNS, GENERATE_IMAGE_FNS, getCodeGenPrompt({ askQuestion: false, aiService: 'vertex-ai' }));
|
|
143
161
|
expect(vertexAi.generateContent).toHaveBeenCalledTimes(3);
|
|
144
162
|
expect(fs.readFileSync).toHaveBeenCalledWith('test.js', 'utf-8');
|
|
145
163
|
expect(diff.applyPatch).toHaveBeenCalledWith('Original content', 'invalid patch');
|
|
@@ -157,7 +175,7 @@ describe('promptService', () => {
|
|
|
157
175
|
];
|
|
158
176
|
vi.mocked(getImageAssets).mockReturnValue(mockImageAssets);
|
|
159
177
|
vi.mocked(chatGpt.generateContent).mockResolvedValueOnce(mockFunctionCalls);
|
|
160
|
-
await promptService(
|
|
178
|
+
await promptService(GENERATE_CONTENT_FNS, GENERATE_IMAGE_FNS, getCodeGenPrompt({ askQuestion: false, aiService: 'chat-gpt', vision: true }));
|
|
161
179
|
expect(chatGpt.generateContent).toHaveBeenCalled();
|
|
162
180
|
const calls = vi.mocked(chatGpt.generateContent).mock.calls[0];
|
|
163
181
|
expect(calls[0]).toEqual(expect.arrayContaining([
|
|
@@ -207,7 +225,7 @@ describe('promptService', () => {
|
|
|
207
225
|
vi.mocked(chatGpt.generateContent).mockResolvedValueOnce(mockUpdateCall);
|
|
208
226
|
vi.mocked(fs.readFileSync).mockImplementation((path) => `mock-base64-data-for-${path}`);
|
|
209
227
|
vi.mocked(mime.lookup).mockImplementation((path) => (path.endsWith('.png') ? 'image/png' : 'image/jpeg'));
|
|
210
|
-
await promptService(
|
|
228
|
+
await promptService(GENERATE_CONTENT_FNS, GENERATE_IMAGE_FNS, getCodeGenPrompt({ askQuestion: false, aiService: 'chat-gpt', vision: true }));
|
|
211
229
|
expect(chatGpt.generateContent).toHaveBeenCalledTimes(2);
|
|
212
230
|
const secondCall = vi.mocked(chatGpt.generateContent).mock.calls[1];
|
|
213
231
|
expect(secondCall[0]).toEqual(expect.arrayContaining([
|
|
@@ -236,7 +254,7 @@ describe('promptService', () => {
|
|
|
236
254
|
{ name: 'updateFile', args: { filePath: 'test.js', newContent: 'console.log("No vision test");' } },
|
|
237
255
|
];
|
|
238
256
|
vi.mocked(chatGpt.generateContent).mockResolvedValueOnce(mockFunctionCalls);
|
|
239
|
-
await promptService(
|
|
257
|
+
await promptService(GENERATE_CONTENT_FNS, GENERATE_IMAGE_FNS, getCodeGenPrompt({ askQuestion: false, aiService: 'chat-gpt' }));
|
|
240
258
|
expect(chatGpt.generateContent).toHaveBeenCalled();
|
|
241
259
|
const calls = vi.mocked(chatGpt.generateContent).mock.calls[0];
|
|
242
260
|
expect(calls[0]).not.toEqual(expect.arrayContaining([
|
|
@@ -269,7 +287,7 @@ describe('promptService', () => {
|
|
|
269
287
|
];
|
|
270
288
|
vi.mocked(vertexAi.generateContent).mockResolvedValueOnce(mockCodegenSummary);
|
|
271
289
|
vi.mocked(vertexAi.generateContent).mockResolvedValueOnce(mockUpdateCall);
|
|
272
|
-
await promptService(
|
|
290
|
+
await promptService(GENERATE_CONTENT_FNS, GENERATE_IMAGE_FNS, getCodeGenPrompt({ askQuestion: false, aiService: 'vertex-ai' }));
|
|
273
291
|
expect(vertexAi.generateContent).toHaveBeenCalledTimes(2);
|
|
274
292
|
const firstCall = vi.mocked(vertexAi.generateContent).mock.calls[0];
|
|
275
293
|
expect(firstCall[0]).toEqual(expect.arrayContaining([
|
|
@@ -308,7 +326,7 @@ describe('promptService', () => {
|
|
|
308
326
|
];
|
|
309
327
|
vi.mocked(vertexAi.generateContent).mockResolvedValueOnce(mockCodegenSummary);
|
|
310
328
|
vi.mocked(vertexAi.generateContent).mockResolvedValueOnce(mockUpdateCall);
|
|
311
|
-
await promptService(
|
|
329
|
+
await promptService(GENERATE_CONTENT_FNS, GENERATE_IMAGE_FNS, getCodeGenPrompt({ askQuestion: false, aiService: 'vertex-ai' }));
|
|
312
330
|
expect(vertexAi.generateContent).toHaveBeenCalledTimes(2);
|
|
313
331
|
const firstCall = vi.mocked(vertexAi.generateContent).mock.calls[0];
|
|
314
332
|
expect(firstCall[0]).not.toEqual(expect.arrayContaining([
|
|
@@ -330,7 +348,7 @@ describe('promptService', () => {
|
|
|
330
348
|
{
|
|
331
349
|
name: 'codegenSummary',
|
|
332
350
|
args: {
|
|
333
|
-
fileUpdates: [{ path: '
|
|
351
|
+
fileUpdates: [{ path: '/path/to/generated/image.png', updateToolName: 'generateImage' }],
|
|
334
352
|
contextPaths: [],
|
|
335
353
|
explanation: 'Mock summary with image generation',
|
|
336
354
|
},
|
|
@@ -342,7 +360,8 @@ describe('promptService', () => {
|
|
|
342
360
|
args: {
|
|
343
361
|
prompt: 'A test image',
|
|
344
362
|
filePath: '/path/to/generated/image.png',
|
|
345
|
-
|
|
363
|
+
width: 256,
|
|
364
|
+
height: 256,
|
|
346
365
|
},
|
|
347
366
|
},
|
|
348
367
|
];
|
|
@@ -359,7 +378,7 @@ describe('promptService', () => {
|
|
|
359
378
|
vi.mocked(vertexAi.generateContent).mockResolvedValueOnce(mockCodegenSummary);
|
|
360
379
|
vi.mocked(vertexAi.generateContent).mockResolvedValueOnce(mockGenerateImageCall);
|
|
361
380
|
vi.mocked(dalleService.generateImage).mockResolvedValue('https://example.com/generated-image.png');
|
|
362
|
-
const result = await promptService(
|
|
381
|
+
const result = await promptService(GENERATE_CONTENT_FNS, GENERATE_IMAGE_FNS, getCodeGenPrompt({ askQuestion: false, aiService: 'vertex-ai', imagen: 'dall-e' }));
|
|
363
382
|
expect(vertexAi.generateContent).toHaveBeenCalledTimes(2);
|
|
364
383
|
expect(dalleService.generateImage).toHaveBeenCalledWith('A test image', undefined, { width: 256, height: 256 }, false);
|
|
365
384
|
expect(result).toEqual(expect.arrayContaining(mockDownloadFileCall));
|
|
@@ -371,7 +390,7 @@ describe('promptService', () => {
|
|
|
371
390
|
{
|
|
372
391
|
name: 'codegenSummary',
|
|
373
392
|
args: {
|
|
374
|
-
fileUpdates: [{ path: '
|
|
393
|
+
fileUpdates: [{ path: '/path/to/generated/image.png', updateToolName: 'generateImage' }],
|
|
375
394
|
contextPaths: [],
|
|
376
395
|
explanation: 'Mock summary with image generation failure',
|
|
377
396
|
},
|
|
@@ -383,14 +402,15 @@ describe('promptService', () => {
|
|
|
383
402
|
args: {
|
|
384
403
|
prompt: 'A test image',
|
|
385
404
|
filePath: '/path/to/generated/image.png',
|
|
386
|
-
|
|
405
|
+
width: 256,
|
|
406
|
+
height: 256,
|
|
387
407
|
},
|
|
388
408
|
},
|
|
389
409
|
];
|
|
390
410
|
vi.mocked(vertexAi.generateContent).mockResolvedValueOnce(mockCodegenSummary);
|
|
391
411
|
vi.mocked(vertexAi.generateContent).mockResolvedValueOnce(mockGenerateImageCall);
|
|
392
412
|
vi.mocked(dalleService.generateImage).mockRejectedValue(new Error('Image generation failed'));
|
|
393
|
-
const result = await promptService(
|
|
413
|
+
const result = await promptService(GENERATE_CONTENT_FNS, GENERATE_IMAGE_FNS, getCodeGenPrompt({ askQuestion: false, aiService: 'vertex-ai', imagen: 'dall-e' }));
|
|
394
414
|
expect(vertexAi.generateContent).toHaveBeenCalledTimes(2);
|
|
395
415
|
expect(dalleService.generateImage).toHaveBeenCalledWith('A test image', undefined, { width: 256, height: 256 }, false);
|
|
396
416
|
expect(result).toEqual(expect.arrayContaining([
|
|
@@ -414,7 +434,7 @@ describe('promptService', () => {
|
|
|
414
434
|
},
|
|
415
435
|
];
|
|
416
436
|
vi.mocked(vertexAi.generateContent).mockResolvedValueOnce(mockUnexpectedResponse);
|
|
417
|
-
const result = await promptService(
|
|
437
|
+
const result = await promptService(GENERATE_CONTENT_FNS, GENERATE_IMAGE_FNS, getCodeGenPrompt({ askQuestion: false, aiService: 'vertex-ai' }));
|
|
418
438
|
expect(vertexAi.generateContent).toHaveBeenCalledTimes(1);
|
|
419
439
|
expect(result).toEqual(mockUnexpectedResponse);
|
|
420
440
|
});
|
|
@@ -425,7 +445,7 @@ describe('promptService', () => {
|
|
|
425
445
|
{
|
|
426
446
|
name: 'codegenSummary',
|
|
427
447
|
args: {
|
|
428
|
-
files: [{ path: 'test.js', updateToolName: '
|
|
448
|
+
files: [{ path: 'test.js', updateToolName: 'updateFile' }],
|
|
429
449
|
contextPaths: [],
|
|
430
450
|
explanation: 'Mock summary',
|
|
431
451
|
},
|
|
@@ -435,7 +455,7 @@ describe('promptService', () => {
|
|
|
435
455
|
{
|
|
436
456
|
name: 'codegenSummary',
|
|
437
457
|
args: {
|
|
438
|
-
fileUpdates: [{ path: 'test.js', updateToolName: '
|
|
458
|
+
fileUpdates: [{ path: 'test.js', updateToolName: 'updateFile' }],
|
|
439
459
|
contextPaths: [],
|
|
440
460
|
explanation: 'Mock summary',
|
|
441
461
|
},
|
|
@@ -453,7 +473,7 @@ describe('promptService', () => {
|
|
|
453
473
|
},
|
|
454
474
|
},
|
|
455
475
|
]);
|
|
456
|
-
const result = await promptService(
|
|
476
|
+
const result = await promptService(GENERATE_CONTENT_FNS, GENERATE_IMAGE_FNS, getCodeGenPrompt({ askQuestion: false, aiService: 'vertex-ai' }));
|
|
457
477
|
expect(vertexAi.generateContent).toHaveBeenCalledTimes(3);
|
|
458
478
|
expect(result).toEqual([
|
|
459
479
|
{
|
|
@@ -486,7 +506,7 @@ describe('promptService', () => {
|
|
|
486
506
|
])
|
|
487
507
|
.mockResolvedValueOnce(mockInvalidCall)
|
|
488
508
|
.mockResolvedValueOnce(mockInvalidCall); // Second call also returns invalid result
|
|
489
|
-
await expect(promptService(
|
|
509
|
+
await expect(promptService(GENERATE_CONTENT_FNS, GENERATE_IMAGE_FNS, getCodeGenPrompt({ askQuestion: false, aiService: 'vertex-ai' }))).rejects.toThrow('Recovery failed');
|
|
490
510
|
expect(vertexAi.generateContent).toHaveBeenCalledTimes(3);
|
|
491
511
|
});
|
|
492
512
|
it('should not attempt recovery for multiple valid function calls', async () => {
|
|
@@ -502,7 +522,7 @@ describe('promptService', () => {
|
|
|
502
522
|
},
|
|
503
523
|
];
|
|
504
524
|
vi.mocked(vertexAi.generateContent).mockResolvedValueOnce(mockValidCalls);
|
|
505
|
-
const result = await promptService(
|
|
525
|
+
const result = await promptService(GENERATE_CONTENT_FNS, GENERATE_IMAGE_FNS, getCodeGenPrompt({ askQuestion: false, aiService: 'vertex-ai' }));
|
|
506
526
|
expect(vertexAi.generateContent).toHaveBeenCalledTimes(1);
|
|
507
527
|
expect(result).toEqual(mockValidCalls);
|
|
508
528
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt-service.test.js","sourceRoot":"","sources":["../../src/prompt/prompt-service.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"prompt-service.test.js","sourceRoot":"","sources":["../../src/prompt/prompt-service.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { FunctionCall, FunctionDef, PromptItem } from '../../ai-service/common.js';
|
|
2
|
+
import { StepResult } from './steps-types.js';
|
|
3
|
+
import { CodegenOptions } from '../../main/codegen-types.js';
|
|
4
|
+
export declare function executeStepAskQuestion(generateContentFn: (prompt: PromptItem[], functionDefs: FunctionDef[], requiredFunctionName: string, temperature: number, cheap: boolean, options: CodegenOptions) => Promise<FunctionCall[]>, prompt: PromptItem[], functionDefs: FunctionDef[], temperature: number, cheap: boolean, messages: {
|
|
5
|
+
contextSourceCode: (paths: string[]) => string;
|
|
6
|
+
}, options: CodegenOptions): Promise<StepResult>;
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { input, confirm } from '@inquirer/prompts';
|
|
2
|
+
import { StepResult } from './steps-types.js';
|
|
3
|
+
export async function executeStepAskQuestion(generateContentFn, prompt, functionDefs, temperature, cheap, messages, options) {
|
|
4
|
+
console.log('Allowing the assistant to ask a question...');
|
|
5
|
+
const questionAsked = false;
|
|
6
|
+
while (!questionAsked) {
|
|
7
|
+
const askQuestionResult = await generateContentFn(prompt, functionDefs, 'askQuestion', temperature, cheap, options);
|
|
8
|
+
const askQuestionCall = askQuestionResult.find((call) => call.name === 'askQuestion');
|
|
9
|
+
if (askQuestionCall) {
|
|
10
|
+
console.log('Assistant asks:', askQuestionCall.args);
|
|
11
|
+
if (askQuestionCall.args?.stopCodegen) {
|
|
12
|
+
console.log('Assistant requested to stop code generation. Exiting...');
|
|
13
|
+
return StepResult.BREAK;
|
|
14
|
+
}
|
|
15
|
+
else if (!askQuestionCall.args?.shouldPrompt) {
|
|
16
|
+
console.log('Proceeding with code generation.');
|
|
17
|
+
break;
|
|
18
|
+
}
|
|
19
|
+
const fileContentRequested = (askQuestionCall.args?.requestFilesContent?.length ?? 0) > 0;
|
|
20
|
+
const permissionsRequested = Object.entries(askQuestionCall.args?.requestPermissions ?? {}).filter(([, enabled]) => enabled).length > 0;
|
|
21
|
+
const userAnswer = askQuestionCall.args?.shouldPrompt
|
|
22
|
+
? fileContentRequested
|
|
23
|
+
? (await confirm({
|
|
24
|
+
message: 'The assistant is requesting file contents. Do you want to provide them?',
|
|
25
|
+
default: true,
|
|
26
|
+
}))
|
|
27
|
+
? 'Providing requested files content.'
|
|
28
|
+
: 'Request for file contents denied.'
|
|
29
|
+
: permissionsRequested
|
|
30
|
+
? (await confirm({
|
|
31
|
+
message: 'The assistant is requesting additional permissions. Do you want to grant them?',
|
|
32
|
+
default: false,
|
|
33
|
+
}))
|
|
34
|
+
? 'Permissions granted.'
|
|
35
|
+
: 'Permission request denied.'
|
|
36
|
+
: await input({ message: 'Your answer' })
|
|
37
|
+
: "Let's proceed with code generation.";
|
|
38
|
+
if (permissionsRequested &&
|
|
39
|
+
askQuestionCall.args?.requestPermissions &&
|
|
40
|
+
userAnswer === 'Permission request denied.') {
|
|
41
|
+
if (askQuestionCall.args?.requestPermissions.enableImagen) {
|
|
42
|
+
options.imagen = options.aiService === 'chat-gpt' ? 'dall-e' : 'vertex-ai';
|
|
43
|
+
}
|
|
44
|
+
if (askQuestionCall.args?.requestPermissions.enableVision) {
|
|
45
|
+
options.vision = true;
|
|
46
|
+
}
|
|
47
|
+
if (askQuestionCall.args?.requestPermissions.allowDirectoryCreate) {
|
|
48
|
+
options.allowDirectoryCreate = true;
|
|
49
|
+
}
|
|
50
|
+
if (askQuestionCall.args?.requestPermissions.allowFileCreate) {
|
|
51
|
+
options.allowFileCreate = true;
|
|
52
|
+
}
|
|
53
|
+
if (askQuestionCall.args?.requestPermissions.allowFileDelete) {
|
|
54
|
+
options.allowFileDelete = true;
|
|
55
|
+
}
|
|
56
|
+
if (askQuestionCall.args?.requestPermissions.allowFileMove) {
|
|
57
|
+
options.allowFileMove = true;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
prompt.push({ type: 'assistant', functionCalls: [askQuestionCall] }, {
|
|
61
|
+
type: 'user',
|
|
62
|
+
text: userAnswer,
|
|
63
|
+
functionResponses: [
|
|
64
|
+
{
|
|
65
|
+
name: 'askQuestion',
|
|
66
|
+
call_id: askQuestionCall.id,
|
|
67
|
+
content: fileContentRequested && userAnswer === 'Providing requested files content.'
|
|
68
|
+
? messages.contextSourceCode(askQuestionCall.args.requestFilesContent)
|
|
69
|
+
: undefined,
|
|
70
|
+
},
|
|
71
|
+
],
|
|
72
|
+
});
|
|
73
|
+
console.log('The question was answered', userAnswer);
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
console.log('Assistant did not ask a question. Proceeding with code generation.');
|
|
77
|
+
break;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
return StepResult.CONTINUE;
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=step-ask-question.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"step-ask-question.js","sourceRoot":"","sources":["../../../src/prompt/steps/step-ask-question.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import assert from 'node:assert';
|
|
2
|
+
export async function executeStepGenerateImage(generateImageFn, generateImageCall) {
|
|
3
|
+
assert(!!generateImageFn, 'Image generation requested, but an image generation service was not provided');
|
|
4
|
+
console.log('Processing image generation request:', generateImageCall.args);
|
|
5
|
+
try {
|
|
6
|
+
const { prompt: imagePrompt, filePath, contextImagePath, width, height, cheap, } = generateImageCall.args;
|
|
7
|
+
const generatedImageUrl = await generateImageFn(imagePrompt, contextImagePath, { width, height }, cheap === true);
|
|
8
|
+
// Add a downloadFile call to the result to ensure the generated image is tracked
|
|
9
|
+
return {
|
|
10
|
+
name: 'downloadFile',
|
|
11
|
+
args: {
|
|
12
|
+
filePath: filePath,
|
|
13
|
+
downloadUrl: generatedImageUrl,
|
|
14
|
+
explanation: `Downloading generated image`,
|
|
15
|
+
},
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
catch (error) {
|
|
19
|
+
console.error('Error generating image:', error);
|
|
20
|
+
// Add an explanation about the failed image generation
|
|
21
|
+
return {
|
|
22
|
+
name: 'explanation',
|
|
23
|
+
args: {
|
|
24
|
+
text: `Failed to generate image: ${error.message}`,
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=step-generate-image.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"step-generate-image.js","sourceRoot":"","sources":["../../../src/prompt/steps/step-generate-image.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AAGjC,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,eAAsC,EACtC,iBAA+B;IAE/B,MAAM,CAAC,CAAC,CAAC,eAAe,EAAE,8EAA8E,CAAC,CAAC;IAE1G,OAAO,CAAC,GAAG,CAAC,sCAAsC,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAE5E,IAAI,CAAC;QACH,MAAM,EACJ,MAAM,EAAE,WAAW,EACnB,QAAQ,EACR,gBAAgB,EAChB,KAAK,EACL,MAAM,EACN,KAAK,GACN,GAAG,iBAAiB,CAAC,IAOrB,CAAC;QACF,MAAM,iBAAiB,GAAG,MAAM,eAAe,CAAC,WAAW,EAAE,gBAAgB,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC;QAElH,iFAAiF;QACjF,OAAO;YACL,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE;gBACJ,QAAQ,EAAE,QAAQ;gBAClB,WAAW,EAAE,iBAAiB;gBAC9B,WAAW,EAAE,6BAA6B;aAC3C;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;QAChD,uDAAuD;QACvD,OAAO;YACL,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE;gBACJ,IAAI,EAAE,6BAA8B,KAAe,CAAC,OAAO,EAAE;aAC9D;SACF,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { PromptItem, FunctionDef, FunctionCall, GenerateContentFunction } from '../../ai-service/common.js';
|
|
2
|
+
import { CodegenOptions } from '../../main/codegen-types.js';
|
|
3
|
+
export declare function validateAndRecoverSingleResult([prompt, functionDefs, requiredFunctionName, temperature, cheap, options]: [
|
|
4
|
+
PromptItem[],
|
|
5
|
+
FunctionDef[],
|
|
6
|
+
string,
|
|
7
|
+
number,
|
|
8
|
+
boolean,
|
|
9
|
+
CodegenOptions
|
|
10
|
+
], result: FunctionCall[], messages: {
|
|
11
|
+
invalidFunctionCall: string;
|
|
12
|
+
partialPromptTemplate: (path: string) => string;
|
|
13
|
+
}, generateContentFn: GenerateContentFunction): Promise<FunctionCall[]>;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import assert from 'node:assert';
|
|
2
|
+
import { validateFunctionCall } from '../function-calling-validate.js';
|
|
3
|
+
export async function validateAndRecoverSingleResult([prompt, functionDefs, requiredFunctionName, temperature, cheap, options], result, messages, generateContentFn) {
|
|
4
|
+
if (result.length > 1) {
|
|
5
|
+
// quite unexpected
|
|
6
|
+
return result;
|
|
7
|
+
}
|
|
8
|
+
let call = result[0];
|
|
9
|
+
const validatorError = validateFunctionCall(call, requiredFunctionName);
|
|
10
|
+
if (validatorError) {
|
|
11
|
+
console.log('Invalid function call', call, validatorError);
|
|
12
|
+
if (!call) {
|
|
13
|
+
call = { name: requiredFunctionName };
|
|
14
|
+
if (requiredFunctionName === 'patchFile') {
|
|
15
|
+
console.log('Switching patchFile to updateFile');
|
|
16
|
+
requiredFunctionName = 'updateFile';
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
prompt.push({ type: 'assistant', functionCalls: [call] }, {
|
|
20
|
+
type: 'user',
|
|
21
|
+
text: messages.invalidFunctionCall,
|
|
22
|
+
functionResponses: [
|
|
23
|
+
{
|
|
24
|
+
name: call.name,
|
|
25
|
+
call_id: call.id,
|
|
26
|
+
content: JSON.stringify({ args: call.args, error: validatorError }),
|
|
27
|
+
isError: true,
|
|
28
|
+
},
|
|
29
|
+
],
|
|
30
|
+
});
|
|
31
|
+
console.log('Trying to recover...');
|
|
32
|
+
if (cheap) {
|
|
33
|
+
console.log('Disabling --cheap for recovery.');
|
|
34
|
+
}
|
|
35
|
+
result = await generateContentFn(prompt, functionDefs, requiredFunctionName, temperature, false, options);
|
|
36
|
+
console.log('Recover result:', result);
|
|
37
|
+
if (result?.length === 1) {
|
|
38
|
+
const recoveryError = validateFunctionCall(result[0], requiredFunctionName);
|
|
39
|
+
assert(!recoveryError, 'Recovery failed');
|
|
40
|
+
console.log('Recovery was successful');
|
|
41
|
+
}
|
|
42
|
+
else if (result?.length === 0) {
|
|
43
|
+
throw new Error('Did not receive any function calls unexpectedly.');
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
console.log('Unexpected number of function calls', result);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
return result;
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=step-validate-recover.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"step-validate-recover.js","sourceRoot":"","sources":["../../../src/prompt/steps/step-validate-recover.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAGvE,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,CAAC,MAAM,EAAE,YAAY,EAAE,oBAAoB,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,CAOvE,EACD,MAAsB,EACtB,QAGC,EACD,iBAA0C;IAE1C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,mBAAmB;QACnB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,IAAI,GAA6B,MAAM,CAAC,CAAC,CAAC,CAAC;IAC/C,MAAM,cAAc,GAAG,oBAAoB,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;IACxE,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QAC3D,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,IAAI,GAAG,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;YACtC,IAAI,oBAAoB,KAAK,WAAW,EAAE,CAAC;gBACzC,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;gBACjD,oBAAoB,GAAG,YAAY,CAAC;YACtC,CAAC;QACH,CAAC;QAED,MAAM,CAAC,IAAI,CACT,EAAE,IAAI,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC,IAAI,CAAC,EAAE,EAC5C;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,QAAQ,CAAC,mBAAmB;YAClC,iBAAiB,EAAE;gBACjB;oBACE,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,OAAO,EAAE,IAAI,CAAC,EAAE;oBAChB,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;oBACnE,OAAO,EAAE,IAAI;iBACd;aACF;SACF,CACF,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;QACpC,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;QACjD,CAAC;QACD,MAAM,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,YAAY,EAAE,oBAAoB,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAC1G,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;QAEvC,IAAI,MAAM,EAAE,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,aAAa,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;YAC5E,MAAM,CAAC,CAAC,aAAa,EAAE,iBAAiB,CAAC,CAAC;YAC1C,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;QACzC,CAAC;aAAM,IAAI,MAAM,EAAE,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACtE,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,qCAAqC,EAAE,MAAM,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { PromptItem, FunctionDef, FunctionCall, GenerateContentFunction } from '../../ai-service/common.js';
|
|
2
|
+
import { PromptMessages } from '../prompt-service.js';
|
|
3
|
+
import { CodegenOptions } from '../../main/codegen-types.js';
|
|
4
|
+
export declare function executeStepVerifyPatch({ filePath, patch }: {
|
|
5
|
+
filePath: string;
|
|
6
|
+
patch: string;
|
|
7
|
+
}, generateContentFn: GenerateContentFunction, prompt: PromptItem[], functionDefs: FunctionDef[], temperature: number, cheap: boolean, messages: PromptMessages, options: CodegenOptions): Promise<FunctionCall[]>;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import fs from 'fs';
|
|
2
|
+
import * as diff from 'diff';
|
|
3
|
+
import { validateAndRecoverSingleResult } from './step-validate-recover.js';
|
|
4
|
+
export async function executeStepVerifyPatch({ filePath, patch }, generateContentFn, prompt, functionDefs, temperature, cheap, messages, options) {
|
|
5
|
+
console.log('Verification of patch for file:', filePath);
|
|
6
|
+
let updatedContent = false;
|
|
7
|
+
const currentContent = fs.readFileSync(filePath, 'utf-8');
|
|
8
|
+
try {
|
|
9
|
+
updatedContent = diff.applyPatch(currentContent, patch);
|
|
10
|
+
}
|
|
11
|
+
catch (e) {
|
|
12
|
+
console.log('Error when applying patch', e);
|
|
13
|
+
}
|
|
14
|
+
if (!updatedContent) {
|
|
15
|
+
console.log(`Patch could not be applied for ${filePath}. Retrying without patchFile function.`);
|
|
16
|
+
// Rerun content generation without patchFile function
|
|
17
|
+
const partialRequest = [
|
|
18
|
+
prompt,
|
|
19
|
+
functionDefs,
|
|
20
|
+
'updateFile',
|
|
21
|
+
temperature,
|
|
22
|
+
cheap,
|
|
23
|
+
options,
|
|
24
|
+
];
|
|
25
|
+
let partialResult = await generateContentFn(...partialRequest);
|
|
26
|
+
partialResult = await validateAndRecoverSingleResult(partialRequest, partialResult, messages, generateContentFn);
|
|
27
|
+
const getSourceCodeCall = partialResult.find((call) => call.name === 'getSourceCode');
|
|
28
|
+
if (getSourceCodeCall) {
|
|
29
|
+
throw new Error('Unexpected getSourceCode: ' + JSON.stringify(getSourceCodeCall));
|
|
30
|
+
}
|
|
31
|
+
if (partialResult.find((call) => call.name === 'patchFile')) {
|
|
32
|
+
throw new Error('Unexpected patchFile in retry response');
|
|
33
|
+
}
|
|
34
|
+
return partialResult;
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
console.log('Patch verified successfully');
|
|
38
|
+
return [{ name: 'patchFile', args: { filePath, patch } }];
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=step-verify-patch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"step-verify-patch.js","sourceRoot":"","sources":["../../../src/prompt/steps/step-verify-patch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B,OAAO,EAAE,8BAA8B,EAAE,MAAM,4BAA4B,CAAC;AAI5E,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,EAAE,QAAQ,EAAE,KAAK,EAAuC,EACxD,iBAA0C,EAC1C,MAAoB,EACpB,YAA2B,EAC3B,WAAmB,EACnB,KAAc,EACd,QAAwB,EACxB,OAAuB;IAEvB,OAAO,CAAC,GAAG,CAAC,iCAAiC,EAAE,QAAQ,CAAC,CAAC;IAEzD,IAAI,cAAc,GAAqB,KAAK,CAAC;IAC7C,MAAM,cAAc,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAE1D,IAAI,CAAC;QACH,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IAC1D,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,kCAAkC,QAAQ,wCAAwC,CAAC,CAAC;QAEhG,sDAAsD;QACtD,MAAM,cAAc,GAA2E;YAC7F,MAAM;YACN,YAAY;YACZ,YAAY;YACZ,WAAW;YACX,KAAK;YACL,OAAO;SACR,CAAC;QACF,IAAI,aAAa,GAAG,MAAM,iBAAiB,CAAC,GAAG,cAAc,CAAC,CAAC;QAE/D,aAAa,GAAG,MAAM,8BAA8B,CAAC,cAAc,EAAE,aAAa,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC;QAEjH,MAAM,iBAAiB,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC;QACtF,IAAI,iBAAiB,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,4BAA4B,GAAG,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACpF,CAAC;QACD,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,EAAE,CAAC;YAC5D,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAC5D,CAAC;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAC3C,OAAO,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"steps-types.js","sourceRoot":"","sources":["../../../src/prompt/steps/steps-types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,mDAAQ,CAAA;IACR,6CAAK,CAAA;AACP,CAAC,EAHW,UAAU,KAAV,UAAU,QAGrB"}
|