Skip to content

feat(medium): Clarify 'Reset Permissions & Settings' button text - #9039

Merged
arii merged 9 commits into
leaderfrom
refactor-reset-section-connectview-3509644700898956186-10505287430761920017
Feb 22, 2026
Merged

feat(medium): Clarify 'Reset Permissions & Settings' button text#9039
arii merged 9 commits into
leaderfrom
refactor-reset-section-connectview-3509644700898956186-10505287430761920017

Conversation

@arii

@arii arii commented Feb 21, 2026

Copy link
Copy Markdown
Owner

Description

This change clarifies the purpose of the Reset button in the Heart Rate Monitor connection view. The button is renamed to 'Reset Permissions & Settings' and its description is updated to accurately reflect that it forgets stored device permissions and settings, including the Bluetooth connection. Additionally, the styling of the reset section is updated to use the application's theme divider color for better consistency. Corresponding tests and visual snapshots have been updated.

Fixes #9020

Change Type: 🐛 Bug fix (non-breaking change fixing an issue)

PR Scope Checklist

This checklist is mandatory for all PRs.

  • PR has a clear, single purpose: The title and description of the PR clearly state the purpose of the change.
  • All changes relate to the stated objective: The code changes should be directly related to the purpose of the PR.
  • No unrelated cleanup or refactoring: The PR should not contain any changes that are not directly related to the stated objective.
  • Title and description match the actual changes: The title and description should accurately reflect the changes in the PR.
  • Tests cover the specific change scope: The tests should be focused on the changes in the PR and should not include unrelated tests.

Impact Assessment

  • Changes are backward compatible (or breaking changes are documented)
  • Tests are added/updated for new functionality
  • Documentation is updated if needed
  • ADR is created/updated for significant architectural changes
Original PR Body

This change clarifies the purpose of the Reset button in the Heart Rate Monitor connection view. The button is renamed to 'Reset Permissions & Settings' and its description is updated to accurately reflect that it forgets stored device permissions and settings, including the Bluetooth connection. Additionally, the styling of the reset section is updated to use the application's theme divider color for better consistency. Corresponding tests and visual snapshots have been updated.

Fixes #9020


PR created automatically by Jules for task 10505287430761920017 started by @arii

- Rename 'Reset System & Device' to 'Reset Permissions & Settings'
- Update description to 'Resets stored permissions and device settings, including Bluetooth connection.'
- Use theme.palette.divider for ResetSection border for consistency
- Update unit tests and Playwright tests to match new button text
- Update visual regression test snapshots

Co-authored-by: arii <342438+arii@users.noreply.github.com>
@google-labs-jules

Copy link
Copy Markdown
Contributor

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

@github-actions github-actions Bot changed the title Clarify 'Reset Permissions & Settings' button text feat(medium): Clarify 'Reset Permissions & Settings' button text Feb 21, 2026
@arii

arii commented Feb 21, 2026

Copy link
Copy Markdown
Owner Author

Reviewed commit: 982a33a6d7d4fc047b9896b186cdcd150d7809ba

This PR effectively clarifies the text for the 'Reset Permissions & Settings' button and its accompanying description, improving user understanding. The changes are well-scoped and directly address the stated goal.

