# Branching And Releases ## Branches - `main` contains only verified release states. - `codex/1.0.1` is the active integration branch for version 1.0.1. - Short-lived work branches should use `codex/feature-name` and merge back into the active version branch after review. ## Release Flow 1. Implement on the active version branch. 2. Run format, analyze, tests, release build, permission review, and device smoke tests. 3. Update `CHANGELOG.md` and create a release record under `launch/releases`. 4. Merge the verified state into `main`. 5. Create an annotated version tag such as `v1.0.1`. 6. Preserve the AAB outside Git and record its SHA-256 in the release record. ## Protected Material Never commit: - Upload keystores - `key.properties` - `local.properties` - Tester email lists - Play Console account exports - Passwords, verification codes, or API secrets - Generated APK/AAB files ## Quality Gate A release cannot be tagged unless all required checks pass and the exact build has been smoke-tested. Visual changes also require screenshots on narrow and standard phone widths, light/dark themes, text scaling, and the supported locales.