BOSL2 alignment precision problem in OpenScad
from Revar Desmera:

The attach() module by default overlaps the attached with the parent by a slight amount (0.01). You can do attach(RIGHT,overlap=0) for an exact alignment.
The overlap is so that CGAL correctly can union shapes.

and the attach() documentation :

Attached objects will be overlapped into the parent object by a little bit, as specified by the default $overlap value (0.01 by default), or by the overriding overlap= argument. This is to prevent OpenSCAD from making non-manifold objects. You can also define $overlap= as an argument in a parent module to set the default for all attachments to it.