vdelta 0.5.0 → 0.7.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.
@@ -0,0 +1,322 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.VdeltaPlaywrightReporter = void 0;
4
+ exports.safeSerialize = safeSerialize;
5
+ exports.serializeConfig = serializeConfig;
6
+ exports.parseStackFrames = parseStackFrames;
7
+ exports.titlesFromTitlePath = titlesFromTitlePath;
8
+ exports.projectFromTitlePath = projectFromTitlePath;
9
+ exports.aggregateAttempts = aggregateAttempts;
10
+ /**
11
+ * Playwright Reporter (`@playwright/test/reporter`) — the vdelta capture
12
+ * side of the playwright adapter. Type-only import of `@playwright/test`:
13
+ * veridelta ships zero runtime dependencies, so this file must not import
14
+ * any playwright *value* (only `import type`). Structured-first (§12):
15
+ * consumes only the runner's structured channel (TestCase/TestResult
16
+ * fields), never rendered output. Writes a Capture dump to
17
+ * $VDELTA_CAPTURE_FILE at run end; without that env var it is inert, so it
18
+ * can stay permanently configured in a project's playwright config (ambient
19
+ * recording, §4.2 — same convention as `../vitest/reporter.ts:123-124`).
20
+ *
21
+ * playwright's `error.message` can contain ANSI escapes (observed in
22
+ * `probes/playwright-0b-core/observations/failures.json`); this reporter
23
+ * writes it through unstripped. Stripping is the recorder's job, matching
24
+ * the vitest adapter's division of labor (canonicalization lives in the
25
+ * recorder, not the capture channel).
26
+ *
27
+ * This source file is `.cts` (not `.ts`), so `tsc` emits it as CommonJS
28
+ * (`dist/adapters/playwright/reporter.cjs`) even though the package is
29
+ * `"type": "module"`. That is deliberate: playwright 1.49.1's
30
+ * `node_modules/playwright/lib/util.js:272-277` `fileIsModule()` treats a
31
+ * `.js` file under `"type": "module"` as ESM and loads it through
32
+ * `node_modules/playwright/lib/transform/transform.js:225-231`
33
+ * `requireOrImport()`'s `eval("import(...)")` branch — in this environment
34
+ * that dynamic `import()` promise never settles, hanging the run
35
+ * indefinitely (observed/BLOCKED). `fileIsModule()` treats `.cjs`/`.cts`
36
+ * as CommonJS unconditionally, which routes through the `require(file)`
37
+ * branch instead — the same branch confirmed to complete normally.
38
+ * Do not reintroduce an ESM `dist/adapters/playwright/reporter.js` as the
39
+ * file playwright's `--reporter` flag loads.
40
+ */
41
+ const node_crypto_1 = require("node:crypto");
42
+ const node_fs_1 = require("node:fs");
43
+ /**
44
+ * Local copy of `capture.ts`'s `CAPTURE_VERSION`, kept in lockstep via
45
+ * `satisfies` rather than a runtime import: `capture.ts` lives under
46
+ * `"type": "module"` (ESM), and a `.cts` file importing an ESM *value*
47
+ * either fails to compile (TS1479) or risks `ERR_REQUIRE_ESM` at runtime
48
+ * (node 22.0–22.11, before `require(esm)` was unflagged). `import type`
49
+ * (above) is erased at compile time and carries no such risk; this
50
+ * `satisfies` clause makes any future change to `capture.ts`'s
51
+ * `CAPTURE_VERSION` a compile-time error here instead of a silent drift.
52
+ */
53
+ const CAPTURE_VERSION = 1;
54
+ /**
55
+ * Recursively serializes a resolved-config-shaped value into JSON-safe data:
56
+ * `RegExp` becomes its `.toString()` form, circular object references become
57
+ * the string `'[Circular]'`, and function-valued properties are dropped
58
+ * (never appear as a key in the output). Used for `grep`/`grepInvert` and
59
+ * per-project `testMatch`/`testIgnore`/`use`, all of which can carry `RegExp`
60
+ * values in playwright's resolved `FullConfig`/`FullProject`.
61
+ */
62
+ function safeSerialize(value, seen = new WeakSet()) {
63
+ if (value === undefined)
64
+ return undefined;
65
+ if (value === null)
66
+ return null;
67
+ if (value instanceof RegExp)
68
+ return value.toString();
69
+ const t = typeof value;
70
+ if (t === 'function')
71
+ return undefined;
72
+ if (t !== 'object')
73
+ return value;
74
+ if (seen.has(value))
75
+ return '[Circular]';
76
+ seen.add(value);
77
+ if (Array.isArray(value))
78
+ return value.map((v) => safeSerialize(v, seen));
79
+ const out = {};
80
+ for (const [k, v] of Object.entries(value)) {
81
+ const s = safeSerialize(v, seen);
82
+ if (s !== undefined)
83
+ out[k] = s;
84
+ }
85
+ return out;
86
+ }
87
+ /**
88
+ * Defensive-cast the playwright resolved config (`FullConfig`, as given to
89
+ * `onBegin`) into `Capture['config']` (the §4-judged-`yes` covering set).
90
+ * Pure function so the cast rules are unit-testable without a running
91
+ * playwright test run.
92
+ */
93
+ function serializeConfig(config) {
94
+ return {
95
+ fullyParallel: config.fullyParallel,
96
+ workers: config.workers,
97
+ shard: config.shard,
98
+ forbidOnly: config.forbidOnly,
99
+ maxFailures: config.maxFailures,
100
+ grep: safeSerialize(config.grep),
101
+ grepInvert: safeSerialize(config.grepInvert),
102
+ globalTimeout: config.globalTimeout,
103
+ projects: config.projects.map((p) => ({
104
+ name: p.name,
105
+ testMatch: safeSerialize(p.testMatch),
106
+ testIgnore: safeSerialize(p.testIgnore),
107
+ dependencies: [...p.dependencies],
108
+ retries: p.retries,
109
+ timeout: p.timeout,
110
+ use: safeSerialize(p.use),
111
+ })),
112
+ };
113
+ }
114
+ /**
115
+ * Deterministically parses `at <symbol> (<file>:<line>:<column>)` frames out
116
+ * of a raw error stack string — the same regex rule as
117
+ * `probes/playwright-0b-core/project/scripts/analyze-stability.mjs`'s
118
+ * `findEnclosingFrame`, applied to every matching line rather than just the
119
+ * first. Anonymous frames (no named symbol, no parens) do not match, by
120
+ * design (same rule as the probe). Returns `[]` for an undefined/empty
121
+ * stack.
122
+ */
123
+ function parseStackFrames(stack) {
124
+ if (stack === undefined || stack === '')
125
+ return [];
126
+ const frames = [];
127
+ const re = /at\s+[\w$.]+\s+\(([^)]+):(\d+):(\d+)\)/g;
128
+ let m;
129
+ // biome-ignore lint/suspicious/noAssignInExpressions: standard exec-loop idiom
130
+ while ((m = re.exec(stack)) !== null) {
131
+ const file = m[1];
132
+ const line = m[2];
133
+ const column = m[3];
134
+ if (file === undefined || line === undefined || column === undefined)
135
+ continue;
136
+ frames.push({ file, line: Number(line), column: Number(column) });
137
+ }
138
+ return frames;
139
+ }
140
+ /**
141
+ * `TestCase.titlePath()` is `['', project, file, ...titles]` (root suite
142
+ * title is always `''`, then the project suite title, then the file suite
143
+ * title). Strips those first three entries, leaving the describe/test title
144
+ * chain.
145
+ */
146
+ function titlesFromTitlePath(titlePath) {
147
+ return titlePath.slice(3);
148
+ }
149
+ /** The project name is `titlePath()[1]` — `''` if the path is malformed/short. */
150
+ function projectFromTitlePath(titlePath) {
151
+ return titlePath[1] ?? '';
152
+ }
153
+ /**
154
+ * Appends `attempt` to `existing` and returns a new array sorted by `retry`
155
+ * ascending. Playwright calls `onTestEnd` once per attempt for the same
156
+ * `TestCase.id` (retries), so the reporter aggregates by folding each new
157
+ * result through this pure function; sorting keeps the aggregation
158
+ * deterministic even if attempts arrive out of order (e.g. under
159
+ * `--repeat-each`, where a single id's retries interleave with other
160
+ * repeats' worker scheduling).
161
+ */
162
+ function aggregateAttempts(existing, attempt) {
163
+ return [...existing, attempt].sort((a, b) => a.retry - b.retry);
164
+ }
165
+ function stdioEntryText(chunk) {
166
+ return typeof chunk === 'string' ? chunk : chunk.toString('utf8');
167
+ }
168
+ function captureError(error) {
169
+ const location = error.location;
170
+ return {
171
+ message: typeof error.message === 'string' ? error.message : '',
172
+ ...(typeof error.stack === 'string' ? { stack: error.stack } : {}),
173
+ ...(location !== undefined
174
+ ? {
175
+ location: {
176
+ file: location.file,
177
+ line: location.line,
178
+ column: location.column,
179
+ },
180
+ }
181
+ : {}),
182
+ frames: parseStackFrames(error.stack),
183
+ };
184
+ }
185
+ function digestAttachmentBody(attachment) {
186
+ let bodyDigest = null;
187
+ if (attachment.body !== undefined) {
188
+ bodyDigest = (0, node_crypto_1.createHash)('sha256').update(attachment.body).digest('hex');
189
+ }
190
+ else if (typeof attachment.path === 'string') {
191
+ try {
192
+ bodyDigest = (0, node_crypto_1.createHash)('sha256')
193
+ .update((0, node_fs_1.readFileSync)(attachment.path))
194
+ .digest('hex');
195
+ }
196
+ catch {
197
+ bodyDigest = null;
198
+ }
199
+ }
200
+ return {
201
+ name: attachment.name,
202
+ content_type: attachment.contentType,
203
+ body_digest: bodyDigest,
204
+ };
205
+ }
206
+ function captureAttempt(result) {
207
+ return {
208
+ status: result.status,
209
+ retry: result.retry,
210
+ errors: result.errors.map(captureError),
211
+ stdio: [
212
+ ...result.stdout.map((s) => ({
213
+ type: 'stdout',
214
+ text: stdioEntryText(s),
215
+ })),
216
+ ...result.stderr.map((s) => ({
217
+ type: 'stderr',
218
+ text: stdioEntryText(s),
219
+ })),
220
+ ],
221
+ attachments: result.attachments.map(digestAttachmentBody),
222
+ duration_ms: result.duration,
223
+ };
224
+ }
225
+ function captureAnnotations(annotations) {
226
+ return annotations.map((a) => a.description !== undefined
227
+ ? { type: a.type, description: a.description }
228
+ : { type: a.type });
229
+ }
230
+ function describeTest(test) {
231
+ const titlePath = test.titlePath();
232
+ return {
233
+ test_case_id: test.id,
234
+ file_abs: test.location.file,
235
+ project: projectFromTitlePath(titlePath),
236
+ titles: titlesFromTitlePath(titlePath),
237
+ location_line: test.location.line ?? null,
238
+ expected_status: test.expectedStatus,
239
+ annotations: captureAnnotations(test.annotations),
240
+ };
241
+ }
242
+ class VdeltaPlaywrightReporter {
243
+ configDump;
244
+ configFile;
245
+ runnerVersion = 'unknown';
246
+ rootSuite;
247
+ unhandledErrorCount = 0;
248
+ metaById = new Map();
249
+ attemptsById = new Map();
250
+ get active() {
251
+ const outFile = process.env.VDELTA_CAPTURE_FILE;
252
+ return outFile !== undefined && outFile !== '';
253
+ }
254
+ onBegin(config, suite) {
255
+ if (!this.active)
256
+ return;
257
+ this.configDump = serializeConfig(config);
258
+ this.configFile =
259
+ typeof config.configFile === 'string' && config.configFile !== ''
260
+ ? config.configFile
261
+ : undefined;
262
+ this.runnerVersion = config.version;
263
+ this.rootSuite = suite;
264
+ }
265
+ onError(_error) {
266
+ if (!this.active)
267
+ return;
268
+ this.unhandledErrorCount += 1;
269
+ }
270
+ onTestEnd(test, result) {
271
+ if (!this.active)
272
+ return;
273
+ const id = test.id;
274
+ if (!this.metaById.has(id))
275
+ this.metaById.set(id, describeTest(test));
276
+ const existing = this.attemptsById.get(id) ?? [];
277
+ this.attemptsById.set(id, aggregateAttempts(existing, captureAttempt(result)));
278
+ }
279
+ onEnd(result) {
280
+ if (!this.active)
281
+ return;
282
+ const outFile = process.env.VDELTA_CAPTURE_FILE;
283
+ if (outFile === undefined || outFile === '')
284
+ return;
285
+ const tests = [];
286
+ for (const [id, meta] of this.metaById) {
287
+ tests.push({ ...meta, attempts: this.attemptsById.get(id) ?? [] });
288
+ }
289
+ const allTests = this.rootSuite?.allTests() ?? [];
290
+ const unreportedTests = allTests
291
+ .filter((t) => !this.metaById.has(t.id))
292
+ .map((t) => describeTest(t));
293
+ const capture = {
294
+ capture_version: CAPTURE_VERSION,
295
+ runner: 'playwright',
296
+ runner_version: this.runnerVersion,
297
+ status: result.status,
298
+ unhandled_errors: this.unhandledErrorCount,
299
+ config: this.configDump ?? {
300
+ fullyParallel: false,
301
+ workers: 0,
302
+ shard: null,
303
+ forbidOnly: false,
304
+ maxFailures: 0,
305
+ grep: null,
306
+ grepInvert: null,
307
+ globalTimeout: 0,
308
+ projects: [],
309
+ },
310
+ tests,
311
+ unreported_tests: unreportedTests,
312
+ config_files: this.configFile !== undefined ? [this.configFile] : [],
313
+ };
314
+ (0, node_fs_1.writeFileSync)(outFile, JSON.stringify(capture));
315
+ }
316
+ printsToStdio() {
317
+ return false;
318
+ }
319
+ }
320
+ exports.default = VdeltaPlaywrightReporter;
321
+ exports.VdeltaPlaywrightReporter = VdeltaPlaywrightReporter;
322
+ //# sourceMappingURL=reporter.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reporter.cjs","sourceRoot":"","sources":["../../../src/adapters/playwright/reporter.cts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ import type { FullConfig, FullResult, Reporter, Suite, TestCase, TestError, TestResult } from '@playwright/test/reporter';
2
+ import type { Capture, CapturedPwAttempt, CapturedPwFrame } from './capture.js';
3
+ /**
4
+ * Recursively serializes a resolved-config-shaped value into JSON-safe data:
5
+ * `RegExp` becomes its `.toString()` form, circular object references become
6
+ * the string `'[Circular]'`, and function-valued properties are dropped
7
+ * (never appear as a key in the output). Used for `grep`/`grepInvert` and
8
+ * per-project `testMatch`/`testIgnore`/`use`, all of which can carry `RegExp`
9
+ * values in playwright's resolved `FullConfig`/`FullProject`.
10
+ */
11
+ export declare function safeSerialize(value: unknown, seen?: WeakSet<object>): unknown;
12
+ /**
13
+ * Defensive-cast the playwright resolved config (`FullConfig`, as given to
14
+ * `onBegin`) into `Capture['config']` (the §4-judged-`yes` covering set).
15
+ * Pure function so the cast rules are unit-testable without a running
16
+ * playwright test run.
17
+ */
18
+ export declare function serializeConfig(config: FullConfig): Capture['config'];
19
+ /**
20
+ * Deterministically parses `at <symbol> (<file>:<line>:<column>)` frames out
21
+ * of a raw error stack string — the same regex rule as
22
+ * `probes/playwright-0b-core/project/scripts/analyze-stability.mjs`'s
23
+ * `findEnclosingFrame`, applied to every matching line rather than just the
24
+ * first. Anonymous frames (no named symbol, no parens) do not match, by
25
+ * design (same rule as the probe). Returns `[]` for an undefined/empty
26
+ * stack.
27
+ */
28
+ export declare function parseStackFrames(stack: string | undefined): CapturedPwFrame[];
29
+ /**
30
+ * `TestCase.titlePath()` is `['', project, file, ...titles]` (root suite
31
+ * title is always `''`, then the project suite title, then the file suite
32
+ * title). Strips those first three entries, leaving the describe/test title
33
+ * chain.
34
+ */
35
+ export declare function titlesFromTitlePath(titlePath: readonly string[]): string[];
36
+ /** The project name is `titlePath()[1]` — `''` if the path is malformed/short. */
37
+ export declare function projectFromTitlePath(titlePath: readonly string[]): string;
38
+ /**
39
+ * Appends `attempt` to `existing` and returns a new array sorted by `retry`
40
+ * ascending. Playwright calls `onTestEnd` once per attempt for the same
41
+ * `TestCase.id` (retries), so the reporter aggregates by folding each new
42
+ * result through this pure function; sorting keeps the aggregation
43
+ * deterministic even if attempts arrive out of order (e.g. under
44
+ * `--repeat-each`, where a single id's retries interleave with other
45
+ * repeats' worker scheduling).
46
+ */
47
+ export declare function aggregateAttempts(existing: readonly CapturedPwAttempt[], attempt: CapturedPwAttempt): CapturedPwAttempt[];
48
+ export default class VdeltaPlaywrightReporter implements Reporter {
49
+ private configDump;
50
+ private configFile;
51
+ private runnerVersion;
52
+ private rootSuite;
53
+ private unhandledErrorCount;
54
+ private metaById;
55
+ private attemptsById;
56
+ private get active();
57
+ onBegin(config: FullConfig, suite: Suite): void;
58
+ onError(_error: TestError): void;
59
+ onTestEnd(test: TestCase, result: TestResult): void;
60
+ onEnd(result: FullResult): void;
61
+ printsToStdio(): boolean;
62
+ }
63
+ export { VdeltaPlaywrightReporter };
@@ -1,6 +1,7 @@
1
+ import { playwrightAdapter } from './playwright/adapter.js';
1
2
  import { vitestAdapter } from './vitest/adapter.js';
