Yeah, works as expected, the sol gets updated on the next tick. However, wait set to zero is a bit conspicuous, as in theory, it should be the same as no wait action at all. That part may actually be a bug. The question is should it be changed, as it's a "feature" that's somewhat exploitable.
Also as to updating the sol, I find it more advantageous to have to sol updated with another event, especially since you can place the destroy anywhere in the event.
BTW If all that is still too confusing, try using the on destroy condition. Picked is remembered, including variables, and state.