Android DJ Tools v0.2.0-rc.1

Release-candidate preparation date: 2026-09-30

v0.2.0-rc.1 consolidates the unreleased playback, library/search, protocol, debug-harness, and parity/E2E work accumulated after v0.1.3. It is a release-candidate snapshot, not a claim of full device or product parity.

Candidate scope

  • Hardened Media3 playback through the app's MediaSession/MediaController service boundary, including explicit playback diagnostics and regression coverage for unavailable media, audio-focus suppression, transport state, queue behavior, and offline-playback integration.
  • Converged library browsing/search/filter behavior with JVM and Compose instrumentation-source coverage.
  • Reconciled sync protocol v1 schemas, capability negotiation, mutation receipt semantics, and deterministic fake Sample Lib/server qualification.
  • Strengthened debug-harness isolation so both debug and release APKs retain the production launcher while debug-only harness classes/assets stay out of release builds.
  • Refreshed parity/E2E tooling, device compatibility detection, Wave Two/Three preflight evidence, and host qualification.

Fresh local qualification

The 2026-09-30 convergence run used JDK 17 and the current working tree.

Passed locally:

  • 32 deterministic protocol/fake-server tests.
  • 6 UI-runner unit tests.
  • :app:testDebugUnitTest.
  • :app:compileDebugAndroidTestKotlin.
  • :app:lintDebug.
  • :app:assembleDebug and :app:assembleRelease.
  • Debug/release APK launcher and debug-harness isolation checks.
  • Host conformance with qualification host-preflight-passed-not-full-conformance.
  • Canonical parity-ledger validation: 87 required stories, 49 pass / 13 partial / 25 blocked, with no validation errors.

Device and hosted evidence boundary

No compatible adb target was available during this RC-preparation run. The device-required UI runner therefore exited with its explicit blocked-no-device classification and did not execute connectedDebugAndroidTest. Real-device Media3 audio, physical-device UI/accessibility/performance, and Android-to-real-Sample-Lib round trips are not re-qualified by this snapshot.

The screenshot pipeline remains configured for an Android 15 / API-35 Pixel 7 Pro emulator. It runs the screenshot instrumentation class, extracts five PNGs using binary-safe adb exec-out, and validates PNG headers and dimensions before artifact upload. That hosted/device phase was not executed locally.

Accordingly, this commit prepares v0.2.0-rc.1 metadata but should not be tagged or published until the required hosted API-35 E2E/screenshot gates and a compatible Android runtime complete successfully.

Packaging

  • Version name: 0.2.0-rc.1
  • Version code: 5
  • Expected tag after qualification: v0.2.0-rc.1
  • Primary review artifact: app/build/outputs/apk/release/app-release.apk
  • Release build: non-debuggable, currently development/debug signed for sideload review rather than store distribution.