fix: bind performance evidence to production resources
This commit is contained in:
@@ -25,6 +25,7 @@ interface ObservedEnvironment {
|
||||
reducedMotion: 'no-preference' | 'reduce';
|
||||
saveData: boolean;
|
||||
pageZoom: number;
|
||||
devicePixelRatio: number;
|
||||
browserName: string;
|
||||
browserVersion: string;
|
||||
startedFromAboutBlank: boolean;
|
||||
@@ -98,5 +99,7 @@ export const loadAuthenticatedReferenceRun = async (profile: ReferenceProfile):
|
||||
export const validateObservedReferenceEnvironment = (reference: AuthenticatedReferenceRun, observed: ObservedEnvironment): void => {
|
||||
if (observed.viewport.width !== reference.viewport.width || observed.viewport.height !== reference.viewport.height) throw new Error('Observed viewport does not match the attestation.');
|
||||
if (!observed.visible || observed.reducedMotion !== 'no-preference' || observed.saveData || observed.pageZoom !== 1 || !observed.startedFromAboutBlank) throw new Error('Observed reference environment assertions failed.');
|
||||
const minimumDpr = reference.profile === 'desktop-high' ? 1.5 : 1.25;
|
||||
if (!Number.isFinite(observed.devicePixelRatio) || observed.devicePixelRatio < minimumDpr) throw new Error('Observed device pixel ratio cannot exercise the maximum tier cap.');
|
||||
if (observed.browserName !== 'Chromium' || observed.browserVersion !== reference.browserVersion) throw new Error('Observed browser does not match the attestation.');
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user