Hi, Mikko,
The first problem, because I use multiple tiles so I can't directly use the contours of each tile to do the ground sampling because the tile's boundary is treated as the contours too. what i do now is to build the navmesh first, and find out all navmesh edges(I use the code from function drawPolyBoundaries in DetourDebugDraw.cpp), see my pictures below, the red lines are going to be sampled.

but I don't know if these edges are stored as a specific order (like Clockwise or CCW), which ensures the sampling edge's local axis is the same(Left-handed/Right-handed)
and the second problem, I've checked the Unity's online document and it seems that the jump links are connected precisely on the sampling edges, see my pictures below:

but use the method you provided in your blog, the jump end point may not be exactly on the edge, see the pictures below, I've marked the potential jump links:

If possible could you give me some hint about how you did the ground sampling in Unity?
thanks in advance!