Commit Graph

2767 Commits

Author SHA1 Message Date
Matt Schile
bc219eb5bd chore: update debug logs (#32772) 2025-10-21 10:03:52 -06:00
renovate[bot]
7958903e18 chore(deps): update dependency devtools-protocol to v0.0.1528500 (#32729)
* chore(deps): update dependency devtools-protocol to v0.0.1528500

* empty commit

* circle cache

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-10-16 16:11:04 -04:00
Bill Glesias
e927cf7493 chore: fix local login flow where detecting machine ID is having ts-node interopt issues when loading the machine-id library (#32727) 2025-10-15 16:51:29 -05:00
Ryan Manuel
a2adeabc5a fix: improve the performance of resetting the browser state by not resetting file_systems (#32703)
* fix: improve the performance of resetting the browser state by removing file_systems which is not something we need to reset

* fix test

* add changelog entry

* fix electron

* Apply suggestions from code review
2025-10-15 14:10:26 -05:00
Matt Schile
a88da666a9 internal: create studio lifecycle manager when simulating open mode (#32705) 2025-10-15 12:42:27 -06:00
Bill Glesias
4d904e272f chore: refactor @packages/https-proxy to TypeScript and use vitest instead of mocha (#32718)
* chore: convert @packages/https-proxy to TypeScript and use vitest instead of mocha

* chore: address comments from code review

* Update packages/https-proxy/vitest.config.ts
2025-10-15 14:00:41 -04:00
Cacie Prins
86d9c842c7 feat: exit with code 112 when api errors prevent cloud orchestrated runs (record mode, parallel run mode) (#32635)
* feat: exit with code 112 on fatal api errors when posix error codes are enabled

* rm dead code

* ts

* system tests for 112 exit code

* fix race condition w/ exit codes

* only 112 on network errors, not http errors

* have connection timeouts run a little bit faster in system tests

* new schema for network errors

* 112 should only be on network errors, update integration test

* changelog

* changelog

* coerce boolean

* code review

* review

* rm extra debug
2025-10-14 11:35:00 -04:00
Bill Glesias
cf73b8a1d9 chore: package @packages/network as an independent bundle (#32633)
* chore: refactor network into two packages, network and network-tools. network-tools is expected to be used in simple environments, where network is intended to be used in the node context. additionally, makes these packages bundable and removes the ts-node entrypoint to make ESM possible.

* chore: sync cloud validations after building packages as the network libs are needed

* chore: fix cloud specs

* remove building packages for requiring build step for creating publish artifacts

* update ts-ignores with reasoning and fix cookie bug (though it shouldn't do this by reference

* bump cache

* update pull-request job as well
2025-10-10 13:41:51 -04:00
Jennifer Shehane
24304a62d0 chore: update errors to be stringified when object (#32663)
* chore: update errors to be stringified when object

* handle circular dependencies

* add serialize-error npm package

* downgrade serialize-error to cjs compatible version

* move to prod dep

* move safeErrorSerialize further out into Cloud dir

* remove redundancies in studio tests

* handle undefined

* fix undefined
2025-10-09 10:36:46 -04:00
Matt Schile
74bae6484a internal: (studio) display cert error (#32657) 2025-10-07 10:07:02 -06:00
Ryan Manuel
e3f4064ac1 internal: rename excludeFromAI type (#32653)
* Create cy-prompt-development.md

* chore: cy prompt infrastructure (#31748)

* feat: cy prompt infrastructure

* refactor and add tests

* refactor

* rename experimental config

* prompt

* fix test

* Update cy-prompt-development.md

* Update cy-prompt-development.md

* PR comments

* Update packages/server/lib/cloud/api/cy-prompt/get_cy_prompt_bundle.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* PR comments

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix test

* Delete packages/server/lib/cloud/StudioLifecycleManager.ts

* Delete packages/server/test/unit/cloud/StudioLifecycleManager_spec.ts

* chore: add cdp connection to cy prompt (#31806)

* chore: add cdp connection to cy prompt

* minor fix

* fix type build

* try to fix build

* Update packages/server/lib/browsers/browser-cri-client.ts

Co-authored-by: Bill Glesias <bglesias@gmail.com>

* Update packages/server/lib/browsers/browser-cri-client.ts

Co-authored-by: Bill Glesias <bglesias@gmail.com>

* do not support prompt in firefox or webkit

* rework timing of lifecycle

* refactor

* fix tests

* troubleshooting

* troubleshooting

* fix tests

* additional troubleshooting

* additional troubleshooting

* additional troubleshooting

* attempt to fix build

* add back

* debugging

* debugging

* debugging

* debugging

* clean up

* fix unit tests

* rework

---------

Co-authored-by: Bill Glesias <bglesias@gmail.com>

* chore: create infrastructure to support backend function in cy.prompt (#31803)

* chore: add promptBackend as an additional Cypress-attached function

* Update packages/app/src/runner/event-manager.ts

* update types

* fix types

* fix spacing

* refactor

* additional refactor

* fix type build

* fix build

* refactor

* reword messages

* fix

* debugging

* undo debugging

* PR comment

* fix tests

* fix tests

* fix tests

* fix test

* chore: add watcher for cy-prompt development (#31810)

* chore: add watcher for cy-prompt development

* test caching

* fix types

* chore: turn on beta deployments for cy-prompt

* internal: (cy.prompt) handle errors better in the command definition (#31835)

* internal: (cy.prompt) handle errors better in the command definition

* internal: (cy.prompt) add timeout and handle loading errors more cleanly

* add process environment variable

* clean up test

* update JSDoc

* chore: handle errors (#31854)

* chore: handle errors

* Fix ts, add test

* Fix error title

* Fix ts

* Fix ts

* chores: (cy.prompt) refactor routing to support both app and driver (#31891)

* chore: Share error utils with the cloud (#31887)

* share error utils with cloud

* additional rework

* Fix command, add isOpenMode

* Add / fix test

* fix ts

---------

Co-authored-by: Ryan Manuel <ryanm@cypress.io>

* internal: (cy.prompt) add infrastructure to support a Get Code modal (#31904)

* chore: (cy.prompt) add infrastructure to support a Get Code modal

* fix tests

* fix code paths

* Update eject button styles

* handle errors

* update types

* Update packages/server/lib/socket-base.ts

* Fix cy test

* update readme

---------

Co-authored-by: estrada9166 <estrada9166@gmail.com>

* chore: (cy.prompt) refactor getTestsState to take a runnable id (#31965)

* chore: (cy.prompt) refactor getTestsState to take a runnable id

* fix tests

* minor tweak

* chore: (cy.prompt) add manifest for all of the cloud delivered files (#31922)

* chore: (cy.prompt) add manifest for all of the cloud delivered files

* fix tests and remove environment variables

* update strategy

* fix build

* rework

* require manifest

* clean up

* refactor

* refactor

* Update packages/server/lib/cloud/cy-prompt/CyPromptLifecycleManager.ts

Co-authored-by: Matt Schile <mschile@cypress.io>

* fix test

---------

Co-authored-by: Matt Schile <mschile@cypress.io>

* feat: add cy prompt more info needed modal (WIP) (#31970)

* feat: add cy prompt more info needed modal

* Reset promptStore

* additional things exposed for more info

* rework

* fix tests

* fix build

* fix types

* fix types

* Update packages/app/src/runner/event-manager.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* reefactor

* chore: (cy.prompt) rework the file save lifecycle

* rework types

* add unit tests

---------

Co-authored-by: estrada9166 <estrada9166@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix: (cy.prompt) ensure that we do not attach a vue ref to the react root in the cy.prompt modals (#32011)

* fix: (studio) ensure that we do not attach a vue ref to the react root in the studio panel

* fix test

* chore: Handle cy-prompt error to the cloud (#32009)

Co-authored-by: Ryan Manuel <ryanm@cypress.io>

* chore: display prompt error message (#32016)

* add createCloudRequest to cloudApi, handle errors during createCyPromptServer

* render the get code button on failure

* chore: update types

* chore: move CT and browser error to cloud (#32077)

* feat: (cy.prompt) give cy.prompt access to recording information (#32110)

* feat: (cy.prompt) give cy.prompt access to recording information

* undo bad refactor

* undo bad refactor

* undo bad refactor

* rename

* fix typo

* Update packages/server/test/unit/modes/record_spec.js

* Update packages/server/test/unit/modes/record_spec.js

* Update packages/server/test/unit/modes/record_spec.js

* Update packages/server/test/unit/modes/record_spec.js

* Update packages/server/test/unit/modes/record_spec.js

* Update cy-prompt-development.md

* Update cy-prompt-development.md

* Update cy-prompt-development.md

* chore: add CYPRESS_INTERNAL_SIMULATE_OPEN_MODE to simulate running Cypress tests in open mode (#32114)

* chore: (cy.prompt) ensure to strip out paths from all data when reporting errors in prompt (#32134)

* fix: (cy.prompt) ensure to strip out paths from all data when reporting errors in prompt

* refactor

* update tests

* fix logic error with protocol

* add event manager to get code

* Apply suggestions from code review

* fix: (cy.prompt) improve the get project options performance by running promises in parallel (#32196)

* fix: (cy.prompt) improve the get project options performance by running promises in parallel

* add awaits in test

* bump cache

* Update packages/server/lib/cloud/studio/StudioLifecycleManager.ts

* fix build

* chore: cleanup

* blank

* Update trigger-publish-binary-pipeline.js

* Update packages/server/test/unit/socket_spec.js

* get rid of environment variable

* fix: (cy.prompt) ensure to reset the prompt state when the event manager is torn down (indicating that we're no longer on the runner page) (#32301)

* fix: (cy.prompt) ensure to reset the prompt state when the event manager is torn down (indicating that we're no longer on the runner page)

* move test

* fix lint issue

* feat: (cy.prompt) introduce the concept of log collapse state being open/closed by default (#32262)

* feat: (cy.prompt) introduce the concept of logs' collapse state being open/closed by default

* update tests

* rename

* PR comments

* fix test due to bad merge of develop

* chore: Only allow experimentalPromptCommand within e2e config (#32435)

* chore: Only allow experimentalPromptCommand within e2e config

* Fix config

* Update tests

* Update test, update types

* Fix test and types

* fix tests

* Add types

* Update cli/types/cypress.d.ts

Co-authored-by: Ryan Manuel <ryanm@cypress.io>

---------

Co-authored-by: Ryan Manuel <ryanm@cypress.io>

* Update workflows.yml

* Add optional cyPromptManagerPromise property

* Implement error handling in CyPromptManager

Added a new method to handle errors uniformly in CyPromptManager.

* Fix indentation in socket_spec.js

* fix: (cy.prompt) handle when the prompt is executed by in CT or when the experiment is not enabled (#32470)

* fix: (cy.prompt) handle when the prompt is executed by in CT or when the experiment is not enabled

* Update packages/driver/cypress/e2e/commands/prompt/prompt.cy.ts

* Update packages/driver/cypress/e2e/commands/prompt/prompt.cy.ts

* update name of errors

* Bump cache version to 9-15-2025

* update yarn.lock

* fixes

* fix snapshot

* fix snapshot

* internal: fix get code button to be purple with correct margin (#32504)

* feat: (cy.prompt) update the types of prompt (#32529)

* fix: move currentMoreInfoNeededModalInfo.onCancel to onClose (#32559)

* internal: (cy.prompt) various improvements to error messages and time outs (#32582)

* internal: (cy.prompt) various improvements to error messages and timeouts

* fix test

* remove dead code

* Update packages/driver/src/cy/commands/prompt/index.ts

* update prompt experiment description

* fix build

* fix tests

* fix tests

* fix test

* update error message

* Update packages/server/lib/experiments.ts

Co-authored-by: Tim Griesser <tgriesser10@gmail.com>

---------

Co-authored-by: Tim Griesser <tgriesser10@gmail.com>

* internal: (cy.prompt) ensure that get code can properly work with prompts in cy.origin (#32596)

* internal: (cy.prompt) ensure that get code can properly work with prompts in cy.origin

* additional tests

* additional tests

* Apply suggestions from code review

* code review comment

* fix merge

* fix merge

* Update packages/data-context/graphql/schemaTypes/index.ts

* update workflow

* blank

* persist binaries

* chore: display custom link title (#32567)

* chore: display custom link title

* Add test

* Pass docs as second argument of the error

* Revert changes

* Use openExternal for links

---------

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>

* update

* internal: (cy.prompt) do not retry on cert failures (#32624)

* internal: (cy.prompt) do not retry on cert failures

* tests and clean up

* additional cleanup and add error message for prompt

* fix unit tests

* Update report_studio_error.ts

* Update packages/network/lib/agent.ts

* cursor comment

* fix build

* fix build

* fix test

* fix build

* fix build

* fix build

* fix build

* fix build

* revert

* Update packages/driver/src/cypress/error_messages.ts

* Update packages/driver/cypress/e2e/commands/prompt/prompt-initialization-error.cy.ts

* fix build

* cursor comment

* clean up

* fix: (cy.prompt) rename exclude from AI to parameters

* fix: (cy.prompt) rename exclude from AI to privateNoCache

* further rename and build binary

* Update packages/frontend-shared/src/locales/en-US.json

* fix tests

* rename to placeholders

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Bill Glesias <bglesias@gmail.com>
Co-authored-by: Alejandro Estrada <estrada9166@gmail.com>
Co-authored-by: Matt Schile <mschile@cypress.io>
Co-authored-by: Tim Griesser <tgriesser10@gmail.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-10-06 16:37:59 -05:00
Tyler Biethman
b1ec29408f internal: (studio) update session id on studio initialization (#32648)
* fix: update studio session id on init

* Adding tests
2025-10-05 12:36:44 -05:00
Ryan Manuel
df047b0a42 feat: cy.prompt experimental command [Feature Flagged] (#31752)
* Create cy-prompt-development.md

* chore: cy prompt infrastructure (#31748)

* feat: cy prompt infrastructure

* refactor and add tests

* refactor

* rename experimental config

* prompt

* fix test

* Update cy-prompt-development.md

* Update cy-prompt-development.md

* PR comments

* Update packages/server/lib/cloud/api/cy-prompt/get_cy_prompt_bundle.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* PR comments

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix test

* Delete packages/server/lib/cloud/StudioLifecycleManager.ts

* Delete packages/server/test/unit/cloud/StudioLifecycleManager_spec.ts

* chore: add cdp connection to cy prompt (#31806)

* chore: add cdp connection to cy prompt

* minor fix

* fix type build

* try to fix build

* Update packages/server/lib/browsers/browser-cri-client.ts

Co-authored-by: Bill Glesias <bglesias@gmail.com>

* Update packages/server/lib/browsers/browser-cri-client.ts

Co-authored-by: Bill Glesias <bglesias@gmail.com>

* do not support prompt in firefox or webkit

* rework timing of lifecycle

* refactor

* fix tests

* troubleshooting

* troubleshooting

* fix tests

* additional troubleshooting

* additional troubleshooting

* additional troubleshooting

* attempt to fix build

* add back

* debugging

* debugging

* debugging

* debugging

* clean up

* fix unit tests

* rework

---------

Co-authored-by: Bill Glesias <bglesias@gmail.com>

* chore: create infrastructure to support backend function in cy.prompt (#31803)

* chore: add promptBackend as an additional Cypress-attached function

* Update packages/app/src/runner/event-manager.ts

* update types

* fix types

* fix spacing

* refactor

* additional refactor

* fix type build

* fix build

* refactor

* reword messages

* fix

* debugging

* undo debugging

* PR comment

* fix tests

* fix tests

* fix tests

* fix test

* chore: add watcher for cy-prompt development (#31810)

* chore: add watcher for cy-prompt development

* test caching

* fix types

* chore: turn on beta deployments for cy-prompt

* internal: (cy.prompt) handle errors better in the command definition (#31835)

* internal: (cy.prompt) handle errors better in the command definition

* internal: (cy.prompt) add timeout and handle loading errors more cleanly

* add process environment variable

* clean up test

* update JSDoc

* chore: handle errors (#31854)

* chore: handle errors

* Fix ts, add test

* Fix error title

* Fix ts

* Fix ts

* chores: (cy.prompt) refactor routing to support both app and driver (#31891)

* chore: Share error utils with the cloud (#31887)

* share error utils with cloud

* additional rework

* Fix command, add isOpenMode

* Add / fix test

* fix ts

---------

Co-authored-by: Ryan Manuel <ryanm@cypress.io>

* internal: (cy.prompt) add infrastructure to support a Get Code modal (#31904)

* chore: (cy.prompt) add infrastructure to support a Get Code modal

* fix tests

* fix code paths

* Update eject button styles

* handle errors

* update types

* Update packages/server/lib/socket-base.ts

* Fix cy test

* update readme

---------

Co-authored-by: estrada9166 <estrada9166@gmail.com>

* chore: (cy.prompt) refactor getTestsState to take a runnable id (#31965)

* chore: (cy.prompt) refactor getTestsState to take a runnable id

* fix tests

* minor tweak

* chore: (cy.prompt) add manifest for all of the cloud delivered files (#31922)

* chore: (cy.prompt) add manifest for all of the cloud delivered files

* fix tests and remove environment variables

* update strategy

* fix build

* rework

* require manifest

* clean up

* refactor

* refactor

* Update packages/server/lib/cloud/cy-prompt/CyPromptLifecycleManager.ts

Co-authored-by: Matt Schile <mschile@cypress.io>

* fix test

---------

Co-authored-by: Matt Schile <mschile@cypress.io>

* feat: add cy prompt more info needed modal (WIP) (#31970)

* feat: add cy prompt more info needed modal

* Reset promptStore

* additional things exposed for more info

* rework

* fix tests

* fix build

* fix types

* fix types

* Update packages/app/src/runner/event-manager.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* reefactor

* chore: (cy.prompt) rework the file save lifecycle

* rework types

* add unit tests

---------

Co-authored-by: estrada9166 <estrada9166@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix: (cy.prompt) ensure that we do not attach a vue ref to the react root in the cy.prompt modals (#32011)

* fix: (studio) ensure that we do not attach a vue ref to the react root in the studio panel

* fix test

* chore: Handle cy-prompt error to the cloud (#32009)

Co-authored-by: Ryan Manuel <ryanm@cypress.io>

* chore: display prompt error message (#32016)

* add createCloudRequest to cloudApi, handle errors during createCyPromptServer

* render the get code button on failure

* chore: update types

* chore: move CT and browser error to cloud (#32077)

* feat: (cy.prompt) give cy.prompt access to recording information (#32110)

* feat: (cy.prompt) give cy.prompt access to recording information

* undo bad refactor

* undo bad refactor

* undo bad refactor

* rename

* fix typo

* Update packages/server/test/unit/modes/record_spec.js

* Update packages/server/test/unit/modes/record_spec.js

* Update packages/server/test/unit/modes/record_spec.js

* Update packages/server/test/unit/modes/record_spec.js

* Update packages/server/test/unit/modes/record_spec.js

* Update cy-prompt-development.md

* Update cy-prompt-development.md

* Update cy-prompt-development.md

* chore: add CYPRESS_INTERNAL_SIMULATE_OPEN_MODE to simulate running Cypress tests in open mode (#32114)

* chore: (cy.prompt) ensure to strip out paths from all data when reporting errors in prompt (#32134)

* fix: (cy.prompt) ensure to strip out paths from all data when reporting errors in prompt

* refactor

* update tests

* fix logic error with protocol

* add event manager to get code

* Apply suggestions from code review

* fix: (cy.prompt) improve the get project options performance by running promises in parallel (#32196)

* fix: (cy.prompt) improve the get project options performance by running promises in parallel

* add awaits in test

* bump cache

* Update packages/server/lib/cloud/studio/StudioLifecycleManager.ts

* fix build

* chore: cleanup

* blank

* Update trigger-publish-binary-pipeline.js

* Update packages/server/test/unit/socket_spec.js

* get rid of environment variable

* fix: (cy.prompt) ensure to reset the prompt state when the event manager is torn down (indicating that we're no longer on the runner page) (#32301)

* fix: (cy.prompt) ensure to reset the prompt state when the event manager is torn down (indicating that we're no longer on the runner page)

* move test

* fix lint issue

* feat: (cy.prompt) introduce the concept of log collapse state being open/closed by default (#32262)

* feat: (cy.prompt) introduce the concept of logs' collapse state being open/closed by default

* update tests

* rename

* PR comments

* fix test due to bad merge of develop

* chore: Only allow experimentalPromptCommand within e2e config (#32435)

* chore: Only allow experimentalPromptCommand within e2e config

* Fix config

* Update tests

* Update test, update types

* Fix test and types

* fix tests

* Add types

* Update cli/types/cypress.d.ts

Co-authored-by: Ryan Manuel <ryanm@cypress.io>

---------

Co-authored-by: Ryan Manuel <ryanm@cypress.io>

* Update workflows.yml

* Add optional cyPromptManagerPromise property

* Implement error handling in CyPromptManager

Added a new method to handle errors uniformly in CyPromptManager.

* Fix indentation in socket_spec.js

* fix: (cy.prompt) handle when the prompt is executed by in CT or when the experiment is not enabled (#32470)

* fix: (cy.prompt) handle when the prompt is executed by in CT or when the experiment is not enabled

* Update packages/driver/cypress/e2e/commands/prompt/prompt.cy.ts

* Update packages/driver/cypress/e2e/commands/prompt/prompt.cy.ts

* update name of errors

* Bump cache version to 9-15-2025

* update yarn.lock

* fixes

* fix snapshot

* fix snapshot

* internal: fix get code button to be purple with correct margin (#32504)

* feat: (cy.prompt) update the types of prompt (#32529)

* fix: move currentMoreInfoNeededModalInfo.onCancel to onClose (#32559)

* internal: (cy.prompt) various improvements to error messages and time outs (#32582)

* internal: (cy.prompt) various improvements to error messages and timeouts

* fix test

* remove dead code

* Update packages/driver/src/cy/commands/prompt/index.ts

* update prompt experiment description

* fix build

* fix tests

* fix tests

* fix test

* update error message

* Update packages/server/lib/experiments.ts

Co-authored-by: Tim Griesser <tgriesser10@gmail.com>

---------

Co-authored-by: Tim Griesser <tgriesser10@gmail.com>

* internal: (cy.prompt) ensure that get code can properly work with prompts in cy.origin (#32596)

* internal: (cy.prompt) ensure that get code can properly work with prompts in cy.origin

* additional tests

* additional tests

* Apply suggestions from code review

* code review comment

* fix merge

* fix merge

* Update packages/data-context/graphql/schemaTypes/index.ts

* update workflow

* blank

* persist binaries

* chore: display custom link title (#32567)

* chore: display custom link title

* Add test

* Pass docs as second argument of the error

* Revert changes

* Use openExternal for links

---------

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>

* update

* internal: (cy.prompt) do not retry on cert failures (#32624)

* internal: (cy.prompt) do not retry on cert failures

* tests and clean up

* additional cleanup and add error message for prompt

* fix unit tests

* Update report_studio_error.ts

* Update packages/network/lib/agent.ts

* cursor comment

* fix build

* fix build

* fix test

* fix build

* fix build

* fix build

* fix build

* fix build

* revert

* Update packages/driver/src/cypress/error_messages.ts

* Update packages/driver/cypress/e2e/commands/prompt/prompt-initialization-error.cy.ts

* fix build

* cursor comment

* add changelog entry

* clean up

* Update packages/app/src/store/prompt-store.ts

* Bump cache version to 10-3-2025

Updated cache version to trigger CI cache recreation.

* Revise CHANGELOG for new features and fixes

Updated changelog with new features and bug fixes.

* index on feat/cy-prompt: 3cbcf6c336 Bump cache version to 10-3-2025

* index on feat/cy-prompt: 3cbcf6c336 Bump cache version to 10-3-2025

* index on feat/cy-prompt: 3cbcf6c336 Bump cache version to 10-3-2025

* blank

* fix build

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Bill Glesias <bglesias@gmail.com>
Co-authored-by: Alejandro Estrada <estrada9166@gmail.com>
Co-authored-by: Matt Schile <mschile@cypress.io>
Co-authored-by: Tim Griesser <tgriesser10@gmail.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
2025-10-04 09:01:00 -05:00
Matt Schile
b1f61fb23b internal: (studio) remove CYPRESS_ENABLE_CLOUD_STUDIO_AI env (#32625) 2025-10-03 13:51:13 -06:00
Jennifer Shehane
056e6f6edd dependency: Electron 37 update (#32607)
* dependency: Electron 37 update

* bump min node

* Fix TS error

* Fix changelog location

* remove the example changelog as it obviously confused it

* add publish-binary branch

* update PR number in changelog

* run on all workflows

* fix types

* bump circle cache

* fix changelog numbers

* removed packages/changelog file

* Clarify minimum node + move some things around

* bump cache

* remove workflows

* build artifacts
2025-10-03 14:29:50 -04:00
mabela416
4d6347cf8a feat: Remove Studio as experimental - Turn Studio Beta on for all users of Cypress (no need for config flag) (#32571)
* clean up experimental studio config

* clean up studio test

* clean tests and add a test for new warning

* add snapshot tests

* revert unneeded changes

* revert unneeded changes

* only initialize studio lifecycle manager when testing type is e2e

* update changelog

* fix changelog

* add missing line break

* fix tests

* remove duplicate pending changelog entries

* Update packages/errors/src/errors.ts

* Replace HTML error snapshot with ansi snapshot

* fix changelog

* update system tests results snapshot

---------

Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-10-03 12:02:47 -04:00
Matt Schile
43404f1e92 internal: (studio) pass the getProjectOptions function (#32573) 2025-10-02 17:37:02 -06:00
Ryan Manuel
9837082fa4 internal: (studio) do not retry on cert failures (#32631)
* fix: ensure that all calls to api.cypress.io and cloud.cypress.io properly set rejectUnauthorized

* fix: ensure that all calls to api.cypress.io and cloud.cypress.io properly set rejectUnauthorized

* Fix SSL certificate verification for cloud requests

Fixed SSL certificate verification for Cypress cloud requests.

* fix: ensure that all calls to api.cypress.io and cloud.cypress.io properly set rejectUnauthorized

* internal: (studio) do not retry on cert failures

* Update packages/server/test/unit/cloud/api/studio/post_studio_session_spec.ts

Co-authored-by: Matt Schile <mschile@cypress.io>

* Update packages/server/test/unit/cloud/api/studio/post_studio_session_spec.ts

Co-authored-by: Matt Schile <mschile@cypress.io>

* fix types

---------

Co-authored-by: Matt Schile <mschile@cypress.io>
2025-10-02 17:58:01 -05:00
Ryan Manuel
3b80385210 fix: ensure that all calls to api.cypress.io and cloud.cypress.io properly set rejectUnauthorized (#32629)
* fix: ensure that all calls to api.cypress.io and cloud.cypress.io properly set rejectUnauthorized

* fix: ensure that all calls to api.cypress.io and cloud.cypress.io properly set rejectUnauthorized

* Fix SSL certificate verification for cloud requests

Fixed SSL certificate verification for Cypress cloud requests.

* fix: ensure that all calls to api.cypress.io and cloud.cypress.io properly set rejectUnauthorized

* Update packages/data-context/src/sources/UtilDataSource.ts

* fix tests

* fix tests
2025-10-02 15:52:07 -05:00
Cacie Prins
14beae32dc feat: --posix-exit-codes cli flag in run mode (#32609)
* pass posix exit code to server

* return 1 if any tests fail and posix exit codes are enabled

* changelog

* rm .only

* snapshot

* changelog

* update typedef

* changelog

* Update cli/CHANGELOG.md

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>

* lift disabled posix system test to different desc block

* add posix-exit-codes in lib/exec/run.ts#processRunOptions

* Apply suggestion from @jennifer-shehane

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>

---------

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-10-02 09:30:51 -04:00
Bill Glesias
bb8d9aebda chore: make the @packages/errors an independent bundle without needed ts-node to register entrypoint. Both ESM and CJS distributions are built and types are used as source to be compatible with older styles of commonjs bundling. Types are not shipped with the package. (#32610) 2025-10-01 15:45:44 -04:00
Bill Glesias
504b153005 chore: convert @packages/data-context from mocha to jest (#32598)
* start jest conversion and covnert authaction to jest

* chore: conver codegenaction to jest

* chore: convert cohorts action spec to vitest

* chore: convert dataEmitterActions to jest

* chore: convert event collector action to vitest

* chore: convert local settings action spec tojest

* chore: convert notification action to vitest

* chor: convert project actions to vitest and fix pretty-formnat

* chore: convert code-generator spec to jest

* chore: convert spec options spec to jest

* chore: convert project config ipc to jest

* chore: convert projectconfigmanager tests to jest

* chore: convert project lifecycle manager tests to jest

* chore: conver poller spec to jest

* chore: convert browser data source to jest

* chore: convert cloud dats source to jest

* chore: convert gitdatasource unit tests to jest

* chore: convert FileDataSource to jest

* chore: convert git data source to jest

* chore: convert graphql data source to jest

* chore: convert project data source to jest

* chore: convert revelvant runs data source to jest

* chore: convert relevant run specs data source to jest

* chore: convert remote request data source to jest

* chore: convert versions data source spec to jest

* chore: convert wizard data source spec to jest

* chore: convert document node builder to jest

* chore: convert has TypeScript to jest

* chore: convert test counts spec to jest

* chore: convert weighted choice spec to jest

* chore: convert config file updater to jest

* clean up files to allow tests to run in band but out of order, add README, cleanup unused scripts and dependencies

* fix deprecation warning from ts-jest via isolated modules

* chore: adjust expected result count

* chore: clean up types

* turn back on no implicit any and reinstall graphql package in frontend shared

* fix isFocusSupported mock

* chore: copy over the old data-context-helper into the server as the one in the data-context package is written in jest now

* chore: fix code review findings from cursor

* fix incorrect expect async throw

* chore: remove use of this in projectData source

* add docs to copied data-context helper and fix cursor detected issue
2025-09-30 17:16:17 -04:00
Jennifer Shehane
e1d92bfb28 chore: Removed unused / no longer needed errors (#32595)
* chore: Removed unused / no longer needed errors

* removed unused variables
2025-09-30 14:45:24 -04:00
Bill Glesias
b81c5a0a8e chore: convert tests in @packages/errors from mocha to vitest (#32572)
* start vitest convertion and convert errors spec to vitest

* chore: convert errTemplate to vitest

* convert stripIndent to vitest

* convert the visualsnapshoterrors spec to vitest

* chore: clean up errors package, update guide, and move snapshots

* move tests out of unit test directory as most tests are integration tests

* add to esm checklist and update workflow

* clean build and rebuild after test due to CI having built files

* Chore: fix bad test assertion in error spec

* Update guides/esm-migration.md

Co-authored-by: Bill Glesias <bglesias@gmail.com>

* chore: remove unused FIREFOX_CDP_FAILED_TO_CONNECT error as it is no longer used and likely missed with the CDP removal for Firefox

* chore: fix missed imports

* remove system test code to check for CDP error in firefox

---------

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-09-29 11:37:07 -04:00
Bill Glesias
cb6e509607 chore: combine the graphql package into the data-context package to avoid a cyclical dependency (#32566) 2025-09-25 15:40:24 -04:00
Cacie Prins
8755160a68 feat: escape key for cy.press (#32545)
* feat: escape key for cy.press

* changelog

* on-link to cy.press() in changelog
2025-09-23 10:48:12 -04:00
Bill Glesias
7d5fd90721 fix: incorrect loading of ESM based configurations (#32515)
* add regression test

* fix: make sure esm configs are indeed loaded as ESM
2025-09-22 11:03:34 -04:00
renovate[bot]
689b2b26cd dependency: update dependency electron to v36.8.1 (#32371)
* chore(deps): update dependency electron to v36.8.1

* bump node version

* update workflow files + publish-binary script

* bump base-internal images

* remove current node version from additional test

* bump circleci cache

* allow node_version env var

* Update .circleci/workflows.yml

* index on renovate/electron-36.x: 95d10b1d53 Merge branch 'develop' into renovate/electron-36.x

* index on renovate/electron-36.x: 95d10b1d53 Merge branch 'develop' into renovate/electron-36.x

* index on renovate/electron-36.x: 95d10b1d53 Merge branch 'develop' into renovate/electron-36.x

* bump types/node

* update some node versions

* update integrity check and electron instrcutions

* correctly call net.family with net family type

* Revert "correctly call net.family with net family type"

This reverts commit 505ff949a8.

* update location of note types

* more clearly type frame

* fix type issues in agent.ts file

* fix agent call

* replace proxyquire in webpack-dev-server package

* add changelog

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
2025-09-18 10:32:19 -04:00
Brian Mann
a07062d13e fix(dns-cache): prevent local family cache collisions (#32403)
* bump node types

* add network tests to terminals

* dont use the web-config, just use regular TS so that it compiles much faster and line numbers work

* fix missing promise

* cache families to include host + port; fix types

* fix incorrect cacheKey

* fix skipped tests and updated error messages likely due to node upgrade

* cleanup a ton of test context

* Add changelog entry

* close servers after each test

* Update packages/network/lib/agent.ts

Co-authored-by: Ryan Manuel <ryanm@cypress.io>

* update tests to pass inside + outside of docker

* try this in docker

* try to enable ipv6 in circleci docker config

* escape

* dont run this test in CI

* revert

* skip the other test

* maybe this works

* try this

* Update .circleci/workflows.yml

* oops

* i do not think we need sudo

* test

* test

* try machine

* refactor

* that was weird

* that was weird

* mess with daemon and sudo

* escape <

* modify /etc/hosts

* Update .circleci/workflows.yml

* Update .circleci/workflows.yml

* Update .circleci/workflows.yml

* remove dead code

* Update branch condition in CircleCI workflow

* Update .circleci/workflows.yml

* clean up

* clean up

* fix cy in cy tests

* fix cy in cy

* Update packages/server/lib/server-base.ts

---------

Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
2025-09-08 10:02:16 -05:00
Cacie Prins
5719c84683 chore: migrate server and webpack-batteries-included-preprocessor to modern eslint (#32343)
* eslint migration for webpack-batteries-included

* some debug

* rm debug?

* rm debug

* update migration manifest
2025-09-05 13:46:29 -04:00
Chris Breiding
b4ba15e4e9 internal: Ensure studio/protocol is re-initialized any time test is run (#32349) 2025-09-05 08:36:45 -04:00
Jennifer Shehane
86becd4736 chore: convert browsers_spec from JS to TS (#32420)
* chore: convert browsers_spec from JS to TS

* Update packages/server/test/unit/browsers/browsers_spec.ts

Co-authored-by: Bill Glesias <bglesias@gmail.com>

---------

Co-authored-by: Bill Glesias <bglesias@gmail.com>
2025-09-04 13:45:35 -04:00
Jennifer Shehane
b4d5109cb9 chore: optimize server unit test perf (#32402)
* chore: improve performance of server unit-tests

* update screenshots spec to run faster

* improve timing of more server unit tests

* revert the project spec changes

* fix path resolutions
2025-09-03 11:02:29 -04:00
Jennifer Shehane
b5fc986749 chore: convert server/lib/plugins files from JS to TS (#32337)
* chore: convert server/lib/plugins files from JS to TS

* consolidate error types

* update anys to unknowns where we don't know the args

* add module esports

* forgot to push this I guess

* Update so this isn't always true

* add some utils to a JS file

* remove duplicate ts file

* remove dead code

* remove module.exports = API

* chore: fix exports of run events and adapt CJS tests importing TS modules to use the default export

* fix another preprocessor default call

---------

Co-authored-by: Bill Glesias <bglesias@gmail.com>
2025-09-03 09:52:53 -04:00
Ryan Manuel
4c68732ea4 dependency: upgrade better-sqlite3 from 11.9.1 to 11.10.0 (#32404)
* dep: upgrade better-sqlite3 from 11.9.1 to 11.10.0

* Update cli/CHANGELOG.md

* Update cli/CHANGELOG.md

* Update cli/CHANGELOG.md

* update electron guide
2025-09-02 19:27:59 -05:00
Bill Glesias
58bee2839c fix: force gtk version 3 to avoid Electron 36 from crashing (#32372)
* Fix: force gtk version 3 to avoid https://www.electronjs.org/blog/electron-36-0\#behavior-changed-gtk-4-is-the-default-when-running-on-gnome

* Update cli/CHANGELOG.md

Co-authored-by: Mike McCready <66998419+MikeMcC399@users.noreply.github.com>

* add suggestions from code review

* empty

---------

Co-authored-by: Mike McCready <66998419+MikeMcC399@users.noreply.github.com>
2025-08-28 20:32:28 -04:00
Jennifer Shehane
90310ae7f9 feat: extend Cypress.Keyboard.Keys and cy.press to support (almost) all keyboard keys (#31496)
* feat: extend Cypress.Keyboard.Keys and cy.press to support all keyboard keys

* Update cli/types/cypress.d.ts

* reference urls for codepoints

* type defs for expanded keys; tests

* changelog

* rm modifier keys temporarily - see WIP @ feat/key-press-modifier-keys

* Add pr link to changelog

* reduce repetition with key codes; remove unsupported capslock keycode

* only "key" special function keys in Cypress.Keyboard.Keys - otherwise, support any single character even if multiple codepoints

* do not refocus on f6 - f6 behavior keyup is indeterminate, so do not assert in that special case

* clean up keyboard key types, clean up duplicate def from merge

* various cleanup - wip - need multi-codepoint fix

* support multi-codepoint characters

* properly dispatch each part of a multipart utf-8 character

* fix import

* fix dtslint

* tscheck

* fix spacing

* Apply suggestions from code review

* changelog

* changelog

* ensure input actions are released in bidi; add test for keypress and input events for firefox

* fix keypress & input events in chrome

* consistent debug

* rm debug logging from input fixture

* some typos, changelog version

* fix toSupportedKey guard fn to properly reject non-strings

* add Space as named key, remove warnings re legacy firefox

* fix space

* support single-digit number keys

* remove support for F-keys

* add test cmd to types pkg

* rm failing vitest project config

* fix changelog

* clean up types a bit for single digit numbers

* more updates

---------

Co-authored-by: Cacie Prins <cacie@cypress.io>
Co-authored-by: Cacie Prins <cacieprins@users.noreply.github.com>
2025-08-28 10:31:49 -04:00
Jennifer Shehane
ab2004bbde fix: move from getos to systeminformation to fix OS distro/release info (#32283)
* fix: move from getos to systeminformation

* add changelog entry

* remove extraneous package that isn't used

* update changelog
2025-08-27 09:52:48 -04:00
Mike McCready
f49f1c1236 dependency: update axios to 1.11.0 (#32348)
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-08-26 14:25:47 -04:00
Adam Stone-Lord
0b2e6697c9 chore: (studio) don't log to Sentry when user opens studio before initialization (#32352) 2025-08-26 09:51:31 -04:00
renovate[bot]
a51d27842a dependency: update dependency esbuild to ^0.25.2 [security] (#32231)
* fix(deps): update dependency esbuild to ^0.25.0 [security]

* empty commit

* bumping esbuild in system-tests

* bump to higher version

* index on renovate/npm-esbuild-vulnerability: bd192afbf9 bump to higher version

* index on renovate/npm-esbuild-vulnerability: bd192afbf9 bump to higher version

* index on renovate/npm-esbuild-vulnerability: bd192afbf9 bump to higher version

* bump to 0.25.2

* update due to esbuild metadata output additions

* index on renovate/npm-esbuild-vulnerability: 20b9d374d7 update due to esbuild metadata output additions

* index on renovate/npm-esbuild-vulnerability: 20b9d374d7 update due to esbuild metadata output additions

* index on renovate/npm-esbuild-vulnerability: 20b9d374d7 update due to esbuild metadata output additions

* fix binary-cleanup

* Fix tslib module paths in binary-cleanup.js

* Update tslib import paths in binary-cleanup.js

* Remove tslib ES6 module references

* changelog entry

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
2025-08-22 14:58:42 -05:00
renovate[bot]
a7acb24efa dependency: update dependency image-size to v1.2.1 [security] (#32232)
* fix(deps): update dependency image-size to v1.2.1 [security]

* fix(deps): update dependency image-size to v1.2.1 [security]

* changelog entry

* move changelog entry

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-08-21 10:41:42 -04:00
renovate[bot]
e4e3f84bc7 dependency: update dependency tar to v6.2.1 [security] (#32229)
* chore(deps): update dependency tar to v6.2.1 [security]

* bump other version of tar

* add changelog entry

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
2025-08-20 14:30:32 -04:00
Cacie Prins
e463fdbc61 fix: Redirect spammy electron stderr to a debug sink (#32188)
* wip: system test to reproduce

* system test for alsa stderr

* split cypress from 3rd party stderr at parent process to electron child

* rm garbage warning regexes

* fix newline behavior when parsing internal stderr

* migrate left over console errors

* clean up system test name

* fix typed import

* extract stderr splitting to separate pkg so runner can use @packages/error

* rm new err log from packherd-quire

* handle backpressure

* docs

* some unit tests & coverage for stderr-filtering

* unit tests

* no longer test regexp specific output in spawn unit tests

* filter enabled debug namespaces rather than just cypress namespacesc

* revise stream splitting et al

* try to fix v8 snapshot build??

* fix console.log assertion

* add missing eslint config

* rm unused spies

* fix regexp for optional leading wsp and ansi on debug entries

* update unit tests because sinon

* lint

* colon..

* build stderr-filtering before checking if binary exists

* adds TagStream transform stream, fixes stderr from child proc config

* add build-prod script for stderr-filtering

* changelog

* properly handle backpressure in prefixed content transform stream

* use standard tsconfig?

* better tsconfig

* Add pkgStderrFiltering to monorepoPaths

* add \"files\" manifest

* pipe all stderr to stderr when CYPRESS_INTERNAL_DEBUG_ELECTRON is enabled

* rm explicit build of stderr-filtering in check-if-binary-exists step

* ensure all dependencies of scripts/ are built before scripts are executed in the check-if-binary-exists command

* fix dev version ref

* swap logic

* add stdin piping

* fix exec name on the run-on-dependencies command to be more useful

* use correct env

* rm obsolete type refs

* simplify stderr-filtering public iface, pipe cy-in-cy stderr through filtering tx

* bust cache

* fix mocks

* fix v8-snapshot

* move stderrfiltering to dev pkg in cli

* skip integrity check in ci, if they are out of date things should fail anyway

* copypasta over a portion of stderr-filtering to cli, since cli cannot import @packages

* Delete issues.md

* rm special filtering for cy in cy

* rm too narrow rules file

---------

Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Bill Glesias <bglesias@gmail.com>
2025-08-19 17:05:53 -04:00
Bill Glesias
3c79d12b38 chore: update firefox docs to exclude CDP (#32272) 2025-08-18 17:29:24 -04:00
renovate[bot]
4afff00deb fix(deps): update dependency systeminformation to v5.23.8 [security] (#32234)
* fix(deps): update dependency systeminformation to v5.23.8 [security]

* fix(deps): update dependency systeminformation to v5.23.8 [security]

* empty commit

* bump systeminformation to latest

* yarnlock

* add changelog entry

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
2025-08-18 16:08:05 -04:00
Bill Glesias
f6e0744e38 breaking: update execa from 1.0.0 to 4.1.0 (#32238)
* breaking: update execa from 1.0.0 to 4.1.0 which breaks the yielded cy.exec() object from yielding property code and instead yields exitCode

* fix launchpad tests on linux

* Update cli/CHANGELOG.md

---------

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-08-18 11:52:24 -04:00
Tyler Biethman
5260488a0b internal: updating studio-server initialization with renderer APIs (#32204)
* feat: updating studio-server initialization with renderer APIs

* Updating gen types

* Adding unit tests, adjusting types

* Removing electron dep to better follow existing patterns in server; parallelizing browser state reset during studio initialization

* Deferring StudioElectron creation until Studio AI init

* Fixing unit test

* Clean up debug logs

* PR updates
2025-08-15 14:54:07 -05:00
renovate[bot]
bebfa46bc9 fix(deps): update dependency body-parser to v1.20.3 [security] (#32225)
* fix(deps): update dependency body-parser to v1.20.3 [security]

* empty commit

* fix(deps): update dependency body-parser to v1.20.3 [security]

* add changelog entry

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
2025-08-14 12:50:37 -04:00
Bill Glesias
19df26c279 chore: update babel to latest (#32203) 2025-08-12 15:07:23 -04:00