Deployed EventHorizon commit 8d96984fd8ff through the normal Gitea Actions pipeline.
- Added monotonic
session_generation state to game sessions and persistent turn jobs.
- Clear and reset now advance the generation and transactionally remove session turn jobs plus PostgreSQL persona memory, memory evidence, extraction jobs, and queued vector work.
- Turn-owned setup, chat, passive-state, final commit, memory evidence, and delayed background-effect writes reject a stale generation.
- Opening-history replacement is generation-aware.
- The Game Memories view immediately discards cached entries after clear and reloads authoritative server state.
- Repository tests: 322 backend and 5 frontend passed.
- Rollout: 2/2 replicas Ready on
sha-8d96984fd8ff, zero restarts.
/healthz: ok; /readyz: PostgreSQL and Qdrant ready.
- SQLx migration 25 (
game session generation) applied successfully.
- Both generation columns are non-null
bigint; active turn-job uniqueness includes session ID, generation, and expected turn count.
- Active turn jobs with a mismatched generation: 0.
- Turn-zero sessions with persona memory, memory jobs, or turn evidence: 0.
- PostgreSQL persona memories: 6; Qdrant points: 6; exact ID comparison found no records present on only one side.
- No existing game session was reset, cleared, rewound, or otherwise repaired during verification.
Application rollback is available through the prior image sha-7d98e7d33d4b. Migration 25 is additive; leave the generation columns in place during an application rollback unless a separately reviewed schema rollback is required.