* fix: ensure that the text alignment for grouped command logs is consistent
* changelog
* Update CHANGELOG for release 15.5.1
Added release notes for version 15.5.1, including a bugfix for command text behavior.
* Apply suggestions from code review
* Update CHANGELOG.md
* 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>
* 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>
* chore: cut over mocha tests to vitest in @cypress/vite-dev-server
* breaking: make @cypress/vite-dev-server an ESM only package
* feat: support vite version 7 in @cypress/vite-dev-server
* build binaries
* test
* fix: file import issues on windows
* avoid optimized deps to suppress extraneous console logs
* does this work?
* chore: add unit tests for getVite as the implementation as changed quite a bit
* chore: update changelog
* fix vite optimize dependency messages being logged out to the console
even though log level is silent
* fix issues with correct vite being invoked
* chore: address issues from code review
* Downgrade react in vite 7 project to fix deprecation warnings
* chore: set up sharing of react via module federation in studio
* chore: add ability to load types from the studio bundle
* fix build
* fix build
* fix build
* PR comments
* Update guides/studio-development.md
Co-authored-by: Matt Schile <mschile@cypress.io>
* fix test
---------
Co-authored-by: Matt Schile <mschile@cypress.io>
* chore(deps): update dependency rimraf to v5.0.10
* fix: fix clean errors caused by rimraf breaking change
* refactor: use promise instead of callback
---------
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
* fix: update the monorepo to typescript 5
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* run ci to see problems [run ci]
* update vue-tsc and typings that conflict with update
* regen snapshot
* fix typescript errors ui test as stack trace behavior has changed
* fix server unit tests
* update cy.origin() spec based on stack traces and code frames
* update spec to include source map url
* run ci
* fix check-ts
* chore: fix system tests [run ci]
* add preprocessor tests to batteries included to exercise new logic
* run ci
* refactor unit tests to be a bit more dry
* pin typescript to ~5.4 and adjust config to ignroe deprecations but keep importsNotUsedAsValues
* add changelog entry
* add fixme issue to stack trace mismatches inside evaled context
* use import type webpack as webpack as a lib isn't actually invboked in the runner webpack config
* fix system test as adding 4 lines of comments impacts the stack trace line 4 lines (duh)
---------
Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
* chore: [run ci] does further prerequisites for webpack 5:
https://webpack.js.org/migrate/5/#make-sure-your-build-has-no-errors-or-warningshttps://webpack.js.org/migrate/5/#make-sure-to-use-modehttps://webpack.js.org/migrate/5/#update-outdated-optionshttps://webpack.js.org/migrate/5/#test-webpack-5-compatibility
app builds and runs locally. Time to test out in CI and see if buffer or
process need to be polyfilled by the build
* chore: upgrade to webpack 5 and do the bare minimum to get it working
* chore: get @packages/extension working
* chore: add TODOs to finish after webpack 5 update
* chore: update the webpack config for npm/webpack-batteries-included-preprocessor to be webpack 5 compliant
* chore: patch whatwg-url 7.1.0. package 'source-map' uses
whatwg-url@7.1.0 which has a dependency on punycode node expected API.
since punycode is now polyfilled for us implicitly via the punycode npm
package, the API signatures are a bit different
https://github.com/mathiasbynens/punycode.js/blob/main/punycode.js#L101
vs https://nodejs.org/api/punycode.html#punycodeucs2. The patch uses the
punycode npm package expected API and is needed for source maps to work
for cy.origin() dependencies for Cypress.require()
* chore: convert whatwg patch into dev patch as source-map is not installed when building the binary / installing prod dependencies
* chore: only move production level patches into the binary dist directory for yarn install --production
* chore: remove --openssl-legacy-provider code for node versions 17 and over as webpack has been updated to v5
* chore: fix the webpack-batteries-included-preprocessor tests by shimming the correct node globals and built ins
* chore: provide the define plugin and evalDevtoolPlugin again as we need define in order to build the react-dom library correctly in the bundle to not include the development version
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: fix the webpack preprocessor not to change promise references under the hood when compiling the first bundle, as it was causing the webpack preprocessor to hang as the reference itself was different
* chore: fix issues from readFile that were caused by Webpack 5 using 'path-browserify'
* chore: update chrome component testing snapshots to match Webpack 5 changes
* chore: fix mismatched snapshots from webpack 5 update
* chore: use Cypress.Buffer instead of Buffer for selectFile system test to avoid having to polyfill Buffer from webpack
* chore: fix system test webpack path that now includes e2e workspace
* chore: patch enhanced-resolve to properly discover the pnp api for the yarn_v3.1.1_pnp_spec.ts system test. see https://github.com/webpack/enhanced-resolve/issues/263 for more details
* chore: set stats to 'none' for experimentalSingleTabMode to prevent different webpack compiled terminal formatting in the snapshot between local and CI.
* chore: fix node built in tests and configure webpack-batteries-included-preprocessor correctly
* chore: fallback to buffer correctly in config, even though there is no impact due to the provide plugin
* Update binary-cleanup.js to exclude added build dependencies for webpack
5 added by webpack-terser-plugin under the hood
* chore: add stream-browserify to webpack preprocessor batteries included as a dep as its used in the config [run ci]
* chore: make sure process and buffer are installed in the CLI for webpack provide
* chore: build cross platform binaries [run ci]
* chore: fix webpack evalDevToolPlugin instantiation [run ci]
* run all binary jobs [run ci]
* chore: updating v8 snapshot cache
* add find-up to the entry points that need to be kept
* chore: updating v8 snapshot cache
* chore: updating v8 snapshot cache
* chore: fix mocha build warnings
* chore: fix STRIPPED_INTEGRITY_TAG import warnings
* chore: add changelog event
---------
Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
* initial commit, a kinda working prototype
* Ready to test in CI
* "SyntaxError: Cannot use import statement outside a module" I blame VS code for always inserting the wrong dependency
* try using built js instead of the ts file
* typescript fixes?
* get version correctly, don't use optional chaining in child process.
* trying this, idk
* try running telemetry for driver-integration-tests-chrome
* fix missing spans, add more attributes for some spans
* fix missing spans and add suite spans
* types
* Remove un-used require
* remove spans for describe blocks in favor of the full title for tests
* migrate to sync resource discovery, start new custom exporters for spans
* encrypted
* localhost
* don't do things on child process
* latest changes
* update server start span time / add v8 snapshot span & update command span names
* prepare for sync
* don't send blank key
* make telemetry work again for sending directly to honeycomb
* web-socket exporter
* Add in IPC exporter and message the child process before disconnecting
* Use the cloud api by default
* move cloud span exporter into telemetry package
* shutdown fixes
* fix enabled
* improve types
* run in ci
* yml is the worst
* type!
* add spans for timing insights for visible areas of improvement
* type errors
* lets try sending data to staging
* types
* types again
* remove problematic attributes
* clean up exporters
* i like this better even though it doesn't seem to matter much
* some self review cleanup
* Update comment
* add debug messages
* mocha tests
* actually exit with the right code... oops
* simple mistake... have to look into how to fix with ts...
* try this i guess
* don't return undefined
* read me diagram
* color?
* no rect
* moar diagram
* docs!
* formatting
* build more binaries
* Supposedly fix cypress in cypress test failures
* test 'fixes'
* try this instead
* do not transpile cypress packages dir
* lets try escaping our regex string
* Add some diagnostics to help test the built binary....
* try a more complex solution
* fix tests probably
* just ignore the specific file
* fix unit tests
* cr updates
* Apply suggestions from code review
Co-authored-by: Matt Schile <mschile@cypress.io>
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* Pr updates
* don't change the command queue
* move encoding and decoding telemetry context for ipc to the telemetry package
* build darn it
* plead for mercy from the testing gods, i merely wished to have named test reports, but clearly i have overreached.
* pr updates, send record key
* pr review
* optional chaining fails tests
* Apply suggestions from code review
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* tests for cloud-span-exporter
* bad merge
* adding tests for the remaining exporters
* note
* docs
* Correctly set test under the current run span for component testing
* gate sending the message.
* pr updates
* finally, fingers crossed.
---------
Co-authored-by: Emily Rohrbough <emilyrohrbough@yahoo.com>
Co-authored-by: Matt Schile <mschile@cypress.io>
Co-authored-by: Bill Glesias <bglesias@gmail.com>
* feat: improved CloudDataSource caching & tests
* feat: pushFragment subscription, for updating the client with remote data (#21408)
* refactor: add pushFragment utility for pushing remote data into the client
* fix: UNIFY-1625 Runs tab not updating in real time (#21412)
* allow returning a Response object in the remoteGraphQLIntercept, handle 401
* add nexusDeferIfNotLoadedPlugin, remove GraphQLDataSource & ssr of graphql data
* add cachedUser for better rendering when cloudViewer is invalidated, fix types, tests
* guard for login to be visible before making next assertion
* revert onCacheUpdate changes
* fix for percy snapshots
* address @flotwig's simpler feedback
* Address types for versionData
* allow for nullish email in UserAvatar
* Ignore remote schema parent type in onCreateFieldResolver