fix(nightly): de-flake matrix timeouts, exclude browser tool from fuzz (#349)

Systematic round - attack the failure classes, not one bug at a time:

- Flakiness (Coverage/Extended Matrix flipped green<->red): the generated
  format-matrix conversion tests hardcode a 30s/60s per-test timeout that the
  jobs' VITEST_TEST_TIMEOUT can't override. Heavy conversions under coverage
  instrumentation / full matrix intermittently exceed it. Raise to 120s.
- Schemathesis: html-to-image returns 503 when its headless browser isn't
  present (always, in the fuzz env) - same expected-unavailable class as the
  AI 501s. Exclude it from the fuzz (it can't be exercised without a browser).
- Baseline regen: bump timeout 60->120 min so it can finish now that the
  route sweep (#347) lets the visual specs pass instead of failing+retrying.
This commit is contained in:
SnapOtter
2026-06-25 00:14:45 +08:00
committed by GitHub
parent 078743d6b2
commit bbad953e79
6 changed files with 6 additions and 6 deletions
@@ -955,7 +955,7 @@ describe("Extended conversion targets (core formats)", () => {
if (fmt.name.toLowerCase() === target.format) continue;
if (fmt.name === "AVIF" && target.format === "avif") continue;
const testTimeout = target.format === "avif" || target.format === "gif" ? 120_000 : 30_000;
const testTimeout = target.format === "avif" || target.format === "gif" ? 120_000 : 120_000;
it(`${fmt.name} -> ${target.format}`, { timeout: testTimeout }, async () => {
const res = await callTool("convert", fmt, { format: target.format });
if (!res) return;