Agreed this is important, and it's something we're thinking about a lot in the context of Entities which are currently attached to forms in as CSV attachments.
You can mitigate some of this in form design. For example, if you're looking up an entity based on some value like an id, you can have the calculations that get the values of other columns for that entity only be triggered if the id is changed (using the trigger
column). This may not be practical for the current state that you're in but I did want to mention it.
If you have ideas on how to communicate about which version of a form and its attachments are being used to display or edit a form, please share. We'll follow the experiment you described here with interest.