generateUboSyncPolyfillWGSL returns a 3-arg sync (uniforms, data, offset),
but UboSystem.syncUniformGroup calls it with 4 args (uniforms, data, dataInt32, offset)
(matching the eval build's new Function("uv","data","dataInt32","offset", …)).
Result: the numeric offset lands in the dataInt32 slot and every custom UniformGroup's UBO stays all-zero
under a strict CSP (where the polyfill is mandatory) — custom WGSL shaders render blank on WebGPU.
loading pixi.js@8.19.0 …