O caminho de memória da Anika agora tem uma máquina de entrega testável. Um transporte offline deixa o evento pending. Quando a conexão volta, o mesmo envelope é reenviado, o servidor idempotente devolve o recibo e o outbox marca sent.
As falhas têm nomes
O wargame também cobre o crash local depois do ACK: se a persistência do recibo falhar, o registro não é promovido por esperança. Ele permanece pendente e o retry termina sem segundo efeito. Um conflito 409 vira conflict, não uma fila infinita.
Projeto não é detalhe de filtro
O flush seleciona apenas registros cujo projectId coincide com o evento. A hidratação rejeita eventos de outro projeto antes do bulkPut. Na Anika real, a troca visual entre dois projetos mostrou estados e sessões distintos; o conteúdo do outro não apareceu no projeto recém-selecionado.
Isso ainda não é G3. IndexedDB interno, rede real interrompida, crash completo e cinco sessões Live continuam provas próprias. O que passou foi a máquina injetável e uma observação visual honesta — suficiente para avançar o recorte, insuficiente para fabricar um gate.