Symptom
When a recorded session is replayed via LandKeeper in reevaluation mode, server events emitted during replay have different sequence values than the recorded ones, even though the event content is identical. Cause: replayed inputs reuse the recorded sequence numbers, but outputCollector.takeNextSequence() is not advanced during replay, so the counter drifts.
Current state (workaround)
Examples/GameDemo/Sources/ReevaluationRunner/main.swift does a content-level recheck that ignores the sequence field and prints a warning ("known accounting gap") instead of failing with exit 6. Verified in PR #47: all 41 recordings match at content level.
Fix
Advance (or restore) the output sequence counter during replay so replayed server events are byte-identical to the recorded ones, then remove the content-level fallback in ReevaluationRunner.
Sources/ change → sst-core-change flow, own PR.
Symptom
When a recorded session is replayed via
LandKeeperin reevaluation mode, server events emitted during replay have differentsequencevalues than the recorded ones, even though the event content is identical. Cause: replayed inputs reuse the recorded sequence numbers, butoutputCollector.takeNextSequence()is not advanced during replay, so the counter drifts.Current state (workaround)
Examples/GameDemo/Sources/ReevaluationRunner/main.swiftdoes a content-level recheck that ignores thesequencefield and prints a warning ("known accounting gap") instead of failing with exit 6. Verified in PR #47: all 41 recordings match at content level.Fix
Advance (or restore) the output sequence counter during replay so replayed server events are byte-identical to the recorded ones, then remove the content-level fallback in ReevaluationRunner.
Sources/change → sst-core-change flow, own PR.