codebuff 1.0.150 → 1.0.151

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.
Files changed (74) hide show
  1. package/dist/__tests__/browser-runner.test.d.ts +1 -0
  2. package/dist/__tests__/browser-runner.test.js +15 -0
  3. package/dist/__tests__/browser-runner.test.js.map +1 -0
  4. package/dist/browser-runner.d.ts +34 -0
  5. package/dist/browser-runner.js +622 -0
  6. package/dist/browser-runner.js.map +1 -0
  7. package/dist/chat-storage.d.ts +2 -4
  8. package/dist/chat-storage.js +79 -46
  9. package/dist/chat-storage.js.map +1 -1
  10. package/dist/cli.js +7 -17
  11. package/dist/cli.js.map +1 -1
  12. package/dist/client.d.ts +5 -4
  13. package/dist/client.js +24 -18
  14. package/dist/client.js.map +1 -1
  15. package/dist/code-map/languages.js +7 -17
  16. package/dist/code-map/languages.js.map +1 -1
  17. package/dist/code-map/parse.js +7 -17
  18. package/dist/code-map/parse.js.map +1 -1
  19. package/dist/code-map/tsconfig.tsbuildinfo +1 -1
  20. package/dist/common/actions.d.ts +301 -106
  21. package/dist/common/actions.js +17 -0
  22. package/dist/common/actions.js.map +1 -1
  23. package/dist/common/advanced-analyzer.d.ts +19 -0
  24. package/dist/common/advanced-analyzer.js +140 -0
  25. package/dist/common/advanced-analyzer.js.map +1 -0
  26. package/dist/common/browser-actions.d.ts +59 -114
  27. package/dist/common/browser-actions.js +2 -4
  28. package/dist/common/browser-actions.js.map +1 -1
  29. package/dist/common/constants.d.ts +7 -0
  30. package/dist/common/constants.js +1 -0
  31. package/dist/common/constants.js.map +1 -1
  32. package/dist/common/message-image-handling.d.ts +41 -0
  33. package/dist/common/message-image-handling.js +57 -0
  34. package/dist/common/message-image-handling.js.map +1 -0
  35. package/dist/common/project-file-tree.js +7 -7
  36. package/dist/common/project-file-tree.js.map +1 -1
  37. package/dist/common/types/usage.d.ts +2 -2
  38. package/dist/common/util/credentials.d.ts +2 -2
  39. package/dist/common/util/string.d.ts +10 -0
  40. package/dist/common/util/string.js +29 -1
  41. package/dist/common/util/string.js.map +1 -1
  42. package/dist/common/websockets/websocket-schema.d.ts +478 -244
  43. package/dist/create-template-project.js +7 -17
  44. package/dist/create-template-project.js.map +1 -1
  45. package/dist/credentials.d.ts +1 -0
  46. package/dist/credentials.js +7 -3
  47. package/dist/credentials.js.map +1 -1
  48. package/dist/index.js +1 -1
  49. package/dist/menu.js +7 -17
  50. package/dist/menu.js.map +1 -1
  51. package/dist/project-files.d.ts +3 -0
  52. package/dist/project-files.js +41 -19
  53. package/dist/project-files.js.map +1 -1
  54. package/dist/tool-handlers.d.ts +3 -1
  55. package/dist/tool-handlers.js +59 -6
  56. package/dist/tool-handlers.js.map +1 -1
  57. package/dist/utils/terminal.js +7 -17
  58. package/dist/utils/terminal.js.map +1 -1
  59. package/package.json +4 -3
  60. package/dist/common/logger.d.ts +0 -1
  61. package/dist/common/logger.js +0 -7
  62. package/dist/common/logger.js.map +0 -1
  63. package/dist/common/util/constants.d.ts +0 -1
  64. package/dist/common/util/constants.js +0 -7
  65. package/dist/common/util/constants.js.map +0 -1
  66. package/dist/common/util/helpers.d.ts +0 -1
  67. package/dist/common/util/helpers.js +0 -6
  68. package/dist/common/util/helpers.js.map +0 -1
  69. package/dist/common/util/messages.d.ts +0 -1
  70. package/dist/common/util/messages.js +0 -7
  71. package/dist/common/util/messages.js.map +0 -1
  72. package/dist/common/util/token-counter.d.ts +0 -3
  73. package/dist/common/util/token-counter.js +0 -27
  74. package/dist/common/util/token-counter.js.map +0 -1