2
3
  /** Every known adapter, in a deterministic order. */
3
- export const ADAPTERS = [vitestAdapter];
4
+ export const ADAPTERS = [vitestAdapter, playwrightAdapter];
4
5
  /** Known adapter names, in registry order — for diagnostics and `--adapter`. */
5
6
  export function adapterNames(adapters = ADAPTERS) {
6
7
  return adapters.map((a) => a.name);
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/adapters/registry.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAEnD,qDAAqD;AACrD,MAAM,CAAC,MAAM,QAAQ,GAAuB,CAAC,aAAa,CAAC,CAAA;AAE3D,gFAAgF;AAChF,MAAM,UAAU,YAAY,CAC1B,WAA+B,QAAQ;IAEvC,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;AACpC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CACzB,IAAY,EACZ,WAA+B,QAAQ;IAEvC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;AAC9C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAC5B,IAAY,EACZ,WAA+B,QAAQ;IAEvC,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IAC3C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACb,oBAAoB,IAAI,uBAAuB,YAAY,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACnF,CAAA;IACH,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB,CAC/B,OAAuB,EACvB,WAA+B,QAAQ;IAEvC,MAAM,GAAG,GAA2B,EAAE,CAAA;IACtC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAA;IACjD,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAC1B,OAAuB,EACvB,WAA+B,QAAQ;IAEvC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAA;AAC/D,CAAC;AAgBD;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAC3B,IAAuB,EACvB,WAA+B,QAAQ;IAEvC,MAAM,OAAO,GAAmD,EAAE,CAAA;IAClE,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACrC,IAAI,QAAQ,KAAK,IAAI;YAAE,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAA;IAC5D,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;IACjD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QACpB,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAA;IACzE,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAE,CAAA;IACxB,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAA;AAC3E,CAAC"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/adapters/registry.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAEnD,qDAAqD;AACrD,MAAM,CAAC,MAAM,QAAQ,GAAuB,CAAC,aAAa,EAAE,iBAAiB,CAAC,CAAA;AAE9E,gFAAgF;AAChF,MAAM,UAAU,YAAY,CAC1B,WAA+B,QAAQ;IAEvC,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;AACpC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CACzB,IAAY,EACZ,WAA+B,QAAQ;IAEvC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;AAC9C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAC5B,IAAY,EACZ,WAA+B,QAAQ;IAEvC,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IAC3C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACb,oBAAoB,IAAI,uBAAuB,YAAY,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACnF,CAAA;IACH,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB,CAC/B,OAAuB,EACvB,WAA+B,QAAQ;IAEvC,MAAM,GAAG,GAA2B,EAAE,CAAA;IACtC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAA;IACjD,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAC1B,OAAuB,EACvB,WAA+B,QAAQ;IAEvC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CAAA;AAC/D,CAAC;AAgBD;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAC3B,IAAuB,EACvB,WAA+B,QAAQ;IAEvC,MAAM,OAAO,GAAmD,EAAE,CAAA;IAClE,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACrC,IAAI,QAAQ,KAAK,IAAI;YAAE,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAA;IAC5D,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;IACjD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QACpB,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAA;IACzE,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAE,CAAA;IACxB,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAA;AAC3E,CAAC"}
package/dist/compare.js CHANGED
@@ -428,6 +428,8 @@ function claimsReport(baseline, resolution, current, currentId, comparability) {
428
428
  const transitions = emptyTransitions();
429
429
  const events = [];
430
430
  const contextChanged = new Set();
431
+ const retryEvidence = current.instrument.capabilities?.['retry-evidence'] === 'pass';
432
+ const verificationInconclusive = [];
431
433
  const testSourceChanged = (rel) => baseline.surface.test_sources[rel] !== current.surface.test_sources[rel];
432
434
  const anyConfigChanged = configSourceEvents(baseline, current).length > 0;
433
435
  for (const id of allIds) {
@@ -500,12 +502,17 @@ function claimsReport(baseline, resolution, current, currentId, comparability) {
500
502
  }
501
503
  else if (c.verdict === 'pass' || c.verdict === 'xpass') {
502
504
  if (!partial) {
503
- const rel = relOf(id);
504
- if (!testSourceChanged(rel) && !anyConfigChanged) {
505
- transitions.repaired_same_surface.push(id);
505
+ if (retryEvidence && c.finding !== undefined) {
506
+ verificationInconclusive.push(id);
506
507
  }
507
508
  else {
508
- transitions.repaired_with_test_change.push(id);
509
+ const rel = relOf(id);
510
+ if (!testSourceChanged(rel) && !anyConfigChanged) {
511
+ transitions.repaired_same_surface.push(id);
512
+ }
513
+ else {
514
+ transitions.repaired_with_test_change.push(id);
515
+ }
509
516
  }
510
517
  }
511
518
  }
@@ -521,6 +528,9 @@ function claimsReport(baseline, resolution, current, currentId, comparability) {
521
528
  }
522
529
  }
523
530
  events.push(...configSourceEvents(baseline, current));
531
+ if (verificationInconclusive.length > 0) {
532
+ transitions.verification_inconclusive = verificationInconclusive;
533
+ }
524
534
  const lostObservation = transitions.not_observed.length > 0 ||
525
535
  (partial && hasLostObservation(baseline, current));
526
536
  const reduced = transitions.fail_to_skip.length > 0 ||
@@ -545,6 +555,9 @@ function claimsReport(baseline, resolution, current, currentId, comparability) {
545
555
  for (const e of transitions.updated_fail) {
546
556
  anchors[`updated_fail:${e.test_id}`] = showAnchor(currentId, e.test_id);
547
557
  }
558
+ for (const id of verificationInconclusive) {
559
+ anchors[`verification_inconclusive:${id}`] = showAnchor(currentId, id);
560
+ }
548
561
  const currentRed = partial ? redIds(current) : undefined;
549
562
  if (currentRed) {
550
563
  for (const id of currentRed)
@@ -594,6 +607,8 @@ function relOf(testId) {
594
607
  function deriveOutcome(t, partial) {
595
608
  if (t.new_fail.length > 0 || t.updated_fail.length > 0)
596
609
  return 'regressed';
610
+ if ((t.verification_inconclusive?.length ?? 0) > 0)
611
+ return 'inconclusive';
597
612
  if (partial)
598
613
  return 'inconclusive';
599
614
  if (t.repaired_same_surface.length > 0 ||
@@ -616,5 +631,6 @@ function sortTransitions(t) {
616
631
  return ka < kb ? -1 : ka > kb ? 1 : 0;
617
632
  });
618
633
  t.updated_fail.sort((a, b) => a.test_id < b.test_id ? -1 : a.test_id > b.test_id ? 1 : 0);
634
+ t.verification_inconclusive?.sort();
619
635
  }
620
636
  //# sourceMappingURL=compare.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"compare.js","sourceRoot":"","sources":["../src/compare.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compare.js","sourceRoot":"","sources":["../src/compare.ts"],"names":[],"mappings":"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"}
package/dist/gate.js CHANGED
@@ -85,6 +85,13 @@ export async function buildGateReport(store, opts) {
85
85
  if (report.verification_surface?.status === 'reduced') {
86
86
  triggered.push('verification_surface_reduced');
87
87
  }
88
+ // §12-1 decision B-inconclusive: a transition set that only reports
89
+ // unverified (not re-confirmed) baseline-red tests must not read as a
90
+ // clean pass. Kept last so triggered stays regression-kinds-first,
91
+ // verification_inconclusive-last (decision order below relies on that).
92
+ if ((report.transitions?.verification_inconclusive?.length ?? 0) > 0) {
93
+ triggered.push('verification_inconclusive');
94
+ }
88
95
  let verdict;
89
96
  if (!stalenessMatch) {
90
97
  verdict = 'inconclusive';
@@ -93,11 +100,21 @@ export async function buildGateReport(store, opts) {
93
100
  report.comparability === 'partial') {
94
101
  verdict = 'inconclusive';
95
102
  }
96
- else if (triggered.length > 0) {
97
- verdict = 'fail';
98
- }
99
103
  else {
100
- verdict = 'pass';
104
+ // triggered may mix regression kinds (new_fail/updated_fail/
105
+ // verification_surface_reduced) with verification_inconclusive.
106
+ // Regression kinds always win (loud direction); if the only member is
107
+ // verification_inconclusive, the gate can't claim a clean pass either.
108
+ const regression = triggered.some((t) => t !== 'verification_inconclusive');
109
+ if (regression) {
110
+ verdict = 'fail';
111
+ }
112
+ else if (triggered.length > 0) {
113
+ verdict = 'inconclusive';
114
+ }
115
+ else {
116
+ verdict = 'pass';
117
+ }
101
118
  }
102
119
  const gate = {
103
120
  policy: 'report-only',