@uptimizr/sdk-core 0.2.0 → 0.3.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.
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/client.js CHANGED
@@ -25,6 +25,8 @@ function resolveConfig(config) {
25
25
  captureLifecycle: config.captureLifecycle ?? true,
26
26
  resizeDebounceMs: config.resizeDebounceMs ?? DEFAULTS.resizeDebounceMs,
27
27
  captureErrors: config.captureErrors ?? false,
28
+ captureGraphicsDiagnostics: config.captureGraphicsDiagnostics ?? false,
29
+ captureShaderSource: config.captureShaderSource ?? false,
28
30
  debug: config.debug ?? false,
29
31
  };
30
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,301 @@
1
+ import type { GraphicsApi } from "@uptimizr/schema";
2
+ import type { CollectorContext } from "./types.js";
3
+ /**
4
+ * Structural view of a WebGPU `GPUDeviceLostInfo` (the value the `GPUDevice.lost`
5
+ * promise resolves with). Declared locally — rather than depending on
6
+ * `@webgpu/types` — so the helper stays dependency-free and tolerant of partial
7
+ * shapes across browsers.
8
+ *
9
+ * @see https://www.w3.org/TR/webgpu/#gpudevicelostinfo
10
+ */
11
+ export interface GpuDeviceLostInfoLike {
12
+ /** `"destroyed"` for a requested loss (`device.destroy()`); otherwise unknown. */
13
+ reason?: string;
14
+ /** Human-readable detail (driver/agent text). Length-capped before emit. */
15
+ message?: string;
16
+ }
17
+ /**
18
+ * Structural view of the one field we read off a WebGPU `GPUDevice`: its `lost`
19
+ * promise. We read structurally so connectors can keep their engine
20
+ * (`@babylonjs/core`, `three`) a peer dependency and stay version-tolerant.
21
+ */
22
+ export interface GpuDeviceLostLike {
23
+ lost?: Promise<GpuDeviceLostInfoLike>;
24
+ }
25
+ /** Tuning for how long we wait for an async-initialized WebGPU device. */
26
+ export interface WireGpuDeviceLostOptions {
27
+ /**
28
+ * Max number of times to poll for the device before giving up. Defaults to 20
29
+ * which, with the default {@link intervalMs}, spans ~5s — comfortably longer
30
+ * than a WebGPU backend's async init while staying bounded (no leak).
31
+ */
32
+ maxAttempts?: number;
33
+ /** Delay between device-acquisition attempts, in ms. Defaults to 250. */
34
+ intervalMs?: number;
35
+ }
36
+ /**
37
+ * Wire a WebGPU `GPUDevice.lost` into a `graphics_diagnostic` (ADR 0021 part 2,
38
+ * `category: "device-lost"`). Engine-agnostic: every connector that can have a
39
+ * WebGPU device hands a device *getter* here, so the gating, severity mapping,
40
+ * length-cap, and event shape live in exactly one place.
41
+ *
42
+ * Behavior:
43
+ * - **Opt-in gate.** No-ops (nothing scheduled, nothing emitted) unless
44
+ * `ctx.config.captureGraphicsDiagnostics` is on. (Unlike `context_lost`, which is
45
+ * always-on; device loss is the richer opt-in diagnostic.)
46
+ * - **Async device init.** A WebGPU backend builds its device asynchronously
47
+ * (three's `renderer.init()` / first `renderAsync`, Babylon's `initAsync`), so
48
+ * the device is frequently `undefined` at collector `start()` time. We therefore
49
+ * take a *getter* and **poll** it (bounded by {@link WireGpuDeviceLostOptions})
50
+ * until the device appears, rather than reading once and silently giving up.
51
+ * - **Severity.** `info` when `reason === "destroyed"` (an expected, app-requested
52
+ * loss via `device.destroy()`); `fatal` otherwise (an unrequested loss —
53
+ * rendering cannot continue).
54
+ * - **Marker.** Emits a single discrete incident (no `count`): device loss is rare
55
+ * and decisive, so the high-fidelity marker is the right default here.
56
+ * - **Privacy.** The optional `message` is locally truncated to
57
+ * {@link LIMITS.maxGraphicsDiagnosticMessageLength} and rides through `ctx.emit`,
58
+ * which applies the client's `beforeSend` for deployer-owned redaction.
59
+ *
60
+ * Teardown is cooperative: pass an `isActive` predicate (typically `() => !stopped`).
61
+ * It is checked before each poll and again when `device.lost` resolves, so neither a
62
+ * pending poll nor a late device loss emits after the collector has stopped.
63
+ *
64
+ * @param ctx Collector context (config + `emit`).
65
+ * @param getDevice Returns the WebGPU device, or `undefined`/`null` while it is
66
+ * still initializing or on WebGL (where it never appears — a clean no-op). Must
67
+ * not throw; read the field defensively (optional chaining).
68
+ * @param isActive Returns `false` once the collector has been torn down.
69
+ * @param options Polling bounds (mainly for tests).
70
+ */
71
+ export declare function wireGpuDeviceLost(ctx: CollectorContext, getDevice: () => GpuDeviceLostLike | undefined | null, isActive: () => boolean, options?: WireGpuDeviceLostOptions): void;
72
+ /**
73
+ * Shared **rate-limited rollup** for the noisy `graphics_diagnostic` signals
74
+ * (ADR 0021 part 2 decision 4 / ADR 0012): a burst of incidents coalesces into one
75
+ * `count`-bearing event instead of flooding ingestion. Tracks `count` plus the first
76
+ * representative payload; `emit` composes the event from those. Used by both
77
+ * `wireGpuUncapturedError` and `wireGlErrorSampling` so the aggregation logic lives once.
78
+ */
79
+ export interface DiagnosticRollup<T> {
80
+ /** Record one incident, capturing `first` on the very first record of a window. */
81
+ record(first: T): void;
82
+ /** Incidents accumulated in the current (un-flushed) window. */
83
+ readonly count: number;
84
+ /** Emit one aggregated event (if any) and reset the window. */
85
+ flush(): void;
86
+ /** Begin a bounded auto-flush interval. */
87
+ start(intervalMs: number): void;
88
+ /** Clear the interval and flush any remaining incidents. */
89
+ stop(): void;
90
+ }
91
+ export declare function createDiagnosticRollup<T>(emit: (count: number, first: T | undefined) => void): DiagnosticRollup<T>;
92
+ /**
93
+ * Structural view of a WebGPU `GPUError` (the value carried on an
94
+ * `uncapturederror` event). Declared locally so the helper stays dependency-free.
95
+ * The subtype is detected by constructor name to avoid depending on `@webgpu/types`.
96
+ *
97
+ * @see https://www.w3.org/TR/webgpu/#gpuerror
98
+ */
99
+ export interface GpuErrorLike {
100
+ /** Human-readable detail. Length-capped before it rides on a rollup. */
101
+ message?: string;
102
+ /** Set on the concrete error class; used to detect out-of-memory vs validation. */
103
+ constructor?: {
104
+ name?: string;
105
+ };
106
+ }
107
+ /** Structural view of the one WebGPU `uncapturederror` event field we read. */
108
+ interface GpuUncapturedErrorEventLike {
109
+ error?: GpuErrorLike;
110
+ }
111
+ /**
112
+ * The subset of `EventTarget` we use on a WebGPU device. Declared structurally so
113
+ * connectors keep their engine a peer dependency and stay version-tolerant.
114
+ */
115
+ export interface GpuDeviceErrorTargetLike {
116
+ addEventListener?: (type: "uncapturederror", listener: (e: GpuUncapturedErrorEventLike) => void) => void;
117
+ removeEventListener?: (type: "uncapturederror", listener: (e: GpuUncapturedErrorEventLike) => void) => void;
118
+ }
119
+ /** Tuning for the rate-limited `uncapturederror` rollup. */
120
+ export interface WireGpuUncapturedErrorOptions extends WireGpuDeviceLostOptions {
121
+ /**
122
+ * How often, in ms, to flush an accumulated rollup mid-session. Defaults to
123
+ * 30s. A flush also runs unconditionally at teardown. Set bursts coalesce into
124
+ * one event per interval, so an error storm cannot flood ingestion.
125
+ */
126
+ flushIntervalMs?: number;
127
+ }
128
+ /**
129
+ * Wire WebGPU `uncapturederror` into a **rate-limited per-session rollup**
130
+ * (ADR 0021 part 2, decision 4 / ADR 0012). This is the highest-volume diagnostic,
131
+ * so the default — and only — emission is aggregated: a burst of errors becomes a
132
+ * single `graphics_diagnostic` carrying `count: N` plus the first message, never N
133
+ * discrete events. Shared and engine-agnostic so every connector (Babylon, three,
134
+ * …) hands a device *getter* here and the gating, subtype mapping, length-cap,
135
+ * aggregation, and flush cadence live in exactly one place.
136
+ *
137
+ * Behavior:
138
+ * - **Opt-in gate.** No-ops unless `ctx.config.captureGraphicsDiagnostics` is on.
139
+ * - **Async device init.** Polls the getter (bounded, same as {@link wireGpuDeviceLost})
140
+ * until the WebGPU device appears, so a backend that builds its device async
141
+ * (three `renderer.init()`/`renderAsync`, Babylon `initAsync`) isn't missed.
142
+ * - **Subtype.** `GPUOutOfMemoryError` → `out-of-memory` (`severity: error`);
143
+ * anything else → `validation` (`severity: warning`). The most severe category
144
+ * seen wins for the rollup; the first message is kept.
145
+ * - **Rollup.** Accumulates `count` + first `message` and flushes one event on a
146
+ * bounded interval and again at teardown; emits nothing if no error occurred.
147
+ * - **Privacy.** `message` is truncated to {@link LIMITS.maxGraphicsDiagnosticMessageLength}
148
+ * and rides through `ctx.emit` (so `beforeSend` applies); raw shader source is excluded.
149
+ *
150
+ * @returns A teardown function that removes the listener, clears the timer, and
151
+ * flushes any pending rollup. Connectors call it from `stop()`/dispose.
152
+ * @param getDevice Returns the WebGPU device, or `undefined`/`null` while it is
153
+ * still initializing or on WebGL (a clean no-op). Must not throw.
154
+ * @param isActive Returns `false` once the collector is torn down — nothing emits after.
155
+ */
156
+ export declare function wireGpuUncapturedError(ctx: CollectorContext, getDevice: () => GpuDeviceErrorTargetLike | undefined | null, isActive: () => boolean, options?: WireGpuUncapturedErrorOptions): () => void;
157
+ /** Backends a shader/getError diagnostic can be tagged with. */
158
+ type ShaderBackend = "webgl" | "webgl2" | "webgpu";
159
+ /** Tuning for shader-compile capture (mainly for tests). */
160
+ export interface ShaderDiagnosticsOptions {
161
+ /** Max shader-compile diagnostics emitted per session (storm guard). Default 25. */
162
+ maxIncidents?: number;
163
+ }
164
+ /**
165
+ * Build a `graphics_diagnostic` for a shader compile/link **failure**. Pure and
166
+ * redaction-aware: the engine info log is the message (length-capped); raw shader
167
+ * `source` is appended **only** when the deployer opted in via `captureShaderSource`
168
+ * (ADR 0021 part 2 — source is application IP). Either way the result is capped to
169
+ * the schema limit and still rides through `beforeSend`.
170
+ */
171
+ export declare function buildShaderCompileDiagnostic(input: {
172
+ infoLog?: string;
173
+ source?: string;
174
+ backend?: ShaderBackend;
175
+ captureShaderSource: boolean;
176
+ }): {
177
+ type: "graphics_diagnostic";
178
+ severity: "error";
179
+ category: "shader-compile";
180
+ backend?: ShaderBackend;
181
+ message?: string;
182
+ };
183
+ /** Structural view of the WebGL context fields we read for shader diagnostics. */
184
+ export interface WebGlShaderContextLike {
185
+ COMPILE_STATUS: number;
186
+ LINK_STATUS: number;
187
+ compileShader(shader: object): void;
188
+ linkProgram(program: object): void;
189
+ getShaderParameter(shader: object, pname: number): unknown;
190
+ getProgramParameter(program: object, pname: number): unknown;
191
+ getShaderInfoLog(shader: object): string | null;
192
+ getProgramInfoLog(program: object): string | null;
193
+ getShaderSource?(shader: object): string | null;
194
+ }
195
+ /**
196
+ * Capture WebGL shader compile and program link **failures** as
197
+ * `graphics_diagnostic` (`category: shader-compile`). Wraps the context's
198
+ * `compileShader`/`linkProgram`; on a failed status it reads the matching info log
199
+ * (and, when `captureShaderSource` is on, the shader source) and emits one capped,
200
+ * redactable diagnostic. Bounded per session so a build loop cannot flood ingestion.
201
+ *
202
+ * Opt-in: no-ops unless `ctx.config.captureGraphicsDiagnostics`. Returns a detach
203
+ * fn that restores the original methods.
204
+ */
205
+ export declare function wireGlShaderDiagnostics(ctx: CollectorContext, gl: WebGlShaderContextLike, isActive: () => boolean, options?: ShaderDiagnosticsOptions): () => void;
206
+ /** Structural view of the WebGPU device + module fields we read for shader info. */
207
+ export interface WebGpuShaderDeviceLike {
208
+ createShaderModule(descriptor: {
209
+ code?: string;
210
+ }): WebGpuShaderModuleLike;
211
+ }
212
+ interface WebGpuShaderModuleLike {
213
+ getCompilationInfo?: () => Promise<{
214
+ messages?: ReadonlyArray<{
215
+ type?: string;
216
+ message?: string;
217
+ }>;
218
+ }>;
219
+ compilationInfo?: () => Promise<{
220
+ messages?: ReadonlyArray<{
221
+ type?: string;
222
+ message?: string;
223
+ }>;
224
+ }>;
225
+ }
226
+ /**
227
+ * Capture WebGPU shader-module compile errors as `graphics_diagnostic`
228
+ * (`category: shader-compile`). Wraps `device.createShaderModule` and inspects the
229
+ * module's async `compilationInfo()` for `error` messages. Source (`descriptor.code`)
230
+ * is included only when `captureShaderSource` is on. Opt-in + bounded; returns detach.
231
+ */
232
+ export declare function wireGpuShaderDiagnostics(ctx: CollectorContext, device: WebGpuShaderDeviceLike, isActive: () => boolean, options?: ShaderDiagnosticsOptions): () => void;
233
+ /** Tuning for opportunistic `gl.getError()` sampling. */
234
+ export interface GlErrorSamplingOptions {
235
+ /** Sampling interval in ms. Default 5000. NEVER per-frame (ADR forbids a sync stall). */
236
+ intervalMs?: number;
237
+ }
238
+ /** Structural view of the one method we poll: `gl.getError()`. */
239
+ export interface WebGlErrorContextLike {
240
+ getError(): number;
241
+ }
242
+ /**
243
+ * Opportunistically **sample** `gl.getError()` and emit a rate-limited rollup
244
+ * `graphics_diagnostic` (`category: validation`, ADR 0021 part 2). Runs on a low-rate
245
+ * timer — never per-frame, since `getError()` forces a sync GPU stall (ADR forbids it).
246
+ * Non-`NO_ERROR` results are aggregated into a single `count`ed event flushed on the
247
+ * next tick (and on teardown), so a storm cannot flood ingestion. WebGPU has no
248
+ * `getError`, so passing nothing makes this a clean no-op.
249
+ *
250
+ * Opt-in: no-ops unless `captureGraphicsDiagnostics`. Returns a detach fn that flushes
251
+ * any pending rollup and clears the timer.
252
+ */
253
+ export declare function wireGlErrorSampling(ctx: CollectorContext, gl: WebGlErrorContextLike, isActive: () => boolean, options?: GlErrorSamplingOptions): () => void;
254
+ /**
255
+ * The result a connector's context-creation probe hands to
256
+ * {@link wireContextCreationFailure}. Connectors read their engine/renderer
257
+ * structurally (to keep the engine a peer dependency) and reduce it to this small,
258
+ * engine-agnostic shape.
259
+ */
260
+ export interface ContextCreationProbe {
261
+ /**
262
+ * `true` when the engine could not obtain a usable GL/WebGPU context or adapter
263
+ * (e.g. `getContext()` / `requestAdapter()` returned null, or no backend is
264
+ * usable). `false` for a healthy context — the common case, a clean no-op.
265
+ */
266
+ failed: boolean;
267
+ /** The API that failed, when determinable; omit/`unknown` when it can't be told. */
268
+ backend?: GraphicsApi;
269
+ /** Optional engine/driver detail. Length-capped before emit. */
270
+ message?: string;
271
+ }
272
+ /**
273
+ * Emit a one-shot context-creation failure as a `graphics_diagnostic`
274
+ * (ADR 0021 part 2, `category: "context-loss"`, `severity: "fatal"`) when a
275
+ * connector cannot obtain a rendering context/adapter at init. Engine-agnostic:
276
+ * every connector reduces its backend-specific check to a {@link ContextCreationProbe}
277
+ * so the gating, length-cap, and event shape live in exactly one place.
278
+ *
279
+ * Behavior:
280
+ * - **Opt-in gate.** No-ops unless `ctx.config.captureGraphicsDiagnostics` is on
281
+ * (mirroring {@link wireGpuDeviceLost}; `context_lost` runtime loss stays
282
+ * always-on, this *creation* case is the richer opt-in diagnostic).
283
+ * - **Discrete marker.** Emits a single incident with no `count`: a creation
284
+ * failure is rare and decisive, so the high-fidelity marker is the right default.
285
+ * - **Backend.** `unknown` when the connector can't determine which API failed
286
+ * (no context means little to introspect).
287
+ * - **Ordering.** Connectors call this at `start()`. The client sets `started`
288
+ * before running collectors, so the marker queues right after `session_start`
289
+ * and is flushed by the normal cadence even though no transport round-trip has
290
+ * happened yet.
291
+ * - **Privacy.** Any `message` is truncated to
292
+ * {@link LIMITS.maxGraphicsDiagnosticMessageLength} and rides `ctx.emit`, which
293
+ * applies the client's `beforeSend` for deployer-owned redaction.
294
+ *
295
+ * @param ctx Collector context (config + `emit`).
296
+ * @param probe The connector's context-creation result. Must not throw; read the
297
+ * engine defensively (optional chaining) and pass `{ failed: false }` on doubt.
298
+ */
299
+ export declare function wireContextCreationFailure(ctx: CollectorContext, probe: ContextCreationProbe): void;
300
+ export {};
301
+ //# sourceMappingURL=graphicsDiagnostics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graphicsDiagnostics.d.ts","sourceRoot":"","sources":["../src/graphicsDiagnostics.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,409 @@
1
+ import { LIMITS } from "@uptimizr/schema";
2
+ const DEFAULT_MAX_ATTEMPTS = 20;
3
+ const DEFAULT_INTERVAL_MS = 250;
4
+ /**
5
+ * Wire a WebGPU `GPUDevice.lost` into a `graphics_diagnostic` (ADR 0021 part 2,
6
+ * `category: "device-lost"`). Engine-agnostic: every connector that can have a
7
+ * WebGPU device hands a device *getter* here, so the gating, severity mapping,
8
+ * length-cap, and event shape live in exactly one place.
9
+ *
10
+ * Behavior:
11
+ * - **Opt-in gate.** No-ops (nothing scheduled, nothing emitted) unless
12
+ * `ctx.config.captureGraphicsDiagnostics` is on. (Unlike `context_lost`, which is
13
+ * always-on; device loss is the richer opt-in diagnostic.)
14
+ * - **Async device init.** A WebGPU backend builds its device asynchronously
15
+ * (three's `renderer.init()` / first `renderAsync`, Babylon's `initAsync`), so
16
+ * the device is frequently `undefined` at collector `start()` time. We therefore
17
+ * take a *getter* and **poll** it (bounded by {@link WireGpuDeviceLostOptions})
18
+ * until the device appears, rather than reading once and silently giving up.
19
+ * - **Severity.** `info` when `reason === "destroyed"` (an expected, app-requested
20
+ * loss via `device.destroy()`); `fatal` otherwise (an unrequested loss —
21
+ * rendering cannot continue).
22
+ * - **Marker.** Emits a single discrete incident (no `count`): device loss is rare
23
+ * and decisive, so the high-fidelity marker is the right default here.
24
+ * - **Privacy.** The optional `message` is locally truncated to
25
+ * {@link LIMITS.maxGraphicsDiagnosticMessageLength} and rides through `ctx.emit`,
26
+ * which applies the client's `beforeSend` for deployer-owned redaction.
27
+ *
28
+ * Teardown is cooperative: pass an `isActive` predicate (typically `() => !stopped`).
29
+ * It is checked before each poll and again when `device.lost` resolves, so neither a
30
+ * pending poll nor a late device loss emits after the collector has stopped.
31
+ *
32
+ * @param ctx Collector context (config + `emit`).
33
+ * @param getDevice Returns the WebGPU device, or `undefined`/`null` while it is
34
+ * still initializing or on WebGL (where it never appears — a clean no-op). Must
35
+ * not throw; read the field defensively (optional chaining).
36
+ * @param isActive Returns `false` once the collector has been torn down.
37
+ * @param options Polling bounds (mainly for tests).
38
+ */
39
+ export function wireGpuDeviceLost(ctx, getDevice, isActive, options) {
40
+ if (!ctx.config.captureGraphicsDiagnostics)
41
+ return;
42
+ const maxAttempts = options?.maxAttempts ?? DEFAULT_MAX_ATTEMPTS;
43
+ const intervalMs = options?.intervalMs ?? DEFAULT_INTERVAL_MS;
44
+ let attempts = 0;
45
+ const attach = (device) => {
46
+ const lost = device.lost;
47
+ if (!lost || typeof lost.then !== "function")
48
+ return;
49
+ void lost.then((info) => {
50
+ if (!isActive())
51
+ return;
52
+ const reason = typeof info?.reason === "string" ? info.reason : undefined;
53
+ const severity = reason === "destroyed" ? "info" : "fatal";
54
+ const rawMessage = typeof info?.message === "string" ? info.message : undefined;
55
+ const message = rawMessage
56
+ ? rawMessage.slice(0, LIMITS.maxGraphicsDiagnosticMessageLength)
57
+ : undefined;
58
+ ctx.emit({
59
+ type: "graphics_diagnostic",
60
+ severity,
61
+ category: "device-lost",
62
+ backend: "webgpu",
63
+ ...(message ? { message } : {}),
64
+ });
65
+ });
66
+ };
67
+ const poll = () => {
68
+ if (!isActive())
69
+ return;
70
+ const device = getDevice();
71
+ if (device) {
72
+ attach(device);
73
+ return;
74
+ }
75
+ // Device not ready yet (async backend init). Retry on a bounded schedule; the
76
+ // WebGL path never produces a device, so this simply exhausts and stops.
77
+ attempts += 1;
78
+ if (attempts >= maxAttempts)
79
+ return;
80
+ setTimeout(poll, intervalMs);
81
+ };
82
+ poll();
83
+ }
84
+ export function createDiagnosticRollup(emit) {
85
+ let count = 0;
86
+ let first;
87
+ let timer;
88
+ const flush = () => {
89
+ if (count === 0)
90
+ return;
91
+ emit(count, first);
92
+ count = 0;
93
+ first = undefined;
94
+ };
95
+ return {
96
+ record(value) {
97
+ if (count === 0)
98
+ first = value;
99
+ count += 1;
100
+ },
101
+ get count() {
102
+ return count;
103
+ },
104
+ flush,
105
+ start(intervalMs) {
106
+ timer = setInterval(flush, intervalMs);
107
+ },
108
+ stop() {
109
+ if (timer)
110
+ clearInterval(timer);
111
+ timer = undefined;
112
+ flush();
113
+ },
114
+ };
115
+ }
116
+ const DEFAULT_FLUSH_INTERVAL_MS = 30_000;
117
+ /**
118
+ * Wire WebGPU `uncapturederror` into a **rate-limited per-session rollup**
119
+ * (ADR 0021 part 2, decision 4 / ADR 0012). This is the highest-volume diagnostic,
120
+ * so the default — and only — emission is aggregated: a burst of errors becomes a
121
+ * single `graphics_diagnostic` carrying `count: N` plus the first message, never N
122
+ * discrete events. Shared and engine-agnostic so every connector (Babylon, three,
123
+ * …) hands a device *getter* here and the gating, subtype mapping, length-cap,
124
+ * aggregation, and flush cadence live in exactly one place.
125
+ *
126
+ * Behavior:
127
+ * - **Opt-in gate.** No-ops unless `ctx.config.captureGraphicsDiagnostics` is on.
128
+ * - **Async device init.** Polls the getter (bounded, same as {@link wireGpuDeviceLost})
129
+ * until the WebGPU device appears, so a backend that builds its device async
130
+ * (three `renderer.init()`/`renderAsync`, Babylon `initAsync`) isn't missed.
131
+ * - **Subtype.** `GPUOutOfMemoryError` → `out-of-memory` (`severity: error`);
132
+ * anything else → `validation` (`severity: warning`). The most severe category
133
+ * seen wins for the rollup; the first message is kept.
134
+ * - **Rollup.** Accumulates `count` + first `message` and flushes one event on a
135
+ * bounded interval and again at teardown; emits nothing if no error occurred.
136
+ * - **Privacy.** `message` is truncated to {@link LIMITS.maxGraphicsDiagnosticMessageLength}
137
+ * and rides through `ctx.emit` (so `beforeSend` applies); raw shader source is excluded.
138
+ *
139
+ * @returns A teardown function that removes the listener, clears the timer, and
140
+ * flushes any pending rollup. Connectors call it from `stop()`/dispose.
141
+ * @param getDevice Returns the WebGPU device, or `undefined`/`null` while it is
142
+ * still initializing or on WebGL (a clean no-op). Must not throw.
143
+ * @param isActive Returns `false` once the collector is torn down — nothing emits after.
144
+ */
145
+ export function wireGpuUncapturedError(ctx, getDevice, isActive, options) {
146
+ if (!ctx.config.captureGraphicsDiagnostics)
147
+ return () => { };
148
+ const maxAttempts = options?.maxAttempts ?? DEFAULT_MAX_ATTEMPTS;
149
+ const intervalMs = options?.intervalMs ?? DEFAULT_INTERVAL_MS;
150
+ const flushIntervalMs = options?.flushIntervalMs ?? DEFAULT_FLUSH_INTERVAL_MS;
151
+ let attempts = 0;
152
+ let firstMessage;
153
+ let category = "validation";
154
+ let device;
155
+ let listener;
156
+ const rollup = createDiagnosticRollup((n, first) => {
157
+ const severity = category === "out-of-memory" ? "error" : "warning";
158
+ ctx.emit({
159
+ type: "graphics_diagnostic",
160
+ severity,
161
+ category,
162
+ backend: "webgpu",
163
+ count: n,
164
+ ...(first ? { message: first } : {}),
165
+ });
166
+ category = "validation";
167
+ });
168
+ const attach = (target) => {
169
+ if (typeof target.addEventListener !== "function")
170
+ return;
171
+ device = target;
172
+ listener = (e) => {
173
+ if (!isActive())
174
+ return;
175
+ const error = e?.error;
176
+ if (rollup.count === 0) {
177
+ const raw = typeof error?.message === "string" ? error.message : undefined;
178
+ firstMessage = raw ? raw.slice(0, LIMITS.maxGraphicsDiagnosticMessageLength) : undefined;
179
+ }
180
+ rollup.record(firstMessage);
181
+ if (error?.constructor?.name === "GPUOutOfMemoryError")
182
+ category = "out-of-memory";
183
+ };
184
+ target.addEventListener("uncapturederror", listener);
185
+ rollup.start(flushIntervalMs);
186
+ };
187
+ const poll = () => {
188
+ if (!isActive())
189
+ return;
190
+ const target = getDevice();
191
+ if (target) {
192
+ attach(target);
193
+ return;
194
+ }
195
+ attempts += 1;
196
+ if (attempts >= maxAttempts)
197
+ return;
198
+ setTimeout(poll, intervalMs);
199
+ };
200
+ poll();
201
+ return () => {
202
+ if (device && listener && typeof device.removeEventListener === "function") {
203
+ device.removeEventListener("uncapturederror", listener);
204
+ }
205
+ rollup.stop();
206
+ };
207
+ }
208
+ const DEFAULT_MAX_SHADER_INCIDENTS = 25;
209
+ /**
210
+ * Build a `graphics_diagnostic` for a shader compile/link **failure**. Pure and
211
+ * redaction-aware: the engine info log is the message (length-capped); raw shader
212
+ * `source` is appended **only** when the deployer opted in via `captureShaderSource`
213
+ * (ADR 0021 part 2 — source is application IP). Either way the result is capped to
214
+ * the schema limit and still rides through `beforeSend`.
215
+ */
216
+ export function buildShaderCompileDiagnostic(input) {
217
+ const log = input.infoLog?.trim() ?? "";
218
+ const includeSource = input.captureShaderSource && input.source ? input.source : "";
219
+ const raw = includeSource ? `${log}\n${includeSource}`.trim() : log;
220
+ const message = raw ? raw.slice(0, LIMITS.maxGraphicsDiagnosticMessageLength) : undefined;
221
+ return {
222
+ type: "graphics_diagnostic",
223
+ severity: "error",
224
+ category: "shader-compile",
225
+ ...(input.backend ? { backend: input.backend } : {}),
226
+ ...(message ? { message } : {}),
227
+ };
228
+ }
229
+ /**
230
+ * Capture WebGL shader compile and program link **failures** as
231
+ * `graphics_diagnostic` (`category: shader-compile`). Wraps the context's
232
+ * `compileShader`/`linkProgram`; on a failed status it reads the matching info log
233
+ * (and, when `captureShaderSource` is on, the shader source) and emits one capped,
234
+ * redactable diagnostic. Bounded per session so a build loop cannot flood ingestion.
235
+ *
236
+ * Opt-in: no-ops unless `ctx.config.captureGraphicsDiagnostics`. Returns a detach
237
+ * fn that restores the original methods.
238
+ */
239
+ export function wireGlShaderDiagnostics(ctx, gl, isActive, options) {
240
+ if (!ctx.config.captureGraphicsDiagnostics)
241
+ return () => { };
242
+ const max = options?.maxIncidents ?? DEFAULT_MAX_SHADER_INCIDENTS;
243
+ const backend = gl.LINK_STATUS != null ? "webgl2" : "webgl";
244
+ const wantSource = ctx.config.captureShaderSource;
245
+ let count = 0;
246
+ if (typeof gl.compileShader !== "function" || typeof gl.linkProgram !== "function")
247
+ return () => { };
248
+ const origCompile = gl.compileShader.bind(gl);
249
+ const origLink = gl.linkProgram.bind(gl);
250
+ const emit = (infoLog, source) => {
251
+ if (!isActive() || count >= max)
252
+ return;
253
+ count += 1;
254
+ ctx.emit(buildShaderCompileDiagnostic({
255
+ backend,
256
+ captureShaderSource: wantSource,
257
+ ...(infoLog ? { infoLog } : {}),
258
+ ...(source ? { source } : {}),
259
+ }));
260
+ };
261
+ gl.compileShader = function (shader) {
262
+ origCompile(shader);
263
+ if (!isActive())
264
+ return;
265
+ if (!gl.getShaderParameter(shader, gl.COMPILE_STATUS)) {
266
+ const source = wantSource && gl.getShaderSource ? gl.getShaderSource(shader) : undefined;
267
+ emit(gl.getShaderInfoLog(shader), source ?? undefined);
268
+ }
269
+ };
270
+ gl.linkProgram = function (program) {
271
+ origLink(program);
272
+ if (!isActive())
273
+ return;
274
+ if (!gl.getProgramParameter(program, gl.LINK_STATUS))
275
+ emit(gl.getProgramInfoLog(program));
276
+ };
277
+ return () => {
278
+ gl.compileShader = origCompile;
279
+ gl.linkProgram = origLink;
280
+ };
281
+ }
282
+ /**
283
+ * Capture WebGPU shader-module compile errors as `graphics_diagnostic`
284
+ * (`category: shader-compile`). Wraps `device.createShaderModule` and inspects the
285
+ * module's async `compilationInfo()` for `error` messages. Source (`descriptor.code`)
286
+ * is included only when `captureShaderSource` is on. Opt-in + bounded; returns detach.
287
+ */
288
+ export function wireGpuShaderDiagnostics(ctx, device, isActive, options) {
289
+ if (!ctx.config.captureGraphicsDiagnostics)
290
+ return () => { };
291
+ const max = options?.maxIncidents ?? DEFAULT_MAX_SHADER_INCIDENTS;
292
+ const wantSource = ctx.config.captureShaderSource;
293
+ let count = 0;
294
+ if (typeof device.createShaderModule !== "function")
295
+ return () => { };
296
+ const orig = device.createShaderModule.bind(device);
297
+ device.createShaderModule = function (descriptor) {
298
+ const module = orig(descriptor);
299
+ const info = module.getCompilationInfo ?? module.compilationInfo;
300
+ if (typeof info === "function") {
301
+ void info.call(module).then((result) => {
302
+ if (!isActive() || count >= max)
303
+ return;
304
+ const errors = (result?.messages ?? []).filter((m) => m?.type === "error");
305
+ if (errors.length === 0)
306
+ return;
307
+ count += 1;
308
+ ctx.emit(buildShaderCompileDiagnostic({
309
+ backend: "webgpu",
310
+ captureShaderSource: wantSource,
311
+ infoLog: errors.map((m) => m.message ?? "").join("\n"),
312
+ ...(descriptor?.code ? { source: descriptor.code } : {}),
313
+ }));
314
+ });
315
+ }
316
+ return module;
317
+ };
318
+ return () => {
319
+ device.createShaderModule = orig;
320
+ };
321
+ }
322
+ const DEFAULT_GL_ERROR_INTERVAL_MS = 5000;
323
+ const GL_NO_ERROR = 0;
324
+ /**
325
+ * Opportunistically **sample** `gl.getError()` and emit a rate-limited rollup
326
+ * `graphics_diagnostic` (`category: validation`, ADR 0021 part 2). Runs on a low-rate
327
+ * timer — never per-frame, since `getError()` forces a sync GPU stall (ADR forbids it).
328
+ * Non-`NO_ERROR` results are aggregated into a single `count`ed event flushed on the
329
+ * next tick (and on teardown), so a storm cannot flood ingestion. WebGPU has no
330
+ * `getError`, so passing nothing makes this a clean no-op.
331
+ *
332
+ * Opt-in: no-ops unless `captureGraphicsDiagnostics`. Returns a detach fn that flushes
333
+ * any pending rollup and clears the timer.
334
+ */
335
+ export function wireGlErrorSampling(ctx, gl, isActive, options) {
336
+ if (!ctx.config.captureGraphicsDiagnostics)
337
+ return () => { };
338
+ const intervalMs = options?.intervalMs ?? DEFAULT_GL_ERROR_INTERVAL_MS;
339
+ const rollup = createDiagnosticRollup((n, first) => {
340
+ ctx.emit({
341
+ type: "graphics_diagnostic",
342
+ severity: "warning",
343
+ category: "validation",
344
+ ...(first != null ? { code: `0x${first.toString(16)}` } : {}),
345
+ count: n,
346
+ });
347
+ });
348
+ const sample = () => {
349
+ if (!isActive())
350
+ return;
351
+ // Drain every pending GL error in one go: `getError()` reports one flag at a
352
+ // time, so we loop until NO_ERROR to fold a tick's full backlog into the rollup.
353
+ let code = gl.getError();
354
+ while (code !== GL_NO_ERROR) {
355
+ rollup.record(code);
356
+ code = gl.getError();
357
+ }
358
+ rollup.flush();
359
+ };
360
+ const timer = setInterval(sample, intervalMs);
361
+ return () => {
362
+ clearInterval(timer);
363
+ rollup.stop();
364
+ };
365
+ }
366
+ /**
367
+ * Emit a one-shot context-creation failure as a `graphics_diagnostic`
368
+ * (ADR 0021 part 2, `category: "context-loss"`, `severity: "fatal"`) when a
369
+ * connector cannot obtain a rendering context/adapter at init. Engine-agnostic:
370
+ * every connector reduces its backend-specific check to a {@link ContextCreationProbe}
371
+ * so the gating, length-cap, and event shape live in exactly one place.
372
+ *
373
+ * Behavior:
374
+ * - **Opt-in gate.** No-ops unless `ctx.config.captureGraphicsDiagnostics` is on
375
+ * (mirroring {@link wireGpuDeviceLost}; `context_lost` runtime loss stays
376
+ * always-on, this *creation* case is the richer opt-in diagnostic).
377
+ * - **Discrete marker.** Emits a single incident with no `count`: a creation
378
+ * failure is rare and decisive, so the high-fidelity marker is the right default.
379
+ * - **Backend.** `unknown` when the connector can't determine which API failed
380
+ * (no context means little to introspect).
381
+ * - **Ordering.** Connectors call this at `start()`. The client sets `started`
382
+ * before running collectors, so the marker queues right after `session_start`
383
+ * and is flushed by the normal cadence even though no transport round-trip has
384
+ * happened yet.
385
+ * - **Privacy.** Any `message` is truncated to
386
+ * {@link LIMITS.maxGraphicsDiagnosticMessageLength} and rides `ctx.emit`, which
387
+ * applies the client's `beforeSend` for deployer-owned redaction.
388
+ *
389
+ * @param ctx Collector context (config + `emit`).
390
+ * @param probe The connector's context-creation result. Must not throw; read the
391
+ * engine defensively (optional chaining) and pass `{ failed: false }` on doubt.
392
+ */
393
+ export function wireContextCreationFailure(ctx, probe) {
394
+ if (!ctx.config.captureGraphicsDiagnostics)
395
+ return;
396
+ if (!probe.failed)
397
+ return;
398
+ const message = probe.message
399
+ ? probe.message.slice(0, LIMITS.maxGraphicsDiagnosticMessageLength)
400
+ : undefined;
401
+ ctx.emit({
402
+ type: "graphics_diagnostic",
403
+ severity: "fatal",
404
+ category: "context-loss",
405
+ backend: probe.backend ?? "unknown",
406
+ ...(message ? { message } : {}),
407
+ });
408
+ }
409
+ //# sourceMappingURL=graphicsDiagnostics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graphicsDiagnostics.js","sourceRoot":"","sources":["../src/graphicsDiagnostics.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -18,6 +18,8 @@ export type { DecomposedTransform } from "./matrix.js";
18
18
  export { createAggregator, collectSnapshotTransferables, percentileAsc, visibilityContribution, aabbClose, roundAabb, vec3Close, poseUnchanged, nodeSampleUnchanged, clamp01, } from "./aggregation/index.js";
