When setting the 1st point to [0,0,0] only the polygon renders with F6 and other objects disappear. Using [0.1,0.1,0.1] works fine. F5 works fine.
cube(size = [7,9,4], center = true); //base cube
translate([-12.7,-15.5,0.5]) rotate([0,0,135]) polyhedron(
points=[ [0,0,0],[3,-3,0],[-15,-15,0],[-3,4,0], // the four points at base, !!!issue line!!!
[0,0,6] ], // the apex point
triangles=[ [0,1,4],[1,2,4],[2,3,4],[3,0,4], // each triangle side
[1,0,3],[2,1,3] ] // two triangles for square base
CGAL error in CGAL_Nef_polyhedron's union operator: CGAL ERROR: assertion violation!
Expr: itl != it->second.end()
It fails because your model is self-intersecting: The point [0,0,0] touches another surface, and is thus not a valid solid (it will have a point of zero thickness).
I realize that this is a requirement which sometimes feels a bit strong, but since our underlying library requires all solids to be mathematically correct, it's hard to find a way to allow for such constructs.