Files
amethyst/quartz
Claude 0ec1544d66 fix: keep undecryptable Marmot kind:445 events retryable after epoch advance
`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).
2026-04-23 15:39:56 +00:00
..