Repository navigation
Commit a3ccfdb
fix: clone tx status objects in legacy polling to prevent shared reference bug
The legacy polling actor's SUBSCRIBE handler sends ctx.all() (its internal
KVS object) by reference, and the POLL handler mutates it via ctx.merge().
When the new createObservable wrapper (introduced in #2258) stores this
reference as `value` and later compares with isDiff(), the deepEqual check
short-circuits on `a === b` (same object reference) and always returns
false — so status updates are never delivered to subscribers.
Fix: spread the objects before sending/broadcasting so consumers get
their own copy.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>1 parent 961e5be commit a3ccfdb
1 file changed
Lines changed: 2 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
56 | 56 | | |
57 | 57 | | |
58 | 58 | | |
59 | | - | |
| 59 | + | |
60 | 60 | | |
61 | 61 | | |
62 | 62 | | |
| |||
96 | 96 | | |
97 | 97 | | |
98 | 98 | | |
99 | | - | |
| 99 | + | |
100 | 100 | | |
101 | 101 | | |
102 | 102 | | |
| |||
0 commit comments