diff --git a/scripts/smoke-web-app.mjs b/scripts/smoke-web-app.mjs index 72720427..cd1e9323 100644 --- a/scripts/smoke-web-app.mjs +++ b/scripts/smoke-web-app.mjs @@ -44,9 +44,13 @@ * ── Which engine ──────────────────────────────────────────────────────────── * * `SMOKE_BROWSER` picks the engine (`chromium` — the default — `firefox`, or - * `webkit`). **CI runs Chromium only.** The other engines are an on-demand tool, - * not a gate: `SMOKE_BROWSER=firefox npm run smoke:web:engine` before touching - * the sandbox is cheap and worth doing, but nothing runs it for you (#2086). + * `webkit`). Three tiers, deliberately (#2086): + * + * - **GitHub CI** runs this smoke in **Chromium** only. + * - **`npm run ci`**, the local pre-push gate, runs it in **Chromium and + * Firefox** — the Firefox pass is `smoke:web:firefox`, and it is the one + * gate step with no GitHub CI counterpart. + * - **WebKit is on demand only**: `SMOKE_BROWSER=webkit npm run smoke:web:app`. * * Firefox passes. WebKit fails this smoke for reasons nobody has identified and * nobody is investigating: it does not reproduce in real Safari, and an isolated diff --git a/scripts/smoke-web-browser.mjs b/scripts/smoke-web-browser.mjs index 65cc2f52..04342cf2 100644 --- a/scripts/smoke-web-browser.mjs +++ b/scripts/smoke-web-browser.mjs @@ -46,8 +46,9 @@ * Launching the browser (and resolving Playwright from clients/web, which has * its own gotcha — see `lib/headless-browser.mjs`) is delegated to that module, * which is also where `SMOKE_BROWSER` picks the engine: `chromium` (the - * default), `firefox`, or `webkit` (#2086). **CI runs Chromium only**; the other - * engines are an on-demand tool rather than a gate. This smoke passes in all + * default), `firefox`, or `webkit` (#2086). GitHub CI runs this in **Chromium** + * only; `npm run ci`, the local pre-push gate, also runs it in **Firefox** via + * `smoke:web:firefox`; **WebKit is on demand only**. This smoke passes in all * three — it is the two App smokes that fail under WebKit (see their headers). * * The engine question here is narrower than in the App smokes — this asserts a clean diff --git a/scripts/smoke-web-elicitation.mjs b/scripts/smoke-web-elicitation.mjs index 4c485ee0..364ea730 100644 --- a/scripts/smoke-web-elicitation.mjs +++ b/scripts/smoke-web-elicitation.mjs @@ -25,9 +25,13 @@ * proof to a PR); unset, it asserts only. * * `SMOKE_BROWSER` picks the engine (`chromium` — the default — `firefox`, or - * `webkit`). **CI runs Chromium only.** The other engines are an on-demand tool, - * not a gate: `SMOKE_BROWSER=firefox npm run smoke:web:engine` before touching - * the sandbox is cheap and worth doing, but nothing runs it for you (#2086). + * `webkit`). Three tiers, deliberately (#2086): + * + * - **GitHub CI** runs this smoke in **Chromium** only. + * - **`npm run ci`**, the local pre-push gate, runs it in **Chromium and + * Firefox** — the Firefox pass is `smoke:web:firefox`, and it is the one + * gate step with no GitHub CI counterpart. + * - **WebKit is on demand only**: `SMOKE_BROWSER=webkit npm run smoke:web:app`. * * Firefox passes. WebKit fails this smoke for reasons nobody has identified and * nobody is investigating: it does not reproduce in real Safari, and an isolated