Editing binding values from the UI, sometimes it runs UpdateTask and sometimes it doesn't

When the link lag moves, sometimes it updates the activity and sometimes it doesn’t!
SaveLink code

function saveLink(){
        var link = gantt.getLink(editLinkId);
 
        var lagValue = modal.querySelector(".lag-input").value;
        if(!isNaN(parseInt(lagValue, 10))){
            link.lag = parseInt(lagValue, 10);
        }
 
        gantt.updateLink(link.id);
        if(gantt.autoSchedule){
            gantt.autoSchedule(link.source);
        }
        endPopup();
    }

Hello Dan,
It works that way because of the task constraints logic:
https://docs.dhtmlx.com/gantt/desktop__auto_scheduling.html#timeconstraintsfortasks
Task constraints have a higher priority than the link lag. For example, if link lag says that the task should start earlier, but it has the SNET constraint, it won’t start earlier than the specified constraint date:

Here is the snippet where the constraint dates are displayed in the timeline:
http://snippet.dhtmlx.com/5/97248387e

I do not have the restrictions activated
or when using auto scheduling are they activated by default?

Hello Dan,
Starting from the 6.1 version, Gantt uses the constraints logic by default:
https://docs.dhtmlx.com/gantt/desktop__auto_scheduling.html#versioncompatibility
If you want to change that, you need to enable the gantt.config.auto_scheduling_compatibility parameter.

Hello Dan,
The dev team added the feature to display Constraints in Gantt in you use the constraint scheduling mode:
https://docs.dhtmlx.com/gantt/desktop__inbuilt_baselines.html#taskconstraints

https://docs.dhtmlx.com/gantt/whatsnew.html#x8318x90x8319x

You can see how it works in the following samples:
https://docs.dhtmlx.com/gantt/samples/02_extensions/19_constraints_scheduling.html

https://docs.dhtmlx.com/gantt/samples/02_extensions/20_backwards_scheduling.html

https://snippet.dhtmlx.com/j9dli98b