Boolean Union Fails

run ‘intersect’ then invert & hide. The resulting curves should be closed. Use CrvEnd to find the ends.