Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

experimentalModifyObstructiveThirdPartyCode breaking resource integrity checks and page not loading #6091

Closed
1 of 6 tasks
LazaroOnline opened this issue Jan 28, 2025 · 1 comment

Comments

@LazaroOnline
Copy link

LazaroOnline commented Jan 28, 2025

Description

experimentalModifyObstructiveThirdPartyCode breaking resource integrity checks and page not loading

URL of Issue(s)

https://app.fenergonebula.com

Steps to replicate

Create a cypress project (current latest version v14)
with experimentalModifyObstructiveThirdPartyCode set to true,
then create a simple test with this code:

cy.visit('https://app.fenergonebula.com/')

The page https://app.fenergonebula.com that normally loads in any browser, doesn't load.
In the console errors you can see that the error is due to
the JS resource integrity checks failing and thus not loading the page's JS:

Failed to find a valid digest in the 'integrity' attribute for resource
Image

It seems like experimentalModifyObstructiveThirdPartyCode
is modifying some of those JS tyring to de-obfuscate it,
but Cypress fails to disable the resource integrity checks.

The flag experimentalModifyObstructiveThirdPartyCode is required
because the test needs to load Microsof'ts login page,
which is required according to this official guide for AAD.

Since the flag experimentalModifyObstructiveThirdPartyCode is global
and not configurable dynamically,
I can't disable it during the page load.

The target application uses script tags with integrity:

<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/import-map-overrides.js" integrity="sha384-0bYMu4/iGlEDQ5Qv9gRHYUmeA4dccvzUAosASac3DYtJQLEVfcJaZsZvLKoKgPYx" crossorigin="anonymous"></script>

Browser

Google Chrome 131(64-bit)

Device

  • PC
  • Mac
  • iPhone
  • iPad
  • Android Phone
  • Android Tablet

Additional Information

No response

@LazaroOnline
Copy link
Author

Sorry, wrong repo, I meant to create this issue into cypress, not the documentation.
I will close this issue and use the other one:
cypress-io/cypress#30960

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant