If get latest revision enable,
1. the workflow status of spec 005 has not "Is approved" tag.
2. the workflow status of spec 004 has "Is approved" tag.
It will be revert back to 004.
That's the thing, 005 has the is approved tag, 004 doesn't, after i open the lock, it points to 005, then I lock the lock, and it reverts back to 004.
How long did you wait between unlocking and locking? The actual update to the db is made by a service, how often it runs is configurable. So I think what is happening is the UI is finding the latest approved issue when you unlock it, but when you lock it again before the backend service runs the system refers to relationship that is still in the db.
I believe i was working faster than the polling interval thank you.