Skip to content

fix(party-ui): release pending controls when the bridge disconnects - #383

Merged
Alban1911 merged 1 commit into
Alban1911:mainfrom
Lng999:fix/party-panel-reconnect-20261020
Oct 20, 2026
Merged

Alban1911 merged 1 commit into
Alban1911:mainfrom
Lng999:fix/party-panel-reconnect-20261020

Conversation

@Lng999

@Lng999 Lng999 commented Oct 20, 2026

Copy link
Copy Markdown
Contributor

Closing or restarting Rose while Party Mode was adding a friend left the plugin's panel locked: its close button and Done control stayed unavailable. Losing the connection during enable/disable also left the toggle disabled. Requests made while disconnected were queued and could unexpectedly execute after reconnection.

Track the pending action and restore the controls when the bridge connection closes. Keep the panel open, return the friend's token to its input and show a retry message. User mutations now require an open connection and are never queued; reconnecting requests current state without replaying an action. State confirmation settles a pending enable/disable, while an add remains locked until its reply, disconnection or party mode being disabled. Normal replies still release the controls. The new messages use the existing English translation fallback.

Validation:

  • node --test test/party_ui_reconnect.test.cjs: 5 pass; all 5 fail against the base plugin.
  • The harness drives the real plugin's click handlers with fake DOM, WebSocket and timers, covering restored tokens/controls, explicit retry, offline refusal and state reconciliation.
  • The plugins CI job runs this harness after syntax checks using its existing Node 24 setup. Plugin syntax and git diff --check pass.

Validation does not include a live League client or establish a fix for issue #374.

@Alban1911
Alban1911 merged commit f592748 into Alban1911:main Oct 20, 2026
3 of 4 checks passed
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.

2 participants