This is not a bug.
When you press a button, the execution of actions is actually done on a batch of entities. If you press a button in entity view, the batch is an array of only one item, but in other views (e.g. table view) it is possible to execute a button on multiple entities at once (by selecting multiple rows).
This means that it is not possible to use dynamic relation filters. In @Matt_Blais 's example above, there may be more than one value for ‘This Task → Project’, and accordingly the filter is not applied.
It is related to what is discussed here.