Node lives in the npm volume, cmdline-tools download is guarded, and
sdkmanager no-ops when packages are present. First run seeds the
volumes; later runs skip all toolchain downloads.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The RN/NDK build exhausted the 8GB VPS (whole docker stack went down
2026-08-08); marcusDesktop (32 threads) now handles these, and jobs
queue while it is offline.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Mirrors the meditation-timer pipeline; VERSION_CODE/VERSION_NAME are
stamped from the run number via app.config.js so Obtainium sees each
release as an upgrade. Keystore comes from repo secrets.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>