@@ -36,6 +36,19 @@ const MessageContentObjectSchema = zod_1.z.union([
36
36
  })
37
37
  .optional(),
38
38
  }),
39
+ zod_1.z.object({
40
+ type: zod_1.z.literal('image'),
41
+ source: zod_1.z.object({
42
+ type: zod_1.z.literal('base64'),
43
+ media_type: zod_1.z.literal('image/jpeg'),
44
+ data: zod_1.z.string(),
45
+ }),
46
+ cache_control: zod_1.z
47
+ .object({
48
+ type: zod_1.z.literal('ephemeral'),
49
+ })
50
+ .optional(),
51
+ }),
39
52
  ]);
40
53
  const MessageSchema = zod_1.z.object({
41
54
  role: zod_1.z.union([zod_1.z.literal('user'), zod_1.z.literal('assistant')]),
@@ -138,6 +151,10 @@ exports.ResponseCompleteSchema = zod_1.z
138
151
  type: true,
139
152
  }).partial());
140
153
  exports.SERVER_ACTION_SCHEMA = zod_1.z.discriminatedUnion('type', [
154
+ zod_1.z.object({
155
+ type: zod_1.z.literal('read-files-response'),
156
+ files: zod_1.z.record(zod_1.z.string(), zod_1.z.string().nullable()),
157
+ }),
141
158
  zod_1.z.object({
142
159
  type: zod_1.z.literal('response-chunk'),
143
160
  userInputId: zod_1.z.string(),
@@ -1 +1 @@
1
- {"version":3,"file":"actions.js","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actions.js","sourceRoot":"","sources":["../src/actions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { BrowserResponse } from './browser-actions';
2
+ /**
3
+ * Each detected issue includes a type, severity, detection reason,
4
+ * and an optional recommendation for the user.
5
+ */
6
+ export interface AnalysisIssue {
7
+ type: string;
8
+ severity: 'low' | 'medium' | 'high';
9
+ message: string;
10
+ recommendation?: string;
11
+ }
12
+ export interface AnalysisResult {
13
+ issues: AnalysisIssue[];
14
+ }
15
+ /**
16
+ * Entrypoint function to run a suite of heuristic checks over
17
+ * logs, network events, performance metrics, etc.
18
+ */
19
+ export declare function analyzeBrowserData(response: BrowserResponse): AnalysisResult;
@@ -0,0 +1,140 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.analyzeBrowserData = analyzeBrowserData;
4
+ /**
5
+ * Entrypoint function to run a suite of heuristic checks over
6
+ * logs, network events, performance metrics, etc.
7
+ */
8
+ function analyzeBrowserData(response) {
9
+ const issues = [];
10
+ // 1. Check logs for known error patterns or repeated errors
11
+ issues.push(...analyzeLogs(response));
12
+ // 2. Check network events for 4xx, 5xx, or suspicious patterns
13
+ issues.push(...analyzeNetwork(response));
14
+ // 3. Check performance metrics (TTFB, LCP, memory usage, etc.)
15
+ if (response.metrics) {
16
+ issues.push(...analyzePerformance(response.metrics));
17
+ }
18
+ // Return combined issues
19
+ return { issues };
20
+ }
21
+ function analyzeLogs(response) {
22
+ const issues = [];
23
+ const logs = response.logs || [];
24
+ // Check for high number of JavaScript errors
25
+ const jsErrors = logs.filter((log) => log.type === 'error');
26
+ if (jsErrors.length > 5) {
27
+ issues.push({
28
+ type: 'JS_ERROR_OVERFLOW',
29
+ severity: 'medium',
30
+ message: `Detected ${jsErrors.length} JavaScript errors in logs.`,
31
+ recommendation: 'Review the console logs for repeated error patterns. Fix the root cause or handle errors in code.'
32
+ });
33
+ }
34
+ // Pattern-based error detection
35
+ const errorPatterns = {
36
+ 'not defined': {
37
+ severity: 'medium',
38
+ recommendation: 'Check for missing script dependencies or undefined variables'
39
+ },
40
+ 'Failed to fetch': {
41
+ severity: 'medium',
42
+ recommendation: 'Verify endpoint URLs and network connectivity'
43
+ },
44
+ 'SSL': {
45
+ severity: 'high',
46
+ recommendation: 'SSL certificate error - check HTTPS configuration'
47
+ },
48
+ 'ERR_NAME_NOT_RESOLVED': {
49
+ severity: 'medium',
50
+ recommendation: 'DNS resolution failed - check domain name'
51
+ },
52
+ 'ERR_CONNECTION_TIMED_OUT': {
53
+ severity: 'medium',
54
+ recommendation: 'Connection timeout - check network or firewall'
55
+ },
56
+ 'Navigation timeout': {
57
+ severity: 'medium',
58
+ recommendation: 'Page took too long to load - check performance or timeouts'
59
+ },
60
+ 'Frame detached': {
61
+ severity: 'low',
62
+ recommendation: 'Target frame or element no longer exists'
63
+ },
64
+ 'Node is detached': {
65
+ severity: 'low',
66
+ recommendation: 'Element was removed from DOM'
67
+ }
68
+ };
69
+ for (const log of jsErrors) {
70
+ for (const [pattern, { severity, recommendation }] of Object.entries(errorPatterns)) {
71
+ if (log.message.includes(pattern)) {
72
+ issues.push({
73
+ type: 'JS_ERROR',
74
+ severity,
75
+ message: `Error detected: ${log.message}`,
76
+ recommendation
77
+ });
78
+ break; // Stop after first matching pattern
79
+ }
80
+ }
81
+ }
82
+ return issues;
83
+ }
84
+ function analyzeNetwork(response) {
85
+ const issues = [];
86
+ const netEvents = response.networkEvents || [];
87
+ // Count 4xx / 5xx
88
+ const errorEvents = netEvents.filter((evt) => (evt.status && evt.status >= 400) || evt.errorText);
89
+ if (errorEvents.length > 0) {
90
+ issues.push({
91
+ type: 'NETWORK_ERRORS',
92
+ severity: 'medium',
93
+ message: `${errorEvents.length} network request(s) failed with 4xx/5xx error(s).`,
94
+ recommendation: 'Check your API endpoints and resource URLs. Verify server logs for possible configuration or routing issues.'
95
+ });
96
+ }
97
+ // Detect repeated 404s
98
+ const fourOhFours = netEvents.filter((e) => e.status === 404);
99
+ if (fourOhFours.length > 2) {
100
+ issues.push({
101
+ type: 'MISSING_RESOURCES',
102
+ severity: 'low',
103
+ message: `${fourOhFours.length} resources returned 404 Not Found.`,
104
+ recommendation: 'Ensure static assets or pages exist at the requested path.'
105
+ });
106
+ }
107
+ return issues;
108
+ }
109
+ function analyzePerformance(metrics) {
110
+ const issues = [];
111
+ // Check Time to First Byte
112
+ if ((metrics.ttfb ?? 0) > 1000) {
113
+ issues.push({
114
+ type: 'HIGH_TTFB',
115
+ severity: 'medium',
116
+ message: `Time to First Byte is ${metrics.ttfb}ms, which is high.`,
117
+ recommendation: 'Optimize server response times or check network constraints. Look for server-side bottlenecks.'
118
+ });
119
+ }
120
+ // Check memory usage
121
+ if (metrics.memoryUsage > 100_000_000) { // ~100MB in JS heap
122
+ issues.push({
123
+ type: 'HIGH_MEMORY_USAGE',
124
+ severity: 'medium',
125
+ message: `Memory usage reached ${metrics.memoryUsage} bytes in JS heap.`,
126
+ recommendation: 'Investigate potential memory leaks, unbounded data structures, or large on-page assets.'
127
+ });
128
+ }
129
+ // Check Largest Contentful Paint
130
+ if ((metrics.lcp ?? 0) > 4000) {
131
+ issues.push({
132
+ type: 'PERFORMANCE_LCP',
133
+ severity: 'medium',
134
+ message: `Largest Contentful Paint is ${metrics.lcp}ms (over 4s).`,
135
+ recommendation: 'Consider optimizing images, breaking up large bundle files, or deferring non-critical scripts.'
136
+ });
137
+ }
138
+ return issues;
139
+ }
140
+ //# sourceMappingURL=advanced-analyzer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"advanced-analyzer.js","sourceRoot":"","sources":["../src/advanced-analyzer.ts"],"names":[],"mappings":"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"}