mirror of
https://github.com/penpot/penpot.git
synced 2026-09-30 15:56:17 +00:00
Extract the WebSocket close-code decision into a pure ReconnectPolicy module and cover it with node:test. The plugin now names the 1008 policy-violation code instead of using a magic number, and the terminal behavior of a 1008 close is pinned by a regression test so a future refactor cannot reintroduce the reconnect storm. Document the contract in mem:mcp/core: 1008 is terminal, it comes from a duplicate user token or a missing token in multi-user mode, and recovery is manual via "Connect here". Closes #11510 AI-assisted-by: deepseek-v4.1-flash