cbrowser 18.70.0 → 18.72.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser.d.ts +32 -0
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +46 -2
- package/dist/browser.js.map +1 -1
- package/dist/cli.js +1475 -24
- package/dist/cli.js.map +1 -1
- package/dist/cognitive/index.d.ts +10 -0
- package/dist/cognitive/index.d.ts.map +1 -1
- package/dist/cognitive/index.js +8 -0
- package/dist/cognitive/index.js.map +1 -1
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +151 -3
- package/dist/daemon.js.map +1 -1
- package/dist/mcp-server.d.ts.map +1 -1
- package/dist/mcp-server.js +67 -0
- package/dist/mcp-server.js.map +1 -1
- package/dist/mcp-tools/base/capture-tools.d.ts +189 -0
- package/dist/mcp-tools/base/capture-tools.d.ts.map +1 -0
- package/dist/mcp-tools/base/capture-tools.js +667 -0
- package/dist/mcp-tools/base/capture-tools.js.map +1 -0
- package/dist/mcp-tools/base/gif-tools.d.ts +19 -0
- package/dist/mcp-tools/base/gif-tools.d.ts.map +1 -1
- package/dist/mcp-tools/base/gif-tools.js +45 -27
- package/dist/mcp-tools/base/gif-tools.js.map +1 -1
- package/dist/mcp-tools/base/index.d.ts +2 -1
- package/dist/mcp-tools/base/index.d.ts.map +1 -1
- package/dist/mcp-tools/base/index.js +5 -1
- package/dist/mcp-tools/base/index.js.map +1 -1
- package/dist/mcp-tools/tool-categories.d.ts.map +1 -1
- package/dist/mcp-tools/tool-categories.js +11 -0
- package/dist/mcp-tools/tool-categories.js.map +1 -1
- package/dist/recording/auto-capture.d.ts +72 -0
- package/dist/recording/auto-capture.d.ts.map +1 -0
- package/dist/recording/auto-capture.js +155 -0
- package/dist/recording/auto-capture.js.map +1 -0
- package/dist/recording/contact-sheet.d.ts +65 -0
- package/dist/recording/contact-sheet.d.ts.map +1 -0
- package/dist/recording/contact-sheet.js +204 -0
- package/dist/recording/contact-sheet.js.map +1 -0
- package/dist/recording/encoders.d.ts +101 -0
- package/dist/recording/encoders.d.ts.map +1 -0
- package/dist/recording/encoders.js +304 -0
- package/dist/recording/encoders.js.map +1 -0
- package/dist/recording/engine.d.ts +263 -0
- package/dist/recording/engine.d.ts.map +1 -0
- package/dist/recording/engine.js +896 -0
- package/dist/recording/engine.js.map +1 -0
- package/dist/recording/ssim.d.ts +78 -0
- package/dist/recording/ssim.d.ts.map +1 -0
- package/dist/recording/ssim.js +209 -0
- package/dist/recording/ssim.js.map +1 -0
- package/dist/recording/timing.d.ts +124 -0
- package/dist/recording/timing.d.ts.map +1 -0
- package/dist/recording/timing.js +251 -0
- package/dist/recording/timing.js.map +1 -0
- package/dist/recording/types.d.ts +316 -0
- package/dist/recording/types.d.ts.map +1 -0
- package/dist/recording/types.js +337 -0
- package/dist/recording/types.js.map +1 -0
- package/dist/testing/nl-test-suite.d.ts +10 -0
- package/dist/testing/nl-test-suite.d.ts.map +1 -1
- package/dist/testing/nl-test-suite.js +13 -1
- package/dist/testing/nl-test-suite.js.map +1 -1
- package/dist/types.d.ts +22 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,337 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CBrowser - Cognitive Browser Automation
|
|
3
|
+
* Copyright 2026 Alexandria Eden alexandria.shai.eden@gmail.com
|
|
4
|
+
* Learn more at https://cbrowser.ai - MIT License
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Recording manifest contract.
|
|
8
|
+
*
|
|
9
|
+
* The manifest is the single artifact that describes a recording run: how it
|
|
10
|
+
* was captured, what was captured, and every frame that made it into the
|
|
11
|
+
* output. Encoders, the CLI, and any downstream consumer read this file rather
|
|
12
|
+
* than re-deriving state from the frame directory.
|
|
13
|
+
*
|
|
14
|
+
* Schemas are zod v4; every exported TS type is inferred from its schema so the
|
|
15
|
+
* runtime contract and the compile-time contract cannot drift.
|
|
16
|
+
*/
|
|
17
|
+
import { z } from "zod";
|
|
18
|
+
/**
|
|
19
|
+
* Manifest format version emitted by this build.
|
|
20
|
+
*
|
|
21
|
+
* v2 (2026-07-19) added the two-tier change signal: `key_frames`,
|
|
22
|
+
* `change_points_saturated` and `ssim_thresholds`, all OPTIONAL in the schema
|
|
23
|
+
* (expand-contract, so older files keep parsing) but always emitted, so
|
|
24
|
+
* `version >= 2` reliably signals their presence.
|
|
25
|
+
*
|
|
26
|
+
* v3 (2026-07-19) changed the DETECTOR behind those fields from global SSIM to
|
|
27
|
+
* {@link SSIM_THRESHOLDS} window-min ({@link changeScore}), and re-tuned the
|
|
28
|
+
* thresholds to the new scale (0.999/0.9 -> 0.95/0.6). The field shapes are
|
|
29
|
+
* unchanged, but a v3 `change_points` is not numerically comparable to a v2
|
|
30
|
+
* one — the version is the signal for that, since the values in
|
|
31
|
+
* `ssim_thresholds` alone cannot convey that the underlying metric changed.
|
|
32
|
+
* Readers wanting a uniform view across versions should use {@link changeSignal}.
|
|
33
|
+
*/
|
|
34
|
+
export const MANIFEST_VERSION = 3;
|
|
35
|
+
/**
|
|
36
|
+
* Change-detection thresholds for the two-tier signal.
|
|
37
|
+
*
|
|
38
|
+
* These are measured against the {@link changeScore} scale (minimum SSIM over an
|
|
39
|
+
* 8x8 window grid on a 128px signature), NOT global SSIM. The scale is entirely
|
|
40
|
+
* different from a whole-frame metric and the two are not interchangeable — a
|
|
41
|
+
* localized text change reads ~0.87 under changeScore versus ~0.9998 under
|
|
42
|
+
* global SSIM. The producer MUST feed these thresholds changeScore values;
|
|
43
|
+
* `ssim_thresholds` records them in every manifest so a reader never guesses.
|
|
44
|
+
*
|
|
45
|
+
* `CHANGE` (0.95) — "did anything change". Below the practical noise floor
|
|
46
|
+
* (an unchanging page scores exactly 1.0; window-min does not fire on codec
|
|
47
|
+
* noise) and above a 12px counter tick (~0.87), which is the localized change
|
|
48
|
+
* global SSIM could not see at any resolution.
|
|
49
|
+
*
|
|
50
|
+
* `KEY` (0.6) — "did something notable happen". The sparse tier, and the same
|
|
51
|
+
* signal that sets each frame's `anomaly` flag. It sits in the wide gap between
|
|
52
|
+
* a minor tick (~0.87, excluded) and a real interaction like a form fill
|
|
53
|
+
* (~0.21, included), so background chrome does not flood it. Because KEY <
|
|
54
|
+
* CHANGE, `key_frames` is necessarily a subset of `change_points`;
|
|
55
|
+
* {@link changeSignalIssues} checks a manifest honours it.
|
|
56
|
+
*
|
|
57
|
+
* Derived from measurement on five fixtures (static / ticking counter / two
|
|
58
|
+
* form fills / banner toggle / full-viewport animation), 2026-07-19. The
|
|
59
|
+
* counter fixture is why the two tiers matter: change_points fires on every
|
|
60
|
+
* tick and saturates, while key_frames stays empty — so key_frames is the
|
|
61
|
+
* usable signal precisely when change_points is not.
|
|
62
|
+
*/
|
|
63
|
+
export const SSIM_THRESHOLDS = { change: 0.95, key: 0.6 };
|
|
64
|
+
/**
|
|
65
|
+
* Fraction of frames above which `change_points` is considered saturated —
|
|
66
|
+
* carrying no discriminating information for that capture.
|
|
67
|
+
*/
|
|
68
|
+
export const CHANGE_SATURATION_RATIO = 0.7;
|
|
69
|
+
// ============================================================================
|
|
70
|
+
// Primitives
|
|
71
|
+
// ============================================================================
|
|
72
|
+
export const EngineSchema = z.enum(["chromium", "firefox", "webkit"]);
|
|
73
|
+
export const CaptureMethodSchema = z.enum(["cdp-screencast", "screenshot-loop"]);
|
|
74
|
+
export const ViewportSchema = z.object({
|
|
75
|
+
width: z.number().int().positive(),
|
|
76
|
+
height: z.number().int().positive(),
|
|
77
|
+
deviceScaleFactor: z.number().positive(),
|
|
78
|
+
});
|
|
79
|
+
export const RectSchema = z.object({
|
|
80
|
+
x: z.number(),
|
|
81
|
+
y: z.number(),
|
|
82
|
+
width: z.number().positive(),
|
|
83
|
+
height: z.number().positive(),
|
|
84
|
+
});
|
|
85
|
+
export const DimsSchema = z.object({
|
|
86
|
+
width: z.number().int().positive(),
|
|
87
|
+
height: z.number().int().positive(),
|
|
88
|
+
});
|
|
89
|
+
// ============================================================================
|
|
90
|
+
// Capture target
|
|
91
|
+
// ============================================================================
|
|
92
|
+
/**
|
|
93
|
+
* What the recorder was pointed at. Discriminated on `kind` so encoders can
|
|
94
|
+
* switch exhaustively without guessing from the presence of optional fields.
|
|
95
|
+
*/
|
|
96
|
+
export const TargetSchema = z.discriminatedUnion("kind", [
|
|
97
|
+
z.object({ kind: z.literal("viewport") }),
|
|
98
|
+
z.object({ kind: z.literal("region"), rect: RectSchema }),
|
|
99
|
+
z.object({
|
|
100
|
+
kind: z.literal("element"),
|
|
101
|
+
selector: z.string().min(1),
|
|
102
|
+
padding: z.number().nonnegative(),
|
|
103
|
+
}),
|
|
104
|
+
]);
|
|
105
|
+
// ============================================================================
|
|
106
|
+
// Per-frame side-channel records
|
|
107
|
+
// ============================================================================
|
|
108
|
+
/**
|
|
109
|
+
* Console and network records are kept deliberately permissive: the recorder
|
|
110
|
+
* owns their exact shape and may attach engine-specific extras. Only the fields
|
|
111
|
+
* the encoders and reports actually read are required; unknown keys survive
|
|
112
|
+
* parsing untouched.
|
|
113
|
+
*/
|
|
114
|
+
export const ConsoleEntrySchema = z
|
|
115
|
+
.object({
|
|
116
|
+
t_ms: z.number().nonnegative(),
|
|
117
|
+
type: z.string(),
|
|
118
|
+
text: z.string(),
|
|
119
|
+
})
|
|
120
|
+
.loose();
|
|
121
|
+
export const NetworkEntrySchema = z
|
|
122
|
+
.object({
|
|
123
|
+
t_ms: z.number().nonnegative(),
|
|
124
|
+
url: z.string(),
|
|
125
|
+
method: z.string().optional(),
|
|
126
|
+
status: z.number().int().optional(),
|
|
127
|
+
failed: z.boolean().optional(),
|
|
128
|
+
})
|
|
129
|
+
.loose();
|
|
130
|
+
// ============================================================================
|
|
131
|
+
// Frames
|
|
132
|
+
// ============================================================================
|
|
133
|
+
export const FrameSchema = z.object({
|
|
134
|
+
/** Position in the frame sequence, 0-based and dense. */
|
|
135
|
+
index: z.number().int().nonnegative(),
|
|
136
|
+
/** Milliseconds since `started_at`. Non-decreasing across the sequence. */
|
|
137
|
+
t_ms: z.number().nonnegative(),
|
|
138
|
+
/** Path to the frame image, relative to the manifest. */
|
|
139
|
+
path: z.string().min(1),
|
|
140
|
+
/** Source-image crop this frame was cut from (post-clamp). */
|
|
141
|
+
crop: RectSchema,
|
|
142
|
+
/** SSIM against the previous frame; null for frame 0 or when not computed. */
|
|
143
|
+
ssim_prev: z.number().nullable(),
|
|
144
|
+
/** Frame flagged as a visual anomaly by the change detector. */
|
|
145
|
+
anomaly: z.boolean(),
|
|
146
|
+
/** Element-tracking state for element targets; null when not tracking. */
|
|
147
|
+
tracking: z.enum(["ok", "stale"]).nullable(),
|
|
148
|
+
console: z.array(ConsoleEntrySchema),
|
|
149
|
+
network: z.array(NetworkEntrySchema),
|
|
150
|
+
});
|
|
151
|
+
export const FrameGapSchema = z.object({
|
|
152
|
+
/** Gap occurred between this frame index and the next one. */
|
|
153
|
+
after_index: z.number().int().nonnegative(),
|
|
154
|
+
gap_ms: z.number().positive(),
|
|
155
|
+
});
|
|
156
|
+
// ============================================================================
|
|
157
|
+
// Manifest
|
|
158
|
+
// ============================================================================
|
|
159
|
+
export const RecordingManifestSchema = z.object({
|
|
160
|
+
version: z.number().int().positive(),
|
|
161
|
+
slug: z.string().min(1),
|
|
162
|
+
engine: EngineSchema,
|
|
163
|
+
capture_method: CaptureMethodSchema,
|
|
164
|
+
/** Frame rate requested by the caller. */
|
|
165
|
+
target_fps: z.number().positive(),
|
|
166
|
+
/** Frame rate actually achieved: frames / (duration_ms / 1000). */
|
|
167
|
+
actual_fps: z.number().nonnegative(),
|
|
168
|
+
viewport: ViewportSchema,
|
|
169
|
+
target: TargetSchema,
|
|
170
|
+
/** Trigger that started capture; null when capture started immediately. */
|
|
171
|
+
start_trigger: z.string().nullable(),
|
|
172
|
+
/** Trigger that stopped capture; null when capture ran to a fixed duration. */
|
|
173
|
+
stop_trigger: z.string().nullable(),
|
|
174
|
+
/** True when capture ended because a trigger timed out rather than fired. */
|
|
175
|
+
trigger_timeout: z.boolean(),
|
|
176
|
+
/** ISO-8601 timestamp of the first frame. */
|
|
177
|
+
started_at: z.string().min(1),
|
|
178
|
+
duration_ms: z.number().nonnegative(),
|
|
179
|
+
output_dims: DimsSchema,
|
|
180
|
+
frames: z.array(FrameSchema),
|
|
181
|
+
/**
|
|
182
|
+
* Frame indices whose change score fell below the CHANGE threshold
|
|
183
|
+
* ({@link SSIM_THRESHOLDS}.change). Sensitive tier: catches a localized change
|
|
184
|
+
* like a form fill or a ticking counter, and saturates on a continuously
|
|
185
|
+
* changing page — see `change_points_saturated`.
|
|
186
|
+
*/
|
|
187
|
+
change_points: z.array(z.number().int().nonnegative()),
|
|
188
|
+
/**
|
|
189
|
+
* Frame indices where SSIM dropped below the KEY threshold: the sparse
|
|
190
|
+
* "something notable happened" list, and a subset of `change_points`.
|
|
191
|
+
*
|
|
192
|
+
* v2+. Absent on v1 manifests, where `change_points` was itself computed at
|
|
193
|
+
* the key threshold — see {@link changeSignal}.
|
|
194
|
+
*/
|
|
195
|
+
key_frames: z.array(z.number().int().nonnegative()).optional(),
|
|
196
|
+
/**
|
|
197
|
+
* True when `change_points` covers more than
|
|
198
|
+
* {@link CHANGE_SATURATION_RATIO} of frames, i.e. it carries no
|
|
199
|
+
* discriminating information for this capture and a reader should fall back
|
|
200
|
+
* to `key_frames`.
|
|
201
|
+
*
|
|
202
|
+
* Explicit rather than left for the reader to derive, so a saturated field
|
|
203
|
+
* cannot masquerade as a working one. v2+.
|
|
204
|
+
*/
|
|
205
|
+
change_points_saturated: z.boolean().optional(),
|
|
206
|
+
/**
|
|
207
|
+
* The thresholds this build actually used, so a reader never has to infer
|
|
208
|
+
* which build produced a file. v2+.
|
|
209
|
+
*/
|
|
210
|
+
ssim_thresholds: z.object({ change: z.number(), key: z.number() }).optional(),
|
|
211
|
+
/**
|
|
212
|
+
* The comparator the scores and thresholds are on, e.g.
|
|
213
|
+
* "changeScore-window-min". Names the METRIC, which the threshold values
|
|
214
|
+
* alone cannot: 0.95 under window-min and 0.95 under global SSIM are entirely
|
|
215
|
+
* different tests. v3+.
|
|
216
|
+
*/
|
|
217
|
+
method: z.string().optional(),
|
|
218
|
+
frame_gaps: z.array(FrameGapSchema),
|
|
219
|
+
/** Present when a region/element rect had to be clamped into the viewport. */
|
|
220
|
+
region_clamped: z.boolean().optional(),
|
|
221
|
+
/** Output format ("gif", "webp", "mp4", ...) to artifact path. */
|
|
222
|
+
artifacts: z.record(z.string(), z.string()),
|
|
223
|
+
});
|
|
224
|
+
// ============================================================================
|
|
225
|
+
// Parsing
|
|
226
|
+
// ============================================================================
|
|
227
|
+
/**
|
|
228
|
+
* Parse and validate a manifest.
|
|
229
|
+
*
|
|
230
|
+
* Accepts an already-parsed object or a raw JSON string. Throws an `Error`
|
|
231
|
+
* whose message lists every failing path, so a malformed manifest reports all
|
|
232
|
+
* of its problems at once instead of one per run.
|
|
233
|
+
*/
|
|
234
|
+
/**
|
|
235
|
+
* Uniform view of the change signal across manifest versions.
|
|
236
|
+
*
|
|
237
|
+
* A pre-v2 manifest has only `change_points`, computed with a whole-frame
|
|
238
|
+
* (global) SSIM detector — a DIFFERENT metric from the current window-min
|
|
239
|
+
* {@link SSIM_THRESHOLDS} scale, so the two are not numerically comparable. For
|
|
240
|
+
* such a file this returns the single list it has as both tiers rather than
|
|
241
|
+
* inventing a key/change split it never carried, and marks `legacy: true` so a
|
|
242
|
+
* reader knows the tiers are not really separated and the thresholds are not on
|
|
243
|
+
* the current scale. `saturated` is false because the old global detector could
|
|
244
|
+
* not saturate the way window-min can.
|
|
245
|
+
*
|
|
246
|
+
* This is NOT the exact identity an earlier version of this comment claimed:
|
|
247
|
+
* once the detector changed from global SSIM to window-min, an old file's
|
|
248
|
+
* change points stopped mapping onto today's `key_frames`. Reporting the one
|
|
249
|
+
* list for both tiers is the honest fallback, not a translation.
|
|
250
|
+
*
|
|
251
|
+
* Use this in readers instead of touching the optional fields directly, so a
|
|
252
|
+
* pre-v2 file does not read as "no key frames" when its change_points are the
|
|
253
|
+
* only signal it has.
|
|
254
|
+
*/
|
|
255
|
+
export function changeSignal(manifest) {
|
|
256
|
+
const legacy = manifest.key_frames === undefined;
|
|
257
|
+
return {
|
|
258
|
+
changePoints: manifest.change_points,
|
|
259
|
+
keyFrames: manifest.key_frames ?? manifest.change_points,
|
|
260
|
+
saturated: manifest.change_points_saturated ?? false,
|
|
261
|
+
// A legacy file's threshold is unknown and on a different scale; surface
|
|
262
|
+
// its own recorded value if it has one, else NaN rather than a current-scale
|
|
263
|
+
// number that would misrepresent how the list was computed.
|
|
264
|
+
thresholds: manifest.ssim_thresholds ?? { change: NaN, key: NaN },
|
|
265
|
+
legacy,
|
|
266
|
+
manifestVersion: manifest.version,
|
|
267
|
+
};
|
|
268
|
+
}
|
|
269
|
+
/**
|
|
270
|
+
* Consistency problems in a manifest's change signal, as human-readable
|
|
271
|
+
* strings. Empty means consistent.
|
|
272
|
+
*
|
|
273
|
+
* These are invariants the two-tier design guarantees by construction, so a
|
|
274
|
+
* violation means the producer is miscomputing rather than that the file is
|
|
275
|
+
* merely old. Deliberately NOT enforced inside {@link parseManifest}: readers
|
|
276
|
+
* such as `capture status` open whatever manifest is most recent, and failing
|
|
277
|
+
* the read outright would turn a reporting bug into an unreadable capture. Call
|
|
278
|
+
* this where you want the check — tests, or a diagnostic path.
|
|
279
|
+
*/
|
|
280
|
+
export function changeSignalIssues(manifest) {
|
|
281
|
+
const issues = [];
|
|
282
|
+
const frameCount = manifest.frames.length;
|
|
283
|
+
const inRange = (label, indices) => {
|
|
284
|
+
for (const i of indices) {
|
|
285
|
+
if (i >= frameCount)
|
|
286
|
+
issues.push(`${label} contains index ${i} but there are only ${frameCount} frames`);
|
|
287
|
+
}
|
|
288
|
+
};
|
|
289
|
+
inRange("change_points", manifest.change_points);
|
|
290
|
+
if (manifest.key_frames) {
|
|
291
|
+
inRange("key_frames", manifest.key_frames);
|
|
292
|
+
const changeSet = new Set(manifest.change_points);
|
|
293
|
+
const stray = manifest.key_frames.filter((i) => !changeSet.has(i));
|
|
294
|
+
if (stray.length > 0) {
|
|
295
|
+
issues.push(`key_frames must be a subset of change_points (the key threshold is lower, ` +
|
|
296
|
+
`so anything below it is below the change threshold too), but ` +
|
|
297
|
+
`${stray.length} index(es) are missing from change_points: ${stray.slice(0, 5).join(", ")}`);
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
if (manifest.ssim_thresholds) {
|
|
301
|
+
const { change, key } = manifest.ssim_thresholds;
|
|
302
|
+
if (key > change) {
|
|
303
|
+
issues.push(`ssim_thresholds.key (${key}) must not exceed ssim_thresholds.change (${change})`);
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
if (manifest.change_points_saturated !== undefined && frameCount > 0) {
|
|
307
|
+
const expected = manifest.change_points.length > frameCount * CHANGE_SATURATION_RATIO;
|
|
308
|
+
if (manifest.change_points_saturated !== expected) {
|
|
309
|
+
issues.push(`change_points_saturated is ${manifest.change_points_saturated} but ` +
|
|
310
|
+
`${manifest.change_points.length}/${frameCount} change points ` +
|
|
311
|
+
`(ratio ${(manifest.change_points.length / frameCount).toFixed(3)}) implies ${expected}`);
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
return issues;
|
|
315
|
+
}
|
|
316
|
+
export function parseManifest(input) {
|
|
317
|
+
let candidate = input;
|
|
318
|
+
if (typeof candidate === "string") {
|
|
319
|
+
try {
|
|
320
|
+
candidate = JSON.parse(candidate);
|
|
321
|
+
}
|
|
322
|
+
catch (e) {
|
|
323
|
+
throw new Error(`Invalid recording manifest: not valid JSON (${e.message})`);
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
const result = RecordingManifestSchema.safeParse(candidate);
|
|
327
|
+
if (result.success)
|
|
328
|
+
return result.data;
|
|
329
|
+
const details = result.error.issues
|
|
330
|
+
.map((issue) => {
|
|
331
|
+
const path = issue.path.length > 0 ? issue.path.join(".") : "<root>";
|
|
332
|
+
return ` - ${path}: ${issue.message}`;
|
|
333
|
+
})
|
|
334
|
+
.join("\n");
|
|
335
|
+
throw new Error(`Invalid recording manifest:\n${details}`);
|
|
336
|
+
}
|
|
337
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/recording/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
* Copyright 2026 Alexandria Eden alexandria.shai.eden@gmail.com
|
|
4
4
|
* Learn more at https://cbrowser.ai - MIT License
|
|
5
5
|
*/
|
|
6
|
+
import { type AutoCaptureSetting } from "../recording/auto-capture.js";
|
|
6
7
|
import type { NLTestStep, NLTestCase, NLTestSuiteResult } from "../types.js";
|
|
7
8
|
/**
|
|
8
9
|
* Parse a single natural language instruction into an NLTestStep.
|
|
@@ -57,6 +58,15 @@ export interface NLTestSuiteOptions {
|
|
|
57
58
|
headless?: boolean;
|
|
58
59
|
/** Use fuzzy matching for text assertions */
|
|
59
60
|
fuzzyMatch?: boolean;
|
|
61
|
+
/**
|
|
62
|
+
* Record the run to GIF/WebP/video (v18.70.0).
|
|
63
|
+
*
|
|
64
|
+
* `true` uses defaults; pass an options object to set fps, formats or output
|
|
65
|
+
* directory. The capture starts once the browser is up and stops before it
|
|
66
|
+
* closes, so no separate capture_start/capture_stop call is needed. Capture
|
|
67
|
+
* failures never fail the suite — they are reported on `result.capture.error`.
|
|
68
|
+
*/
|
|
69
|
+
capture?: AutoCaptureSetting;
|
|
60
70
|
}
|
|
61
71
|
/**
|
|
62
72
|
* Dry-run a test suite: parse all instructions and return without executing.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nl-test-suite.d.ts","sourceRoot":"","sources":["../../src/testing/nl-test-suite.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAaH,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EAIV,iBAAiB,EAClB,MAAM,aAAa,CAAC;AAErB;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU,CAmMlE;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,SAAS,GAAE,MAAwB,GAClC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,UAAU,EAAE,CAAA;CAAE,CA0CvC;AAED,MAAM,WAAW,kBAAkB;IACjC,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kCAAkC;IAClC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,mBAAmB;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6CAA6C;IAC7C,UAAU,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"nl-test-suite.d.ts","sourceRoot":"","sources":["../../src/testing/nl-test-suite.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAaH,OAAO,EAKL,KAAK,kBAAkB,EACxB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EAIV,iBAAiB,EAClB,MAAM,aAAa,CAAC;AAErB;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU,CAmMlE;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,SAAS,GAAE,MAAwB,GAClC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,UAAU,EAAE,CAAA;CAAE,CA0CvC;AAED,MAAM,WAAW,kBAAkB;IACjC,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0CAA0C;IAC1C,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kCAAkC;IAClC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,mBAAmB;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6CAA6C;IAC7C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B;AAqED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,UAAU,EAAE,CAAA;CAAE,GAC3C;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,UAAU,EAAE,CAAA;KAAE,CAAC,CAAA;CAAE,CAQvE;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,UAAU,EAAE,CAAA;CAAE,EAC5C,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,iBAAiB,CAAC,CAoV5B;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAyFpE;AAED;;GAEG;AACH,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,iBAAiB,CAAC,CAU5B"}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { existsSync, readFileSync } from "fs";
|
|
7
7
|
import { CBrowser } from "../browser.js";
|
|
8
|
+
import { finishAutoCapture, resolveCaptureOptions, startAutoCapture, } from "../recording/auto-capture.js";
|
|
8
9
|
/**
|
|
9
10
|
* Parse a single natural language instruction into an NLTestStep.
|
|
10
11
|
*
|
|
@@ -333,7 +334,7 @@ export function dryRunNLTestSuite(suite) {
|
|
|
333
334
|
* Run a natural language test suite.
|
|
334
335
|
*/
|
|
335
336
|
export async function runNLTestSuite(suite, options = {}) {
|
|
336
|
-
const { stepTimeout = 30000, continueOnFailure = true, screenshotOnFailure = true, headless = true, fuzzyMatch = false, } = options;
|
|
337
|
+
const { stepTimeout = 30000, continueOnFailure = true, screenshotOnFailure = true, headless = true, fuzzyMatch = false, capture, } = options;
|
|
337
338
|
const startTime = Date.now();
|
|
338
339
|
const testResults = [];
|
|
339
340
|
console.log(`\n🧪 Running Test Suite: ${suite.name}`);
|
|
@@ -345,8 +346,15 @@ export async function runNLTestSuite(suite, options = {}) {
|
|
|
345
346
|
const browser = new CBrowser({
|
|
346
347
|
headless,
|
|
347
348
|
});
|
|
349
|
+
let captureResult;
|
|
350
|
+
let captureSession = null;
|
|
348
351
|
try {
|
|
349
352
|
await browser.launch();
|
|
353
|
+
// Auto-capture (v18.70.0): starts here so the recording covers every test
|
|
354
|
+
// in the suite, and stops in the finally below before the browser closes.
|
|
355
|
+
captureSession = await startAutoCapture(await browser.getPage(), capture, `suite-${suite.name.replace(/[^a-zA-Z0-9-_]+/g, "-").toLowerCase()}-${Date.now()}`);
|
|
356
|
+
if (captureSession)
|
|
357
|
+
console.log(` 🎥 Capturing to ${captureSession.status().outDir}`);
|
|
350
358
|
for (const test of suite.tests) {
|
|
351
359
|
console.log(`\n📋 Test: ${test.name}`);
|
|
352
360
|
const testStartTime = Date.now();
|
|
@@ -592,6 +600,9 @@ export async function runNLTestSuite(suite, options = {}) {
|
|
|
592
600
|
}
|
|
593
601
|
}
|
|
594
602
|
finally {
|
|
603
|
+
// Stop before the browser closes — the page has to still exist. Bounded, so
|
|
604
|
+
// a wedged recorder cannot hang the suite (see finishAutoCapture).
|
|
605
|
+
captureResult = await finishAutoCapture(captureSession, resolveCaptureOptions(capture)?.stopTimeoutMs);
|
|
595
606
|
await browser.close();
|
|
596
607
|
}
|
|
597
608
|
const passed = testResults.filter(t => t.passed).length;
|
|
@@ -626,6 +637,7 @@ export async function runNLTestSuite(suite, options = {}) {
|
|
|
626
637
|
stepPassRate,
|
|
627
638
|
},
|
|
628
639
|
recommendations: recommendations.length > 0 ? recommendations : undefined,
|
|
640
|
+
...(captureResult ? { capture: captureResult } : {}),
|
|
629
641
|
};
|
|
630
642
|
return result;
|
|
631
643
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nl-test-suite.js","sourceRoot":"","sources":["../../src/testing/nl-test-suite.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"nl-test-suite.js","sourceRoot":"","sources":["../../src/testing/nl-test-suite.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1396,6 +1396,17 @@ export interface CognitiveJourneyResult {
|
|
|
1396
1396
|
url: string;
|
|
1397
1397
|
title: string;
|
|
1398
1398
|
};
|
|
1399
|
+
/** v18.70.0: Screen capture of the journey, when invoked with capture enabled */
|
|
1400
|
+
capture?: {
|
|
1401
|
+
slug: string;
|
|
1402
|
+
outDir: string;
|
|
1403
|
+
manifestPath?: string;
|
|
1404
|
+
frames: number;
|
|
1405
|
+
actualFps?: number;
|
|
1406
|
+
durationMs?: number;
|
|
1407
|
+
artifacts?: Record<string, string>;
|
|
1408
|
+
error?: string;
|
|
1409
|
+
};
|
|
1399
1410
|
}
|
|
1400
1411
|
export interface SavedSession {
|
|
1401
1412
|
name: string;
|
|
@@ -1712,6 +1723,17 @@ export interface NLTestSuiteResult {
|
|
|
1712
1723
|
};
|
|
1713
1724
|
/** AI-generated recommendations for fixing failures */
|
|
1714
1725
|
recommendations?: string[];
|
|
1726
|
+
/** Screen capture of the run, when the suite was invoked with capture enabled (v18.70.0) */
|
|
1727
|
+
capture?: {
|
|
1728
|
+
slug: string;
|
|
1729
|
+
outDir: string;
|
|
1730
|
+
manifestPath?: string;
|
|
1731
|
+
frames: number;
|
|
1732
|
+
actualFps?: number;
|
|
1733
|
+
durationMs?: number;
|
|
1734
|
+
artifacts?: Record<string, string>;
|
|
1735
|
+
error?: string;
|
|
1736
|
+
};
|
|
1715
1737
|
}
|
|
1716
1738
|
/** Type of failure that was detected */
|
|
1717
1739
|
export type FailureType = "selector_not_found" | "assertion_failed" | "timeout" | "navigation_failed" | "element_not_interactable" | "unknown";
|