62f4599407
When the local user leaves a Marmot MLS group, MarmotManager already wipes MLS state, the relay subscription and the persisted message log, but the chatroom (and its decrypted inner messages) lingered in marmotGroupList until the UI happened to call removeGroup. The CLI leave path skipped that step entirely, and removeGroup itself only dropped the chatroom from rooms — it left noteToGroupIndex entries and the chatroom's own messages set in place, so notes stayed strongly referenced and kept appearing in the Notification feed. Move the in-memory cleanup into Account.leaveMarmotGroup, and have MarmotGroupList.removeGroup also clear the chatroom's messages and the note→group index. LocalCache holds notes weakly, so cutting the strong refs is enough — GC reclaims them and the existing acceptableEvent filter (which keys off marmotGroupList.rooms) hides anything still in-flight.