From f90015dd12e02d373903116c79067a7413ce0078 Mon Sep 17 00:00:00 2001 From: Jonathan Kingston Date: Fri, 5 Dec 2025 10:34:52 +0000 Subject: [PATCH 1/4] Enhance breakage reporting with opener and reload checks Added checks for opener and page reload status based on feature settings. --- injected/src/features/breakage-reporting.js | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/injected/src/features/breakage-reporting.js b/injected/src/features/breakage-reporting.js index 55cd074063..b0a9ca688c 100644 --- a/injected/src/features/breakage-reporting.js +++ b/injected/src/features/breakage-reporting.js @@ -16,6 +16,20 @@ export default class BreakageReporting extends ContentFeature { referrer, }; + const getOpener = this.getFeatureSettingEnabled('opener', 'enabled'); + if (getOpener) { + result.opener = !!window.opener; + } + const getReloaded = this.getFeatureSettingEnabled('getReloaded', 'enabled'); + if (getReloaded) { + result.pageReloaded = + (window.performance.navigation && window.performance.navigation.type === 1) || + window.performance + .getEntriesByType('navigation') + .map((nav) => nav.type) + .includes('reload'); + } + // Only run detectors if explicitly configured const detectorSettings = this.getFeatureSetting('interferenceTypes', 'webInterferenceDetection'); if (detectorSettings) { From f70c326e6fcf5131465b750eb5448ca757acccb8 Mon Sep 17 00:00:00 2001 From: Jonathan Kingston Date: Fri, 5 Dec 2025 15:16:21 +0000 Subject: [PATCH 2/4] Fix performance navigation check for page reload --- injected/src/features/breakage-reporting.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/injected/src/features/breakage-reporting.js b/injected/src/features/breakage-reporting.js index b0a9ca688c..fe96e5acf2 100644 --- a/injected/src/features/breakage-reporting.js +++ b/injected/src/features/breakage-reporting.js @@ -24,8 +24,8 @@ export default class BreakageReporting extends ContentFeature { if (getReloaded) { result.pageReloaded = (window.performance.navigation && window.performance.navigation.type === 1) || - window.performance - .getEntriesByType('navigation') + /** @type {PerformanceNavigationTiming[]} */ + (window.performance.getEntriesByType('navigation')) .map((nav) => nav.type) .includes('reload'); } From afaa5084304617bc1c7e732342f956d089721308 Mon Sep 17 00:00:00 2001 From: Jonathan Kingston Date: Fri, 5 Dec 2025 15:20:46 +0000 Subject: [PATCH 3/4] Lint fix --- injected/src/features/breakage-reporting.js | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/injected/src/features/breakage-reporting.js b/injected/src/features/breakage-reporting.js index fe96e5acf2..046a948da8 100644 --- a/injected/src/features/breakage-reporting.js +++ b/injected/src/features/breakage-reporting.js @@ -23,11 +23,9 @@ export default class BreakageReporting extends ContentFeature { const getReloaded = this.getFeatureSettingEnabled('getReloaded', 'enabled'); if (getReloaded) { result.pageReloaded = - (window.performance.navigation && window.performance.navigation.type === 1) || - /** @type {PerformanceNavigationTiming[]} */ - (window.performance.getEntriesByType('navigation')) - .map((nav) => nav.type) - .includes('reload'); + (window.performance.navigation && window.performance.navigation.type === 1) || + /** @type {PerformanceNavigationTiming[]} */ + (window.performance.getEntriesByType('navigation')).map((nav) => nav.type).includes('reload'); } // Only run detectors if explicitly configured From 993eac73ec606f2b89b3d6962e98b9e2920e5fd4 Mon Sep 17 00:00:00 2001 From: Jonathan Kingston Date: Fri, 5 Dec 2025 15:21:53 +0000 Subject: [PATCH 4/4] Rename key --- injected/src/features/breakage-reporting.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/injected/src/features/breakage-reporting.js b/injected/src/features/breakage-reporting.js index 046a948da8..a7bed4042f 100644 --- a/injected/src/features/breakage-reporting.js +++ b/injected/src/features/breakage-reporting.js @@ -20,7 +20,7 @@ export default class BreakageReporting extends ContentFeature { if (getOpener) { result.opener = !!window.opener; } - const getReloaded = this.getFeatureSettingEnabled('getReloaded', 'enabled'); + const getReloaded = this.getFeatureSettingEnabled('reloaded', 'enabled'); if (getReloaded) { result.pageReloaded = (window.performance.navigation && window.performance.navigation.type === 1) ||