@auto-engineer/app-implementer 1.78.0 → 1.79.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/CHANGELOG.md +50 -0
- package/dist/src/app-generator.d.ts +2 -7
- package/dist/src/app-generator.d.ts.map +1 -1
- package/dist/src/app-generator.js +7 -7
- package/dist/src/app-generator.js.map +1 -1
- package/dist/src/app-generator.specs.d.ts +2 -0
- package/dist/src/app-generator.specs.d.ts.map +1 -0
- package/dist/src/app-generator.specs.js +123 -0
- package/dist/src/app-generator.specs.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,55 @@
|
|
|
1
1
|
# @auto-engineer/app-implementer
|
|
2
2
|
|
|
3
|
+
## 1.79.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [`ec198e5`](https://github.com/BeOnAuto/auto-engineer/commit/ec198e559e662df16611ba433c56938304a869b6) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-checks**: extract findProjectRoot into shared module
|
|
8
|
+
|
|
9
|
+
- [`f460341`](https://github.com/BeOnAuto/auto-engineer/commit/f46034125e102b216d35a59f7260170480dc7fa4) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-checks**: extract runTypeCheck core logic
|
|
10
|
+
|
|
11
|
+
- [`ec1480d`](https://github.com/BeOnAuto/auto-engineer/commit/ec1480d6431df13948ae26dc2ad691c28ddafdf8) Thanks [@github-actions[bot]](https://github.com/github-actions%5Bbot%5D)! - - **react-component-implementer**: add aesthetic quality checks to visual evaluator
|
|
12
|
+
- **app-implementer**: add comprehensive recipe-based visual design system
|
|
13
|
+
- **react-component-implementer**: replace design principles with Tailwind recipes
|
|
14
|
+
- **global**: version packages
|
|
15
|
+
- **react-component-implementer**: finalize ketchup plan for design system upgrade
|
|
16
|
+
|
|
17
|
+
- [`8eb0244`](https://github.com/BeOnAuto/auto-engineer/commit/8eb02443763228e8182cfb3c30606e94cc9f0c30) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-checks**: extract runLintCheck core logic
|
|
18
|
+
|
|
19
|
+
### Patch Changes
|
|
20
|
+
|
|
21
|
+
- [`506b0b4`](https://github.com/BeOnAuto/auto-engineer/commit/506b0b4810247e10c0896d45a37f4f0610d53455) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **react-component-implementer**: replace Message[] with ChatTurn in RefinementHistory
|
|
22
|
+
|
|
23
|
+
- [`087f977`](https://github.com/BeOnAuto/auto-engineer/commit/087f9776128b0610b945f23d0f4c3bc1a3d816dd) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **app-implementer**: replace Message[] with ChatTurn in RefinementHistory
|
|
24
|
+
|
|
25
|
+
- [`9bc98b4`](https://github.com/BeOnAuto/auto-engineer/commit/9bc98b4f384fa3417447e65286b015e1e10e63e9) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-checks**: slim CheckLint handler to delegate to runLintCheck
|
|
26
|
+
|
|
27
|
+
- [`b3ed5c1`](https://github.com/BeOnAuto/auto-engineer/commit/b3ed5c10575d00ca106237137bafc3524e8e9d82) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-generator-apollo-emmett**: ketchup plan for slim ReadModel API
|
|
28
|
+
|
|
29
|
+
- [`9c7ad8f`](https://github.com/BeOnAuto/auto-engineer/commit/9c7ad8fb3dd5d8321a80c4035baa9fe20701b651) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **global**: ketchup plan for LLM context growth optimization
|
|
30
|
+
|
|
31
|
+
- [`cedc3c0`](https://github.com/BeOnAuto/auto-engineer/commit/cedc3c0995af6025ab3d38a5a65d5bec9b4ecc7d) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **model-factory**: add ChatMessage and ChatTurn types for refinement history
|
|
32
|
+
|
|
33
|
+
- [`9757597`](https://github.com/BeOnAuto/auto-engineer/commit/9757597a1e562dfe81efa2de128aa10e8d091c79) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-checks**: add ketchup plan for unify check commands
|
|
34
|
+
|
|
35
|
+
- [`8104cc8`](https://github.com/BeOnAuto/auto-engineer/commit/8104cc82e7193c6a1a52a60da844a3e3fdb20b3b) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-checks**: export findProjectRoot, runTypeCheck, runLintCheck from index
|
|
36
|
+
|
|
37
|
+
- [`0bdb8d9`](https://github.com/BeOnAuto/auto-engineer/commit/0bdb8d9e606ce702cb7bbe81cbdc1f55fff58881) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-checks**: finalize ketchup plan for unify check commands
|
|
38
|
+
|
|
39
|
+
- [`31f65ac`](https://github.com/BeOnAuto/auto-engineer/commit/31f65acb9dfb656edfd482afc454bb4373b1d29d) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-generator-apollo-emmett**: slim ReadModel API to find + findOne
|
|
40
|
+
|
|
41
|
+
- [`25f8375`](https://github.com/BeOnAuto/auto-engineer/commit/25f8375ac181f09ff50aca3bccc3132b97814637) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **react-component-implementer**: replace lint-tier with runLintCheck, delete type-checker
|
|
42
|
+
|
|
43
|
+
- [`ab92096`](https://github.com/BeOnAuto/auto-engineer/commit/ab920961c9fd7515be9c09b4dbb1054bf03c94b9) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **react-component-implementer**: replace type-check-tier with runTypeCheck
|
|
44
|
+
|
|
45
|
+
- [`bcd8c4a`](https://github.com/BeOnAuto/auto-engineer/commit/bcd8c4a1e5e3d867c248d6bd55f66d7ef4863f46) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-checks**: use shared findProjectRoot in check-tests
|
|
46
|
+
|
|
47
|
+
- [`41ed452`](https://github.com/BeOnAuto/auto-engineer/commit/41ed4525bc796b1bdc1825fed20dd9f336108ca8) Thanks [@rami-hatoum](https://github.com/rami-hatoum)! - - **server-checks**: slim CheckTypes handler to delegate to runTypeCheck
|
|
48
|
+
|
|
49
|
+
- Updated dependencies [[`506b0b4`](https://github.com/BeOnAuto/auto-engineer/commit/506b0b4810247e10c0896d45a37f4f0610d53455), [`087f977`](https://github.com/BeOnAuto/auto-engineer/commit/087f9776128b0610b945f23d0f4c3bc1a3d816dd), [`9bc98b4`](https://github.com/BeOnAuto/auto-engineer/commit/9bc98b4f384fa3417447e65286b015e1e10e63e9), [`b3ed5c1`](https://github.com/BeOnAuto/auto-engineer/commit/b3ed5c10575d00ca106237137bafc3524e8e9d82), [`ec198e5`](https://github.com/BeOnAuto/auto-engineer/commit/ec198e559e662df16611ba433c56938304a869b6), [`9c7ad8f`](https://github.com/BeOnAuto/auto-engineer/commit/9c7ad8fb3dd5d8321a80c4035baa9fe20701b651), [`cedc3c0`](https://github.com/BeOnAuto/auto-engineer/commit/cedc3c0995af6025ab3d38a5a65d5bec9b4ecc7d), [`f460341`](https://github.com/BeOnAuto/auto-engineer/commit/f46034125e102b216d35a59f7260170480dc7fa4), [`9757597`](https://github.com/BeOnAuto/auto-engineer/commit/9757597a1e562dfe81efa2de128aa10e8d091c79), [`8104cc8`](https://github.com/BeOnAuto/auto-engineer/commit/8104cc82e7193c6a1a52a60da844a3e3fdb20b3b), [`ec1480d`](https://github.com/BeOnAuto/auto-engineer/commit/ec1480d6431df13948ae26dc2ad691c28ddafdf8), [`0bdb8d9`](https://github.com/BeOnAuto/auto-engineer/commit/0bdb8d9e606ce702cb7bbe81cbdc1f55fff58881), [`31f65ac`](https://github.com/BeOnAuto/auto-engineer/commit/31f65acb9dfb656edfd482afc454bb4373b1d29d), [`25f8375`](https://github.com/BeOnAuto/auto-engineer/commit/25f8375ac181f09ff50aca3bccc3132b97814637), [`ab92096`](https://github.com/BeOnAuto/auto-engineer/commit/ab920961c9fd7515be9c09b4dbb1054bf03c94b9), [`bcd8c4a`](https://github.com/BeOnAuto/auto-engineer/commit/bcd8c4a1e5e3d867c248d6bd55f66d7ef4863f46), [`41ed452`](https://github.com/BeOnAuto/auto-engineer/commit/41ed4525bc796b1bdc1825fed20dd9f336108ca8), [`8eb0244`](https://github.com/BeOnAuto/auto-engineer/commit/8eb02443763228e8182cfb3c30606e94cc9f0c30)]:
|
|
50
|
+
- @auto-engineer/message-bus@1.79.0
|
|
51
|
+
- @auto-engineer/model-factory@1.79.0
|
|
52
|
+
|
|
3
53
|
## 1.78.0
|
|
4
54
|
|
|
5
55
|
### Minor Changes
|
|
@@ -18,13 +18,8 @@ export interface AppGenerationContext {
|
|
|
18
18
|
graphqlQueries?: string;
|
|
19
19
|
graphqlMutations?: string;
|
|
20
20
|
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
content: string;
|
|
24
|
-
}
|
|
25
|
-
export interface RefinementHistory {
|
|
26
|
-
messages: Message[];
|
|
27
|
-
}
|
|
21
|
+
import type { ChatTurn } from '@auto-engineer/model-factory';
|
|
22
|
+
export type RefinementHistory = ChatTurn;
|
|
28
23
|
export interface TokenUsage {
|
|
29
24
|
inputTokens: number;
|
|
30
25
|
outputTokens: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-generator.d.ts","sourceRoot":"","sources":["../../src/app-generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAGxC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAIzD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,aAAa,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,WAAW,CAAC;IACrB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,
|
|
1
|
+
{"version":3,"file":"app-generator.d.ts","sourceRoot":"","sources":["../../src/app-generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAGxC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAIzD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,aAAa,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,WAAW,CAAC;IACrB,OAAO,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAE7D,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAC;AAEzC,MAAM,WAAW,UAAU;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,gBAAgB,EAAE,GAAG,MAAM,CAsBlE;AA8DD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,oBAAoB,GAAG,MAAM,CAiN1E;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,oBAAoB,GAAG,MAAM,CAqBxE;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,EAAE,CAYjE;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,aAAa,EAAE,CAYhG;AA6BD,wBAAsB,WAAW,CAC/B,OAAO,EAAE,oBAAoB,EAC7B,KAAK,EAAE,aAAa,GACnB,OAAO,CAAC;IAAE,GAAG,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,iBAAiB,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE,CAAC,CAmC/E;AAED,wBAAsB,SAAS,CAC7B,GAAG,EAAE,YAAY,EACjB,MAAM,EAAE,MAAM,EAAE,EAChB,OAAO,EAAE,oBAAoB,EAC7B,OAAO,EAAE,iBAAiB,EAC1B,KAAK,EAAE,aAAa,GACnB,OAAO,CAAC;IAAE,GAAG,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,iBAAiB,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE,CAAC,CA6C/E"}
|
|
@@ -356,10 +356,8 @@ export async function generateApp(context, model) {
|
|
|
356
356
|
const files = parseGeneratedFiles(text);
|
|
357
357
|
debug(' Parsed', files.length, 'files:', files.map((f) => f.path).join(', '));
|
|
358
358
|
const history = {
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
{ role: 'assistant', content: text },
|
|
362
|
-
],
|
|
359
|
+
prompt: { role: 'user', content: prompt },
|
|
360
|
+
response: { role: 'assistant', content: text },
|
|
363
361
|
};
|
|
364
362
|
const tokenUsage = {
|
|
365
363
|
inputTokens: usage?.inputTokens ?? 0,
|
|
@@ -376,7 +374,7 @@ export async function refineApp(app, errors, context, history, model) {
|
|
|
376
374
|
debug(' Errored files:', erroredFiles.map((f) => f.path).join(', '));
|
|
377
375
|
const refinementPrompt = buildRefinementPrompt(erroredFiles, allFileNames, errors);
|
|
378
376
|
debug(' Refinement prompt length:', refinementPrompt.length, 'chars');
|
|
379
|
-
debug(' Conversation history:', history.
|
|
377
|
+
debug(' Conversation history: prompt %d chars, response %d chars', history.prompt.content.length, history.response.content.length);
|
|
380
378
|
debug(' Calling LLM for refinement with model: %s', typeof model === 'string' ? model : model.modelId);
|
|
381
379
|
const llmStart = Date.now();
|
|
382
380
|
const { text, usage } = await generateText({
|
|
@@ -386,7 +384,8 @@ export async function refineApp(app, errors, context, history, model) {
|
|
|
386
384
|
role: 'system',
|
|
387
385
|
content: system,
|
|
388
386
|
},
|
|
389
|
-
|
|
387
|
+
history.prompt,
|
|
388
|
+
history.response,
|
|
390
389
|
{ role: 'user', content: refinementPrompt },
|
|
391
390
|
],
|
|
392
391
|
});
|
|
@@ -395,7 +394,8 @@ export async function refineApp(app, errors, context, history, model) {
|
|
|
395
394
|
const files = parseGeneratedFiles(text);
|
|
396
395
|
debug(' Parsed', files.length, 'files:', files.map((f) => f.path).join(', '));
|
|
397
396
|
const newHistory = {
|
|
398
|
-
|
|
397
|
+
prompt: history.prompt,
|
|
398
|
+
response: { role: 'assistant', content: text },
|
|
399
399
|
};
|
|
400
400
|
const tokenUsage = {
|
|
401
401
|
inputTokens: usage?.inputTokens ?? 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-generator.js","sourceRoot":"","sources":["../../src/app-generator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"app-generator.js","sourceRoot":"","sources":["../../src/app-generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app-generator.specs.d.ts","sourceRoot":"","sources":["../../src/app-generator.specs.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import { generateText } from 'ai';
|
|
2
|
+
import { beforeEach, describe, expect, it, vi } from 'vitest';
|
|
3
|
+
import { buildImportMap, extractErroredFiles, generateApp, parseGeneratedFiles, refineApp } from './app-generator.js';
|
|
4
|
+
vi.mock('ai', () => ({
|
|
5
|
+
generateText: vi.fn(),
|
|
6
|
+
}));
|
|
7
|
+
const generateTextMock = vi.mocked(generateText);
|
|
8
|
+
beforeEach(() => {
|
|
9
|
+
vi.clearAllMocks();
|
|
10
|
+
});
|
|
11
|
+
function stubModel() {
|
|
12
|
+
return { modelId: 'test-model' };
|
|
13
|
+
}
|
|
14
|
+
function stubContext() {
|
|
15
|
+
return {
|
|
16
|
+
journey: {
|
|
17
|
+
entryPageId: 'home',
|
|
18
|
+
pages: [{ pageId: 'home', name: 'Home', routePath: '/', description: 'Home page' }],
|
|
19
|
+
navigationEdges: [],
|
|
20
|
+
dataDependencies: [],
|
|
21
|
+
},
|
|
22
|
+
catalog: {
|
|
23
|
+
instructions: 'instructions',
|
|
24
|
+
overview: 'overview',
|
|
25
|
+
componentDocs: [],
|
|
26
|
+
},
|
|
27
|
+
fileTree: 'tree',
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
const sampleLlmResponse = ['<!-- file: App.tsx -->', '```tsx', 'export function App() { return <div/>; }', '```'].join('\n');
|
|
31
|
+
describe('parseGeneratedFiles', () => {
|
|
32
|
+
it('extracts files from LLM response', () => {
|
|
33
|
+
expect(parseGeneratedFiles(sampleLlmResponse)).toEqual([
|
|
34
|
+
{ path: 'App.tsx', content: 'export function App() { return <div/>; }' },
|
|
35
|
+
]);
|
|
36
|
+
});
|
|
37
|
+
it('throws when no files found', () => {
|
|
38
|
+
expect(() => parseGeneratedFiles('no code blocks here')).toThrow('No generated files found');
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
describe('extractErroredFiles', () => {
|
|
42
|
+
it('returns only files with matching error paths', () => {
|
|
43
|
+
const files = [
|
|
44
|
+
{ path: 'App.tsx', content: 'app' },
|
|
45
|
+
{ path: 'pages/Home.tsx', content: 'home' },
|
|
46
|
+
];
|
|
47
|
+
expect(extractErroredFiles(['pages/Home.tsx(1,5): error TS123'], files)).toEqual([
|
|
48
|
+
{ path: 'pages/Home.tsx', content: 'home' },
|
|
49
|
+
]);
|
|
50
|
+
});
|
|
51
|
+
it('returns all files when no error paths match', () => {
|
|
52
|
+
const files = [{ path: 'App.tsx', content: 'app' }];
|
|
53
|
+
expect(extractErroredFiles(['some general error'], files)).toEqual(files);
|
|
54
|
+
});
|
|
55
|
+
});
|
|
56
|
+
describe('buildImportMap', () => {
|
|
57
|
+
it('groups components by path', () => {
|
|
58
|
+
const result = buildImportMap([
|
|
59
|
+
{ name: 'Button', componentPath: './src/components/ui/Button.tsx' },
|
|
60
|
+
{ name: 'Input', componentPath: './src/components/ui/Input.tsx' },
|
|
61
|
+
]);
|
|
62
|
+
expect(result).toBe([
|
|
63
|
+
'# Component Import Map',
|
|
64
|
+
'',
|
|
65
|
+
'import { Button } from "@/components/ui/Button";',
|
|
66
|
+
'import { Input } from "@/components/ui/Input";',
|
|
67
|
+
].join('\n'));
|
|
68
|
+
});
|
|
69
|
+
it('returns empty string for entries without paths', () => {
|
|
70
|
+
expect(buildImportMap([{ name: 'Foo' }])).toBe('');
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
describe('generateApp', () => {
|
|
74
|
+
it('returns history as ChatTurn with prompt and response', async () => {
|
|
75
|
+
generateTextMock.mockResolvedValueOnce({
|
|
76
|
+
text: sampleLlmResponse,
|
|
77
|
+
usage: { inputTokens: 100, outputTokens: 200 },
|
|
78
|
+
});
|
|
79
|
+
const { history } = await generateApp(stubContext(), stubModel());
|
|
80
|
+
expect(history).toEqual({
|
|
81
|
+
prompt: { role: 'user', content: expect.any(String) },
|
|
82
|
+
response: { role: 'assistant', content: sampleLlmResponse },
|
|
83
|
+
});
|
|
84
|
+
});
|
|
85
|
+
});
|
|
86
|
+
describe('refineApp', () => {
|
|
87
|
+
it('passes correct message sequence to generateText', async () => {
|
|
88
|
+
const history = {
|
|
89
|
+
prompt: { role: 'user', content: 'original prompt' },
|
|
90
|
+
response: { role: 'assistant', content: sampleLlmResponse },
|
|
91
|
+
};
|
|
92
|
+
const app = { files: [{ path: 'App.tsx', content: 'app' }] };
|
|
93
|
+
generateTextMock.mockResolvedValueOnce({
|
|
94
|
+
text: sampleLlmResponse,
|
|
95
|
+
usage: { inputTokens: 100, outputTokens: 200 },
|
|
96
|
+
});
|
|
97
|
+
await refineApp(app, ['App.tsx(1,1): error TS123'], stubContext(), history, stubModel());
|
|
98
|
+
const call = generateTextMock.mock.calls[0][0];
|
|
99
|
+
expect(call.messages).toEqual([
|
|
100
|
+
{ role: 'system', content: expect.any(String) },
|
|
101
|
+
{ role: 'user', content: 'original prompt' },
|
|
102
|
+
{ role: 'assistant', content: sampleLlmResponse },
|
|
103
|
+
{ role: 'user', content: expect.any(String) },
|
|
104
|
+
]);
|
|
105
|
+
});
|
|
106
|
+
it('preserves original prompt and replaces only response', async () => {
|
|
107
|
+
const history = {
|
|
108
|
+
prompt: { role: 'user', content: 'original prompt' },
|
|
109
|
+
response: { role: 'assistant', content: 'old response' },
|
|
110
|
+
};
|
|
111
|
+
const app = { files: [{ path: 'App.tsx', content: 'app' }] };
|
|
112
|
+
generateTextMock.mockResolvedValueOnce({
|
|
113
|
+
text: sampleLlmResponse,
|
|
114
|
+
usage: { inputTokens: 100, outputTokens: 200 },
|
|
115
|
+
});
|
|
116
|
+
const { history: newHistory } = await refineApp(app, ['App.tsx(1,1): error TS123'], stubContext(), history, stubModel());
|
|
117
|
+
expect(newHistory).toEqual({
|
|
118
|
+
prompt: { role: 'user', content: 'original prompt' },
|
|
119
|
+
response: { role: 'assistant', content: sampleLlmResponse },
|
|
120
|
+
});
|
|
121
|
+
});
|
|
122
|
+
});
|
|
123
|
+
//# sourceMappingURL=app-generator.specs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app-generator.specs.js","sourceRoot":"","sources":["../../src/app-generator.specs.ts"],"names":[],"mappings":"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"}
|