Skip to content

Conversation

@estrada9166
Copy link
Member

@estrada9166 estrada9166 commented Oct 22, 2025

Additional details

Steps to test

How has the user experience changed?

PR Tasks


Note

Adds a styled Self-healed badge, rendering on self-healed commands and at the test level when any attempt contains a self-healed command, with tests and changelog updates.

  • Reporter UI:
    • Badge: Introduces SelfHealedBadge component (src/lib/selfHealedBadge.tsx, selfHealedBadge.scss) and imports into main styles; displays next to command messages and test titles.
    • Models: Adds renderProps.selfHealed and computed isSelfHealed to CommandModel and TestModel to surface badge state across nested/collapsed groups and attempts.
    • Rendering: Renders badge in commands/command.tsx and test/test.tsx; adjusts message spacing in commands.scss.
  • Tests:
    • E2E: Adds scenarios verifying badge visibility and behavior with nested groups and long text (cypress/e2e/commands.cy.ts).
    • Unit: Adds #isSelfHealed tests for TestModel across retries (cypress/e2e/unit/test_model.cy.ts).
  • Changelog:
    • Updates 15.6.0 release date and notes the new Self-healed badge feature (cli/CHANGELOG.md).

Written by Cursor Bugbot for commit d76e131. This will update automatically on new commits. Configure here.

@estrada9166 estrada9166 marked this pull request as ready for review October 23, 2025 18:20
…com:cypress-io/cypress into alejandro/chore/implement-self-healed-badge
@estrada9166 estrada9166 marked this pull request as draft October 23, 2025 18:25
@cypress
Copy link

cypress bot commented Oct 23, 2025

cypress    Run #66946

Run Properties:  status check passed Passed #66946  •  git commit d76e1317cd: Merge branch 'develop' into alejandro/chore/implement-self-healed-badge
Project cypress
Branch Review alejandro/chore/implement-self-healed-badge
Run status status check passed Passed #66946
Run duration 19m 45s
Commit git commit d76e1317cd: Merge branch 'develop' into alejandro/chore/implement-self-healed-badge
Committer Jennifer Shehane
View all properties for this run ↗︎

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

Warning

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

UI Coverage  45.61%
  Untested elements 187  
  Tested elements 161  
Accessibility  97.98%
  Failed rules  4 critical   8 serious   2 moderate   2 minor
  Failed elements 101  

@estrada9166 estrada9166 marked this pull request as ready for review October 23, 2025 19:17
cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

Copy link
Member

@jennifer-shehane jennifer-shehane left a comment

Choose a reason for hiding this comment

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

Some notes from the bot here.

@@ -0,0 +1,14 @@
import React from 'react'
import SparkleIcon from '@packages/frontend-shared/src/assets/icons/sparkle_x16.svg'
Copy link
Member

Choose a reason for hiding this comment

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

@estrada9166 Was this not working with the @cypress-design/react-icon package?


get isSelfHealed () {
return this._isSelfHealed
}
Copy link
Member

Choose a reason for hiding this comment

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

@estrada9166 Can you test this?


get isSelfHealed () {
return (!!this.renderProps.selfHealed || (this.hasChildren && !this.isOpen && this.children.some((child) => !!child.renderProps.selfHealed)))
}
Copy link
Member

Choose a reason for hiding this comment

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


get isSelfHealed () {
return (!!this.renderProps.selfHealed || (this.hasChildren && !this.isOpen && this.children.some((child) => !!child.renderProps.selfHealed)))
}
Copy link
Member

Choose a reason for hiding this comment

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

@jennifer-shehane jennifer-shehane changed the title chore: display self healed badge for cyPrompt feat: display self healed badge for cy.prompt Oct 27, 2025

**Features:**

- Added a 'Self-healed' badge to the Command Log when `cy.prompt()` steps automatically recover after the element they need is not found in the cache. Addressed in [#32802](https://github.com/cypress-io/cypress/pull/32802).
Copy link
Member

Choose a reason for hiding this comment

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

@estrada9166 You'll need to put a changelog entry with proper semver for every prompt feature since this is publicly released now.

Copy link
Member

@jennifer-shehane jennifer-shehane left a comment

Choose a reason for hiding this comment

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

It seems to work fine. Would like some feedback from design around the hovering styles.

@jennifer-shehane jennifer-shehane self-requested a review October 28, 2025 15:37
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.

3 participants