codebuff 1.0.248 → 1.0.249
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/dist/code-map/tsconfig.tsbuildinfo +1 -1
- package/dist/common/actions.d.ts +32 -32
- package/dist/common/billing/auto-topup.d.ts +8 -0
- package/dist/common/billing/auto-topup.js +192 -0
- package/dist/common/billing/auto-topup.js.map +1 -0
- package/dist/common/billing/balance-calculator.d.ts +57 -0
- package/dist/common/billing/balance-calculator.js +218 -0
- package/dist/common/billing/balance-calculator.js.map +1 -0
- package/dist/common/billing/conversion.d.ts +9 -0
- package/dist/common/billing/conversion.js +20 -0
- package/dist/common/billing/conversion.js.map +1 -0
- package/dist/common/billing/credit-conversion.d.ts +24 -0
- package/dist/common/billing/credit-conversion.js +48 -0
- package/dist/common/billing/credit-conversion.js.map +1 -0
- package/dist/common/billing/grant-credits.d.ts +43 -0
- package/dist/common/billing/grant-credits.js +266 -0
- package/dist/common/billing/grant-credits.js.map +1 -0
- package/dist/common/billing/plans.d.ts +13 -0
- package/dist/common/billing/plans.js +44 -0
- package/dist/common/billing/plans.js.map +1 -0
- package/dist/common/json-config/__tests__/__snapshots__/stringify-schema.test.js.snap +66 -0
- package/dist/common/types/plan.d.ts +24 -0
- package/dist/{types.js → common/types/plan.js} +1 -1
- package/dist/common/types/plan.js.map +1 -0
- package/dist/common/types/usage.d.ts +2 -2
- package/dist/common/util/server/referral.d.ts +14 -0
- package/dist/common/util/server/referral.js +85 -0
- package/dist/common/util/server/referral.js.map +1 -0
- package/dist/common/websockets/websocket-schema.d.ts +68 -68
- package/package.json +1 -1
- package/dist/background-process-manager.d.ts +0 -50
- package/dist/background-process-manager.js +0 -359
- package/dist/background-process-manager.js.map +0 -1
- package/dist/browser-runner.d.ts +0 -35
- package/dist/browser-runner.js +0 -680
- package/dist/browser-runner.js.map +0 -1
- package/dist/chat-storage.d.ts +0 -2
- package/dist/chat-storage.js +0 -93
- package/dist/chat-storage.js.map +0 -1
- package/dist/checkpoints/checkpoint-manager.d.ts +0 -94
- package/dist/checkpoints/checkpoint-manager.js +0 -280
- package/dist/checkpoints/checkpoint-manager.js.map +0 -1
- package/dist/checkpoints/file-manager.d.ts +0 -72
- package/dist/checkpoints/file-manager.js +0 -311
- package/dist/checkpoints/file-manager.js.map +0 -1
- package/dist/cli-handlers/api-key.d.ts +0 -25
- package/dist/cli-handlers/api-key.js +0 -66
- package/dist/cli-handlers/api-key.js.map +0 -1
- package/dist/cli-handlers/checkpoint.d.ts +0 -18
- package/dist/cli-handlers/checkpoint.js +0 -195
- package/dist/cli-handlers/checkpoint.js.map +0 -1
- package/dist/cli-handlers/diff.d.ts +0 -2
- package/dist/cli-handlers/diff.js +0 -31
- package/dist/cli-handlers/diff.js.map +0 -1
- package/dist/cli-handlers/easter-egg.d.ts +0 -1
- package/dist/cli-handlers/easter-egg.js +0 -126
- package/dist/cli-handlers/easter-egg.js.map +0 -1
- package/dist/cli-handlers/inititalization-flow.d.ts +0 -1
- package/dist/cli-handlers/inititalization-flow.js +0 -24
- package/dist/cli-handlers/inititalization-flow.js.map +0 -1
- package/dist/cli.d.ts +0 -44
- package/dist/cli.js +0 -478
- package/dist/cli.js.map +0 -1
- package/dist/client.d.ts +0 -157
- package/dist/client.js +0 -836
- package/dist/client.js.map +0 -1
- package/dist/config.d.ts +0 -4
- package/dist/config.js +0 -12
- package/dist/config.js.map +0 -1
- package/dist/create-template-project.d.ts +0 -1
- package/dist/create-template-project.js +0 -107
- package/dist/create-template-project.js.map +0 -1
- package/dist/credentials.d.ts +0 -4
- package/dist/credentials.js +0 -38
- package/dist/credentials.js.map +0 -1
- package/dist/dev-process-manager.d.ts +0 -10
- package/dist/dev-process-manager.js +0 -54
- package/dist/dev-process-manager.js.map +0 -1
- package/dist/fingerprint.d.ts +0 -1
- package/dist/fingerprint.js +0 -48
- package/dist/fingerprint.js.map +0 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.js +0 -117
- package/dist/index.js.map +0 -1
- package/dist/menu.d.ts +0 -3
- package/dist/menu.js +0 -126
- package/dist/menu.js.map +0 -1
- package/dist/project-files.d.ts +0 -114
- package/dist/project-files.js +0 -513
- package/dist/project-files.js.map +0 -1
- package/dist/startup-process-handler.d.ts +0 -2
- package/dist/startup-process-handler.js +0 -21
- package/dist/startup-process-handler.js.map +0 -1
- package/dist/tool-handlers.d.ts +0 -28
- package/dist/tool-handlers.js +0 -240
- package/dist/tool-handlers.js.map +0 -1
- package/dist/types.d.ts +0 -15
- package/dist/types.js.map +0 -1
- package/dist/update-codebuff.d.ts +0 -1
- package/dist/update-codebuff.js +0 -160
- package/dist/update-codebuff.js.map +0 -1
- package/dist/utils/__tests__/background-process-manager.test.d.ts +0 -1
- package/dist/utils/__tests__/background-process-manager.test.js +0 -289
- package/dist/utils/__tests__/background-process-manager.test.js.map +0 -1
- package/dist/utils/__tests__/tool-renderers.test.d.ts +0 -1
- package/dist/utils/__tests__/tool-renderers.test.js +0 -51
- package/dist/utils/__tests__/tool-renderers.test.js.map +0 -1
- package/dist/utils/__tests__/xml-stream-parser.test.d.ts +0 -1
- package/dist/utils/__tests__/xml-stream-parser.test.js +0 -229
- package/dist/utils/__tests__/xml-stream-parser.test.js.map +0 -1
- package/dist/utils/analytics.d.ts +0 -6
- package/dist/utils/analytics.js +0 -59
- package/dist/utils/analytics.js.map +0 -1
- package/dist/utils/detect-shell.d.ts +0 -1
- package/dist/utils/detect-shell.js +0 -60
- package/dist/utils/detect-shell.js.map +0 -1
- package/dist/utils/logger.d.ts +0 -21
- package/dist/utils/logger.js +0 -105
- package/dist/utils/logger.js.map +0 -1
- package/dist/utils/spinner.d.ts +0 -11
- package/dist/utils/spinner.js +0 -87
- package/dist/utils/spinner.js.map +0 -1
- package/dist/utils/system-info.d.ts +0 -8
- package/dist/utils/system-info.js +0 -22
- package/dist/utils/system-info.js.map +0 -1
- package/dist/utils/terminal.d.ts +0 -41
- package/dist/utils/terminal.js +0 -475
- package/dist/utils/terminal.js.map +0 -1
- package/dist/utils/tool-renderers.d.ts +0 -16
- package/dist/utils/tool-renderers.js +0 -145
- package/dist/utils/tool-renderers.js.map +0 -1
- package/dist/utils/xml-stream-parser.d.ts +0 -9
- package/dist/utils/xml-stream-parser.js +0 -128
- package/dist/utils/xml-stream-parser.js.map +0 -1
- package/dist/web-scraper.d.ts +0 -3
- package/dist/web-scraper.js +0 -57
- package/dist/web-scraper.js.map +0 -1
- package/dist/workers/checkpoint-worker.d.ts +0 -1
- package/dist/workers/checkpoint-worker.js +0 -48
- package/dist/workers/checkpoint-worker.js.map +0 -1
- package/dist/workers/project-context.d.ts +0 -1
- package/dist/workers/project-context.js +0 -17
- package/dist/workers/project-context.js.map +0 -1
|
@@ -1,289 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
// @ts-ignore: bun:test types aren't available
|
|
4
|
-
const bun_test_1 = require("bun:test");
|
|
5
|
-
// @ts-ignore: bun:test types aren't available
|
|
6
|
-
const bun_test_2 = require("bun:test");
|
|
7
|
-
const background_process_manager_1 = require("../../background-process-manager");
|
|
8
|
-
// Mock the child process
|
|
9
|
-
const mockChildProcess = {
|
|
10
|
-
exitCode: null,
|
|
11
|
-
signalCode: null,
|
|
12
|
-
};
|
|
13
|
-
(0, bun_test_2.describe)('getBackgroundProcessInfoString', () => {
|
|
14
|
-
let dateNowSpy;
|
|
15
|
-
const currentTime = 3000;
|
|
16
|
-
(0, bun_test_2.beforeEach)(() => {
|
|
17
|
-
(0, bun_test_2.spyOn)(Date, 'now').mockReturnValue(currentTime);
|
|
18
|
-
});
|
|
19
|
-
(0, bun_test_2.afterEach)(() => {
|
|
20
|
-
bun_test_2.mock.restore();
|
|
21
|
-
});
|
|
22
|
-
(0, bun_test_1.test)('formats a running process correctly', () => {
|
|
23
|
-
const startTime = 1000;
|
|
24
|
-
const info = {
|
|
25
|
-
pid: 123,
|
|
26
|
-
toolCallId: 'toolCall123',
|
|
27
|
-
command: 'npm test',
|
|
28
|
-
process: mockChildProcess,
|
|
29
|
-
stdoutBuffer: ['test output'],
|
|
30
|
-
stderrBuffer: ['test error'],
|
|
31
|
-
status: 'running',
|
|
32
|
-
startTime,
|
|
33
|
-
endTime: null,
|
|
34
|
-
lastReportedStdoutLength: 0,
|
|
35
|
-
lastReportedStderrLength: 0,
|
|
36
|
-
lastReportedStatus: null,
|
|
37
|
-
};
|
|
38
|
-
const result = (0, background_process_manager_1.getBackgroundProcessInfoString)(info);
|
|
39
|
-
(0, bun_test_2.expect)(result).toMatchSnapshot();
|
|
40
|
-
});
|
|
41
|
-
(0, bun_test_1.test)('formats a completed process correctly', () => {
|
|
42
|
-
const startTime = 1000;
|
|
43
|
-
const endTime = 2000;
|
|
44
|
-
const mockCompletedProcess = {
|
|
45
|
-
...mockChildProcess,
|
|
46
|
-
exitCode: 0,
|
|
47
|
-
};
|
|
48
|
-
const info = {
|
|
49
|
-
pid: 456,
|
|
50
|
-
toolCallId: 'toolCall456',
|
|
51
|
-
command: 'npm build',
|
|
52
|
-
process: mockCompletedProcess,
|
|
53
|
-
stdoutBuffer: ['build successful'],
|
|
54
|
-
stderrBuffer: [],
|
|
55
|
-
status: 'completed',
|
|
56
|
-
startTime,
|
|
57
|
-
endTime,
|
|
58
|
-
lastReportedStdoutLength: 0,
|
|
59
|
-
lastReportedStderrLength: 0,
|
|
60
|
-
lastReportedStatus: null,
|
|
61
|
-
};
|
|
62
|
-
const result = (0, background_process_manager_1.getBackgroundProcessInfoString)(info);
|
|
63
|
-
(0, bun_test_2.expect)(result).toMatchSnapshot();
|
|
64
|
-
});
|
|
65
|
-
(0, bun_test_1.test)('formats an errored process correctly', () => {
|
|
66
|
-
const startTime = 1000;
|
|
67
|
-
const endTime = 2500;
|
|
68
|
-
const mockErroredProcess = {
|
|
69
|
-
...mockChildProcess,
|
|
70
|
-
exitCode: 1,
|
|
71
|
-
signalCode: 'SIGTERM',
|
|
72
|
-
};
|
|
73
|
-
const info = {
|
|
74
|
-
pid: 789,
|
|
75
|
-
toolCallId: 'toolCall789',
|
|
76
|
-
command: 'invalid-command',
|
|
77
|
-
process: mockErroredProcess,
|
|
78
|
-
stdoutBuffer: [],
|
|
79
|
-
stderrBuffer: ['command not found'],
|
|
80
|
-
status: 'error',
|
|
81
|
-
startTime,
|
|
82
|
-
endTime,
|
|
83
|
-
lastReportedStdoutLength: 0,
|
|
84
|
-
lastReportedStderrLength: 0,
|
|
85
|
-
lastReportedStatus: null,
|
|
86
|
-
};
|
|
87
|
-
const result = (0, background_process_manager_1.getBackgroundProcessInfoString)(info);
|
|
88
|
-
(0, bun_test_2.expect)(result).toMatchSnapshot();
|
|
89
|
-
});
|
|
90
|
-
(0, bun_test_1.test)('returns empty string for completed process with no changes', () => {
|
|
91
|
-
const startTime = 1000;
|
|
92
|
-
const endTime = 2000;
|
|
93
|
-
const info = {
|
|
94
|
-
pid: 101,
|
|
95
|
-
toolCallId: 'toolCall101',
|
|
96
|
-
command: 'echo test',
|
|
97
|
-
process: mockChildProcess,
|
|
98
|
-
stdoutBuffer: ['test'],
|
|
99
|
-
stderrBuffer: [],
|
|
100
|
-
status: 'completed',
|
|
101
|
-
startTime,
|
|
102
|
-
endTime,
|
|
103
|
-
lastReportedStdoutLength: 4, // Length of 'test'
|
|
104
|
-
lastReportedStderrLength: 0,
|
|
105
|
-
lastReportedStatus: 'completed',
|
|
106
|
-
};
|
|
107
|
-
const result = (0, background_process_manager_1.getBackgroundProcessInfoString)(info);
|
|
108
|
-
(0, bun_test_2.expect)(result).toBe('');
|
|
109
|
-
});
|
|
110
|
-
(0, bun_test_1.test)('handles new output since last report', () => {
|
|
111
|
-
const startTime = 1000;
|
|
112
|
-
const endTime = 2000;
|
|
113
|
-
const info = {
|
|
114
|
-
pid: 102,
|
|
115
|
-
toolCallId: 'toolCall102',
|
|
116
|
-
command: 'echo test',
|
|
117
|
-
process: mockChildProcess,
|
|
118
|
-
stdoutBuffer: ['test', ' more output'],
|
|
119
|
-
stderrBuffer: [],
|
|
120
|
-
status: 'completed',
|
|
121
|
-
startTime,
|
|
122
|
-
endTime,
|
|
123
|
-
lastReportedStdoutLength: 4, // Only 'test' was reported
|
|
124
|
-
lastReportedStderrLength: 0,
|
|
125
|
-
lastReportedStatus: 'completed',
|
|
126
|
-
};
|
|
127
|
-
const result = (0, background_process_manager_1.getBackgroundProcessInfoString)(info);
|
|
128
|
-
(0, bun_test_2.expect)(result).toMatchSnapshot();
|
|
129
|
-
});
|
|
130
|
-
(0, bun_test_1.test)('handles no new content', () => {
|
|
131
|
-
const startTime = 1000;
|
|
132
|
-
const endTime = 2000;
|
|
133
|
-
const info = {
|
|
134
|
-
pid: 103,
|
|
135
|
-
toolCallId: 'toolCall103',
|
|
136
|
-
command: 'echo test',
|
|
137
|
-
process: mockChildProcess,
|
|
138
|
-
stdoutBuffer: ['test'],
|
|
139
|
-
stderrBuffer: [],
|
|
140
|
-
status: 'running',
|
|
141
|
-
startTime,
|
|
142
|
-
endTime,
|
|
143
|
-
lastReportedStdoutLength: 4, // All content reported
|
|
144
|
-
lastReportedStderrLength: 0,
|
|
145
|
-
lastReportedStatus: 'running',
|
|
146
|
-
};
|
|
147
|
-
const result = (0, background_process_manager_1.getBackgroundProcessInfoString)(info);
|
|
148
|
-
(0, bun_test_2.expect)(result).toMatchSnapshot();
|
|
149
|
-
});
|
|
150
|
-
(0, bun_test_1.test)('handles new stderr without when no previous stderr', () => {
|
|
151
|
-
const startTime = 1000;
|
|
152
|
-
const endTime = 2000;
|
|
153
|
-
const info = {
|
|
154
|
-
pid: 104,
|
|
155
|
-
toolCallId: 'toolCall104',
|
|
156
|
-
command: 'echo test',
|
|
157
|
-
process: mockChildProcess,
|
|
158
|
-
stdoutBuffer: [],
|
|
159
|
-
stderrBuffer: ['new error'],
|
|
160
|
-
status: 'error',
|
|
161
|
-
startTime,
|
|
162
|
-
endTime,
|
|
163
|
-
lastReportedStdoutLength: 0,
|
|
164
|
-
lastReportedStderrLength: 0, // No previous stderr
|
|
165
|
-
lastReportedStatus: null,
|
|
166
|
-
};
|
|
167
|
-
const result = (0, background_process_manager_1.getBackgroundProcessInfoString)(info);
|
|
168
|
-
(0, bun_test_2.expect)(result).toMatchSnapshot();
|
|
169
|
-
});
|
|
170
|
-
(0, bun_test_1.test)('handles new stdout without when no previous stdout', () => {
|
|
171
|
-
const startTime = 1000;
|
|
172
|
-
const info = {
|
|
173
|
-
pid: 105,
|
|
174
|
-
toolCallId: 'toolCall105',
|
|
175
|
-
command: 'echo test',
|
|
176
|
-
process: mockChildProcess,
|
|
177
|
-
stdoutBuffer: ['first output'],
|
|
178
|
-
stderrBuffer: [],
|
|
179
|
-
status: 'running',
|
|
180
|
-
startTime,
|
|
181
|
-
endTime: null,
|
|
182
|
-
lastReportedStdoutLength: 0, // No previous stdout
|
|
183
|
-
lastReportedStderrLength: 0,
|
|
184
|
-
lastReportedStatus: null,
|
|
185
|
-
};
|
|
186
|
-
const result = (0, background_process_manager_1.getBackgroundProcessInfoString)(info);
|
|
187
|
-
(0, bun_test_2.expect)(result).toMatchSnapshot();
|
|
188
|
-
});
|
|
189
|
-
(0, bun_test_1.test)('reports completed process with new stderr even if stdout unchanged', () => {
|
|
190
|
-
const startTime = 1000;
|
|
191
|
-
const endTime = 2000;
|
|
192
|
-
const info = {
|
|
193
|
-
pid: 106,
|
|
194
|
-
toolCallId: 'toolCall106',
|
|
195
|
-
command: 'echo test',
|
|
196
|
-
process: mockChildProcess,
|
|
197
|
-
stdoutBuffer: ['test'],
|
|
198
|
-
stderrBuffer: ['new error'],
|
|
199
|
-
status: 'completed',
|
|
200
|
-
startTime,
|
|
201
|
-
endTime,
|
|
202
|
-
lastReportedStdoutLength: 4, // All stdout reported
|
|
203
|
-
lastReportedStderrLength: 0, // No stderr reported
|
|
204
|
-
lastReportedStatus: 'completed',
|
|
205
|
-
};
|
|
206
|
-
const result = (0, background_process_manager_1.getBackgroundProcessInfoString)(info);
|
|
207
|
-
(0, bun_test_2.expect)(result).toMatchSnapshot();
|
|
208
|
-
});
|
|
209
|
-
(0, bun_test_1.test)('reports completed process with new stdout even if stderr unchanged', () => {
|
|
210
|
-
const startTime = 1000;
|
|
211
|
-
const endTime = 2000;
|
|
212
|
-
const info = {
|
|
213
|
-
pid: 107,
|
|
214
|
-
toolCallId: 'toolCall107',
|
|
215
|
-
command: 'echo test',
|
|
216
|
-
process: mockChildProcess,
|
|
217
|
-
stdoutBuffer: ['test', ' more'],
|
|
218
|
-
stderrBuffer: ['error'],
|
|
219
|
-
status: 'completed',
|
|
220
|
-
startTime,
|
|
221
|
-
endTime,
|
|
222
|
-
lastReportedStdoutLength: 4, // Only 'test' reported
|
|
223
|
-
lastReportedStderrLength: 5, // All stderr reported
|
|
224
|
-
lastReportedStatus: 'completed',
|
|
225
|
-
};
|
|
226
|
-
const result = (0, background_process_manager_1.getBackgroundProcessInfoString)(info);
|
|
227
|
-
(0, bun_test_2.expect)(result).toMatchSnapshot();
|
|
228
|
-
});
|
|
229
|
-
(0, bun_test_1.test)('reports process when status changes even without output changes', () => {
|
|
230
|
-
const startTime = 1000;
|
|
231
|
-
const endTime = 2000;
|
|
232
|
-
const info = {
|
|
233
|
-
pid: 108,
|
|
234
|
-
toolCallId: 'toolCall108',
|
|
235
|
-
command: 'echo test',
|
|
236
|
-
process: mockChildProcess,
|
|
237
|
-
stdoutBuffer: ['test'],
|
|
238
|
-
stderrBuffer: [],
|
|
239
|
-
status: 'completed',
|
|
240
|
-
startTime,
|
|
241
|
-
endTime,
|
|
242
|
-
lastReportedStdoutLength: 4, // All output reported
|
|
243
|
-
lastReportedStderrLength: 0,
|
|
244
|
-
lastReportedStatus: 'running', // Status changed from running to completed
|
|
245
|
-
};
|
|
246
|
-
const result = (0, background_process_manager_1.getBackgroundProcessInfoString)(info);
|
|
247
|
-
(0, bun_test_2.expect)(result).toMatchSnapshot();
|
|
248
|
-
});
|
|
249
|
-
(0, bun_test_1.test)('calculates duration from endTime when available', () => {
|
|
250
|
-
const startTime = 1000;
|
|
251
|
-
const endTime = 2500;
|
|
252
|
-
const info = {
|
|
253
|
-
pid: 109,
|
|
254
|
-
toolCallId: 'toolCall109',
|
|
255
|
-
command: 'echo test',
|
|
256
|
-
process: mockChildProcess,
|
|
257
|
-
stdoutBuffer: ['test'],
|
|
258
|
-
stderrBuffer: [],
|
|
259
|
-
status: 'completed',
|
|
260
|
-
startTime,
|
|
261
|
-
endTime,
|
|
262
|
-
lastReportedStdoutLength: 0,
|
|
263
|
-
lastReportedStderrLength: 0,
|
|
264
|
-
lastReportedStatus: null,
|
|
265
|
-
};
|
|
266
|
-
const result = (0, background_process_manager_1.getBackgroundProcessInfoString)(info);
|
|
267
|
-
(0, bun_test_2.expect)(result).toMatchSnapshot();
|
|
268
|
-
});
|
|
269
|
-
(0, bun_test_1.test)('calculates duration from current time when no endTime', () => {
|
|
270
|
-
const startTime = 1000;
|
|
271
|
-
const info = {
|
|
272
|
-
pid: 110,
|
|
273
|
-
toolCallId: 'toolCall110',
|
|
274
|
-
command: 'echo test',
|
|
275
|
-
process: mockChildProcess,
|
|
276
|
-
stdoutBuffer: ['test'],
|
|
277
|
-
stderrBuffer: [],
|
|
278
|
-
status: 'running',
|
|
279
|
-
startTime,
|
|
280
|
-
endTime: null,
|
|
281
|
-
lastReportedStdoutLength: 0,
|
|
282
|
-
lastReportedStderrLength: 0,
|
|
283
|
-
lastReportedStatus: null,
|
|
284
|
-
};
|
|
285
|
-
const result = (0, background_process_manager_1.getBackgroundProcessInfoString)(info);
|
|
286
|
-
(0, bun_test_2.expect)(result).toMatchSnapshot();
|
|
287
|
-
});
|
|
288
|
-
});
|
|
289
|
-
//# sourceMappingURL=background-process-manager.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"background-process-manager.test.js","sourceRoot":"","sources":["../../../src/utils/__tests__/background-process-manager.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
// @ts-ignore
|
|
7
|
-
const bun_test_1 = require("bun:test");
|
|
8
|
-
const stream_1 = require("stream");
|
|
9
|
-
const tools_1 = require("../../common/constants/tools");
|
|
10
|
-
const strip_ansi_1 = __importDefault(require("strip-ansi"));
|
|
11
|
-
const tool_renderers_1 = require("../tool-renderers");
|
|
12
|
-
const xml_stream_parser_1 = require("../xml-stream-parser");
|
|
13
|
-
(0, bun_test_1.describe)('Tool renderers with XML parser', () => {
|
|
14
|
-
// Helper function to process XML through parser and get output
|
|
15
|
-
async function processXML(xml) {
|
|
16
|
-
let result = '';
|
|
17
|
-
const processor = (0, xml_stream_parser_1.createXMLStreamParser)(tool_renderers_1.toolRenderers);
|
|
18
|
-
const writable = new stream_1.Writable({
|
|
19
|
-
write(chunk, encoding, callback) {
|
|
20
|
-
result += chunk.toString();
|
|
21
|
-
callback();
|
|
22
|
-
},
|
|
23
|
-
});
|
|
24
|
-
processor.pipe(writable);
|
|
25
|
-
processor.write(xml);
|
|
26
|
-
processor.end();
|
|
27
|
-
// Wait for stream to finish
|
|
28
|
-
await new Promise((resolve) => {
|
|
29
|
-
writable.on('finish', resolve);
|
|
30
|
-
});
|
|
31
|
-
return result;
|
|
32
|
-
}
|
|
33
|
-
(0, bun_test_1.test)('formats write_file tool call', async () => {
|
|
34
|
-
const xml = (0, tools_1.getToolCallString)('write_file', {
|
|
35
|
-
path: 'test.ts',
|
|
36
|
-
content: 'console.log("test");',
|
|
37
|
-
});
|
|
38
|
-
const output = await processXML(xml);
|
|
39
|
-
const stripped = (0, strip_ansi_1.default)(output);
|
|
40
|
-
(0, bun_test_1.expect)(stripped).toBe('[Write File]\nEditing file at test.ts...\n');
|
|
41
|
-
});
|
|
42
|
-
(0, bun_test_1.test)('formats read_files tool call', async () => {
|
|
43
|
-
const xml = (0, tools_1.getToolCallString)('read_files', {
|
|
44
|
-
paths: 'file1.ts\nfile2.ts',
|
|
45
|
-
});
|
|
46
|
-
const output = await processXML(xml);
|
|
47
|
-
const stripped = (0, strip_ansi_1.default)(output);
|
|
48
|
-
(0, bun_test_1.expect)(stripped).toBe('[Read Files]\nfile1.ts\nfile2.ts\n');
|
|
49
|
-
});
|
|
50
|
-
});
|
|
51
|
-
//# sourceMappingURL=tool-renderers.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tool-renderers.test.js","sourceRoot":"","sources":["../../../src/utils/__tests__/tool-renderers.test.ts"],"names":[],"mappings":";;;;;AAAA,aAAa;AACb,uCAAiD;AACjD,mCAAiC;AACjC,kDAA0D;AAC1D,4DAAkC;AAClC,sDAAiD;AACjD,4DAA4D;AAE5D,IAAA,mBAAQ,EAAC,gCAAgC,EAAE,GAAG,EAAE;IAC9C,+DAA+D;IAC/D,KAAK,UAAU,UAAU,CAAC,GAAW;QACnC,IAAI,MAAM,GAAG,EAAE,CAAA;QACf,MAAM,SAAS,GAAG,IAAA,yCAAqB,EAAC,8BAAa,CAAC,CAAA;QAEtD,MAAM,QAAQ,GAAG,IAAI,iBAAQ,CAAC;YAC5B,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ;gBAC7B,MAAM,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAA;gBAC1B,QAAQ,EAAE,CAAA;YACZ,CAAC;SACF,CAAC,CAAA;QAEF,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACxB,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACpB,SAAS,CAAC,GAAG,EAAE,CAAA;QAEf,4BAA4B;QAC5B,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YAClC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QAChC,CAAC,CAAC,CAAA;QAEF,OAAO,MAAM,CAAA;IACf,CAAC;IAED,IAAA,eAAI,EAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;QAC9C,MAAM,GAAG,GAAG,IAAA,yBAAiB,EAAC,YAAY,EAAE;YAC1C,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,sBAAsB;SAChC,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,CAAA;QACpC,MAAM,QAAQ,GAAG,IAAA,oBAAS,EAAC,MAAM,CAAC,CAAA;QAClC,IAAA,iBAAM,EAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAA;IACrE,CAAC,CAAC,CAAA;IAEF,IAAA,eAAI,EAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;QAC9C,MAAM,GAAG,GAAG,IAAA,yBAAiB,EAAC,YAAY,EAAE;YAC1C,KAAK,EAAE,oBAAoB;SAC5B,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,CAAA;QACpC,MAAM,QAAQ,GAAG,IAAA,oBAAS,EAAC,MAAM,CAAC,CAAA;QAClC,IAAA,iBAAM,EAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAA;IAC7D,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,229 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const fs_1 = __importDefault(require("fs"));
|
|
7
|
-
const path_1 = __importDefault(require("path"));
|
|
8
|
-
const stream_1 = require("stream");
|
|
9
|
-
// @ts-ignore
|
|
10
|
-
const bun_test_1 = require("bun:test");
|
|
11
|
-
const tools_1 = require("../../common/constants/tools");
|
|
12
|
-
const strip_ansi_1 = __importDefault(require("strip-ansi"));
|
|
13
|
-
const tool_renderers_1 = require("../tool-renderers");
|
|
14
|
-
const xml_stream_parser_1 = require("../xml-stream-parser");
|
|
15
|
-
const toolRenderers = {
|
|
16
|
-
run_terminal_command: tool_renderers_1.defaultToolCallRenderer,
|
|
17
|
-
write_file: tool_renderers_1.defaultToolCallRenderer,
|
|
18
|
-
read_files: tool_renderers_1.defaultToolCallRenderer,
|
|
19
|
-
};
|
|
20
|
-
(0, bun_test_1.describe)('Saxy Stream Processor', () => {
|
|
21
|
-
(0, bun_test_1.test)('pipes output to writable stream', async () => {
|
|
22
|
-
const xml = (0, tools_1.getToolCallString)('run_terminal_command', {
|
|
23
|
-
command: 'echo hello',
|
|
24
|
-
});
|
|
25
|
-
let result = '';
|
|
26
|
-
const processor = (0, xml_stream_parser_1.createXMLStreamParser)(toolRenderers);
|
|
27
|
-
const writable = new stream_1.Writable({
|
|
28
|
-
write(chunk, encoding, callback) {
|
|
29
|
-
result += chunk.toString();
|
|
30
|
-
callback();
|
|
31
|
-
},
|
|
32
|
-
});
|
|
33
|
-
processor.pipe(writable);
|
|
34
|
-
processor.write(xml);
|
|
35
|
-
processor.end();
|
|
36
|
-
// Wait for the stream to finish
|
|
37
|
-
await new Promise((resolve) => {
|
|
38
|
-
writable.on('finish', resolve);
|
|
39
|
-
});
|
|
40
|
-
(0, bun_test_1.expect)(result).toContain('Run Terminal Command');
|
|
41
|
-
(0, bun_test_1.expect)(result).toContain('echo hello');
|
|
42
|
-
});
|
|
43
|
-
(0, bun_test_1.test)('handles multiple tool calls in sequence', async () => {
|
|
44
|
-
const xml = (0, tools_1.getToolCallString)('run_terminal_command', { command: 'ls' }) +
|
|
45
|
-
(0, tools_1.getToolCallString)('read_files', { paths: 'file.txt' });
|
|
46
|
-
let result = '';
|
|
47
|
-
const processor = (0, xml_stream_parser_1.createXMLStreamParser)(toolRenderers);
|
|
48
|
-
const writable = new stream_1.Writable({
|
|
49
|
-
write(chunk, encoding, callback) {
|
|
50
|
-
result += chunk.toString();
|
|
51
|
-
callback();
|
|
52
|
-
},
|
|
53
|
-
});
|
|
54
|
-
processor.pipe(writable);
|
|
55
|
-
processor.write(xml);
|
|
56
|
-
processor.end();
|
|
57
|
-
// Wait for the stream to finish
|
|
58
|
-
await new Promise((resolve) => {
|
|
59
|
-
writable.on('finish', resolve);
|
|
60
|
-
});
|
|
61
|
-
(0, bun_test_1.expect)(result).toContain('Run Terminal Command');
|
|
62
|
-
(0, bun_test_1.expect)(result).toContain('ls');
|
|
63
|
-
(0, bun_test_1.expect)(result).toContain('Read Files');
|
|
64
|
-
(0, bun_test_1.expect)(result).toContain('file.txt');
|
|
65
|
-
});
|
|
66
|
-
(0, bun_test_1.test)('handles text content between tool calls', async () => {
|
|
67
|
-
const xml = (0, tools_1.getToolCallString)('run_terminal_command', { command: 'ls' }) +
|
|
68
|
-
'Some text between tool calls' +
|
|
69
|
-
(0, tools_1.getToolCallString)('read_files', { paths: 'file.txt' });
|
|
70
|
-
let result = '';
|
|
71
|
-
const processor = (0, xml_stream_parser_1.createXMLStreamParser)(toolRenderers);
|
|
72
|
-
const writable = new stream_1.Writable({
|
|
73
|
-
write(chunk, encoding, callback) {
|
|
74
|
-
result += chunk.toString();
|
|
75
|
-
callback();
|
|
76
|
-
},
|
|
77
|
-
});
|
|
78
|
-
processor.pipe(writable);
|
|
79
|
-
processor.write(xml);
|
|
80
|
-
processor.end();
|
|
81
|
-
// Wait for the stream to finish
|
|
82
|
-
await new Promise((resolve) => {
|
|
83
|
-
writable.on('finish', resolve);
|
|
84
|
-
});
|
|
85
|
-
(0, bun_test_1.expect)(result).toContain('Run Terminal Command');
|
|
86
|
-
(0, bun_test_1.expect)(result).toContain('ls');
|
|
87
|
-
(0, bun_test_1.expect)(result).toContain('Some text between tool calls');
|
|
88
|
-
(0, bun_test_1.expect)(result).toContain('Read Files');
|
|
89
|
-
(0, bun_test_1.expect)(result).toContain('file.txt');
|
|
90
|
-
});
|
|
91
|
-
(0, bun_test_1.test)('processes chunks incrementally with output verification', async () => {
|
|
92
|
-
// Define chunks that will be written one at a time
|
|
93
|
-
const terminalCommand = (0, tools_1.getToolCallString)('run_terminal_command', {
|
|
94
|
-
command: 'npm install',
|
|
95
|
-
});
|
|
96
|
-
const codeSearch = (0, tools_1.getToolCallString)('code_search', { pattern: 'function' });
|
|
97
|
-
// Split the XML into chunks
|
|
98
|
-
const chunks = [
|
|
99
|
-
terminalCommand.slice(0, 15),
|
|
100
|
-
terminalCommand.slice(15, 30),
|
|
101
|
-
terminalCommand.slice(30, 40),
|
|
102
|
-
terminalCommand.slice(40, 50),
|
|
103
|
-
terminalCommand.slice(50),
|
|
104
|
-
codeSearch.slice(0, 15),
|
|
105
|
-
codeSearch.slice(15),
|
|
106
|
-
];
|
|
107
|
-
// Array to store output chunks as they're produced
|
|
108
|
-
const outputChunks = [];
|
|
109
|
-
// Create a writable stream that captures each output chunk
|
|
110
|
-
const writable = new stream_1.Writable({
|
|
111
|
-
write(chunk, encoding, callback) {
|
|
112
|
-
const chunkStr = chunk.toString();
|
|
113
|
-
outputChunks.push(chunkStr);
|
|
114
|
-
callback();
|
|
115
|
-
},
|
|
116
|
-
});
|
|
117
|
-
// Create the processor
|
|
118
|
-
const processor = (0, xml_stream_parser_1.createXMLStreamParser)(toolRenderers);
|
|
119
|
-
processor.pipe(writable);
|
|
120
|
-
// Process each chunk with a small delay between them
|
|
121
|
-
for (const chunk of chunks) {
|
|
122
|
-
processor.write(chunk);
|
|
123
|
-
// Small delay to simulate real-world streaming
|
|
124
|
-
await new Promise((resolve) => setTimeout(resolve, 5));
|
|
125
|
-
}
|
|
126
|
-
processor.end();
|
|
127
|
-
// Wait for the stream to finish
|
|
128
|
-
await new Promise((resolve) => {
|
|
129
|
-
writable.on('finish', resolve);
|
|
130
|
-
});
|
|
131
|
-
// Verify the complete output
|
|
132
|
-
const fullOutput = (0, strip_ansi_1.default)(outputChunks.join(''));
|
|
133
|
-
(0, bun_test_1.expect)(fullOutput).toContain('Run Terminal Command');
|
|
134
|
-
(0, bun_test_1.expect)(fullOutput).toContain('npm install');
|
|
135
|
-
(0, bun_test_1.expect)(fullOutput).toContain('Code Search');
|
|
136
|
-
(0, bun_test_1.expect)(fullOutput).toContain('function');
|
|
137
|
-
// Verify incremental output - but don't make assumptions about which chunks contain what
|
|
138
|
-
// Just check that we got multiple output chunks (incremental processing)
|
|
139
|
-
(0, bun_test_1.expect)(outputChunks.length).toBeGreaterThan(1);
|
|
140
|
-
// Check that the terminal command appears before the code search in the output
|
|
141
|
-
const terminalCommandIndex = fullOutput.indexOf('Run Terminal Command');
|
|
142
|
-
const codeSearchIndex = fullOutput.indexOf('Code Search');
|
|
143
|
-
(0, bun_test_1.expect)(terminalCommandIndex).toBeLessThan(codeSearchIndex);
|
|
144
|
-
});
|
|
145
|
-
(0, bun_test_1.test)('processes text content incrementally', async () => {
|
|
146
|
-
// Define chunks that will be written one at a time
|
|
147
|
-
const chunks = ['hi', 'hi2', 'hi3 <yo>\nyo\n</yo>'];
|
|
148
|
-
// Array to store output chunks as they're produced
|
|
149
|
-
const outputChunks = [];
|
|
150
|
-
// Create a writable stream that captures each output chunk
|
|
151
|
-
const writable = new stream_1.Writable({
|
|
152
|
-
write(chunk, encoding, callback) {
|
|
153
|
-
const chunkStr = chunk.toString();
|
|
154
|
-
outputChunks.push(chunkStr);
|
|
155
|
-
callback();
|
|
156
|
-
},
|
|
157
|
-
});
|
|
158
|
-
// Create the processor
|
|
159
|
-
const processor = (0, xml_stream_parser_1.createXMLStreamParser)(toolRenderers);
|
|
160
|
-
processor.pipe(writable);
|
|
161
|
-
// Process each chunk with a small delay between them
|
|
162
|
-
for (const chunk of chunks) {
|
|
163
|
-
processor.write(chunk);
|
|
164
|
-
// Small delay to simulate real-world streaming
|
|
165
|
-
await new Promise((resolve) => setTimeout(resolve, 5));
|
|
166
|
-
}
|
|
167
|
-
processor.end();
|
|
168
|
-
// Wait for the stream to finish
|
|
169
|
-
await new Promise((resolve) => {
|
|
170
|
-
writable.on('finish', resolve);
|
|
171
|
-
});
|
|
172
|
-
// Verify the complete output
|
|
173
|
-
const fullOutput = outputChunks.join('');
|
|
174
|
-
(0, bun_test_1.expect)(fullOutput).toEqual('hihi2hi3 <yo>\nyo\n</yo>');
|
|
175
|
-
(0, bun_test_1.expect)(outputChunks.length).toBeGreaterThan(3);
|
|
176
|
-
});
|
|
177
|
-
(0, bun_test_1.test)('real world example write to 4 files', async () => {
|
|
178
|
-
// Read the file content directly - no need for complex unescaping
|
|
179
|
-
const response = fs_1.default.readFileSync(path_1.default.join(__dirname, './response-example-4-files.txt'), 'utf-8');
|
|
180
|
-
// Array to store output chunks as they're produced
|
|
181
|
-
const outputChunks = [];
|
|
182
|
-
// Create a writable stream that captures each output chunk
|
|
183
|
-
const writable = new stream_1.Writable({
|
|
184
|
-
write(chunk, encoding, callback) {
|
|
185
|
-
const chunkStr = chunk.toString();
|
|
186
|
-
outputChunks.push(chunkStr);
|
|
187
|
-
callback();
|
|
188
|
-
},
|
|
189
|
-
});
|
|
190
|
-
let writeFileStartCount = 0;
|
|
191
|
-
let writeFileEndCount = 0;
|
|
192
|
-
const testToolRenderers = {
|
|
193
|
-
...toolRenderers,
|
|
194
|
-
write_file: {
|
|
195
|
-
...tool_renderers_1.defaultToolCallRenderer,
|
|
196
|
-
onToolStart: (toolName) => {
|
|
197
|
-
writeFileStartCount++;
|
|
198
|
-
return 'Write File';
|
|
199
|
-
},
|
|
200
|
-
onParamStart: (paramName, toolName) => {
|
|
201
|
-
return null;
|
|
202
|
-
},
|
|
203
|
-
onParamEnd: (paramName, toolName, content) => {
|
|
204
|
-
return null;
|
|
205
|
-
},
|
|
206
|
-
onToolEnd: (toolName, params) => {
|
|
207
|
-
writeFileEndCount++;
|
|
208
|
-
return null;
|
|
209
|
-
},
|
|
210
|
-
},
|
|
211
|
-
};
|
|
212
|
-
// Create the processor
|
|
213
|
-
const processor = (0, xml_stream_parser_1.createXMLStreamParser)(testToolRenderers);
|
|
214
|
-
processor.pipe(writable);
|
|
215
|
-
processor.write(response);
|
|
216
|
-
processor.end();
|
|
217
|
-
// Wait for the stream to finish
|
|
218
|
-
await new Promise((resolve) => {
|
|
219
|
-
writable.on('finish', resolve);
|
|
220
|
-
});
|
|
221
|
-
// Verify the complete output
|
|
222
|
-
const fullOutput = outputChunks.join('');
|
|
223
|
-
(0, bun_test_1.expect)(fullOutput).toContain('Write File'); // Check for expected output without worrying about formatting
|
|
224
|
-
(0, bun_test_1.expect)(writeFileEndCount).toBe(4);
|
|
225
|
-
// We expect multiple chunks for a large response
|
|
226
|
-
(0, bun_test_1.expect)(outputChunks.length).toBeGreaterThan(1);
|
|
227
|
-
});
|
|
228
|
-
});
|
|
229
|
-
//# sourceMappingURL=xml-stream-parser.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"xml-stream-parser.test.js","sourceRoot":"","sources":["../../../src/utils/__tests__/xml-stream-parser.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { AnalyticsEvent } from '../common/constants/analytics-events';
|
|
2
|
-
export declare let identified: boolean;
|
|
3
|
-
export declare function initAnalytics(): void;
|
|
4
|
-
export declare function flushAnalytics(): Promise<void>;
|
|
5
|
-
export declare function trackEvent(event: AnalyticsEvent, properties?: Record<string, any>): void;
|
|
6
|
-
export declare function identifyUser(userId: string, properties?: Record<string, any>): void;
|