0ec1544d66
`MarmotInboundProcessor.processGroupEvent` added every event id to its dedup set regardless of result, including `UndecryptableOuterLayer`. The handler buffers those events for a post-commit retry, but the replay hit the Duplicate early-return and skipped MLS decryption — so future-epoch messages and group-metadata commits that arrived before their epoch's commit were silently dropped until an app restart re-fetched them. This is interop test 12 (offline catch-up): messages 6-8 and the rename commit only appeared after restarting Amethyst. Skip the dedup write on `UndecryptableOuterLayer` so retries actually re-attempt decrypt once the epoch advances. Memory is still bounded by the handler's per-group pending buffer (64 events, FIFO-evicted).