Вам не нужно самостоятельно поддерживать поле dirty , вам просто нужно убедиться, что при изменении одного из объектов модели в источнике данных вы используете метод set вместо непосредственного присвоения его полям.
var task1 = $("#gantt").data("kendoGantt").dataSource.data()[0];
console.log(task1.dirty); // returns false
task1.set("title","Task1 (modified)");
console.log(task1.dirty); // returns true
Таким образом, кендо узнает об изменении и помечает объект как грязный для вас.Источник данных также рассмотрит это как изменение, которое необходимо синхронизировать.Надеюсь, это поможет.
https://dojo.telerik.com/UViBAZAP/2