On rhino (and so grasshopper) it is always advisable to avoid solid booleans with congruent surfaces.
Your breps have some surfaces exactly overlapped.
Even on rhino doing a boolean union with those breps will take more time than expected.
Usually it is best to use intersecting breps/polysurfaces in solid boolean operations.
In your specific case you can just remove the faces and use the open loft (without caps) as this:
solid union test_re.gh (428.6 KB)
Also, you might do shrink your surfaces sometime…
… possible also on grasshopper through c# Shrink trimmed Surface in Grasshopper