Skip to content

Commit dd3757d

Browse files
mahdidavoodi7claude
andcommitted
ci: drop the harness-android job until the suite actually runs
It failed on every push in ~3s with an AbortError, so the repo showed a permanently red X for a gap that is already known and documented. Two stacked problems block it, neither a quick fix: - react-native-harness 1.4.1's runtime needs EventTarget, which RN 0.83 on Hermes does not provide and the harness does not polyfill - Harness serves an Expo manifest at / that the prebuilt app never requests, so its entry bundle is never evaluated The suite, its config and 'yarn harness:android' all stay; only the CI job goes, with a comment explaining when to restore it. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
1 parent 47dcfd4 commit dd3757d

1 file changed

Lines changed: 7 additions & 60 deletions

File tree

‎.github/workflows/ci.yml‎

Lines changed: 7 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -241,66 +241,13 @@ jobs:
241241
run: |
242242
yarn turbo run build:ios --cache-dir="${{ env.TURBO_CACHE_DIR }}"
243243
244-
# React Native Harness runs the tests in `example/harness` inside the real
245-
# app, against the real HybridObjects. Android only: the iOS simulator has no
246-
# background task scheduler, so there is nothing there for it to exercise.
247-
harness-android:
248-
runs-on: ubuntu-latest
249-
250-
steps:
251-
- name: Checkout
252-
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
253-
254-
- name: Setup
255-
uses: ./.github/actions/setup
256-
257-
- name: Generate nitrogen code
258-
run: yarn nitrogen
259-
260-
- name: Install JDK
261-
uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
262-
with:
263-
distribution: 'zulu'
264-
java-version: '17'
265-
266-
- name: Finalize Android SDK
267-
run: |
268-
/bin/bash -c "yes | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --licenses > /dev/null"
269-
270-
- name: Prebuild expo app for Android
271-
run: yarn example expo prebuild --platform android
272-
273-
- name: Cache Gradle
274-
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
275-
with:
276-
path: |
277-
~/.gradle/wrapper
278-
~/.gradle/caches
279-
key: ${{ runner.os }}-gradle-${{ hashFiles('example/android/gradle/wrapper/gradle-wrapper.properties') }}
280-
restore-keys: |
281-
${{ runner.os }}-gradle-
282-
283-
- name: Build debug APK
284-
working-directory: example/android
285-
run: ./gradlew :app:assembleDebug --console=plain
286-
287-
- name: Enable KVM for the emulator
288-
run: |
289-
echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' \
290-
| sudo tee /etc/udev/rules.d/99-kvm4all.rules
291-
sudo udevadm control --reload-rules
292-
sudo udevadm trigger --name-match=kvm
293-
294-
- name: Run harness suite
295-
uses: reactivecircus/android-emulator-runner@1dcd0090116d15e7c562f8db72807de5e036a4ed # v2.34.0
296-
env:
297-
HARNESS_APP_PATH: ${{ github.workspace }}/example/android/app/build/outputs/apk/debug/app-debug.apk
298-
with:
299-
api-level: 34
300-
target: google_apis
301-
arch: x86_64
302-
disable-animations: true
303-
script: yarn harness:android
244+
# The React Native Harness job is intentionally absent. The suite in
245+
# `harness/` is written and its runner boots the app, but the tests do not
246+
# execute yet — Harness serves an Expo manifest the prebuilt app never asks
247+
# for, so its runtime globals are missing. Running it here would mean a
248+
# permanently red job for a known, documented gap; see the "Harness: wired,
249+
# not yet green" section of the README. Run it locally with
250+
# `yarn harness:android`. Re-add this job once the entry point is resolved.
304251

305252
build-web:
306253
runs-on: ubuntu-latest

0 commit comments

Comments
 (0)