Skip to content

chore(ci): add GitHub Actions workflow running check + assembleDebug #85

@ilmoniemi

Description

@ilmoniemi

User Story

As a Pyrycode mobile developer (human + agent), I want every PR and every push to main to run ./gradlew check assembleDebug on GitHub Actions, so that the deterministic style / lint / build / test gates are enforced by CI rather than relying on the developer agent's self-run.

Context

The developer agent currently self-runs ./gradlew test && lint && assembleDebug before opening a PR, and code-review verifies. Both are stochastic. CI is the deterministic safety net that closes the gap.

Spotless (#83) and Compose Lint Checks (#84) have both landed, so the umbrella ./gradlew check task already exercises formatting, lint (with abortOnError), and unit tests. This ticket wires the CI workflow on top.

Acceptance Criteria

  • .github/workflows/ci.yml triggers on pull_request and push to main (use pull_request, NOT pull_request_target — the latter exposes secrets to fork PRs)
  • Workflow checks out the repo, sets up JDK matching AGP's requirement (JDK 17 unless AGP version requires otherwise — confirm during implementation), caches Gradle, runs ./gradlew check assembleDebug
  • Uses actions/setup-java@v4 and gradle/actions/setup-gradle@v3 (or current stable — verify via context7 / repo READMEs)
  • Gradle Wrapper validation step included (e.g. gradle/wrapper-validation-action or the equivalent in setup-gradle)
  • First CI run on the PR introducing this workflow is green

Technical Notes

  • Standard Gradle caching pattern via setup-gradle@v3 (handles ~/.gradle/caches automatically)
  • DO NOT add a branch protection rule in this ticket — informal "wait for green CI" is fine; protection rules are a follow-up

Size Estimate

XS — single new file (~30–50 lines of YAML), no Kotlin/Gradle changes.

Figma

N/A — tooling/infra ticket.

Split from #72.

Metadata

Metadata

Assignees

No one assigned

    Labels

    size:xs<30 lines production code; trivial change

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions