Ich glaube, wenn Sie ein Array wie im OP beschrieben verfolgen, verfolgen Sie die Array-Referenz und nicht Änderungen an den einzelnen Objekten innerhalb des Arrays.
Eine andere Möglichkeit, dies zu handhaben, ist die Verwendung von trackedObject. Wir verwenden dies an einigen Stellen in Discourse.