19
19
  export type { Aggregator, AggregatorConfig, AggregatorOptions, Snapshot, SnapshotChannel, CameraSnapshot, PerfSnapshot, NodeSnapshot, VisibilityMeshObservation, VisibilityTickSnapshot, VisibilityFlushSnapshot, GestureSnapshot, HoverSnapshot, VisibilityContribution, CameraPose, NodeSample, } from "./aggregation/index.js";
20
20
  export { xrSource, xrHandedness } from "./xrInput.js";
21
+ export { wireGpuDeviceLost, wireGpuUncapturedError, wireContextCreationFailure, wireGlShaderDiagnostics, wireGpuShaderDiagnostics, wireGlErrorSampling, buildShaderCompileDiagnostic, createDiagnosticRollup, } from "./graphicsDiagnostics.js";
22
+ export type { GpuDeviceLostLike, GpuDeviceLostInfoLike, WireGpuDeviceLostOptions, GpuErrorLike, GpuDeviceErrorTargetLike, WireGpuUncapturedErrorOptions, ContextCreationProbe, DiagnosticRollup, ShaderDiagnosticsOptions, GlErrorSamplingOptions, WebGlShaderContextLike, WebGpuShaderDeviceLike, WebGlErrorContextLike, } from "./graphicsDiagnostics.js";
21
23
  export type { Collector, CollectorContext, CollectorHandle, BeforeSendHook, EventInput, ResolvedConfig, StartMeta, TrackInputOptions, CapabilityChangeReport, Transport, UptimizrConfig, } from "./types.js";
