chore(release): v0.3.0 — version bump for TestFlight + Play Console
- package.json: 0.2.0 → 0.3.0 - app.config.ts: version 0.2.1 → 0.3.0 - iOS buildNumber: 9 → 10 - Android versionCode: 9 → 10 - CHANGELOG.md: v0.3.0 entry with Duo-Onboarding, DiGA, Stripe-pivot, Arabic+RTL, NEFilter-robust-disable, anti-auto-reactivation, FC always-on, etc. Note: Android-Build wird vorerst NICHT submittet — Onboarding-Slides müssen für Android-Protection-Mechanismus (VPN + a11y statt iOS NEFilter + Family Controls) mit eigenen Pre-Explainer-Screenshots + Texten angepasst werden. Erst dann v0.3.1 oder gesammelt mit Android. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
parent
cfb0888451
commit
c9273a2770
@ -10,6 +10,25 @@ Versioning: `version` follows SemVer, `versionCode` is monotonically increasing.
|
||||
|
||||
---
|
||||
|
||||
## [0.3.0] — versionCode 10 — 2026-05-17
|
||||
|
||||
### Added
|
||||
- **Duo-style Onboarding (9 Slides)**: Vollständiger Onboarding-Flow — Welcome → Privacy → Nickname → DiGA-Choice → DiGA-Code → Plan → Payment → Protection → Done. Lyra-Bubble mit TTS-Audio-Button auf jedem Slide. Pre-Explainer-Screenshots vor iOS-Permission-Dialogen. Confetti-Animation + Top-5-FAQ-Accordion auf Done-Screen.
|
||||
- **DiGA-Redeem-Endpoint + 10 Test-Codes**: Backend-Endpoint für DiGA-Code-Einlösung. 10 vordefinierte Test-Codes (REBREAK-TEST-001 bis REBREAK-TEST-010) für QA und Reviewer.
|
||||
- **Arabisch (Arabic) + RTL-Support**: Vollständige arabische Lokalisation mit automatischem RTL-Layout-Switching.
|
||||
- **NEFilter Robust Disable**: 2-step Apple-Pattern für zuverlässiges Deaktivieren des URL-Filters. `resetUrlFilter` als Recovery-Pfad bei code-5-Fehlern. `ProtectionOffSheet` ersetzt bisherigen Alert.
|
||||
- **Family Controls always-on**: Kein "Bald"-Placeholder mehr — FamilyControls-Entitlement ist vollständig aktiv.
|
||||
- **Stripe Tier-Rename + Checkout-Refactor**: Pläne heißen jetzt konsistent `pro` / `legend` (statt alter Naming-Varianten). Checkout-Endpoint neu strukturiert.
|
||||
- **protectionDisabledAt (Backend)**: Server-seitige Timestamps verhindern Auto-Reaktivierung nach manuellem Deaktivieren.
|
||||
|
||||
### Fixed
|
||||
- **Protection Cooldown Auto-Disable Race**: Stale-State nach Cooldown-Ablauf korrigiert — kein falscher "aktiv"-Zustand mehr.
|
||||
- **Blocker: lockedIn requires both layers**: Grüner "Locked In"-Banner erscheint nur noch, wenn beide Schutz-Ebenen (VPN + a11y) aktiv sind.
|
||||
- **Nickname Validation + Duplicate-Check**: Echtzeit-Prüfung auf bereits vergebene Nicknames im Onboarding.
|
||||
- **DiGA-Code Auto-Format**: Code-Eingabe formatiert automatisch (Großbuchstaben, Bindestriche).
|
||||
|
||||
---
|
||||
|
||||
## [0.2.1] — versionCode 9 — 2026-05-16
|
||||
|
||||
### Fixed
|
||||
|
||||
@ -4,7 +4,7 @@ export default ({ config }: ConfigContext): ExpoConfig => ({
|
||||
...config,
|
||||
name: "ReBreak",
|
||||
slug: "rebreak",
|
||||
version: "0.2.1",
|
||||
version: "0.3.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: "9",
|
||||
buildNumber: "10",
|
||||
config: {
|
||||
usesNonExemptEncryption: false,
|
||||
},
|
||||
@ -39,7 +39,7 @@ export default ({ config }: ConfigContext): ExpoConfig => ({
|
||||
|
||||
android: {
|
||||
package: "org.rebreak.app",
|
||||
versionCode: 9,
|
||||
versionCode: 10,
|
||||
adaptiveIcon: {
|
||||
// Foreground muss in der ~66%-Safe-Zone bleiben (Launcher-Mask clippt den
|
||||
// Außenring) → adaptive-foreground.png ist das Logo auf transparentem
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@trucko/rebreak-native",
|
||||
"version": "0.2.0",
|
||||
"version": "0.3.0",
|
||||
"private": true,
|
||||
"main": "expo-router/entry",
|
||||
"scripts": {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user