Answer
Client-side execution timing around structure-variable assignment isn't fully reliable in every case, so the more robust pattern is to push the data manipulation into server-side PL/SQL (letting a CRUD-style update do the work) rather than leaning on the client to sequence multiple structure assignments correctly.