mirror of
https://github.com/heygen-com/hyperframes.git
synced 2026-09-01 19:42:03 +00:00
chore(cli): bump pinned Chromium to 152.0.7977.30 (#3231)
Picks up crbug 522872457's fix (CL 8032671), which landed after the 152.0.7935.0 canary cut and so was absent from the old 152.0.7928.2 pin. Re-probed every 3D signal the compile gate matches, drawElementImage vs a CDP screenshot of the identical state, on the shipping headless-shell binary. PSNR, old pin -> new pin: backface-visibility:hidden 1.4 dB -> 14.8 dB still DAMAGED preserve-3d (no backface) 46.7 dB -> 46.7 dB clean perspective() 45.2 dB -> 45.2 dB clean matrix3d() 45.2 dB -> 45.2 dB clean rotate3d() 45.3 dB -> 45.3 dB clean translateZ under perspective 29.9 dB -> 29.9 dB marginal The upstream fix repaired the collateral damage only: dropped sibling content and lost backgrounds now render, but a culled backface is still painted. So the 3D gate stays. Beta rather than Canary because 153.0.8000.0 measured identical on every variant. Follow-up filed as PRINFRA-486: four of the five signals the gate matches were never broken on any build tested, so it may be able to narrow to backface-visibility alone. Needs a corpus eval first — this probe covers static angles only, and animated 3D subtrees take a different path.
This commit is contained in:
@@ -20,7 +20,22 @@ async function loadPuppeteerBrowsers(): Promise<PuppeteerBrowsers> {
|
||||
}
|
||||
}
|
||||
|
||||
const CHROME_VERSION = "152.0.7928.2";
|
||||
// Bumped from 152.0.7928.2 on 2026-08-10 to pick up crbug 522872457's fix
|
||||
// (CL 8032671, "Force-merge PendingLayer for canvas child descendant", merged
|
||||
// 2026-07-07 — after the 152.0.7935.0 canary cut, so the old pin predated it).
|
||||
//
|
||||
// Measured on the shipping headless-shell binary, drawElementImage vs a CDP
|
||||
// screenshot of the identical state:
|
||||
// sibling content dropped from 3D captures — FIXED
|
||||
// background lost from 3D captures — FIXED
|
||||
// backface-visibility:hidden ignored — STILL BROKEN (1.4 dB -> 14.8 dB;
|
||||
// better, still far under the
|
||||
// 32 dB floor)
|
||||
// So the 3D compile gate must stay. See PRINFRA-486.
|
||||
//
|
||||
// Deliberately Beta, not Canary. 153.0.8000.0 measured identical to this build
|
||||
// on every probe variant, so crossing a major buys nothing measurable.
|
||||
const CHROME_VERSION = "152.0.7977.30";
|
||||
const CACHE_ROOT_DIR = join(homedir(), ".cache", "hyperframes");
|
||||
const CACHE_DIR = join(homedir(), ".cache", "hyperframes", "chrome");
|
||||
// Puppeteer's managed cache — where `@puppeteer/browsers install
|
||||
@@ -332,7 +347,7 @@ async function findFromCache(): Promise<CacheLookupResult> {
|
||||
// this is the non-`preferManagedChrome` path, which exists so a user who
|
||||
// installed chrome-headless-shell separately (via `@puppeteer/browsers
|
||||
// install`) keeps using that binary instead of being silently switched to
|
||||
// the HF-pinned one. Note `CHROME_VERSION` (above) is a Dev-channel pin
|
||||
// the HF-pinned one. Note `CHROME_VERSION` (above) is a pre-Stable pin
|
||||
// that may be NEWER than a user's puppeteer-cache Stable build — this is
|
||||
// about respecting an explicit prior choice, not "newest wins".
|
||||
const fromPuppeteer = findFromPuppeteerCache();
|
||||
|
||||
Reference in New Issue
Block a user