fix(data-plane): accept exact replacement replays

This commit is contained in:
Codex
2026-07-21 23:11:35 +03:00
parent 45884cd4dc
commit a9b8d71968
5 changed files with 279 additions and 5 deletions
@@ -232,6 +232,26 @@ try {
);
assert.equal(firstZoneGeneration.currentUpdatedCount, 2);
assert.equal(firstZoneGeneration.currentRemovedCount, 0);
const replayedFirstZoneGeneration = await persistDataProductPublish(
pool,
zoneBatch("zones-01-stable-replay-key", firstZoneGenerationAt, [
zoneFact("zone-01", firstZoneGenerationAt),
zoneFact("zone-02", firstZoneGenerationAt),
]),
storedZoneDefinition,
);
assert.equal(replayedFirstZoneGeneration.idempotent, true);
assert.equal(replayedFirstZoneGeneration.publishedFactCount, 2);
assert.equal(replayedFirstZoneGeneration.currentUpdatedCount, 0);
assert.equal(replayedFirstZoneGeneration.currentRemovedCount, 0);
assert.equal(replayedFirstZoneGeneration.patchOperationCount, 0);
assert.equal(replayedFirstZoneGeneration.cursor, firstZoneGeneration.cursor);
await assert.rejects(
persistDataProductPublish(pool, zoneBatch("zones-01-conflicting-replay", firstZoneGenerationAt, [
zoneFact("zone-01", firstZoneGenerationAt),
]), storedZoneDefinition),
(error) => error?.status === 409 && error?.code === "data_product_generation_not_newer",
);
const secondZoneGenerationAt = "2026-07-15T10:11:00.000Z";
const secondZoneGeneration = await persistDataProductPublish(
pool,