From distributed-systems audit. OutboxStore.ClaimUnpublished commits claim tx before publish (locks released); attempt counting in-memory; poison decision ignores DB publish_attempts. Production topology breaks single-dispatcher assumption. Fix via database-authoritative coordination/fencing (advisory lock analysis: ownership, duration, crash/retry behavior, tx interaction). Do not prescribe implementation prematurely. Priority: High.
From distributed-systems audit. OutboxStore.ClaimUnpublished commits claim tx before publish (locks released); attempt counting in-memory; poison decision ignores DB publish_attempts. Production topology breaks single-dispatcher assumption. Fix via database-authoritative coordination/fencing (advisory lock analysis: ownership, duration, crash/retry behavior, tx interaction). Do not prescribe implementation prematurely. Priority: High.