# Versioning & Build Rules Whenever a new build is triggered, the version MUST be updated in `app/build.gradle`. - `version` format: `23.01.X` - `versionCode`: `X` (just the last number) Examples: - version `23.01.1` -> versionCode `1` - version `23.01.2` -> versionCode `2` - version `23.01.123` -> versionCode `123` Apps must always be built as BOTH `.apk` and `.aab`. The exact naming syntax for compiled files is: - `Mindomat_v23.01.X.apk` - `Mindomat_v23.01.X.aab` IMPORTANT: All compiled files must be placed in the `apks/` directory (e.g. `apks/Mindomat_v23.01.X.apk`). Do NOT place them in the root directory. # Architectural Decisions & Project Rules 1. **Package Name** - Must strictly remain `de.orfel.mindomat`. 2. **Keystore & Signing** - The app MUST ALWAYS be signed with `mindomat-upload-key.keystore`. - Key-Alias: `mindomat-alias` - The `mindomat-upload-key.keystore` file is checked into the Git repository. Do NOT delete it, ignore it in git, or change its password. 3. **Vault Independence** - The app does NOT hardcode any vault path or specific personal domain. - The server URL and API token are configurable in the app settings. 4. **Auto-Commit & Push Workflow** - At the end of every interaction or when tasks are completed, ALL changes must be automatically committed and pushed to Git (`git add .`, `git commit`, `git push`). - If a push to `git.orfel.de` fails, retry immediately. - Execute commands individually (no command chaining).