The bool mask should still work. All you need are the true or false. Here is an example using something similar to your workflow:
By taking the parameter (‘Base Constraint’ here) of all walls, I check it for only the ones that are at level 25 (group #2). This gives me a list of true/false which I can use to filter the parameters.
I can also take the same true/false to filter the original list of elements so that I can get the same elements in the same order as the ‘Base Constraint’ parameter. With the elements, I find the next parameter I want (‘Top Constraint’). This is in group #3.
From there, you can do whatever you want. I combined the parameters and transposed them so that I have each wall’s base and top constraints grouped together (group #4).
The main problem I can see in your workflow would be the List.Clean node. You would have to take out the same elements as the parameters you removed. But you could probably just remove the List.Clean node altogether.