Secrets are never exposed to pull_request runs from forks, so checkEnv.js
throws on MAESTRO_PASSWORD after a full APK build and emulator boot, and the
red check is indistinguishable from a real test failure. The existing guard
checked github.event.pull_request.fork, a field that does not exist on the
pull_request payload (it lives at head.repo.fork), so it was always true.
Gate both jobs at job level on head.repo.full_name == github.repository
(workflow_dispatch still runs), and drop the dead step-level condition.
Fixes#7653
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
With the default (queue: single), a run that finishes Build APK while
another run is already pending in the maestro-test group cancels that
pending run, which then never gets a Maestro verdict for its commit.
queue: max keeps the one-at-a-time constraint (no cancel-in-progress) and
lets up to 100 runs wait, at no runner cost.
Fixes#7654
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
recordScreenshots.sh runs under `set -e`, and the `git commit -m "Update
screenshots"` at the end of it is unconditional. When a recording run
produces no diff — the common case once the snapshots are already up to
date — `git commit` exits 1 with "nothing to commit, working tree clean"
and takes the whole workflow down with it, reporting a red job for a
successful run.
Stage as before, then return early when the staged diff is empty. `set -e`
is left in place: it was added deliberately so that a failed Gradle run
cannot push a commit that deletes every snapshot. Using `git diff --cached
--quiet` as an `if` condition is `set -e`-safe, because its non-zero "there
are changes" status is consumed by the condition. The early return also
skips the push, which had nothing to send.
* Check if splitting the steps for testing and generating the reports improves performance and keeps the coverage stats
* Exclude Konsist tests and include `:app` ones
* Remove the extra dependency of `koverVerifyAll` on `:app:koverVerify{variant}`
New locales added via Localazy would change the locales line in
aaptDump.txt and break the manifest CI check if the reference file
is not kept in sync.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
* Try disabling cron jobs in forks
* Try fixing quality checks
* Try fixing tests and enterprise builds
* Stop using the ssh private key in more quality checks
* Try disabling codecov if there is no token
* Update tspascoal/get-user-teams-membership action to v4
* Point the commit to the right tag v4.0.0
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>