tuffgal 0.2.2-alpha.1 → 0.3.0-alpha.1

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/CHANGELOG.md CHANGED
@@ -8,6 +8,19 @@ this project uses [Pride Versioning](https://pridever.org) → `PROUD.DEFAULT.SH
8
8
 
9
9
  _Nothing just yet_
10
10
 
11
+ ## [0.3.0-alpha.1] – 2026-09-03
12
+
13
+ ### Added
14
+
15
+ `diff.maxDiffPixels`, a per-action budget for how many pixels may differ
16
+ and still pass. An action now passes only when it clears both mean SSIM at
17
+ or above `ssimThreshold` and differing pixels at or under `maxDiffPixels`.
18
+
19
+ ### Changed
20
+
21
+ **Breaking default.** `maxDiffPixels` defaults to `0`, so a run that used
22
+ to pass on SSIM tolerance alone can now report `changed`.
23
+
11
24
  ## [0.2.2-alpha.1] – 2026-09-01
12
25
 
13
26
  ### Added
@@ -363,7 +376,8 @@ styling or interactivity.
363
376
  Initial public alpha. Tuffgal extracted from [Linklater](https://github.com/nschneble/linklater)'s
364
377
  in-tree visual testing workspace.
365
378
 
366
- [Unreleased]: https://github.com/nschneble/tuffgal/compare/v0.2.2-alpha.1...HEAD
379
+ [Unreleased]: https://github.com/nschneble/tuffgal/compare/v0.3.0-alpha.1...HEAD
380
+ [0.3.0-alpha.1]: https://github.com/nschneble/tuffgal/releases/tag/v0.3.0-alpha.1
367
381
  [0.2.2-alpha.1]: https://github.com/nschneble/tuffgal/releases/tag/v0.2.2-alpha.1
368
382
  [0.2.1-alpha.1]: https://github.com/nschneble/tuffgal/releases/tag/v0.2.1-alpha.1
369
383
  [0.2.0-alpha.8]: https://github.com/nschneble/tuffgal/releases/tag/v0.2.0-alpha.8
package/README.md CHANGED
@@ -102,8 +102,9 @@ Precedence is `1` > `3` > `2` > `0`. Local mode only ever exits `1` or `0`.
102
102
  - DAG scheduler with `needs`/`produces` labels and parallel workers
103
103
  - CI-owned baselines: CI is the sole writer, local runs are advisory self-diff,
104
104
  approval flows through a CI candidate tree + environment manifest
105
- - SSIM-gated visual diff + pixelmatch overlay + a11y-tree snapshots (in CI an
106
- a11y-tree drift also flips a pixel-passing action to `changed`)
105
+ - Visual diff gated on SSIM **and** a differing-pixel budget, plus a pixelmatch
106
+ overlay and a11y-tree snapshots (in CI an a11y-tree drift also flips a
107
+ pixel-passing action to `changed`)
107
108
  - Trace zip on failure (Playwright trace viewer)
108
109
  - Clock freeze (`page.clock.install`)
109
110
  - Storage-state persistence across stories
@@ -1 +1 @@
1
- {"version":3,"file":"runAction.d.ts","sourceRoot":"","sources":["../../src/runner/runAction.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAW,IAAI,EAAE,MAAM,YAAY,CAAC;AAEhD,OAAO,KAAK,EAAE,MAAM,EAAc,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAgB,MAAM,qBAAqB,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAoBnD,OAAO,EAAqB,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAa5D,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,cAAc,CAAC;IACvB;;;;OAIG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;;;;;;;;;;;;OAaG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAMD;;;;;;GAMG;AACH,wBAAsB,SAAS,CAC7B,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,YAAY,CAAC,CA8EvB;AAqiBD,qBAAa,wBAAyB,SAAQ,KAAK;IACjD,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IACpD,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;gBAE3B,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAC1C,UAAU,EAAE,OAAO,EACnB,SAAS,EAAE,MAAM;CAYpB"}
1
+ {"version":3,"file":"runAction.d.ts","sourceRoot":"","sources":["../../src/runner/runAction.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAW,IAAI,EAAE,MAAM,YAAY,CAAC;AAEhD,OAAO,KAAK,EAAE,MAAM,EAAc,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAgB,MAAM,qBAAqB,CAAC;AACtE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAoBnD,OAAO,EAAqB,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAa5D,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,cAAc,CAAC;IACvB;;;;OAIG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;;;;;;;;;;;;OAaG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAMD;;;;;;GAMG;AACH,wBAAsB,SAAS,CAC7B,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,YAAY,CAAC,CA8EvB;AA0iBD,qBAAa,wBAAyB,SAAQ,KAAK;IACjD,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IACpD,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;gBAE3B,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAC1C,UAAU,EAAE,OAAO,EACnB,SAAS,EAAE,MAAM;CAYpB"}
@@ -267,15 +267,20 @@ async function captureAndCompare(options) {
267
267
  try {
268
268
  const pixelThreshold = action.diff?.pixelThreshold ?? 0.1;
269
269
  const ssimThreshold = action.diff?.ssimThreshold ?? 0.99;
270
- // Score first (SSIM plus the reported pixel metrics) without encoding
270
+ const maxDiffPixels = action.diff?.maxDiffPixels ?? 0;
271
+ // Score first (SSIM plus the differing-pixel count) without encoding
271
272
  // the overlay. The red-highlight diff image is expensive to encode and is
272
273
  // discarded on a pass, so it is rendered only on the changed branch below.
273
274
  // One decode of the pair serves both the score and (on the changed branch
274
275
  // below) the overlay render. `decoded` is threaded into renderDiffOverlay
275
276
  // so the failing path reads the image pair once, not twice.
276
277
  const { score, decoded } = scoreDiff(baselinePng, actualPng, pixelThreshold);
278
+ // Both are necessary: SSIM's tolerance band absorbs real drift that is
279
+ // small and localised, and a pixel count alone misses a structurally
280
+ // different page whose differing pixels happen to be few
277
281
  const passesSsim = score.ssimScore >= ssimThreshold;
278
- if (passesSsim) {
282
+ const passesPixels = score.diffPixels <= maxDiffPixels;
283
+ if (passesSsim && passesPixels) {
279
284
  await deleteIfExists(paths.diff);
280
285
  // A11y-only drift: pixels match but the committed aria snapshot has moved.
281
286
  // In CI mode this must surface as `changed` with a candidate pair, not a
@@ -1 +1 @@
1
- {"version":3,"file":"runAction.js","sourceRoot":"","sources":["../../src/runner/runAction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runAction.js","sourceRoot":"","sources":["../../src/runner/runAction.ts"],"names":[],"mappings":"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"}
@@ -531,6 +531,7 @@ export declare const actionSchema: z.ZodObject<{
531
531
  diff: z.ZodOptional<z.ZodObject<{
532
532
  pixelThreshold: z.ZodDefault<z.ZodNumber>;
533
533
  ssimThreshold: z.ZodDefault<z.ZodNumber>;
534
+ maxDiffPixels: z.ZodDefault<z.ZodNumber>;
534
535
  }, z.core.$strip>>;
535
536
  }, z.core.$strip>;
536
537
  export type Action = z.infer<typeof actionSchema>;
@@ -1 +1 @@
1
- {"version":3,"file":"action.d.ts","sourceRoot":"","sources":["../../src/schema/action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;GAKG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAkCrB,CAAC;AAEH,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAqB9C,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BA0GrB,CAAC;AAEH,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAE9C,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAwDvB,CAAC;AAEH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"action.d.ts","sourceRoot":"","sources":["../../src/schema/action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;GAKG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAkCrB,CAAC;AAEH,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAqB9C,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BA0GrB,CAAC;AAEH,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAE9C,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAiEvB,CAAC;AAEH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC"}
@@ -205,17 +205,26 @@ export const actionSchema = z.object({
205
205
  .object({
206
206
  /**
207
207
  * Pixelmatch per-pixel similarity. Tighter values flag more pixels
208
- * as changed; loosens anti-aliasing tolerance as it grows. Only
209
- * controls how the diff PNG is computed. It does not gate the
210
- * action's pass/changed status.
208
+ * as changed; loosens anti-aliasing tolerance as it grows. It sets
209
+ * what counts as a differing pixel, so it feeds both the diff PNG
210
+ * and the `maxDiffPixels` count below, but gates nothing on its own.
211
211
  */
212
212
  pixelThreshold: z.number().min(0).max(1).default(0.1),
213
213
  /**
214
- * Mean SSIM score threshold. Action passes when the score is at
215
- * least this high. 1.0 = identical; 0.99 = the default and roughly
216
- * corresponds to "no perceptible change."
214
+ * Mean SSIM score threshold. 1.0 = identical; 0.99 = the default and
215
+ * roughly corresponds to "no perceptible change." One of the two
216
+ * conditions an action must meet to pass; `maxDiffPixels` is the other.
217
217
  */
218
218
  ssimThreshold: z.number().min(0).max(1).default(0.99),
219
+ /**
220
+ * How many differing pixels an action may report and still pass.
221
+ * Defaults to 0, so a deterministic suite demands exact pixel
222
+ * identity: SSIM's tolerance band absorbs small localised drift
223
+ * that is real, and this is the condition that catches it. Raise it
224
+ * per action for a suite that genuinely cannot reach zero (unpinned
225
+ * browser, hinted fonts).
226
+ */
227
+ maxDiffPixels: z.number().min(0).default(0),
219
228
  })
220
229
  .optional(),
221
230
  });
@@ -1 +1 @@
1
- {"version":3,"file":"action.js","sourceRoot":"","sources":["../../src/schema/action.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"action.js","sourceRoot":"","sources":["../../src/schema/action.ts"],"names":[],"mappings":"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"}
@@ -35,9 +35,9 @@ export interface ScoredDiff {
35
35
  /**
36
36
  * Diffing is split into two phases so the common case stays cheap:
37
37
  *
38
- * 1. {@link scoreDiff}: the gate. Computes SSIM (the pass/changed
39
- * decision) plus the pixel metrics reported on every outcome
40
- * (`diffPixels`, `diffRatio`). It runs pixelmatch in count-only mode
38
+ * 1. {@link scoreDiff}: the gate. Computes the two metrics the pass/changed
39
+ * decision reads, `ssimScore` and `diffPixels`, plus the `diffRatio`
40
+ * reported alongside them. It runs pixelmatch in count-only mode
41
41
  * (no output buffer) and never encodes a diff image. It also returns the
42
42
  * {@link DecodedPair} it read, so the changed branch can render its
43
43
  * overlay without a second decode.
@@ -4,9 +4,9 @@ import { ssim as computeSsim } from 'ssim.js';
4
4
  /**
5
5
  * Diffing is split into two phases so the common case stays cheap:
6
6
  *
7
- * 1. {@link scoreDiff}: the gate. Computes SSIM (the pass/changed
8
- * decision) plus the pixel metrics reported on every outcome
9
- * (`diffPixels`, `diffRatio`). It runs pixelmatch in count-only mode
7
+ * 1. {@link scoreDiff}: the gate. Computes the two metrics the pass/changed
8
+ * decision reads, `ssimScore` and `diffPixels`, plus the `diffRatio`
9
+ * reported alongside them. It runs pixelmatch in count-only mode
10
10
  * (no output buffer) and never encodes a diff image. It also returns the
11
11
  * {@link DecodedPair} it read, so the changed branch can render its
12
12
  * overlay without a second decode.
@@ -28,7 +28,7 @@ export function scoreDiff(baseline, actual, pixelThreshold) {
28
28
  const { baselinePng, actualPng } = decoded;
29
29
  // Count-only: passing `undefined` as the output buffer makes pixelmatch
30
30
  // tally differing pixels without allocating or filling an overlay. The
31
- // metric feeds `diffPixels`/`diffRatio` reporting, not a written image.
31
+ // tally feeds `diffPixels`/`diffRatio`, not a written image.
32
32
  const diffPixels = pixelmatch(baselinePng.data, actualPng.data, undefined, baselinePng.width, baselinePng.height, { threshold: pixelThreshold });
33
33
  const totalPixels = baselinePng.width * baselinePng.height;
34
34
  const ssimResult = computeSsim({
@@ -1 +1 @@
1
- {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../src/screenshots/diff.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../src/screenshots/diff.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tuffgal",
3
- "version": "0.2.2-alpha.1",
3
+ "version": "0.3.0-alpha.1",
4
4
  "description": "JSON-driven visual regression for web apps.",
5
5
  "license": "MIT",
6
6
  "author": "Nick Schneble",