Composite surfaces should not be handled at all if you want your script to be robust . Very tiny internal tangency errors will cause filletsrf to produce a garbage fillet.
Each individual surface within the composite surface should be treated as a standalone surface if you want it to be robust.
If you want to avoid failures, you should be making only one fillet at a time - always.
The problems you are running into would disappear if the algorithm was correctly implemented. There is no need to do anything with singularities. Generally you will find one mew surface that is tangent to both sides. That means end of the line. Occasionally you will find no new surfaces. That’s also a stop. If you understood the topology that results in a singularity you would understand this.
For detecting fillets that reverse direction testing the center curve would be best but testing one edge on the new and old should work as well. But you could just do nothing. The worst that will happen is there will be one extra fillet that the user can delete.
You didn’t understand what I suggested.
If the fillet radius is smaller than 8 mm then all of those fillets would have passed the normal test that I suggested.
Don’t constantly try to blame your errors on me. Look at the example I posted do you see the 2 cyan surface normal lines that I made. Do you understand that if there was only one side that had a new surface with .01 angle deviation then the fillet ends would have been about half as far apart as they are if both sides have .01 deviation? A robust normal test would take that into account.
If the abs tolerance is .0001 then the normal tolerance should be .012/R. If abs_tol is .001 then it would be .12/R. What I suggested before was easy to implement but too complicated for you to understand. So just do what you can understand and once in a blue moon 2 fillets that don’t join will be created
Your script should never make that tiny sliver. If the closest point and normal tolerances are sized correctly and everything else done correctly , it would never happen.
BTW if you zoom in at the point -214,404 you will find a tiny version of the same thing that has a 1mm fillet. At 1mm the .01 tangent discontinuities don’t prevent the fillets from joining.
I don’t know why you think it matters . Filletsrf allows you to make fillets that use surfaces from the same brep or from different breps.
.