Raised in the review of #2199.
Append defers Release, which drops the audit record cached by Audit. A second Append for the same transaction — a retry, or an append after an explicit Release — finds no cached record, re-runs the gap filling, and can store an enrollment ID that was never locked, with the locks already gone.
Candidate directions: keep the cache entry until finality, or reject a second Append.
Raised in the review of #2199.
AppenddefersRelease, which drops the audit record cached byAudit. A secondAppendfor the same transaction — a retry, or an append after an explicitRelease— finds no cached record, re-runs the gap filling, and can store an enrollment ID that was never locked, with the locks already gone.Candidate directions: keep the cache entry until finality, or reject a second
Append.