Skip to content

fix(app): prevent settings dialog handler from locking up on cleanup - #42037

Open
MaaBlock wants to merge 1 commit into
anomalyco:devfrom
OpenAgentDev:fix-settings-official
Open

fix(app): prevent settings dialog handler from locking up on cleanup#42037
MaaBlock wants to merge 1 commit into
anomalyco:devfrom
OpenAgentDev:fix-settings-official

Conversation

@MaaBlock

@MaaBlock MaaBlock commented Aug 12, 2026

Copy link
Copy Markdown

Issue for this PR

Closes #42042

Type of change

  • Bug fix
  • New feature
  • Refactor / code improvement
  • Documentation

What does this PR do?

useSettingsDialog drops subsequent open attempts if the component unmounts or re-renders once, because onCleanup permanently sets dead = true.

This removes the dead check so settings.open works reliably after re-renders. The run !== current check is kept to prevent race conditions when dynamic imports resolve out of order.

How did you verify your code works?

Tested hitting Cmd+, and using the command palette in the desktop app after switching tabs/routes. All 722 unit tests in packages/app pass.

Added Playwright E2E verification test in packages/app/e2e/user-story/settings-dialog-opening.spec.ts that presses Control+, and asserts div.settings-v2-dialog mounts into the DOM.

Screenshots / recordings

Verified in Playwright headless Chromium (1 passed): the dialog-v2 container renders upon Control+, shortcut trigger.

Checklist

  • I have tested my changes locally
  • I have not included unrelated changes in this PR

@github-actions github-actions Bot added needs:compliance This means the issue will auto-close after 2 hours. needs:issue labels Aug 12, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Thanks for your contribution!

This PR doesn't have a linked issue. All PRs must reference an existing issue.

Please:

  1. Open an issue describing the bug/feature (if one doesn't exist)
  2. Add Fixes #<number> or Closes #<number> to this PR description

See CONTRIBUTING.md for details.

@github-actions github-actions Bot removed needs:issue needs:compliance This means the issue will auto-close after 2 hours. labels Aug 12, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Thanks for updating your PR! It now meets our contributing guidelines. 👍

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.

fix(app): settings dialog handler locks up after scope cleanup

1 participant