I'm little bit confused when read graphics pipeline about primitive assembly. In documentation says, that
Primitive assembly is the process of collecting a run of vertex data output from the prior stages and composing it into a sequence of primitives. The type of primitive the user rendered with determines how this process works. The output of this process is an ordered sequence of simple primitives (lines, points, or triangles). If the input is a triangle strip primitive containing 12 vertices, for example, the output of this process will be 10 triangles.
It says that vertex data proccessing into sequence of primitives, but in the same time tesselation stage operate primitives, and geometric stage operate primitives(from input primitive it can generate zero or more primitives). My question is: why primitive assembly not in front of Tesselation an geometry shader stages?