Skip to content

feat: prompt (WIP - do not merge) #31752

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

Open
wants to merge 56 commits into
base: develop
Choose a base branch
from
Open

feat: prompt (WIP - do not merge) #31752

wants to merge 56 commits into from

Conversation

ryanthemanuel
Copy link
Collaborator

@ryanthemanuel ryanthemanuel commented May 20, 2025

Use a merge commit for this PR

  • Closes

Additional details

Steps to test

How has the user experience changed?

PR Tasks

@ryanthemanuel ryanthemanuel self-assigned this May 20, 2025
Copy link

cypress bot commented May 20, 2025

cypress    Run #64588

Run Properties:  status check failed Failed #64588  •  git commit f5c5051d9a: Update trigger-publish-binary-pipeline.js
Project cypress
Branch Review feat/cy-prompt
Run status status check failed Failed #64588
Run duration 19m 41s
Commit git commit f5c5051d9a: Update trigger-publish-binary-pipeline.js
Committer Ryan Manuel
View all properties for this run ↗︎

Test results
Tests that failed  Failures 3
Tests that were flaky  Flaky 14
Tests that did not run due to a developer annotating a test with .skip  Pending 1101
Tests that did not run due to a failure in a mocha hook  Skipped 4
Tests that passed  Passing 26547
View all changes introduced in this branch ↗︎

Warning

Partial Report: The results for the Application Quality reports may be incomplete.

UI Coverage  44.73%
  Untested elements 189  
  Tested elements 157  
Accessibility  97.91%
  Failed rules  4 critical   8 serious   2 moderate   2 minor
  Failed elements 101  

Tests for review

Failed  cypress/e2e/studio/studio.cy.ts • 2 failed tests • app-e2e

View Output

Test Artifacts
Cypress Studio > remains in studio mode when the test name is changed on the file system and file watching is disabled Test Replay Screenshots
Cypress Studio > does not remove the studio url parameters if saving fails Test Replay Screenshots
Failed  src/runner/selector-playground/SelectorPlayground.cy.tsx • 1 failed test • app-ct

View Output

Test Artifacts
SelectorPlayground > shows copy tooltip when button is focused Test Replay
Flakiness  e2e/e2e_cookies.cy.js • 1 flaky test • 5x-driver-electron

View Output

Test Artifacts
e2e cookies spec > __Host- prefix > can set __Host- cookie Test Replay
Flakiness  issues/28527.cy.ts • 1 flaky test • 5x-driver-electron

View Output

Test Artifacts
issue 28527 > fails and then retries and verifies about:blank is not displayed Test Replay Screenshots
Flakiness  commands/net_stubbing.cy.ts • 1 flaky test • 5x-driver-firefox

View Output

Test Artifacts
... > stops waiting when an xhr request is canceled
    </td>
  </tr></table>
Flakiness  e2e/e2e_cookies.cy.js • 1 flaky test • 5x-driver-firefox

View Output

Test Artifacts
e2e cookies spec > __Host- prefix > can set __Host- cookie
    </td>
  </tr></table>
Flakiness  commands/files.cy.js • 1 flaky test • 5x-driver-firefox

View Output

Test Artifacts
src/cy/commands/files > #readFile > retries to read when ENOENT
    </td>
  </tr></table>

The first 5 flaky specs are shown, see all 14 specs in Cypress Cloud.

* 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 <[email protected]>

* PR comments

---------

Co-authored-by: Copilot <[email protected]>
ryanthemanuel and others added 13 commits May 29, 2025 21:51
* 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 <[email protected]>

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

Co-authored-by: Bill Glesias <[email protected]>

* 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 <[email protected]>
…#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

* test caching

* fix types
…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

* Fix ts, add test

* Fix error title

* Fix ts

* Fix ts
@@ -31,6 +31,7 @@ exports['module api and after:run results'] = `
"experimentalSourceRewriting": false,
"experimentalSingleTabRunMode": false,
"experimentalStudio": false,
"experimentalPromptCommand": false,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Was requested review as Code Owner due to the results API change here. This change looks good. 👍🏻

ryanthemanuel and others added 9 commits June 13, 2025 13:31
* share error utils with cloud

* additional rework

* Fix command, add isOpenMode

* Add / fix test

* fix ts

---------

Co-authored-by: Ryan Manuel <[email protected]>
…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 <[email protected]>
* chore: (cy.prompt) refactor getTestsState to take a runnable id

* fix tests

* minor tweak
…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 <[email protected]>

* fix test

---------

Co-authored-by: Matt Schile <[email protected]>
cursor[bot]

This comment was marked as outdated.

)

* 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
cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

…ting errors in prompt (#32134)

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

* refactor

* update tests
cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

…ng promises in parallel (#32196)

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

* add awaits in test
cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

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

Successfully merging this pull request may close these issues.

4 participants