chore(release): bump to v0.2.0 / versionCode 8 — device-binding, custom mail-filter, chat v1.0, Mac DNS auto-detect

CHANGELOG entry covers:
- Mac DNS auto-detect (DoH handshake + realtime)
- Device-account-binding (Pro/Legend anti-bypass)
- Custom mail-patterns alongside web-domains (10 + 10 for Legend)
- Unified filter section with single + button + auto-detect sheet
- Chat v1.0 DM-only with unread badge
- Avatar cropper switched to iOS-native UIImagePickerController
- Help/Support pages (FAQ, Contact, About, Crisis hotlines)
- Settings: notification + streak-reminder section
- Game-over modal layout + regenerate suggestion
- Devices page redesign with central <Button> + progress bar
- Pre-check global blocklist before consuming a slot
- Local dev FAMILY_CONTROLS flag defaults on

Marketing download page version bumped to 0.2.0 build 8; sha256 +
apk size will be filled after the EAS build lands and the APK is
uploaded to the download host.
This commit is contained in:
chahinebrini 2026-05-16 03:22:53 +02:00
parent 0a35b58cd9
commit d97e3aa496
4 changed files with 29 additions and 7 deletions

View File

@ -87,9 +87,9 @@
<script setup lang="ts">
// Diese Werte werden bei jedem Release-Build manuell oder per Script aktualisiert.
const version = "0.1.0";
const buildDate = "2026-04-28";
const apkSizeMb = "—"; // Wird nach Build eingetragen
const version = "0.2.0 (build 8)";
const buildDate = "2026-05-16";
const apkSizeMb = "—"; // Wird nach EAS-Build eingetragen
const sha256 = "— wird nach Build eingetragen —";
const apkUrl = "/downloads/rebreak-android-latest.apk";

View File

@ -10,6 +10,28 @@ Versioning: `version` follows SemVer, `versionCode` is monotonically increasing.
---
## [0.2.0] — versionCode 8 — 2026-05-16
### Added
- **Mac-DNS-Profil — Vollautomatik**: Die App erkennt per DoH-Handshake, sobald der Mac eine DNS-Anfrage stellt, und springt automatisch auf Schritt 3 im Setup-Flow. Kein manuelles Tippen mehr nötig.
- **Device-Account-Binding**: Pro- und Legend-Konten sind gegen Account-Switch-Bypass geschützt. Wer sich auf einem bereits gebundenen Gerät mit einem anderen Konto anmeldet, bekommt eine Sperre (DEVICE_LOCKED) — und der ursprüngliche Account wird per E-Mail benachrichtigt.
- **Custom Mail-Filter (Cue Avoidance)**: Eigene E-Mail-Adressen oder Domains von Glücksspiel-Anbietern können direkt in der App eingetragen werden. Auto-Detect schlägt bekannte Muster vor. Free/Pro: je 5 Adressen + 5 Domains. Legend: je 10. Die neue Unified-Filter-Section ersetzt alle bisherigen separaten Blocker-Einträge.
- **Like + Kommentar Realtime**: Reaktionen anderer User werden live in der Feed-Karte aktualisiert — kein manuelles Refresh.
- **Chat v1.0 (DM-only)**: Direkt-Nachrichten mit Profilbildern, Suche, Unread-Badge in der Tab-Bar. Gruppen-Chats werden für v1.0 nicht unterstützt.
- **Avatar-Zuschnitt via iOS-Nativ**: Der Profilbild-Zuschnitt nutzt jetzt Apples eigenes UIImagePickerController-Crop statt eines eigenen Sheets — zuverlässiger, native Look.
- **Hilfe-Bereich in Settings**: Neue Seiten für FAQ, Kontakt, Über Rebreak und Krisen-Hotlines. Notifications-Bereich überarbeitet.
- **Global-Blocklist-Vorabprüfung**: Beim Hinzufügen einer Custom-Adresse wird vorab gegen die zentrale Blockliste geprüft — kein Slot wird verbraucht, wenn die Domain sowieso schon global gesperrt ist.
- **FamilyControls standardmäßig aktiv** in lokalen Dev-Builds (`dev-iphone.sh`, `clean-ios.sh`).
### Changed
- **Devices-Seite neu gestaltet**: Zweizeilige Einträge mit animierter Fortschrittsleiste, UIMenu für Mac/Windows-Auswahl, zentrale Button-Komponente durchgehend genutzt.
- **Game-Over-Modal überarbeitet**: Höhenbegrenzung, Keyboard-Avoidance, neuer Regenerate-Button.
### Fixed
- **Mac in Geräteliste-Bug behoben**: Mac-Geräte wurden unter bestimmten Umständen nicht korrekt in der Liste angezeigt.
---
## [0.1.0] — versionCode 7 — 2026-05-15
### Added

View File

@ -4,7 +4,7 @@ export default ({ config }: ConfigContext): ExpoConfig => ({
...config,
name: "ReBreak",
slug: "rebreak",
version: "0.1.0",
version: "0.2.0",
orientation: "portrait",
icon: "./assets/icon.png",
scheme: "rebreak",
@ -20,7 +20,7 @@ export default ({ config }: ConfigContext): ExpoConfig => ({
ios: {
supportsTablet: true,
bundleIdentifier: "org.rebreak.app",
buildNumber: "7",
buildNumber: "8",
config: {
usesNonExemptEncryption: false,
},
@ -39,7 +39,7 @@ export default ({ config }: ConfigContext): ExpoConfig => ({
android: {
package: "org.rebreak.app",
versionCode: 7,
versionCode: 8,
adaptiveIcon: {
// Foreground muss in der ~66%-Safe-Zone bleiben (Launcher-Mask clippt den
// Außenring) → adaptive-foreground.png ist das Logo auf transparentem

View File

@ -1,6 +1,6 @@
{
"name": "@trucko/rebreak-native",
"version": "0.1.0",
"version": "0.2.0",
"private": true,
"main": "expo-router/entry",
"scripts": {