When multiple TaskStore instances watch the same SQLite DB (dashboard + engine runtime + per-project stores in one dashboard process), every column move was recorded once per polling instance — inflating task:moved rows 3x and amplifying failure noise (146k+ moves and 781 task:failed events in 24h against ~165 real done tasks). Set suppressActivityLogForPollingEmit while checkForChanges fires re-emit events, and skip the activity-log listeners when it's set. The originating instance's in-process emit path remains the sole writer. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
513 B
513 B
@runfusion/fusion
| @runfusion/fusion |
|---|
| patch |
Fix activity-log triple-write caused by multiple TaskStore instances polling the same SQLite DB. When the dashboard, engine runtime, and per-project stores each watch() the same database, every column move was previously recorded once per instance — inflating task:moved rows ~3x (146k+/day) and amplifying failure noise. TaskStore now suppresses activity-log writes for events re-emitted from its polling loop, leaving the originating instance as the sole audit writer.