A promotion queue is a gate. Rows arrive, a checker decides whether each row is promoted into durable memory or dropped, and the queue records the decision. Once the checker is written and the queue is humming, the temptation is to treat the checker as settled. It is not. Checkers change for ordinary reasons: someone tightens the staleness rule, someone adds a dependency check, someone fixes a false promotion. Every one of those changes is a chance to silently reclassify rows that already went through.
The stakes are higher than in ordinary regression work because a promoted row becomes a belief. Memory systems that store extracted claims must treat a write decision as a governance decision, not a summarization step; the GovMem work on memory write-path governance frames promotion as an explicit choice among promote, reject and needs review, precisely because a wrong promotion persists and is read back later. A checker change that flips a previously dropped row into a promoted one is, functionally, a policy change disguised as a code review.
Regression testing has the same shape. The goal is not to test new features but to confirm existing behavior survived a change, and the practical consensus is to run it on every change because bugs become more expensive once they reach production. A replay set is regression testing aimed at one specific component, with the inputs drawn from production rather than invented.
There is a second reason, quieter and more useful. Replaying promoted and dropped rows against a deterministic checker turns an argument about intent into a diff. When two engineers disagree about whether a staleness rule should be 72 hours or 96 hours, the replay set answers with a count: this many previously promoted rows would now be dropped, these were promoted on this date, here is the source row. That is a decision, not a debate.



