Skip to content

[Due for payment 2025-05-13] Race conditions can cause E/App and Mobile-Expensify versions to get out-of-sync #59856

@roryabraham

Description

@roryabraham

Problem

In https://github.com/Expensify/App/actions/runs/14338004161/job/40189972196 changes were merged to E/App in the time between when the workflow started and when we tried to push. This caused the push to fail. This has been possible for a while, but generally hasn't been a big deal because it's rare and you can just retry the CP.

However, now with two repos being updated, this presents a bigger problem because the versions get out-of-sync, and then future CP's will fail.

Solution

Let's do something like this to make pushes more reliable:

git push origin main || (
  echo "Push failed. Rebasing..."
  git fetch origin
  git rebase origin/main
  git push origin main
)

Also, let's try to figure out how to make the workflow idempotent, such that either both repos are updated or neither is.

Metadata

Metadata

Assignees

Labels

Awaiting PaymentAuto-added when associated PR is deployed to productionWeeklyKSv2

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions