Job attribute filters always take priority over dataset attribute filters. The dataset attribute filters are replaced by the job filters.
What if a task sets an output attribute filter? Do we even allow that? We probably should not
Types: First set by datasets type filters. Overwritten by workflow task input type filter. Workflow task output can set new types that overwrite both before.
Originally posted by @jluethi in #2155 (comment)