Hi everyone,
I'm writing on behalf of the original poster, and we're continuing to investigate the issue together. Thank you all for your suggestions and support so far!
We've done some additional debugging and noticed something interesting. On the page where deleteAll works correctly, calling isChanged($field_name) returns true, as expected. However, on all other pages where deleteAll fails, isChanged($field_name) returns false. I've attached two screenshots showing the debug results: one from the page that works and one from a page that doesn't.
Looking at the remove function in \wire\core\WireArray.php, it seems like the issue might be related to trackChange or trackRemove not being triggered for some reason. Could this be the root of the problem? Any insights or ideas on what could be causing this would be greatly appreciated.
Thanks again for your help!