This guide keeps Android Harness releases small, repeatable, and auditable.
-
Confirm the working tree is clean:
git status --short
-
Run local checks:
make check PYTHON=.venv/bin/python
-
Build the package locally:
.venv/bin/python -m build --outdir /tmp/android-harness-dist
-
Confirm
CHANGELOG.mdhas the user-facing changes for the release. -
Confirm
ROADMAP.mdreflects completed and remaining public work. -
Create and push a version tag:
git tag v0.1.0 git push github v0.1.0
-
Wait for the
CIandRelease BuildGitHub Actions workflows to pass. -
Create a GitHub Release from the tag and attach the
android-harness-distartifact from theRelease Buildworkflow. -
Run the manual smoke checklist on an authorized device or emulator:
android-harness smoke android-harness exec examples/basic_observe.py
- Release artifacts should contain only the host-side Python package and docs.
- Do not bundle Android APKs, keystores, account data, screenshots, or device logs.
- Optional device-side dependencies, such as ADBKeyboard, must stay external and documented as separate user-managed components.
- Release notes must not claim stealth, evasion, account automation, payment automation, CAPTCHA handling, or risk-control bypass support.