instrument: fix AHD DecayEnd overlay/grab defect, pin flaky curve test, close comment/doc findings

This commit is contained in:
2026-07-31 10:19:45 -04:00
parent 2fa1405b06
commit 03fb471c92
10 changed files with 117 additions and 28 deletions
+3 -1
View File
@@ -37,7 +37,9 @@ struct EnvClampBounds {
// inputs buildEnvelopePolyline drew from). `hit` is false for a point off every draggable node.
// Nearest node within the radius wins (Chebyshev distance); an exact tie goes to the earlier
// draw-order node, and since knots are appended last, a coincident endpoint handle wins over a
// knot rather than the drag silently becoming a curve edit.
// knot rather than the drag silently becoming a curve edit. An AHD's DecayEnd is excluded
// entirely when it coincides with HoldEnd AND holdFraction == 1.0 — there it cannot move
// (resolveNodeDrag's derivative is 0), so it is dropped rather than won by draw order.
struct NodeHit {
bool hit = false;
EnvNode node = EnvNode::Origin; // meaningful only when hit == true