-
Notifications
You must be signed in to change notification settings - Fork 0
[Archive] Publish lifecycle notifications after proposal commit #2934
Copy link
Copy link
Closed
Labels
Priority IIIValuable but unscheduled: residuals, tech-debt, performance, depth work.Valuable but unscheduled: residuals, tech-debt, performance, depth work.backendPrimary implementation impact in .NET API/domain/application/infrastructure.Primary implementation impact in .NET API/domain/application/infrastructure.bugSomething isn't workingSomething isn't working
Description
Activity
Metadata
Metadata
Assignees
Labels
Priority IIIValuable but unscheduled: residuals, tech-debt, performance, depth work.Valuable but unscheduled: residuals, tech-debt, performance, depth work.backendPrimary implementation impact in .NET API/domain/application/infrastructure.Primary implementation impact in .NET API/domain/application/infrastructure.bugSomething isn't workingSomething isn't working
Projects
- StatusShow more project fieldsDone
Confirmed MEDIUM from #2932 comment 3982295764. CardService.SetArchivedAsync publishes its board notification after SaveChanges but before AutomationExecutorService commits its outer transaction. A later operation can fail and roll back the archive/restore after the notification has gone out.
Independent source triage: the frontend useBoardRealtime consumer ignores operation semantics and performs a debounced database refetch; it does not apply a phantom archive locally. Webhook delivery rows share the transaction and roll back. This extends the pre-existing create/update/move notification pattern. No persisted corruption was demonstrated.
Residual: notify only after a lifecycle proposal transaction commits, preserving standalone API notification. Prove failed later operations produce no lifecycle notification, successful proposals notify after commit, and direct lifecycle writes still notify. Keep any transaction bridge bounded and coordinate if shared infrastructure is needed; do not broaden into a general notification redesign.
Tracked under the bounded review rule; no active claim. #2932 (comment)