fix(devframe): publish approval notifications once per host - #77
Closed
dvcolomban wants to merge 1 commit into
Closed
dvcolomban wants to merge 1 commit into
dvcolomban wants to merge 1 commit into
Conversation
dvcolomban
marked this pull request as ready for review
September 17, 2026 09:13
Collaborator
Author
|
Superseded by #78, which incorporates the notification ownership behavior and regression coverage, upgrades to Devframe 1.0, and removes the temporary upstream patches that blocked this PR. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Background (Why)
Opening two browser-control panels creates duplicate notifications because each page publishes into the same shared Devframe message feed. Each notification points to a command registered in only one page, so the other page cannot reliably use its action.
Changes (What)
Make the panel host publish one message per pending request or grant scope. Each page registers its own command under the shared message ID. Closing a page releases its commands without deleting the notification for other pages.
Keep description updates and removals serialized, including reconnect and disposal races. Preserve Review by default and configured direct Accept.
Verification (Testing)
The two-client regression fails before the fix and passes afterward. All 27 Devframe package tests, package/root test type checks, affected lint and the package build pass.
Real Chromium checks pass for embedded and standalone reference UI when using the upstream page-script correction in Devframe PR #387. They verify one shared message, page-local actions, closing either client and request removal. The new Chromium checks still fail against the pinned, unmodified hub UI, because its page scripts do not start before panel activation. This PR remains draft pending adoption of that upstream fix; no dependency upgrade or backport is included here.