@flighthq/tool-capture 0.4.0-next.1488.43bcb37 → 0.4.0-next.1585.bf131c8
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/captureContrast.d.ts +2 -0
- package/dist/captureContrast.d.ts.map +1 -0
- package/dist/captureContrast.js +14 -0
- package/dist/captureContrast.js.map +1 -0
- package/dist/captureEntry.d.ts.map +1 -1
- package/dist/captureEntry.js +3 -0
- package/dist/captureEntry.js.map +1 -1
- package/dist/captureFixtureBackground.d.ts +16 -0
- package/dist/captureFixtureBackground.d.ts.map +1 -0
- package/dist/captureFixtureBackground.js +38 -0
- package/dist/captureFixtureBackground.js.map +1 -0
- package/dist/captureFlightPreset.js +5 -5
- package/dist/captureFlightPreset.js.map +1 -1
- package/dist/captureValidation.d.ts +15 -0
- package/dist/captureValidation.d.ts.map +1 -1
- package/dist/captureValidation.js +75 -12
- package/dist/captureValidation.js.map +1 -1
- package/dist/contract.d.ts +1 -0
- package/dist/contract.d.ts.map +1 -1
- package/dist/contract.js +1 -0
- package/dist/contract.js.map +1 -1
- package/dist/functionalParityConfounds.d.ts +27 -0
- package/dist/functionalParityConfounds.d.ts.map +1 -0
- package/dist/functionalParityConfounds.js +102 -0
- package/dist/functionalParityConfounds.js.map +1 -0
- package/package.json +6 -6
- package/src/baselineStore.test.ts +8 -1
- package/src/captureContrast.test.ts +13 -0
- package/src/captureFixtureBackground.test.ts +50 -0
- package/src/captureValidation.test.ts +86 -2
- package/src/functionalParityConfounds.test.ts +114 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"captureContrast.d.ts","sourceRoot":"","sources":["../src/captureContrast.ts"],"names":[],"mappings":"AAIA,wBAAgB,6BAA6B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQhF"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { parseBitmapFingerprint } from '@flighthq/bitmap/contract';
|
|
2
|
+
// The same per-channel units as regression distance, measured from a committed baseline to a uniform
|
|
3
|
+
// frame of its own corner colour. It is context for how much structure the gate can see, never a gate.
|
|
4
|
+
export function getCaptureFingerprintContrast(fingerprint) {
|
|
5
|
+
const parsed = parseBitmapFingerprint(fingerprint);
|
|
6
|
+
if (parsed === null || parsed.cells.length === 0)
|
|
7
|
+
return null;
|
|
8
|
+
let total = 0;
|
|
9
|
+
for (let index = 0; index < parsed.cells.length; index++) {
|
|
10
|
+
total += Math.abs(parsed.cells[index] - parsed.cells[index % 3]);
|
|
11
|
+
}
|
|
12
|
+
return total / parsed.cells.length;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=captureContrast.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"captureContrast.js","sourceRoot":"","sources":["../src/captureContrast.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,qGAAqG;AACrG,uGAAuG;AACvG,MAAM,UAAU,6BAA6B,CAAC,WAAmB;IAC/D,MAAM,MAAM,GAAG,sBAAsB,CAAC,WAAW,CAAC,CAAC;IACnD,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9D,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QACzD,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAE,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAE,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;AACrC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"captureEntry.d.ts","sourceRoot":"","sources":["../src/captureEntry.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"captureEntry.d.ts","sourceRoot":"","sources":["../src/captureEntry.ts"],"names":[],"mappings":"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"}
|
package/dist/captureEntry.js
CHANGED
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
import { createHash } from 'node:crypto';
|
|
11
11
|
import { mkdirSync, readFileSync, renameSync, writeFileSync } from 'node:fs';
|
|
12
12
|
import { join, resolve } from 'node:path';
|
|
13
|
+
import { BITMAP_FINGERPRINT_COMPUTATION_ID } from '@flighthq/bitmap/contract';
|
|
13
14
|
import { getBaselineField, setBaselineField } from './baselineStore.js';
|
|
14
15
|
import { isRejectedCaptureBaselineHash } from './captureBaselineSanity.js';
|
|
15
16
|
import { launchBrowser } from './captureBrowser.js';
|
|
@@ -338,6 +339,7 @@ export async function captureEntry(opts) {
|
|
|
338
339
|
// object means the two can only disagree when they genuinely came from different captures — never
|
|
339
340
|
// because one pass sampled the conditions a moment later than the other.
|
|
340
341
|
const captureProvenance = {
|
|
342
|
+
computationId: BITMAP_FINGERPRINT_COMPUTATION_ID,
|
|
341
343
|
frames: captureFrames,
|
|
342
344
|
sourceHash: getCaptureSceneSourceHash(root, tool, entry, renderer),
|
|
343
345
|
targetKind: verificationTargetKind,
|
|
@@ -996,6 +998,7 @@ function withCaptureHostProvenance(provenance) {
|
|
|
996
998
|
}
|
|
997
999
|
function captureUrlStatusProvenance(captureFrames, diagnostics) {
|
|
998
1000
|
return withCaptureHostProvenance({
|
|
1001
|
+
computationId: null,
|
|
999
1002
|
frames: captureFrames,
|
|
1000
1003
|
sourceHash: null,
|
|
1001
1004
|
targetKind: diagnostics.verifyTargetKind,
|
package/dist/captureEntry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"captureEntry.js","sourceRoot":"","sources":["../src/captureEntry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"captureEntry.js","sourceRoot":"","sources":["../src/captureEntry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Compares two fixtures' declared clear colours.
|
|
3
|
+
*
|
|
4
|
+
* Returns `null` when the comparison could not be made — either fixture declaring nothing is enough —
|
|
5
|
+
* so a caller can tell "checked and they agree" from "not checked". Returning `false` for an
|
|
6
|
+
* undeclared pair would convert an absent check into an apparent clean bill of health.
|
|
7
|
+
*/
|
|
8
|
+
export declare function compareCaptureFixtureBackgrounds(a: string, b: string): boolean | null;
|
|
9
|
+
/**
|
|
10
|
+
* The clear colour a functional scene fixture declares, lowercased, or `null` when it declares none.
|
|
11
|
+
*
|
|
12
|
+
* `null` means NOT DECLARED, which is a different fact from "declares the default" — an undeclared
|
|
13
|
+
* fixture must never be read as agreeing with anything.
|
|
14
|
+
*/
|
|
15
|
+
export declare function findCaptureFixtureBackground(source: string): string | null;
|
|
16
|
+
//# sourceMappingURL=captureFixtureBackground.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"captureFixtureBackground.d.ts","sourceRoot":"","sources":["../src/captureFixtureBackground.ts"],"names":[],"mappings":"AAeA;;;;;;GAMG;AACH,wBAAgB,gCAAgC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,CAKrF;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAE1E"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
// Reads the clear colour a functional scene fixture DECLARES, so a parity distance between two
|
|
2
|
+
// backends can be qualified by whether their fixtures asked for the same background in the first place.
|
|
3
|
+
//
|
|
4
|
+
// ★ THIS IS A NARROW DETECTOR AND ITS NARROWNESS IS LOAD-BEARING. It matches a literal
|
|
5
|
+
// `backgroundColor: 0x…` in the fixture text and nothing else. It does not evaluate the expression, it
|
|
6
|
+
// does not follow a constant, it does not see a colour supplied by a helper, and it says nothing at all
|
|
7
|
+
// about any other fixture difference. Anything built on it must be named for what it detects — a
|
|
8
|
+
// declared background mismatch — never for the general question "were these fixtures screened for
|
|
9
|
+
// confounds", which it cannot answer.
|
|
10
|
+
//
|
|
11
|
+
// It lives here rather than in `scripts/` because a package must not import from the script layer;
|
|
12
|
+
// scripts import from packages. `scripts/functional-parity-confounds.ts` consumes this function so the
|
|
13
|
+
// corpus scan and the per-run validation report read one implementation rather than two regexes that
|
|
14
|
+
// drift.
|
|
15
|
+
/**
|
|
16
|
+
* Compares two fixtures' declared clear colours.
|
|
17
|
+
*
|
|
18
|
+
* Returns `null` when the comparison could not be made — either fixture declaring nothing is enough —
|
|
19
|
+
* so a caller can tell "checked and they agree" from "not checked". Returning `false` for an
|
|
20
|
+
* undeclared pair would convert an absent check into an apparent clean bill of health.
|
|
21
|
+
*/
|
|
22
|
+
export function compareCaptureFixtureBackgrounds(a, b) {
|
|
23
|
+
const first = findCaptureFixtureBackground(a);
|
|
24
|
+
const second = findCaptureFixtureBackground(b);
|
|
25
|
+
if (first === null || second === null)
|
|
26
|
+
return null;
|
|
27
|
+
return first !== second;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* The clear colour a functional scene fixture declares, lowercased, or `null` when it declares none.
|
|
31
|
+
*
|
|
32
|
+
* `null` means NOT DECLARED, which is a different fact from "declares the default" — an undeclared
|
|
33
|
+
* fixture must never be read as agreeing with anything.
|
|
34
|
+
*/
|
|
35
|
+
export function findCaptureFixtureBackground(source) {
|
|
36
|
+
return /backgroundColor:\s*(0x[0-9a-fA-F]+)/.exec(source)?.[1]?.toLowerCase() ?? null;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=captureFixtureBackground.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"captureFixtureBackground.js","sourceRoot":"","sources":["../src/captureFixtureBackground.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,wGAAwG;AACxG,EAAE;AACF,uFAAuF;AACvF,uGAAuG;AACvG,wGAAwG;AACxG,iGAAiG;AACjG,kGAAkG;AAClG,sCAAsC;AACtC,EAAE;AACF,mGAAmG;AACnG,uGAAuG;AACvG,qGAAqG;AACrG,SAAS;AAET;;;;;;GAMG;AACH,MAAM,UAAU,gCAAgC,CAAC,CAAS,EAAE,CAAS;IACnE,MAAM,KAAK,GAAG,4BAA4B,CAAC,CAAC,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,4BAA4B,CAAC,CAAC,CAAC,CAAC;IAC/C,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACnD,OAAO,KAAK,KAAK,MAAM,CAAC;AAC1B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,4BAA4B,CAAC,MAAc;IACzD,OAAO,qCAAqC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,IAAI,CAAC;AACxF,CAAC"}
|
|
@@ -23,11 +23,11 @@ const FLIGHT_VISUAL_PARITY_GROUPS = {
|
|
|
23
23
|
},
|
|
24
24
|
};
|
|
25
25
|
const FLIGHT_PARITY_SKIP = {
|
|
26
|
-
// Canvas and DOM antialias inherently and expose no switch to disable it. WebGPU
|
|
27
|
-
//
|
|
28
|
-
//
|
|
29
|
-
//
|
|
30
|
-
//
|
|
26
|
+
// Canvas and DOM antialias inherently and expose no switch to disable it. WebGPU now has an opt-in 2×
|
|
27
|
+
// main-surface supersample resolve, but the capture harness deliberately leaves it off until the AA
|
|
28
|
+
// picture changes can be included in one authorized re-baseline. Its pooled effect targets also stay
|
|
29
|
+
// sampleCount 1 until their pipelines gain multisample variants (render-wgpu/src/wgpuRenderTargetPool.ts:14-15).
|
|
30
|
+
// Comparable AA policy will not promise pixel-identical samples from distinct rasterizers.
|
|
31
31
|
// Invert agrees away from its shape boundaries; its WebGPU boundary pixels come from that single-sample
|
|
32
32
|
// scene target while this scene's WebGL target explicitly uses sampleCount 4.
|
|
33
33
|
'effect-invert': ['webgpu'],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"captureFlightPreset.js","sourceRoot":"","sources":["../src/captureFlightPreset.ts"],"names":[],"mappings":"AAQA,qGAAqG;AACrG,MAAM,UAAU,gCAAgC,CAAC,OAAe;IAC9D,OAAO;QACL,eAAe,EAAE,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE;QAC/D,YAAY,EAAE,OAAO,KAAK,YAAY,IAAI,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,SAAS;QAC1G,UAAU,EAAE,kBAAkB;KAC/B,CAAC;AACJ,CAAC;AAED,wGAAwG;AACxG,oGAAoG;AACpG,yGAAyG;AACzG,oGAAoG;AACpG,2FAA2F;AAC3F,EAAE;AACF,gGAAgG;AAChG,wGAAwG;AACxG,mGAAmG;AACnG,0FAA0F;AAC1F,MAAM,2BAA2B,GAA2D;IAC1F,MAAM,EAAE;QACN,OAAO,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC;QAC7C,SAAS,EAAE,QAAQ;KACpB;CACF,CAAC;AAEF,MAAM,kBAAkB,GAAyD;IAC/E,oGAAoG;IACpG
|
|
1
|
+
{"version":3,"file":"captureFlightPreset.js","sourceRoot":"","sources":["../src/captureFlightPreset.ts"],"names":[],"mappings":"AAQA,qGAAqG;AACrG,MAAM,UAAU,gCAAgC,CAAC,OAAe;IAC9D,OAAO;QACL,eAAe,EAAE,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE;QAC/D,YAAY,EAAE,OAAO,KAAK,YAAY,IAAI,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,SAAS;QAC1G,UAAU,EAAE,kBAAkB;KAC/B,CAAC;AACJ,CAAC;AAED,wGAAwG;AACxG,oGAAoG;AACpG,yGAAyG;AACzG,oGAAoG;AACpG,2FAA2F;AAC3F,EAAE;AACF,gGAAgG;AAChG,wGAAwG;AACxG,mGAAmG;AACnG,0FAA0F;AAC1F,MAAM,2BAA2B,GAA2D;IAC1F,MAAM,EAAE;QACN,OAAO,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC;QAC7C,SAAS,EAAE,QAAQ;KACpB;CACF,CAAC;AAEF,MAAM,kBAAkB,GAAyD;IAC/E,sGAAsG;IACtG,oGAAoG;IACpG,qGAAqG;IACrG,iHAAiH;IACjH,2FAA2F;IAC3F,wGAAwG;IACxG,8EAA8E;IAC9E,eAAe,EAAE,CAAC,QAAQ,CAAC;IAC3B,sGAAsG;IACtG,qGAAqG;IACrG,aAAa,EAAE,CAAC,QAAQ,CAAC;IACzB,sGAAsG;IACtG,yGAAyG;IACzG,mBAAmB,EAAE,CAAC,QAAQ,CAAC;CAChC,CAAC"}
|
|
@@ -88,12 +88,26 @@ export interface CaptureValidationCheck {
|
|
|
88
88
|
message: string;
|
|
89
89
|
distance?: number;
|
|
90
90
|
threshold?: number;
|
|
91
|
+
/** Baseline fingerprint's internal contrast, reported beside regression results and never gated. */
|
|
92
|
+
contrast?: number;
|
|
91
93
|
/** Scene-source freshness classification for every gated fingerprint comparison. */
|
|
92
94
|
sourceHashStatus?: 'changed' | 'unchanged' | 'unavailable';
|
|
93
95
|
/** Whether source freshness came from full five-field provenance or the deprecated partial fallback. */
|
|
94
96
|
fingerprintProvenanceStatus?: 'full' | 'partial' | 'unavailable';
|
|
95
97
|
recordedSourceHash?: string | null;
|
|
96
98
|
currentSourceHash?: string | null;
|
|
99
|
+
/**
|
|
100
|
+
* Whether the two fixtures of a parity pair DECLARE different clear colours, which makes their
|
|
101
|
+
* distance partly an artefact of the fixtures rather than a renderer disagreement.
|
|
102
|
+
*
|
|
103
|
+
* ★ ABSENT MEANS NOT CHECKED, NOT CLEAN. The field is set only on parity checks whose scene sources
|
|
104
|
+
* could both be read and which both declare a literal `backgroundColor: 0x…`; anywhere else it is
|
|
105
|
+
* undefined, and undefined must never be read as "screened". `false` likewise means only that the two
|
|
106
|
+
* DECLARED backgrounds match — it is not a statement that the fixtures agree in any other respect.
|
|
107
|
+
* The detector behind it (`compareCaptureFixtureBackgrounds`) matches one literal declaration and
|
|
108
|
+
* nothing else, which is why this field is named for that one condition instead of for confounds.
|
|
109
|
+
*/
|
|
110
|
+
fixtureBackgroundMismatch?: boolean;
|
|
97
111
|
}
|
|
98
112
|
export declare function explainCaptureParityUncovered(eligibleCount: number, hasGroups: boolean, unavailableReferences?: readonly string[]): string;
|
|
99
113
|
export declare function explainCaptureVerificationStall(verification: Readonly<{
|
|
@@ -109,6 +123,7 @@ export declare function explainCaptureVerificationStall(verification: Readonly<{
|
|
|
109
123
|
export declare function formatCaptureParityRanking(checks: readonly Readonly<{
|
|
110
124
|
distance?: number;
|
|
111
125
|
entry: string;
|
|
126
|
+
fixtureBackgroundMismatch?: boolean;
|
|
112
127
|
kind: string;
|
|
113
128
|
renderers?: readonly string[];
|
|
114
129
|
}>[], limit?: number): string | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"captureValidation.d.ts","sourceRoot":"","sources":["../src/captureValidation.ts"],"names":[],"mappings":"AAiDA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"captureValidation.d.ts","sourceRoot":"","sources":["../src/captureValidation.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,10 +26,12 @@ import { getBaselineField, getBaselineLegacyFingerprintSourceHash, getBaselinePr
|
|
|
26
26
|
import { diffCaptureBaselineCoverage, formatCaptureBaselineCoverageIdentity, isCaptureBaselineCoverageFailure, readCaptureBaselineCoverageManifest, writeCaptureBaselineCoverageManifest, } from './captureBaselineCoverageManifest.js';
|
|
27
27
|
import { isUniformCaptureFingerprint } from './captureBaselineSanity.js';
|
|
28
28
|
import { launchBrowser } from './captureBrowser.js';
|
|
29
|
+
import { getCaptureFingerprintContrast } from './captureContrast.js';
|
|
29
30
|
import { provideCaptureDomRenderPixels } from './captureDomReadback.js';
|
|
30
31
|
import { BACKEND_UNAVAILABLE, getCaptureEntryRoute, rendererMatchesFilter } from './captureEntries.js';
|
|
31
32
|
import { isTransientCaptureError } from './captureEntry.js';
|
|
32
33
|
import { selectCaptureEntriesByName } from './captureEntryFilter.js';
|
|
34
|
+
import { compareCaptureFixtureBackgrounds } from './captureFixtureBackground.js';
|
|
33
35
|
import { formatDetailLine, formatStatusLine, formatSummaryCount, formatSummaryLine } from './captureFormat.js';
|
|
34
36
|
import { installAbortHandler, isBrowserClosedError } from './captureInterrupt.js';
|
|
35
37
|
import { CAPTURE_PROTOCOL_VERSION } from './captureProtocol.js';
|
|
@@ -69,10 +71,45 @@ function isFunctionalParityControl(root, subject, entry, renderer) {
|
|
|
69
71
|
return false;
|
|
70
72
|
}
|
|
71
73
|
}
|
|
74
|
+
// Reads both fixtures of a parity pair and reports whether their DECLARED clear colours differ.
|
|
75
|
+
//
|
|
76
|
+
// Returns null whenever the question could not be answered — a subject other than functional, a source
|
|
77
|
+
// that would not read, or either fixture declaring no colour — so the caller leaves the report field
|
|
78
|
+
// undefined rather than asserting a clean result it did not establish.
|
|
79
|
+
function findParityFixtureBackgroundMismatch(root, subject, entry, a, b) {
|
|
80
|
+
if (subject !== 'functional')
|
|
81
|
+
return null;
|
|
82
|
+
const scenesDir = join(root, 'functional', 'scenes');
|
|
83
|
+
try {
|
|
84
|
+
return compareCaptureFixtureBackgrounds(readFileSync(functionalScene3DFile(scenesDir, entry, a), 'utf8'), readFileSync(functionalScene3DFile(scenesDir, entry, b), 'utf8'));
|
|
85
|
+
}
|
|
86
|
+
catch {
|
|
87
|
+
return null;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
72
90
|
function distance(a, b) {
|
|
73
91
|
const difference = compareCaptureFingerprints(a, b);
|
|
74
92
|
return Number.isFinite(difference) ? difference : null;
|
|
75
93
|
}
|
|
94
|
+
// Renders the fixture-background state that belongs beside a parity distance.
|
|
95
|
+
//
|
|
96
|
+
// ★ IT READS THE SAME THREE-STATE VALUE THE REPORT FIELD CARRIES, AND THAT IS THE WHOLE POINT. A sentence
|
|
97
|
+
// computed independently of the field can disagree with it, and then a reader and a tool draw opposite
|
|
98
|
+
// conclusions from one run. This takes `findParityFixtureBackgroundMismatch`'s answer and says it in
|
|
99
|
+
// words, so there is one determination with two renderings rather than two determinations.
|
|
100
|
+
//
|
|
101
|
+
// ★ `null` IS NOT "NO MISMATCH". It means the question could not be answered — a non-functional subject,
|
|
102
|
+
// a source that would not read, or either fixture declaring no colour — and it says NOT CHECKED rather
|
|
103
|
+
// than anything that could be mistaken for a clean result. This is the same rule the field's own
|
|
104
|
+
// documentation states, applied to the prose.
|
|
105
|
+
//
|
|
106
|
+
// The per-backend colours behind a DIFFER verdict are not repeated here; `npm run
|
|
107
|
+
// test:functional:parity:confounds` reports them for the whole corpus and is the tool for that question.
|
|
108
|
+
function describeParityFixtureBackground(mismatch) {
|
|
109
|
+
if (mismatch === null)
|
|
110
|
+
return 'fixture background: NOT CHECKED';
|
|
111
|
+
return mismatch ? 'fixture backgrounds DIFFER, so this distance is confounded' : 'fixture backgrounds match';
|
|
112
|
+
}
|
|
76
113
|
function addPair(pairs, fingerprints, a, b, group, tolerance) {
|
|
77
114
|
const dist = distance(fingerprints.get(a), fingerprints.get(b));
|
|
78
115
|
if (dist !== null)
|
|
@@ -315,13 +352,19 @@ export function explainCaptureVerificationStall(verification, waitedMs) {
|
|
|
315
352
|
export function formatCaptureParityRanking(checks, limit = 10) {
|
|
316
353
|
const measured = checks
|
|
317
354
|
.filter((check) => check.kind === 'parity' && typeof check.distance === 'number')
|
|
318
|
-
.map((check) => ({
|
|
355
|
+
.map((check) => ({
|
|
356
|
+
distance: check.distance,
|
|
357
|
+
entry: check.entry,
|
|
358
|
+
// `undefined` on the check means the determination was never made, which is what NOT CHECKED says.
|
|
359
|
+
fixtureBackground: describeParityFixtureBackground(check.fixtureBackgroundMismatch ?? null),
|
|
360
|
+
renderers: check.renderers ?? [],
|
|
361
|
+
}))
|
|
319
362
|
.sort((a, b) => b.distance - a.distance || a.entry.localeCompare(b.entry));
|
|
320
363
|
if (measured.length === 0)
|
|
321
364
|
return null;
|
|
322
365
|
const shown = measured.slice(0, limit);
|
|
323
366
|
const median = measured[measured.length >> 1].distance;
|
|
324
|
-
const lines = shown.map((row) => ` ${row.distance.toFixed(2)} ${row.entry} ${row.renderers.join('·')}`);
|
|
367
|
+
const lines = shown.map((row) => ` ${row.distance.toFixed(2)} ${row.entry} ${row.renderers.join('·')} — ${row.fixtureBackground}`);
|
|
325
368
|
const omitted = measured.length - shown.length;
|
|
326
369
|
return [
|
|
327
370
|
` widest parity distances (${measured.length} compared, median ${median.toFixed(2)}):`,
|
|
@@ -536,6 +579,8 @@ async function processEntry(entry, entryIndex, totalEntries, isAborted, options,
|
|
|
536
579
|
// deriving coverage by subtracting skips would call every one of those targets lost.
|
|
537
580
|
result.covered.push(formatCaptureBaselineCoverageIdentity(entry.name, renderer));
|
|
538
581
|
const dist = distance(fingerprint, committed);
|
|
582
|
+
const contrast = getCaptureFingerprintContrast(committed);
|
|
583
|
+
const contrastMessage = contrast === null ? '' : ` — baseline contrast ${contrast.toFixed(2)} (report only)`;
|
|
539
584
|
eligible.set(renderer, fingerprint);
|
|
540
585
|
if (dist === null) {
|
|
541
586
|
result.output.push(statusLine('fail', renderer, 'unreadable fingerprint baseline'));
|
|
@@ -549,13 +594,14 @@ async function processEntry(entry, entryIndex, totalEntries, isAborted, options,
|
|
|
549
594
|
});
|
|
550
595
|
}
|
|
551
596
|
else if (options.report) {
|
|
552
|
-
result.output.push(detailLine(pc.dim('='), renderer, pc.dim(`regression distance ${dist.toFixed(2)}`), pc.dim));
|
|
597
|
+
result.output.push(detailLine(pc.dim('='), renderer, pc.dim(`regression distance ${dist.toFixed(2)}${contrastMessage}`), pc.dim));
|
|
553
598
|
result.checks.push({
|
|
554
599
|
entry: entry.name,
|
|
555
600
|
renderers: [renderer],
|
|
556
601
|
kind: 'regression',
|
|
557
602
|
status: 'reported',
|
|
558
|
-
message: `regression distance ${dist.toFixed(2)}`,
|
|
603
|
+
message: `regression distance ${dist.toFixed(2)}${contrastMessage}`,
|
|
604
|
+
contrast: contrast ?? undefined,
|
|
559
605
|
distance: dist,
|
|
560
606
|
threshold: options.regressionTolerance,
|
|
561
607
|
});
|
|
@@ -572,7 +618,7 @@ async function processEntry(entry, entryIndex, totalEntries, isAborted, options,
|
|
|
572
618
|
const freshness = classifyCaptureBaselineFreshness(recordedSourceHash, currentSourceHash);
|
|
573
619
|
const freshnessMessage = describeCaptureBaselineFreshness(freshness, check.pass, fingerprintProvenanceStatus);
|
|
574
620
|
if (!check.pass) {
|
|
575
|
-
const message = `regression ${dist.toFixed(2)} > ${options.regressionTolerance} — ${freshnessMessage}`;
|
|
621
|
+
const message = `regression ${dist.toFixed(2)} > ${options.regressionTolerance}${contrastMessage} — ${freshnessMessage}`;
|
|
576
622
|
result.output.push(statusLine('fail', renderer, message));
|
|
577
623
|
result.regressionFailures++;
|
|
578
624
|
result.checks.push({
|
|
@@ -583,6 +629,7 @@ async function processEntry(entry, entryIndex, totalEntries, isAborted, options,
|
|
|
583
629
|
message,
|
|
584
630
|
distance: dist,
|
|
585
631
|
threshold: options.regressionTolerance,
|
|
632
|
+
contrast: contrast ?? undefined,
|
|
586
633
|
sourceHashStatus: freshness.status,
|
|
587
634
|
fingerprintProvenanceStatus,
|
|
588
635
|
recordedSourceHash,
|
|
@@ -590,7 +637,7 @@ async function processEntry(entry, entryIndex, totalEntries, isAborted, options,
|
|
|
590
637
|
});
|
|
591
638
|
}
|
|
592
639
|
else {
|
|
593
|
-
const message = `regression ${dist.toFixed(2)} ≤ ${options.regressionTolerance} — ${freshnessMessage}`;
|
|
640
|
+
const message = `regression ${dist.toFixed(2)} ≤ ${options.regressionTolerance}${contrastMessage} — ${freshnessMessage}`;
|
|
594
641
|
result.output.push(statusLine('pass', renderer, message));
|
|
595
642
|
result.regressionPasses++;
|
|
596
643
|
result.checks.push({
|
|
@@ -601,6 +648,7 @@ async function processEntry(entry, entryIndex, totalEntries, isAborted, options,
|
|
|
601
648
|
message,
|
|
602
649
|
distance: dist,
|
|
603
650
|
threshold: options.regressionTolerance,
|
|
651
|
+
contrast: contrast ?? undefined,
|
|
604
652
|
sourceHashStatus: freshness.status,
|
|
605
653
|
fingerprintProvenanceStatus,
|
|
606
654
|
recordedSourceHash,
|
|
@@ -687,17 +735,24 @@ async function processEntry(entry, entryIndex, totalEntries, isAborted, options,
|
|
|
687
735
|
}
|
|
688
736
|
if (pairs.length > 0) {
|
|
689
737
|
if (options.report) {
|
|
690
|
-
const segments = pairs
|
|
738
|
+
const segments = pairs
|
|
739
|
+
.map((p) => {
|
|
740
|
+
const state = findParityFixtureBackgroundMismatch(options.root, options.subject, entry.name, p.a, p.b);
|
|
741
|
+
return `${p.label} ${p.dist.toFixed(2)} — ${describeParityFixtureBackground(state)}`;
|
|
742
|
+
})
|
|
743
|
+
.join(' ');
|
|
691
744
|
result.output.push(detailLine(pc.dim('~'), 'parity', pc.dim(segments), pc.dim));
|
|
692
745
|
for (const pair of pairs) {
|
|
746
|
+
const mismatch = findParityFixtureBackgroundMismatch(options.root, options.subject, entry.name, pair.a, pair.b);
|
|
693
747
|
result.checks.push({
|
|
694
748
|
entry: entry.name,
|
|
695
749
|
renderers: [pair.a, pair.b],
|
|
696
750
|
kind: 'parity',
|
|
697
751
|
status: 'reported',
|
|
698
|
-
message: `parity ${pair.label} distance ${pair.dist.toFixed(2)}`,
|
|
752
|
+
message: `parity ${pair.label} distance ${pair.dist.toFixed(2)} — ${describeParityFixtureBackground(mismatch)}`,
|
|
699
753
|
distance: pair.dist,
|
|
700
754
|
threshold: pair.tolerance,
|
|
755
|
+
...(mismatch === null ? {} : { fixtureBackgroundMismatch: mismatch }),
|
|
701
756
|
});
|
|
702
757
|
}
|
|
703
758
|
}
|
|
@@ -706,6 +761,12 @@ async function processEntry(entry, entryIndex, totalEntries, isAborted, options,
|
|
|
706
761
|
const segments = pairs
|
|
707
762
|
.map((p) => {
|
|
708
763
|
const check = evaluateCaptureParity(parityEligible.get(p.a), parityEligible.get(p.b), p.tolerance);
|
|
764
|
+
// Undefined when the question could not be answered; see the field's own documentation for
|
|
765
|
+
// why that is deliberately NOT the same as false. The sentence below renders from this same
|
|
766
|
+
// value, so the message and the field cannot disagree.
|
|
767
|
+
const mismatch = findParityFixtureBackgroundMismatch(options.root, options.subject, entry.name, p.a, p.b);
|
|
768
|
+
const fixtureBackground = mismatch === null ? {} : { fixtureBackgroundMismatch: mismatch };
|
|
769
|
+
const fixtureState = describeParityFixtureBackground(mismatch);
|
|
709
770
|
if (!check.pass) {
|
|
710
771
|
anyFailed = true;
|
|
711
772
|
result.parityFailures++;
|
|
@@ -714,11 +775,12 @@ async function processEntry(entry, entryIndex, totalEntries, isAborted, options,
|
|
|
714
775
|
renderers: [p.a, p.b],
|
|
715
776
|
kind: 'parity',
|
|
716
777
|
status: 'failed',
|
|
717
|
-
message: `parity ${p.label} ${p.dist.toFixed(2)} > ${p.tolerance}`,
|
|
778
|
+
message: `parity ${p.label} ${p.dist.toFixed(2)} > ${p.tolerance} — ${fixtureState}; orientation triage: npm run test:functional:parity:orientation`,
|
|
718
779
|
distance: p.dist,
|
|
719
780
|
threshold: p.tolerance,
|
|
781
|
+
...fixtureBackground,
|
|
720
782
|
});
|
|
721
|
-
return pc.red(`${p.label} ${p.dist.toFixed(2)}>${p.tolerance}`);
|
|
783
|
+
return pc.red(`${p.label} ${p.dist.toFixed(2)}>${p.tolerance} — ${fixtureState}; orientation triage: npm run test:functional:parity:orientation`);
|
|
722
784
|
}
|
|
723
785
|
result.parityPasses++;
|
|
724
786
|
result.checks.push({
|
|
@@ -726,11 +788,12 @@ async function processEntry(entry, entryIndex, totalEntries, isAborted, options,
|
|
|
726
788
|
renderers: [p.a, p.b],
|
|
727
789
|
kind: 'parity',
|
|
728
790
|
status: 'passed',
|
|
729
|
-
message: `parity ${p.label} ${p.dist.toFixed(2)} ≤ ${p.tolerance}`,
|
|
791
|
+
message: `parity ${p.label} ${p.dist.toFixed(2)} ≤ ${p.tolerance} — ${fixtureState}`,
|
|
730
792
|
distance: p.dist,
|
|
731
793
|
threshold: p.tolerance,
|
|
794
|
+
...fixtureBackground,
|
|
732
795
|
});
|
|
733
|
-
return pc.dim(`${p.label} ${p.dist.toFixed(2)}`);
|
|
796
|
+
return pc.dim(`${p.label} ${p.dist.toFixed(2)} — ${fixtureState}`);
|
|
734
797
|
})
|
|
735
798
|
.join(' ');
|
|
736
799
|
const paint = anyFailed ? pc.red : pc.green;
|