Commit Graph

7 Commits

Author SHA1 Message Date
9eac8b0279 ci(android): make gradlew executable (100755)
The wrapper script was committed 100644 (created on Windows, which doesn't
track the +x bit), so the Linux CI runner failed the build step with
'./gradlew: Permission denied' (exit 126). Set the git executable bit so
checkout restores it as runnable.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-19 13:22:55 -05:00
aba6b0a37e ci(android): install JDK 17 + SDK packages via apt/sdkmanager
The self-hosted runner can't resolve api.adoptium.net, so
actions/setup-java@v4 (temurin) fails with EAI_AGAIN at "Set up JDK 17".
The Ubuntu mirrors and dl.google.com are reachable, so:

- Drop actions/setup-java; install openjdk-17-jdk-headless in the base-tools
  step and export JAVA_HOME.
- Add an explicit sdkmanager step installing platform-tools + platforms;android-35
  + build-tools;35.0.0 so the build never relies on AGP's build-time auto-download.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-19 13:10:30 -05:00
6ebaff8fb5 chore(scaffold): fix variant-specific test + redundant manifest label
Validated the scaffold with a real local build (Android SDK via Android
Studio: platform 35 + build-tools 35.0.0); `./gradlew lint test assembleDebug`
now passes end-to-end and produces a debug APK. Two fixes it surfaced:

- ScaffoldSanityTest asserted BuildConfig.DEBUG, which fails under
  testReleaseUnitTest (the `test` task runs both variants). Replace with a
  variant-agnostic VERSION_NAME check.
- Remove the redundant android:label on MainActivity (inherits the application
  label) — clears the RedundantLabel lint warning.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-19 13:07:03 -05:00
c920e8805b chore(scaffold): M0 Gradle + Compose + Hilt skeleton with CI
Some checks failed
PR Checks / android-build (pull_request) Failing after 5m13s
Stand up the Android-app repo per docs/android/PLAN.md M0: a buildable
Kotlin + Jetpack Compose (Material 3) single-activity skeleton wired for
Hilt, ready for the M1-M4 functional pass.

- Gradle 8.7 wrapper; AGP 8.6.1 / Kotlin 2.0.20, JDK 17, minSdk 29, target 35.
- Version catalog (gradle/libs.versions.toml) pins the full planned stack
  (Compose, Hilt, Retrofit/OkHttp + kotlinx.serialization, DataStore,
  security-crypto, Coil, Navigation) so later milestones reference by alias.
- RunicGatewayApp (@HiltAndroidApp) + MainActivity (Compose) + ui/theme/*.
- Strings externalized from day one; adaptive launcher icon; backup rules
  exclude the token store / DataStore (no session material off-device).
- CI: .gitea/workflows/pr-checks.yml gates PRs with lint + test + assembleDebug
  (JDK 17 + Android SDK on the self-hosted runner; debug builds auto-signed,
  no secrets). Placeholder JVM unit test so the test gate runs.
- .gitattributes forces LF on gradlew so the wrapper runs on the Linux runner.

Verified locally: `gradle help`/`projects` configure the :app module and
resolve all six plugins cleanly (full assemble needs the Android SDK, done in CI).

app id: com.runicgateway.app (PLAN.md §13, pending runicgateway.app domain).

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-19 12:52:35 -05:00
95c4c38bd3 Merge pull request 'Governance Documents added' (#1) from Governance into main
Reviewed-on: #1
2026-07-19 06:40:41 +00:00
cb8a458514 Governance Documents added 2026-07-19 01:38:07 -05:00
3576d13dca Initial commit 2026-07-19 05:39:42 +00:00