Making an educated guess about the “reactive” nature … the data source is considered reactive, i.e. automatically updates, according to any dynamic data sources going into it, that it knows are dynamic. SQL queries results from an external system aren’t part of the internal chain of notifying when changed.
The first data source for the repeating group is as defined in the control, at the time of page load.
Then the workflow action overwrites the data source with a new definition (even if it looks the same query), so it does a refresh. From what I’ve seen the new definition is not as reactive as the first, i.e. doesn’t respond to changes in all of its source data.
Subsequent workflow actions attempt to overwrite the data source again, but with the same definition they’ve already overwritten it with, so from a reactive point of view, nothing has changed so a refresh is not needed.
Hopefully I’m wrong about all this, I’d love to know more about it.
@supernaturally can you try doing “display list” with a “search” data source instead of something’s value? Assuming it is a stored value …
A possible workaround would be to make the data source different each time, for example by having another condition on the workflow event that depends on some other value that is switchable, so in effect the button has two alternate workflows.