Spreading an array of objects creates a new array, but the objects inside are still references.
const original = [{ id: 1 }];
const copy = [...original];
copy[0].id = 99;
console.log(original[0].id); // 99!
This is a shallow copy. For independent copies, you need to clone each object too.