Positive Observations

  1. UI Text Clarity: The updated button text and caption in app/client/connect/ConnectView.tsx provide a much clearer explanation of what the reset action entails, which is a significant UX improvement.
  2. MUI Theme Adherence: The change from a hardcoded color (#eee) to theme.palette.divider for the borderTop in app/client/connect/ConnectView.tsx (line 91) is excellent. This aligns perfectly with the project's DESIGN_GUIDELINES.md for consistent styling and theme integration.
  3. Test Updates: All relevant Playwright E2E tests (bluetooth-flow.spec.ts) and unit tests (ConnectView.test.tsx) have been correctly updated to reflect the new button text, ensuring test stability and accuracy.
  4. VRT Snapshots: The updated VRT snapshots are expected given the UI text changes and confirm the visual consistency.

This is a solid enhancement that improves the clarity and maintainability of the codebase.

Reviewed at commit: 982a33a6d7d4fc047b9896b186cdcd150d7809ba

- Updated button text from 'Reset System & Device' to 'Reset Permissions & Settings'.
- Updated button description to 'Resets stored permissions and device settings, including Bluetooth connection.' for better clarity.
- Refactored `ResetSection` styling to use MUI system properties (`borderTop: 1`, `borderColor: 'divider'`) instead of manual template literals.
- Updated unit tests in `tests/unit/app/client/connect/ConnectView.test.tsx` to match the new button text.
- Updated Playwright tests in `tests/playwright/bluetooth-flow.spec.ts` to match the new button text.
- Regenerated Visual Regression Test (VRT) snapshots to reflect UI changes.
- Verified changes with `pnpm run lint`, `pnpm run build`, `pnpm run test:unit`, and local Playwright execution.

Note: Addressed PR feedback regarding cleaner MUI `sx` syntax and clarified the button's action as requested.

Co-authored-by: arii <342438+arii@users.noreply.github.com>
@arii

arii commented Feb 21, 2026

Copy link
Copy Markdown
Owner Author

Reviewed commit: 23483e78f621b4f0f641f37c35bf48388ba12a26

This PR effectively clarifies the 'Reset Permissions & Settings' button text and its associated description, significantly improving user understanding of its functionality. The changes are well-implemented and consistently applied across the UI and relevant tests.

Specifically:

  • The button text in app/client/connect/ConnectView.tsx has been updated from 'Reset System & Device' to 'Reset Permissions & Settings', which is much clearer.
  • The accompanying caption text has also been refined to better explain the reset's scope.
  • The styling for the borderTop in ResetSection was updated from a hardcoded pixel value and hex color to borderTop: 1, borderColor: 'divider', which aligns with Material-UI's theme usage and promotes consistency, as outlined in docs/DESIGN_GUIDELINES.md (Design System, Shape & Borders).
  • All relevant Playwright and unit tests have been updated to reflect the new button text, ensuring test suite integrity.
  • The visual regression test snapshots were updated, which is expected given the UI text changes.

Overall, this is a focused and valuable enhancement.

Reviewed at commit: 23483e78f621b4f0f641f37c35bf48388ba12a26

@arii arii added documentation Improvements or additions to documentation ai-reviewed Indicates that the PR has been processed by an AI agent. labels Feb 21, 2026
google-labs-jules Bot and others added 2 commits February 21, 2026 04:29
- Extracted ResetSection component to standalone file at `app/client/connect/components/ResetSection.tsx`.
- Updated button text to 'Reset Permissions & Settings' and clarified description.
- Refactored styling to use MUI system properties (`borderTop: 1`, `borderColor: 'divider'`).
- Renamed VRT snapshot in test to 'connect-page-scanning.png' to match project history and satisfy reviewer feedback.
- Updated all unit and integration tests.
- Regenerated all VRT snapshots.

Co-authored-by: arii <342438+arii@users.noreply.github.com>
- Extracted ResetSection component to standalone file at `app/client/connect/components/ResetSection.tsx`.
- Updated button text to 'Reset Permissions & Settings' and clarified description.
- Refactored styling to use MUI system properties.
- Updated unit and integration tests.
- Fixed Prettier formatting error in ResetSection.tsx.
- Regenerated VRT snapshots to match the new UI text.

Co-authored-by: arii <342438+arii@users.noreply.github.com>
@arii

arii commented Feb 21, 2026

Copy link
Copy Markdown
Owner Author

Reviewed commit: e582f5cbe0e86d89b51d1420a0fe8c431ba3bfc9

This PR successfully clarifies the 'Reset Permissions & Settings' button text, improving user understanding. The refactoring of the ResetSection component into its own file (app/client/connect/components/ResetSection.tsx) is a good move, enhancing modularity and reusability. The update to use borderColor: 'divider' instead of a hardcoded color for the border is also a positive change, aligning with the project's MUI theme guidelines for consistency.

All relevant unit and E2E tests have been updated to reflect the text change, and the VRT snapshot name was appropriately adjusted. Overall, a clean and well-executed change.

Reviewed at commit: e582f5cbe0e86d89b51d1420a0fe8c431ba3bfc9

@arii arii added refactor priority:medium ai-reviewed Indicates that the PR has been processed by an AI agent. and removed ai-reviewed Indicates that the PR has been processed by an AI agent. labels Feb 21, 2026
- Extracted ResetSection component to standalone file at `app/client/connect/components/ResetSection.tsx`.
- Updated button text to 'Reset Permissions & Settings' and clarified description.
- Refactored styling to use MUI system properties (`borderTop: 1`, `borderColor: 'divider'`) for cleaner syntax.
- Removed unnecessary JSDoc and exported interface from `ResetSection.tsx` per anti-slop guidelines.
- Updated all unit and integration tests to match the new button text.
- Regenerated all VRT snapshots and restored consistency to snapshot naming.

Co-authored-by: arii <342438+arii@users.noreply.github.com>
@arii

arii commented Feb 21, 2026

Copy link
Copy Markdown
Owner Author

Reviewed commit: a921bdd8234177664c0a375bbda3f66d46ed7477

This PR effectively clarifies the 'Reset Permissions & Settings' button text, which is a good improvement for user experience. The refactoring of the ResetSection component into its own file (app/client/connect/components/ResetSection.tsx) is a positive change, enhancing modularity and readability of ConnectView.tsx.

Additionally, the update to use borderTop: 1, borderColor: 'divider' in the ResetSection component is an excellent example of leveraging the Material-UI theme for consistent styling, aligning with the project's DESIGN_GUIDELINES.md and copilot-instructions.md.

All relevant tests (Playwright and unit tests) have been updated to reflect the new button text, ensuring continued test coverage. The VRT snapshot name change is also appropriate.

Reviewed at commit: a921bdd8234177664c0a375bbda3f66d46ed7477

@arii arii removed the ai-reviewed Indicates that the PR has been processed by an AI agent. label Feb 21, 2026
- Extracted ResetSection component to standalone file at `app/client/connect/components/ResetSection.tsx`.
- Updated button text to 'Reset Permissions & Settings' and clarified description to better reflect action scope.
- Refactored styling in ResetSection to use MUI system properties (`borderTop: 1`, `borderColor: 'divider'`).
- Adhered to Anti-AI-Slop guidelines by removing redundant JSDoc and internal interface exports.
- Updated unit tests (`ConnectView.test.tsx`) and Playwright tests (`bluetooth-flow.spec.ts`) to match the new UI text.
- Regenerated Visual Regression Test (VRT) snapshots to reflect UI changes and layout refinements.
- Preserved and acknowledged the architectural shift to linear backoff for Bluetooth reconnection (ADR-0007) present in this branch.

Co-authored-by: arii <342438+arii@users.noreply.github.com>
@arii

arii commented Feb 21, 2026

Copy link
Copy Markdown
Owner Author

Reviewed commit: b8688e52cad2c4d305a430a2126e9ba4805f84f3

This PR is a good improvement, clarifying the 'Reset' button text and extracting the ResetSection into its own component.

Key Observations:

  • Clarity: The updated button text "Reset Permissions & Settings" is much clearer and more accurate than the previous "Reset System & Device". The accompanying caption also provides better context.
  • Refactoring: Moving the ResetSection component to its own file (app/client/connect/components/ResetSection.tsx) is a positive step towards better component organization and reusability, aligning with the project's DRY principles and Code Review Guidelines.
  • MUI Usage: The styling for the ResetSection component correctly utilizes MUI theme values (borderColor: 'divider') for consistency, as outlined in docs/DESIGN_GUIDELINES.md.
  • Testing: The Playwright and unit tests have been appropriately updated to reflect the new button text, ensuring test coverage remains valid.
  • VRT Snapshots: The VRT snapshot changes are expected due to the UI text update and the renaming of the connect-page-checking-saved-devices.png snapshot to connect-page-scanning.png which is a more accurate description.

Overall, this is a well-executed and beneficial change.

Reviewed at commit: b8688e52cad2c4d305a430a2126e9ba4805f84f3

- Extracted ResetSection component to standalone file at `app/client/connect/components/ResetSection.tsx`.
- Updated button text to 'Reset Permissions & Settings' and clarified description to better reflect action scope.
- Refactored styling in ResetSection to use MUI system properties (`borderTop: 1`, `borderColor: 'divider'`).
- Adhered to Anti-AI-Slop guidelines by removing redundant JSDoc and internal interface exports.
- Updated unit tests (`ConnectView.test.tsx`) and Playwright tests (`bluetooth-flow.spec.ts`) to match the new UI text.
- Regenerated Visual Regression Test (VRT) snapshots to reflect UI changes and layout refinements.
- Preserved and acknowledged the architectural shift to linear backoff for Bluetooth reconnection (ADR-0007) present in this branch.

Addressing reviewer feedback regarding PR scope transparency.

Co-authored-by: arii <342438+arii@users.noreply.github.com>
@arii

arii commented Feb 21, 2026

Copy link
Copy Markdown
Owner Author

Reviewed commit: 8228d1d5a60be6689c3cd009f891422bf3f78d04

This PR effectively clarifies the 'Reset Permissions & Settings' button text and its associated description, significantly improving user understanding of its function. The refactoring of the ResetSection component into its own file (app/client/connect/components/ResetSection.tsx) is a positive change, enhancing modularity and maintainability. The update to use borderColor: 'divider' for the border style aligns with the project's MUI theme guidelines, promoting consistency.

All relevant tests (Playwright E2E and unit tests) have been updated to reflect the new button text, ensuring test suite integrity. The VRT snapshot name change is also appropriate.

Overall, this is a well-executed and valuable enhancement.

Reviewed at commit: 8228d1d5a60be6689c3cd009f891422bf3f78d04

@arii
arii marked this pull request as ready for review February 21, 2026 07:19
@arii

arii commented Feb 21, 2026

Copy link
Copy Markdown
Owner Author

Reviewed commit: cec73186a0b67b0ae0ace610f0f8a3a4fb94e73e

This PR effectively clarifies the 'Reset Permissions & Settings' button text, which is a good user experience improvement. The extraction of the ResetSection component into its own file (app/client/connect/components/ResetSection.tsx) is a positive refactoring step, enhancing modularity and readability in ConnectView.tsx. This aligns well with the "Don't Repeat Yourself (DRY)" principle and "Create Reusable Components" guideline from docs/CODE_REVIEW_GUIDELINES.md.

Furthermore, the styling update in the new ResetSection.tsx from a hardcoded color ('1px solid #eee') to using MUI theme values (borderTop: 1, borderColor: 'divider') demonstrates good adherence to the project's design system and consistency guidelines outlined in docs/DESIGN_GUIDELINES.md.

All relevant unit and Playwright E2E tests have been updated to reflect the new button text, ensuring continued test coverage and correctness. The change in the VRT snapshot name from checking-saved-devices to scanning is also a good update to better describe the state being captured.

Overall, this is a well-executed and beneficial change.

Reviewed at commit: cec73186a0b67b0ae0ace610f0f8a3a4fb94e73e

@arii

arii commented Feb 21, 2026

Copy link
Copy Markdown
Owner Author

🤖 AI Technical Audit

Code Review: PR #9039 - Clarify 'Reset Permissions & Settings' button text

This PR successfully refactors the Reset UI logic into a dedicated component and updates the copy to be more user-friendly. The changes align well with the objective of clarifying the button's purpose.

⚠️ ANTI-AI-SLOP DIRECTIVES

  1. OVERLY VERBOSE COMMENTS: ✅ None found. The code is concise.
  2. OVER-ENGINEERING: ✅ The extraction of ResetSection is appropriate. It reduces clutter in the main ConnectView without introducing unnecessary abstractions.
  3. DUPLICATE HOOKS/TYPES: ✅ ResetSectionProps was correctly removed from the parent file and defined in the new component file.
  4. CODE RATIO: ✅ The PR is small (net +~10 LOC). The deletion of the inline component in ConnectView.tsx balances the new file creation.
  5. STALE FEATURES: ✅ The old inline ResetSection and its hardcoded styles were correctly removed.

General Feedback

  • Refactoring: Moving ResetSection to components/ is a good move for maintainability. It cleans up ConnectView.tsx.
  • Styling: Switching from borderTop: '1px solid #eee' to borderColor: 'divider' allows the component to respect the application theme (e.g., Dark Mode), which is a significant improvement in best practices.
  • Testing: The VRT snapshot rename (checking-saved-devices -> scanning) seems to consolidate naming conventions. The Playwright selectors were updated correctly to match the new button text.

Suggestions

  • Type Exports: Consider exporting ResetSectionProps. While not strictly required for this PR, it helps in testing scenarios where one might want to mock props using the interface directly.
  • Localization: The strings are hardcoded. If the application supports i18n, these new strings should be moved to resource files. Assuming current scope doesn't enforce i18n, this is acceptable for now.

Review automatically published via RepoAuditor.

…w cleanup (#9071)

Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
Co-authored-by: arii <342438+arii@users.noreply.github.com>
@arii

arii commented Feb 21, 2026

Copy link
Copy Markdown
Owner Author

Reviewed commit: fee3fa216b94f25dc3bfce9c25bcbbe40fdff49e

This PR successfully clarifies the 'Reset Permissions & Settings' button text and its associated description, which significantly improves user understanding. The extraction of the ResetSection component into its own file (app/client/connect/components/ResetSection.tsx) is a great move for component reusability and maintainability, aligning with the "Don't Repeat Yourself (DRY)" principle from docs/CODE_REVIEW_GUIDELINES.md. The styling update in the new component to use borderColor: 'divider' is also a good practice, leveraging the MUI theme for consistency as outlined in docs/DESIGN_GUIDELINES.md.

All related tests (Playwright E2E and unit tests) have been updated to reflect the new button text, ensuring test coverage remains accurate.

There is a minor, unrelated change in .github/actions/setup-env/action.yml which adds a check for existing gh CLI installation and a retry mechanism to curl. While these are positive improvements, they fall outside the stated scope of this PR, which is focused on UI text clarification. Per docs/DEVELOPMENT.md (PR Scope), it's generally preferred to keep PRs focused on "One Logical Change Per PR". For this reason, I've added a suggestedIssue to track this as a separate chore.

Overall, the changes are well-executed and improve the clarity and structure of the codebase.

Reviewed at commit: fee3fa216b94f25dc3bfce9c25bcbbe40fdff49e

@arii
arii merged commit 5e94e24 into leader Feb 22, 2026
25 checks passed
@arii
arii deleted the refactor-reset-section-connectview-3509644700898956186-10505287430761920017 branch February 22, 2026 00:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Clarify 'Reset Permissions & Settings' button text

1 participant