From 146f3f91b51336add8f583a22569a7341fc011c7 Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 17 Mar 2026 02:20:47 +0000 Subject: [PATCH 1/2] feat: add GitHub Action to build benchmark APK on claude branches Adds a lightweight workflow that triggers on pushes to claude/* branches, building only the Play Benchmark APK for quick testing after Claude completes a task. https://claude.ai/code/session_013hcKzBgJgfsrArSgTTGNEk --- .github/workflows/build-benchmark-apk.yml | 43 +++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 .github/workflows/build-benchmark-apk.yml diff --git a/.github/workflows/build-benchmark-apk.yml b/.github/workflows/build-benchmark-apk.yml new file mode 100644 index 000000000..cb1d8dd21 --- /dev/null +++ b/.github/workflows/build-benchmark-apk.yml @@ -0,0 +1,43 @@ +name: Build Benchmark APK + +on: + push: + branches: + - 'claude/**' + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + build-benchmark: + runs-on: ubuntu-latest + timeout-minutes: 30 + steps: + - name: Checkout code + uses: actions/checkout@v6 + + - name: Set up JDK 21 + uses: actions/setup-java@v5 + with: + distribution: 'zulu' + java-version: 21 + + - name: Cache gradle + uses: actions/cache@v5 + with: + path: | + ~/.gradle/caches + ~/.gradle/wrapper + key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} + restore-keys: | + ${{ runner.os }}-gradle- + + - name: Build Benchmark APK + run: ./gradlew assemblePlayBenchmark + + - name: Upload Play Benchmark APK + uses: actions/upload-artifact@v6 + with: + name: Play Benchmark APK + path: amethyst/build/outputs/apk/play/benchmark/amethyst-play-universal-benchmark.apk From 61e85df8dbb07b60ee44dca0963fa34191dc1458 Mon Sep 17 00:00:00 2001 From: Claude Date: Tue, 17 Mar 2026 02:27:53 +0000 Subject: [PATCH 2/2] feat: post commit comment when benchmark APK is ready Adds a GitHub Script step that comments on the commit with a direct link to the workflow artifacts, making it visible in PRs and branch pages. https://claude.ai/code/session_013hcKzBgJgfsrArSgTTGNEk --- .github/workflows/build-benchmark-apk.yml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/.github/workflows/build-benchmark-apk.yml b/.github/workflows/build-benchmark-apk.yml index cb1d8dd21..a9e338b31 100644 --- a/.github/workflows/build-benchmark-apk.yml +++ b/.github/workflows/build-benchmark-apk.yml @@ -37,7 +37,20 @@ jobs: run: ./gradlew assemblePlayBenchmark - name: Upload Play Benchmark APK + id: upload uses: actions/upload-artifact@v6 with: name: Play Benchmark APK path: amethyst/build/outputs/apk/play/benchmark/amethyst-play-universal-benchmark.apk + + - name: Comment on commit with APK link + uses: actions/github-script@v7 + with: + script: | + const runUrl = `${context.serverUrl}/${context.repo.owner}/${context.repo.repo}/actions/runs/${context.runId}`; + await github.rest.repos.createCommitComment({ + owner: context.repo.owner, + repo: context.repo.repo, + commit_sha: context.sha, + body: `📦 **Benchmark APK ready!**\n\nDownload it from the [workflow run artifacts](${runUrl}#artifacts).` + });