EAS generates android/ with `expo prebuild`, which sets NODE_ENV to
"development" when it is unset. The app config picked the 0.0.0-dev
runtime from NODE_ENV, so every Android binary since the React Native
0.79 upgrade embedded expo_runtime_version 0.0.0-dev, and ota.folo.is
rejects its update checks. iOS kept the real runtime because eas-cli
syncs its committed Expo.plist outside of prebuild.
Decide the development runtime from the EAS build profile and fall back
to NODE_ENV only without one (expo start, local prebuild). The
eas-build-post-install hook now fails any build whose native runtime
differs from the expected one, and a test evaluates every eas.json
profile the way prebuild does.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The sync PR that merges a release branch back into dev is opened with
GITHUB_TOKEN, so it starts no pull_request workflows. Its auto-merge waits
for dev's required checks, "Format, Lint and Typecheck (lts/*)" and "Build
web and SSR server (lts/*)". Pushes to main run both on the merge commit, so
the desktop sync PR merges by itself, but pushes to mobile-main ran neither,
and mobile sync PRs sat until someone merged them by hand (#5095 waited eight
days).
Run both workflows on mobile-main pushes too, without cancelling runs in
progress there, and guard the triggers with a test.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Modified regex patterns in extract-release-info.mjs to be case-insensitive for desktop and mobile release tags, improving compatibility with various tag formats.
Signed-off-by: Innei <tukon479@gmail.com>
- Updated the version setup action to handle new tag formats for desktop and mobile releases.
- Introduced a new script to extract release information from commit messages, improving the tagging process.
- Modified workflows to create tags in the format of `desktop/v1.2.3` and `mobile/v1.2.3`.
- Enhanced the updater logic to accommodate the new tagging structure and ensure proper release handling.
Signed-off-by: Innei <tukon479@gmail.com>