Ubisam-MobileGit/tasks/077-baseline-profile-and-0.2.6.md
choiminyeong d9450eedb6 TASK-077: a baseline profile for the app's own code, version 0.2.6
The APK names all of com.ubisam.ubgitea as code to compile ahead of
time. The phone does so in the background after installing, and again
after each update; until then the app runs as before.

Agent: main (opus)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 18:30:01 +09:00

1.5 KiB

TASK-077: A baseline profile for the app's own code, published as 0.2.6

Status: done Owner: Claude Reviewer: human product owner

Request

The product owner asked for the baseline profile to be added and published as 0.2.6 (2026-10-12), after it was explained that it takes effect when the phone next compiles apps in the background, about a day after installing, and again after each update.

Outcome

The APK tells the phone which code to compile ahead of time: all of the app's own. Until the phone has done so the app runs as before.

Writable paths

  • app/src/main/baseline-prof.txt
  • app/build.gradle.kts
  • tasks/077-baseline-profile-and-0.2.6.md
  • docs/development-log.md

Acceptance criteria

  • The release APK's profile names the app's own classes and methods, and the phone takes it up on first launch.
  • Compiled from that profile, the moves measured under TASK-069 are no slower than before.
  • Version 0.2.6, versionCode 8.
  • The source is on main of the team's repository.
  • UBGitea.apk and version.json on the apk branch are 0.2.6, and the downloaded APK is byte-identical to the one built here.

Security and privacy

No additional concerns. The profile lists class and method names the APK already contains. No secret is in it or in the push.

Required checks

./gradlew compileDebugKotlin compileDebugUnitTestKotlin testDebugUnitTest assembleDebug lintDebug
./gradlew assembleRelease

Evidence

See the development log entry for TASK-077.

Review findings

None.