22
24
  export type { Processor, WorkerLike, WorkerFactory, WorkerProcessorOptions } from "./processor.js";
23
25
  export { createMainSink, createWorkerAggregationSink } from "./aggregationSink.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAClG,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AACjF,OAAO,EACL,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,YAAY,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EACL,gBAAgB,EAChB,4BAA4B,EAC5B,aAAa,EACb,sBAAsB,EACtB,SAAS,EACT,SAAS,EACT,SAAS,EACT,aAAa,EACb,mBAAmB,EACnB,OAAO,GACR,MAAM,wBAAwB,CAAC;AAChC,YAAY,EACV,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,QAAQ,EACR,eAAe,EACf,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,yBAAyB,EACzB,sBAAsB,EACtB,uBAAuB,EACvB,eAAe,EACf,aAAa,EACb,sBAAsB,EACtB,UAAU,EACV,UAAU,GACX,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEtD,YAAY,EACV,SAAS,EACT,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,UAAU,EACV,cAAc,EACd,SAAS,EACT,iBAAiB,EACjB,sBAAsB,EACtB,SAAS,EACT,cAAc,GACf,MAAM,YAAY,CAAC;AAEpB,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACnG,OAAO,EAAE,cAAc,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACnF,YAAY,EAAE,eAAe,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AAE1F,YAAY,EACV,UAAU,EACV,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,GAChB,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAClG,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AACjF,OAAO,EACL,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,YAAY,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EACL,gBAAgB,EAChB,4BAA4B,EAC5B,aAAa,EACb,sBAAsB,EACtB,SAAS,EACT,SAAS,EACT,SAAS,EACT,aAAa,EACb,mBAAmB,EACnB,OAAO,GACR,MAAM,wBAAwB,CAAC;AAChC,YAAY,EACV,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,QAAQ,EACR,eAAe,EACf,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,yBAAyB,EACzB,sBAAsB,EACtB,uBAAuB,EACvB,eAAe,EACf,aAAa,EACb,sBAAsB,EACtB,UAAU,EACV,UAAU,GACX,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,0BAA0B,EAC1B,uBAAuB,EACvB,wBAAwB,EACxB,mBAAmB,EACnB,4BAA4B,EAC5B,sBAAsB,GACvB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,iBAAiB,EACjB,qBAAqB,EACrB,wBAAwB,EACxB,YAAY,EACZ,wBAAwB,EACxB,6BAA6B,EAC7B,oBAAoB,EACpB,gBAAgB,EAChB,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,0BAA0B,CAAC;AAElC,YAAY,EACV,SAAS,EACT,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,UAAU,EACV,cAAc,EACd,SAAS,EACT,iBAAiB,EACjB,sBAAsB,EACtB,SAAS,EACT,cAAc,GACf,MAAM,YAAY,CAAC;AAEpB,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACnG,OAAO,EAAE,cAAc,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AACnF,YAAY,EAAE,eAAe,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AAE1F,YAAY,EACV,UAAU,EACV,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EAClB,eAAe,GAChB,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC"}
