I've been looking at the code generated by post processor supplied for LinuxCNC and I realised that it is not applying any settings for G61 (exact path mode) or G64 (path blending) either in the code preamble or per operation.
The default for LinuxCNC in the absence of either of these commands is to use G64 with no tolerance (i.e. no maximum deviation from programmed path), so we can end up with smooth but inaccurate parts unless the preamble is manually entered to the file or the machine defaults have something else specified (which may be inappropriate for the part to be machined).
Ideally I'd like to see roughing moves such as the 2D & 3D adaptive machining implement G64 per operation and take the motion blending tolerance from the specified tolerance in the operation. For finishing operation such as contour, then G61 would be used for best accuracy. Perhaps also, if the tolerance specified is below a certain value, then G64 would be substituted for G61.
I managed to edit the post processor to enable the creation of a G64 Px line in the file preamble, but realised that this wasn't good enough if multiple operations were in the file and that my knowledge of Javascript is insufficient to safely proceed.
Relevant LinuxCNC documentation:
G61, G61.1 Exact Path Mode
G64 Path Blending
LinuxCNC Trajectory control