ugly-app 0.1.411 → 0.1.412
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/cli/version.d.ts +1 -1
- package/dist/cli/version.js +1 -1
- package/dist/client/Logger.d.ts.map +1 -1
- package/dist/client/Logger.js +42 -1
- package/dist/client/Logger.js.map +1 -1
- package/package.json +1 -1
- package/src/cli/version.ts +1 -1
- package/src/client/Logger.ts +43 -1
package/dist/cli/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const CLI_VERSION = "0.1.
|
|
1
|
+
export declare const CLI_VERSION = "0.1.412";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/cli/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Logger.d.ts","sourceRoot":"","sources":["../../src/client/Logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAiB,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"Logger.d.ts","sourceRoot":"","sources":["../../src/client/Logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAiB,MAAM,iBAAiB,CAAC;AAmVpE;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,aAAa,EAAE,CAElD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,SAAK,GAAG,IAAI,CAEtD"}
|
package/dist/client/Logger.js
CHANGED
|
@@ -99,6 +99,36 @@ function flatten(args) {
|
|
|
99
99
|
? JSON.stringify(a)
|
|
100
100
|
: String(a));
|
|
101
101
|
}
|
|
102
|
+
// Capture a call-site stack at the point of a console.error/warn so
|
|
103
|
+
// downstream consumers (the studio Preview panel, agent
|
|
104
|
+
// `dev_server_errors`, ugly.bot's error log) can show the user where
|
|
105
|
+
// in their code the log came from. Strips:
|
|
106
|
+
// - the leading "Error" header line that Chrome/Firefox emit
|
|
107
|
+
// - the first 2 frames (this helper + captureConsole) so the top
|
|
108
|
+
// frame is the user's call site, not framework plumbing
|
|
109
|
+
// - frames beyond #30 — keeps payloads bounded (~3 KB) since the
|
|
110
|
+
// studio sidecar's body cap is 64 KB and a chatty page can sustain
|
|
111
|
+
// dozens of warn/error calls per second.
|
|
112
|
+
//
|
|
113
|
+
// Only called from the error/warn paths in `captureConsole`; the
|
|
114
|
+
// `new Error()` allocation + V8 stack-unwind costs ~50–100 µs per call,
|
|
115
|
+
// which is fine on rare paths but expensive on the chatty
|
|
116
|
+
// log/info/debug hot paths we deliberately skip.
|
|
117
|
+
function captureCallSiteStack() {
|
|
118
|
+
const raw = new Error().stack;
|
|
119
|
+
if (typeof raw !== 'string' || raw.length === 0)
|
|
120
|
+
return undefined;
|
|
121
|
+
const lines = raw.split('\n');
|
|
122
|
+
// Chrome/Firefox both prefix with an "Error" / "Error:" header.
|
|
123
|
+
const start = lines[0]?.trimStart().startsWith('Error') ? 1 : 0;
|
|
124
|
+
// 2 frames to drop: captureCallSiteStack itself and captureConsole.
|
|
125
|
+
// (The console.* wrapper that called captureConsole is the user's
|
|
126
|
+
// call site — that's what we want at the top.)
|
|
127
|
+
const trimmed = lines.slice(start + 2, start + 2 + 30);
|
|
128
|
+
if (trimmed.length === 0)
|
|
129
|
+
return undefined;
|
|
130
|
+
return trimmed.join('\n');
|
|
131
|
+
}
|
|
102
132
|
function captureConsole(level, args) {
|
|
103
133
|
const flat = flatten(args);
|
|
104
134
|
const message = flat.join(' ');
|
|
@@ -109,9 +139,20 @@ function captureConsole(level, args) {
|
|
|
109
139
|
consoleBuffer.push({ timestamp: ts, level, message, args });
|
|
110
140
|
if (consoleBuffer.length > MAX_BUFFER)
|
|
111
141
|
consoleBuffer.shift();
|
|
142
|
+
// Only attach a call-site stack to error/warn entries — the cost is
|
|
143
|
+
// not worth paying on every log/info/debug, which can fire in tight
|
|
144
|
+
// loops, and the value is lower since those levels rarely get
|
|
145
|
+
// grepped for "where did this come from".
|
|
146
|
+
const stack = level === 'error' || level === 'warn'
|
|
147
|
+
? captureCallSiteStack()
|
|
148
|
+
: undefined;
|
|
112
149
|
pushSend({
|
|
113
150
|
type: 'console',
|
|
114
|
-
data: {
|
|
151
|
+
data: {
|
|
152
|
+
level,
|
|
153
|
+
args: flat,
|
|
154
|
+
...(stack ? { stack } : {}),
|
|
155
|
+
},
|
|
115
156
|
timestamp: ts,
|
|
116
157
|
});
|
|
117
158
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Logger.js","sourceRoot":"","sources":["../../src/client/Logger.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Logger.js","sourceRoot":"","sources":["../../src/client/Logger.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/cli/version.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// Auto-generated by prebuild — do not edit manually
|
|
2
|
-
export const CLI_VERSION = "0.1.
|
|
2
|
+
export const CLI_VERSION = "0.1.412";
|
package/src/client/Logger.ts
CHANGED
|
@@ -135,6 +135,35 @@ function flatten(args: unknown[]): string[] {
|
|
|
135
135
|
);
|
|
136
136
|
}
|
|
137
137
|
|
|
138
|
+
// Capture a call-site stack at the point of a console.error/warn so
|
|
139
|
+
// downstream consumers (the studio Preview panel, agent
|
|
140
|
+
// `dev_server_errors`, ugly.bot's error log) can show the user where
|
|
141
|
+
// in their code the log came from. Strips:
|
|
142
|
+
// - the leading "Error" header line that Chrome/Firefox emit
|
|
143
|
+
// - the first 2 frames (this helper + captureConsole) so the top
|
|
144
|
+
// frame is the user's call site, not framework plumbing
|
|
145
|
+
// - frames beyond #30 — keeps payloads bounded (~3 KB) since the
|
|
146
|
+
// studio sidecar's body cap is 64 KB and a chatty page can sustain
|
|
147
|
+
// dozens of warn/error calls per second.
|
|
148
|
+
//
|
|
149
|
+
// Only called from the error/warn paths in `captureConsole`; the
|
|
150
|
+
// `new Error()` allocation + V8 stack-unwind costs ~50–100 µs per call,
|
|
151
|
+
// which is fine on rare paths but expensive on the chatty
|
|
152
|
+
// log/info/debug hot paths we deliberately skip.
|
|
153
|
+
function captureCallSiteStack(): string | undefined {
|
|
154
|
+
const raw = new Error().stack;
|
|
155
|
+
if (typeof raw !== 'string' || raw.length === 0) return undefined;
|
|
156
|
+
const lines = raw.split('\n');
|
|
157
|
+
// Chrome/Firefox both prefix with an "Error" / "Error:" header.
|
|
158
|
+
const start = lines[0]?.trimStart().startsWith('Error') ? 1 : 0;
|
|
159
|
+
// 2 frames to drop: captureCallSiteStack itself and captureConsole.
|
|
160
|
+
// (The console.* wrapper that called captureConsole is the user's
|
|
161
|
+
// call site — that's what we want at the top.)
|
|
162
|
+
const trimmed = lines.slice(start + 2, start + 2 + 30);
|
|
163
|
+
if (trimmed.length === 0) return undefined;
|
|
164
|
+
return trimmed.join('\n');
|
|
165
|
+
}
|
|
166
|
+
|
|
138
167
|
function captureConsole(level: ErrorLogLevel, args: unknown[]): void {
|
|
139
168
|
const flat = flatten(args);
|
|
140
169
|
const message = flat.join(' ');
|
|
@@ -146,9 +175,22 @@ function captureConsole(level: ErrorLogLevel, args: unknown[]): void {
|
|
|
146
175
|
consoleBuffer.push({ timestamp: ts, level, message, args });
|
|
147
176
|
if (consoleBuffer.length > MAX_BUFFER) consoleBuffer.shift();
|
|
148
177
|
|
|
178
|
+
// Only attach a call-site stack to error/warn entries — the cost is
|
|
179
|
+
// not worth paying on every log/info/debug, which can fire in tight
|
|
180
|
+
// loops, and the value is lower since those levels rarely get
|
|
181
|
+
// grepped for "where did this come from".
|
|
182
|
+
const stack =
|
|
183
|
+
level === 'error' || level === 'warn'
|
|
184
|
+
? captureCallSiteStack()
|
|
185
|
+
: undefined;
|
|
186
|
+
|
|
149
187
|
pushSend({
|
|
150
188
|
type: 'console',
|
|
151
|
-
data: {
|
|
189
|
+
data: {
|
|
190
|
+
level,
|
|
191
|
+
args: flat,
|
|
192
|
+
...(stack ? { stack } : {}),
|
|
193
|
+
},
|
|
152
194
|
timestamp: ts,
|
|
153
195
|
});
|
|
154
196
|
}
|