@auto-engineer/server-implementer 0.13.3 → 0.15.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/.turbo/turbo-build.log +1 -1
- package/CHANGELOG.md +24 -0
- package/README.md +175 -201
- package/dist/src/agent/runAllSlices.js +1 -1
- package/dist/src/agent/runAllSlices.js.map +1 -1
- package/dist/src/agent/runFlows.js +2 -2
- package/dist/src/agent/runFlows.js.map +1 -1
- package/dist/src/agent/runSlice.js +3 -3
- package/dist/src/agent/runSlice.js.map +1 -1
- package/dist/src/agent/runTests.d.ts.map +1 -1
- package/dist/src/agent/runTests.js +4 -5
- package/dist/src/agent/runTests.js.map +1 -1
- package/dist/src/commands/implement-server.d.ts.map +1 -1
- package/dist/src/commands/implement-server.js +8 -4
- package/dist/src/commands/implement-server.js.map +1 -1
- package/dist/src/commands/implement-slice.d.ts.map +1 -1
- package/dist/src/commands/implement-slice.js +10 -6
- package/dist/src/commands/implement-slice.js.map +1 -1
- package/dist/src/index.d.ts +2 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -8
- package/src/agent/runAllSlices.ts +1 -1
- package/src/agent/runFlows.ts +2 -2
- package/src/agent/runSlice.ts +3 -3
- package/src/agent/runTests.ts +5 -6
- package/src/commands/implement-server.ts +9 -5
- package/src/commands/implement-slice.ts +10 -6
- package/src/index.ts +6 -6
package/package.json
CHANGED
|
@@ -17,8 +17,8 @@
|
|
|
17
17
|
"debug": "^4.3.4",
|
|
18
18
|
"fast-glob": "^3.3.3",
|
|
19
19
|
"vite": "^5.4.1",
|
|
20
|
-
"@auto-engineer/ai-gateway": "0.
|
|
21
|
-
"@auto-engineer/message-bus": "0.
|
|
20
|
+
"@auto-engineer/ai-gateway": "0.15.0",
|
|
21
|
+
"@auto-engineer/message-bus": "0.15.0"
|
|
22
22
|
},
|
|
23
23
|
"devDependencies": {
|
|
24
24
|
"@types/fs-extra": "^11.0.4",
|
|
@@ -28,17 +28,13 @@
|
|
|
28
28
|
"glob": "^11.0.3",
|
|
29
29
|
"tsx": "^4.20.3",
|
|
30
30
|
"typescript": "^5.8.3",
|
|
31
|
-
"@auto-engineer/cli": "0.
|
|
31
|
+
"@auto-engineer/cli": "0.15.0"
|
|
32
32
|
},
|
|
33
|
-
"version": "0.
|
|
33
|
+
"version": "0.15.0",
|
|
34
34
|
"scripts": {
|
|
35
35
|
"build": "tsc && tsx ../../scripts/fix-esm-imports.ts",
|
|
36
36
|
"test": "vitest run --reporter=dot",
|
|
37
|
-
"lint": "eslint 'src/**/*.ts' --max-warnings 0 --config ../../eslint.config.ts",
|
|
38
37
|
"type-check": "tsc --noEmit",
|
|
39
|
-
"format": "prettier --write \"**/*.{js,ts,json,md,yml,yaml}\" --ignore-path ../../.prettierignore --log-level warn",
|
|
40
|
-
"lint:fix": "eslint 'src/**/*.ts' --fix --config ../../eslint.config.ts",
|
|
41
|
-
"format:fix": "prettier --write \"**/*.{js,ts,json,md,yml,yaml}\" --ignore-path ../../.prettierignore --log-level warn",
|
|
42
38
|
"link:dev": "pnpm build && pnpm link --global",
|
|
43
39
|
"unlink:dev": "pnpm unlink --global"
|
|
44
40
|
}
|
package/src/agent/runFlows.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import path from 'node:path';
|
|
2
|
+
import createDebug from 'debug';
|
|
1
3
|
import fg from 'fast-glob';
|
|
2
|
-
import path from 'path';
|
|
3
4
|
import { runAllSlices } from './runAllSlices';
|
|
4
|
-
import createDebug from 'debug';
|
|
5
5
|
|
|
6
6
|
const debug = createDebug('auto:server-implementer:flows');
|
|
7
7
|
const debugFlow = createDebug('auto:server-implementer:flows:flow');
|
package/src/agent/runSlice.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import { access, readFile, writeFile } from 'node:fs/promises';
|
|
2
|
+
import path from 'node:path';
|
|
3
3
|
import { generateTextWithAI } from '@auto-engineer/ai-gateway';
|
|
4
|
-
import { readFile, writeFile, access } from 'fs/promises';
|
|
5
4
|
import { execa } from 'execa';
|
|
5
|
+
import fg from 'fast-glob';
|
|
6
6
|
import { SYSTEM_PROMPT } from '../prompts/systemPrompt';
|
|
7
7
|
import { extractCodeBlock } from '../utils/extractCodeBlock';
|
|
8
8
|
import { runTests } from './runTests';
|
package/src/agent/runTests.ts
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
1
|
+
import { existsSync } from 'node:fs';
|
|
2
|
+
import { readFile, unlink } from 'node:fs/promises';
|
|
3
|
+
import path from 'node:path';
|
|
3
4
|
import { execa } from 'execa';
|
|
4
|
-
import
|
|
5
|
-
import {
|
|
6
|
-
import { readFile } from 'fs/promises';
|
|
7
|
-
import { VitestAssertionResult, VitestTestResult } from './runSlice';
|
|
5
|
+
import fg from 'fast-glob';
|
|
6
|
+
import type { VitestAssertionResult, VitestTestResult } from './runSlice';
|
|
8
7
|
|
|
9
8
|
type VitestReport = {
|
|
10
9
|
testResults?: VitestTestResult[];
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import path from 'path';
|
|
3
|
-
import {
|
|
4
|
-
import { runFlows } from '../agent/runFlows';
|
|
1
|
+
import { existsSync } from 'node:fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { type Command, defineCommandHandler, type Event } from '@auto-engineer/message-bus';
|
|
5
4
|
import createDebug from 'debug';
|
|
5
|
+
import { runFlows } from '../agent/runFlows';
|
|
6
6
|
|
|
7
7
|
const debug = createDebug('auto:server-implementer:command');
|
|
8
8
|
const debugHandler = createDebug('auto:server-implementer:command:handler');
|
|
@@ -39,6 +39,7 @@ export const commandHandler = defineCommandHandler<
|
|
|
39
39
|
(command: ImplementServerCommand) => Promise<ServerImplementedEvent | ServerImplementationFailedEvent>
|
|
40
40
|
>({
|
|
41
41
|
name: 'ImplementServer',
|
|
42
|
+
displayName: 'Implement Server',
|
|
42
43
|
alias: 'implement:server',
|
|
43
44
|
description: 'AI implements server TODOs and tests',
|
|
44
45
|
category: 'implement',
|
|
@@ -50,7 +51,10 @@ export const commandHandler = defineCommandHandler<
|
|
|
50
51
|
},
|
|
51
52
|
},
|
|
52
53
|
examples: ['$ auto implement:server --server-directory=./server'],
|
|
53
|
-
events: [
|
|
54
|
+
events: [
|
|
55
|
+
{ name: 'ServerImplemented', displayName: 'Server Implemented' },
|
|
56
|
+
{ name: 'ServerImplementationFailed', displayName: 'Server Implementation Failed' },
|
|
57
|
+
],
|
|
54
58
|
handle: async (
|
|
55
59
|
command: ImplementServerCommand,
|
|
56
60
|
): Promise<ServerImplementedEvent | ServerImplementationFailedEvent> => {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { existsSync } from 'node:fs';
|
|
2
|
+
import { readFile, writeFile } from 'node:fs/promises';
|
|
3
|
+
import path from 'node:path';
|
|
2
4
|
import { generateTextWithAI } from '@auto-engineer/ai-gateway';
|
|
3
|
-
import
|
|
4
|
-
import { existsSync } from 'fs';
|
|
5
|
-
import { readFile, writeFile } from 'fs/promises';
|
|
6
|
-
import fg from 'fast-glob';
|
|
5
|
+
import { type Command, defineCommandHandler, type Event } from '@auto-engineer/message-bus';
|
|
7
6
|
import createDebug from 'debug';
|
|
7
|
+
import fg from 'fast-glob';
|
|
8
8
|
|
|
9
9
|
const debug = createDebug('auto:server-implementer:slice');
|
|
10
10
|
const debugHandler = createDebug('auto:server-implementer:slice:handler');
|
|
@@ -48,6 +48,7 @@ export const commandHandler = defineCommandHandler<
|
|
|
48
48
|
(command: ImplementSliceCommand) => Promise<SliceImplementedEvent | SliceImplementationFailedEvent>
|
|
49
49
|
>({
|
|
50
50
|
name: 'ImplementSlice',
|
|
51
|
+
displayName: 'Implement Slice',
|
|
51
52
|
alias: 'implement:slice',
|
|
52
53
|
description: 'AI implements a specific server slice',
|
|
53
54
|
category: 'implement',
|
|
@@ -69,7 +70,10 @@ export const commandHandler = defineCommandHandler<
|
|
|
69
70
|
examples: [
|
|
70
71
|
'$ auto implement:slice --slice-path=./server/src/domain/flows/seasonal-assistant/enters-shopping-criteria-into-assistant',
|
|
71
72
|
],
|
|
72
|
-
events: [
|
|
73
|
+
events: [
|
|
74
|
+
{ name: 'SliceImplemented', displayName: 'Slice Implemented' },
|
|
75
|
+
{ name: 'SliceImplementationFailed', displayName: 'Slice Implementation Failed' },
|
|
76
|
+
],
|
|
73
77
|
handle: async (command: ImplementSliceCommand): Promise<SliceImplementedEvent | SliceImplementationFailedEvent> => {
|
|
74
78
|
debug('CommandHandler executing for ImplementSlice');
|
|
75
79
|
const result = await handleImplementSliceCommand(command);
|
package/src/index.ts
CHANGED
|
@@ -3,16 +3,16 @@ import { commandHandler as implementSliceHandler } from './commands/implement-sl
|
|
|
3
3
|
|
|
4
4
|
export const COMMANDS = [implementServerHandler, implementSliceHandler];
|
|
5
5
|
export { implementServerHandler, implementSliceHandler };
|
|
6
|
-
export {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
6
|
+
export type {
|
|
7
|
+
ImplementServerCommand,
|
|
8
|
+
ImplementServerEvents,
|
|
9
|
+
ServerImplementationFailedEvent,
|
|
10
|
+
ServerImplementedEvent,
|
|
11
11
|
} from './commands/implement-server';
|
|
12
12
|
export {
|
|
13
13
|
handleImplementSliceCommand,
|
|
14
14
|
type ImplementSliceCommand,
|
|
15
15
|
type ImplementSliceEvents,
|
|
16
|
-
type SliceImplementedEvent,
|
|
17
16
|
type SliceImplementationFailedEvent,
|
|
17
|
+
type SliceImplementedEvent,
|
|
18
18
|
} from './commands/implement-slice';
|