Files
flamenet-messenger-android/engine
Paul HittandClaude Opus 5 02e5c45cd4 A test that could actually have caught it
`a retired session is kept and still opens its chain` passed while the fix was
broken, because it retires a PRISTINE session — which is not what the receive
path holds. By the time that path decides to retire anything it has just proved
the peer is on another chain by handing this session an envelope it could not
open, and E2ESession is a class, so that attempt consumed skipped keys and
stepped the chain.

The new test reproduces that state and asserts both halves: the damaged instance
must NOT still open its chain (or the test proves nothing), and the copy re-read
from the vault must. It fails against the first version of the fix and passes
against this one.

13 VaultTest cases, 112 engine tests, 0 failures. Both platforms compile.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 17:13:59 -04:00
..