Android DJ Tools v0.2.0-rc.2

Release-candidate preparation date: 2026-10-23

v0.2.0-rc.2 is the first candidate signed with the project-owned release key. v0.2.0-rc.1 was prepared on 2026-09-30 but never tagged; its scope is included here.

Scope

  • Everything described in the rc.1 notes: Media3 playback hardening, library/search convergence, sync-protocol qualification, debug-harness isolation, parity/E2E tooling.
  • Sample Lab integration S1-S5: pairing and read-only sync (S1), server audio (S2), cue and loop edits saved through a durable journal with conflict handling (S3), read-only server playlists (S4), and on-demand analysis suggestions - tempo, key, beat grid and cue candidates - that are accepted or dismissed by the user (S5). Analysis never starts automatically.
  • Release signing with a project-owned key, a pinned certificate fingerprint, and a signature verification step in CI and the release workflow.

See CHANGELOG.md for the full list and the known limitations.

Evidence

Local, 2026-10-23:

  • :app:testDebugUnitTest: 602 tests, 0 failures (21 skipped: the live-contract tests, which need a server).
  • SampleLibLiveContractTest: 21 executed, 0 failed, against a disposable real Sample Lib server at the S5 commit.
  • :app:lintDebug: 0 errors. :app:assembleDebug and :app:assembleRelease build; the release APK was verified against the pinned certificate with scripts/verify_release_signature.py.
  • Sample Lib server suite for the S5 changes: 514 passed, 2 skipped.

Not verified

  • No physical-device or emulator run of any of this: adb was not usable in the preparation environment, so the Compose screens (including the S3 edit panel and the S5 Suggest screen), WorkManager delivery and Keystore-backed credential storage have not run on a device.
  • The hosted API-35 E2E and screenshot gates from the rc.1 notes are decided by the CI run on the pushed commit, not by this document.
  • The sync transport to a phone outside loopback needs HTTPS or an equivalent private transport; none is provisioned yet.

Upgrading

Earlier GitHub APKs are debug-signed and cannot be updated in place: uninstall once, then install this release. Sample Lab remains the canonical library.

Packaging

  • Version name: 0.2.0-rc.2
  • Version code: 6
  • Expected tag: v0.2.0-rc.2
  • Signing: project release key (certificate fingerprint recorded in release-provenance.json and pinned by ANDROID_RELEASE_CERT_SHA256)