Terrain gone missing when added any kind of Model from another entity

Project can be found at: https://playcanvas.com/project/551968/overview/lod-quad-tree-terrain-engine

When i enable the “Model” component for the Box entity at the hierachy below, i get WebGL error and only the Box model is seen, and my terrain vanishes!
[.Offscreen-For-WebGL-000000000A9D4F90]GL ERROR :GL_INVALID_OPERATION : glDrawElements: attempt to access out of range vertices in attribute 2

I’ve been testing out my raycasting integration on my quadtree terrain LOD which seems to work fine (looks like the hit traces appear to hit terrain from center of screen camera ray)… but i want to preview the Box to appear on the terrain slope hit raycasts, but i can’t get it to exist in the scene without causing the other terrain meshes to disssapear while getting WEBGL errors! It seems when i render any model alongside with my quadtree terrain LOD, it causes webGL errors. Why? Refer to terrainManage.js on how i’ve set up the terrain entity chunks accordingly…

Hmm… it seems that I must supply the tangents to the chunk meshes!! But why?? It did render properly (standalone) without tangents, and just normals alone, together with the normal Map. Is there something wrong with the Playcanvas API/documentation with regards to this? Need to clarify on these oddity…

var mesh = pc.createMesh(this.app.graphicsDevice, vertices, {
    uvs: this.getTiledUVs(vertices, 1),
    uvs1: uvs1,
    indices: indices,
    normals: vnt.normals,
    //tangents: vnt.tangents   // <- this should not be commented away. 
});

Why must tangents be supplied??? Why is avoiding the supply of tangents causing the WebGL error when rendering with other entities?

I also find it strange that even though I applied my own custom culling scheme to disable/enable terrain chunk entities (and set meshInstance.culling= false so Playcanvas doesn’t do any further culling on it’s own), it seems that the reported draw calls in Playcanvas is less than what my culling engine reports under ‘Drawn’ Chunks. Which is really weird. Maybe my ‘Drawn’ Chunks is counting wrongly? I’m applying Drawn CHunks value onPreCull . Hmmm, or is Playcanvas also doing some sort of batching behind the scenes if it detects objects with same material/buffers-lineups, etc to combine into a single draw call? (i thought batching was a manual process?)