Unstable Custom App Version

Hi everyone
we are using multitenancy through port and when we publish new version of our custom app we use these steps
git pull
bench build
bench --site all migrate
But the version of the app is unstable sometimes get version and suddenly if I reload I got old version
any clue in this issue?
Update:
I have doubt that may the issue is happed because of a bench bug but I found the only command deal with custom app version in the bench code is bench update in this line

The wired thing I can not explain that I can not find migrate code in this source code
is our step to upgrade to the new version wrong and should we use bench update in replace of it and where I can read migrate code -BTW I really appreciate open source more after this little experience- ?

there are 2 parts to bench.

the source code you’re looking at is for bench.

the migration component of the command is part of frappe framework

https://frappeframework.com/docs/v13/user/en/bench/frappe-commands

thank you @revant_one for your help
I read the code and I saw that migrate doing a lot of things is not in the bench update
do you suggest keeping this flow when updating my app on multitenancy
git pull
bench build
bench --site all migrate
or recommend doing a different one like using bench update to replace pull and build?

did you try bench update by itself?

it’ll pull the latest code for set branch as part of the process.

Thank you @revant_one bench update --apps MycstomApp save my day
but I face wired issue after this command run I found my app name disappear from sites/apps.txt
any idea why this happened?