Failed to create manifold solid from face using fill_form_mesh function

Why didn’t I get a solid when I used the following code to create a face and then pushed and pulled it ? Version of Sketch Up is 2020.

pm = Geom::PolygonMesh.new
        a=Geom::Point3d.new(0, 0, 0)
        b=Geom::Point3d.new(10, 0, 0)
        c=Geom::Point3d.new(10, -10, 0)
        d=Geom::Point3d.new(0, -10, 0)
        e=Geom::Point3d.new(3, -3, 0)
        f=Geom::Point3d.new(6, -3, 0)
        g=Geom::Point3d.new(6, -6, 0)
        h=Geom::Point3d.new( 3, -6, 0)
        pm.add_point(a) # 1
        pm.add_point(b) # 2
        pm.add_point(c) # 3
        pm.add_point(d) # 4
        pm.add_point(e) # 5
        pm.add_point(f) # 6
        pm.add_point(g) # 7
        pm.add_point(h) # 8
        pm.add_polygon(1, 2, 3, 4, 1, 5, 8, 7, 6, 5, 1)
        element_group.entities.fill_from_mesh(pm, Geom::PolygonMesh::AUTO_SOFTEN|Geom::PolygonMesh::SMOOTH_SOFT_EDGES)
        face =  element_group.entities.grep(Sketchup::Face).first
        face.reverse! if face.normal.z < 0 ;
        face.pushpull(10)

企业微信截图_1717404448797