← back to Newmor Onboard
scripts/browser-errors.cjs
15 lines
// Keep these errors visible in evidence. They do not replace any Newmor journey assertion.
// Statcounter was reproduced on unchanged control pages; the other owners are unchanged optional app/telemetry callsites.
exports.backgroundOwner=function(error){
const s=typeof error==='string'?error:(error.stack||'')+'\n'+(error.message||'');
if(/statcounter\.com\/counter\/counter\.js/.test(s)&&/Blocked a frame|Sandbox access/.test(s))return 'Statcounter analytics sandbox; reproduced on unchanged controls';
if(/connect\.facebook\.net/.test(s)&&/Blocked a frame|Sandbox access/.test(s))return 'Meta analytics sandbox; unchanged external callsite';
if(/cowlendar-\d+\/assets\/app\.js|cdn\.sesami\.co\/shopify\.js|storefront\.sesami\.co/.test(s))return 'Optional booking app; actual Newmor inquiry and Sample cart verified separately';
if(/cdn-assets\.custompricecalculator\.com\/shopify\/calculator\.js/.test(s))return 'Optional custom-price calculator; Newmor material pricing uses showroom inquiry';
if(/static\.zdassets\.com|designerwallcoverings\.zendesk\.com/.test(s))return 'Optional Zendesk widget; direct showroom phone/email verified';
if(/otlp-http-production\.shopifysvc\.com\/v1\/metrics/.test(s))return 'Shopify background telemetry';
if(/mycustomizer/.test(s))return 'Optional customizer app; Newmor Sample cart verified separately';
return null;
};
exports.sanitize=s=>s.replace(/\?[^\s)]+/g,'[query omitted]');