package/dist/index.js CHANGED
@@ -16,5 +16,6 @@ export { CANONICAL_FRAME, toCanonicalAabb, toCanonicalDirection, toCanonicalPosi
16
16
  export { decomposeWorldMatrix } from "./matrix.js";
17
17
  export { createAggregator, collectSnapshotTransferables, percentileAsc, visibilityContribution, aabbClose, roundAabb, vec3Close, poseUnchanged, nodeSampleUnchanged, clamp01, } from "./aggregation/index.js";
18
18
  export { xrSource, xrHandedness } from "./xrInput.js";
19
+ export { wireGpuDeviceLost, wireGpuUncapturedError, wireContextCreationFailure, wireGlShaderDiagnostics, wireGpuShaderDiagnostics, wireGlErrorSampling, buildShaderCompileDiagnostic, createDiagnosticRollup, } from "./graphicsDiagnostics.js";
19
20
  export { createMainSink, createWorkerAggregationSink } from "./aggregationSink.js";
20
21
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAClG,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AACjF,OAAO,EACL,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD,OAAO,EACL,gBAAgB,EAChB,4BAA4B,EAC5B,aAAa,EACb,sBAAsB,EACtB,SAAS,EACT,SAAS,EACT,SAAS,EACT,aAAa,EACb,mBAAmB,EACnB,OAAO,GACR,MAAM,wBAAwB,CAAC;AAmBhC,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAiBtD,OAAO,EAAE,cAAc,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAClG,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AACjF,OAAO,EACL,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD,OAAO,EACL,gBAAgB,EAChB,4BAA4B,EAC5B,aAAa,EACb,sBAAsB,EACtB,SAAS,EACT,SAAS,EACT,SAAS,EACT,aAAa,EACb,mBAAmB,EACnB,OAAO,GACR,MAAM,wBAAwB,CAAC;AAmBhC,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,0BAA0B,EAC1B,uBAAuB,EACvB,wBAAwB,EACxB,mBAAmB,EACnB,4BAA4B,EAC5B,sBAAsB,GACvB,MAAM,0BAA0B,CAAC;AAgClC,OAAO,EAAE,cAAc,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC"}
package/dist/types.d.ts CHANGED
@@ -161,6 +161,28 @@ export interface UptimizrConfig {
161
161
  * at most 50 are emitted per session.
162
162
  */
163
163
  captureErrors?: boolean;
164
+ /**
165
+ * Capture opt-in **engine diagnostics** (GPU-health signals) as
166
+ * `graphics_diagnostic` events — GPU errors/warnings, shader-compile failures,
167
+ * richer context-loss reasons, WebGPU `uncapturederror`, and sampled
168
+ * `gl.getError()` (ADR 0021 part 2). **Off by default**, mirroring
169
+ * `captureErrors`: the signals can be high-volume and their text can leak
170
+ * application IP, so the deployer opts in and redacts via `beforeSend`.
171
+ *
172
+ * This is the single shared gate the engine connectors read to decide whether to
173
+ * wire their backend-specific capture. It does **not** affect `context_lost` /
174
+ * `context_restored`, which are always-on and exempt from the opt-in.
175
+ */
176
+ captureGraphicsDiagnostics?: boolean;
177
+ /**
178
+ * Sub-opt-in to `captureGraphicsDiagnostics`: include **raw shader source** in
179
+ * shader-compile diagnostics (ADR 0021 part 2). **Off by default** — shader
180
+ * source is application IP, so even with diagnostics enabled the engine's
181
+ * compile/link error text is stripped of embedded source unless this is set.
182
+ * Length-capped and still passes through `beforeSend` when on. No effect when
183
+ * `captureGraphicsDiagnostics` is off.
184
+ */
185
+ captureShaderSource?: boolean;
164
186
  /** Emit debug logs to the console. */
165
187
  debug?: boolean;
166
188
  }
@@ -177,6 +199,8 @@ export interface ResolvedConfig {
177
199
  captureLifecycle: boolean;
178
200
  resizeDebounceMs: number;
179
201
  captureErrors: boolean;
202
+ captureGraphicsDiagnostics: boolean;
203
+ captureShaderSource: boolean;
180
204
  debug: boolean;
181
205
  }
182
206
  /** Optional metadata passed to `start`. */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uptimizr/sdk-core",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "description": "Framework-agnostic Uptimizr capture runtime — session, batching, cookieless transport, and a pluggable collector system.",
5
5
  "keywords": [
6
6
  "uptimizr",
@@ -46,7 +46,7 @@
46
46
  ],
47
47
  "sideEffects": false,
48
48
  "dependencies": {
49
- "@uptimizr/schema": "0.3.0"
49
+ "@uptimizr/schema": "0.4.0"
50
50
  },
51
51
  "devDependencies": {
52
52
  "vitest": "^4.1.9"