Il problema credo risieda nel presentation manager, e non penso sia una "caratteristica" voluta.
In pratica, se io rimuovo da codice un elemento da una collection A (con remove_at), e la collection A è visualizzata in un pannello, l'elemento viene rimosso correttamente (la riga sparisce, per capirci).
Ma se in quel momento il pannello visualizza una collection B, da codice viene rimosso l'elemento della collection A, dopodiché torniamo a visualizzare la collection A, la riga è ancora presente.
Da notare che:
- aggiornando od inserendo un nuovo elemento, tutto funziona come dovrebbe, il problema è solo nella rimozione.
- ho provato anche a settare hidden = true, la riga resta sempre lì.
- ho provato a cercare il padre della collection, chiamare refresh_user_interface, la riga rimane
- la riga visualizzata effettivamente non è più presente nella collection, l'ho testato facendo un ciclo su tutti gli elementi.
- se provo a fare una qualsiasi operazione sul documento che dovrebbe essere sparito, mi ritorna il messaggio di errore object not found, come è logico che sia.
- ho tappullato forzando il ricaricamento della collection con .loaded = false, questo purtroppo mi complica la vita in altre procedure, che usano i cicli foreach sulle stesse..
Boh, se riusciste a risolvere sarebbe cosa buona, e per me molto utile.