fix(email): preserve draft send identity
Persist and export each draft's idempotency UUID so refresh and edits cannot create a fresh delivery identity. Add reversible provider-specific migration SQL.
This commit is contained in:
@@ -154,6 +154,7 @@ public sealed class BackgroundWorkerTenantTests
|
||||
var draft = Assert.Single(rootElement.GetProperty("EmailDrafts").EnumerateArray());
|
||||
Assert.Equal(owner == "user-1" ? "one@example.test" : "two@example.test", draft.GetProperty("To").GetString());
|
||||
Assert.Equal(owner == "user-1" ? "Private draft one" : "Private draft two", draft.GetProperty("BodyText").GetString());
|
||||
Assert.True(Guid.TryParse(draft.GetProperty("ClientRequestId").GetString(), out _));
|
||||
Assert.Equal(1, draft.GetProperty("Revision").GetInt64());
|
||||
}
|
||||
owners.Sort(StringComparer.Ordinal);
|
||||
@@ -176,6 +177,7 @@ public sealed class BackgroundWorkerTenantTests
|
||||
Subject = "Synthetic export subject",
|
||||
BodyText = body,
|
||||
ThreadId = "synthetic-thread",
|
||||
ClientRequestId = Guid.NewGuid().ToString("D"),
|
||||
CreatedAtUtc = DateTime.UtcNow.AddMinutes(-5),
|
||||
UpdatedAtUtc = DateTime.UtcNow,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user