Constantly. Its a light check, so hopefully the overhead isn't noticeable.
It checks every time the knots need to be updated and will remove them if they are invalid. This only applies to pattern knots right now (though it leaves all knots open to having a check).
This is two separate commits. The second just makes the Pattern Knot Entity classes derive from an new inbetween Pattern Knot Entity class.
This is an extension of a quick and dirty patch to fix #70 (closed) (removing the pattern leads to a crash if pattern knots are present)
The more I look at it, the more appropriate a connection seems to be.
Update: but I can't see how to do this without including
knot_missing in some way
Update: To check: if knotholders only link to one pattern at a time (and LPEs, etc. separately), I'll be wrong (since we can attach signals)