I need some clarity on before-commit processing when changing data in a record X. (a) the before-commit microflow has a parameter X - does it contain the new or the old data? (b) suppose the record has an Autonumbering field Y. A database retrieve on [Y = X/Y] will it return the old or the new data? (c) A database retrieve on [id = X/Y] will it return the old or the new data? If the answers are (a) new (b) old (c) old, and the change is not reflected in the data, then a ticket should be submitted?
Not sure I completely track with what your asking, but I will give it a try:
(b) the value of autonumber attributes will be set when the object is created, and will not change with each commit of the object, so before or after commit, the autonumber attribute will have the same value. If you perform a retrieve action before committing the passed in object, you will, I think, get the old values for the entity returned from that retrieve action
(c) after retrieving in step b, you will have 2 copies of the same object in memory, original and updated. Whichever one you commit, will store those changes in the database. If you commit original and then updated, you'l have updated values in the database. If you commit updated then original, you'll have original values in the database.
I don't think this is a bug, just something to be aware of as a developer.