diff --git a/CHANGELOG.md b/CHANGELOG.md
index 843471f..7f78d21 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,13 @@ All notable changes to this project are documented here. Format follows
[Keep a Changelog](https://keepachangelog.com/en/1.1.0/); versions follow
[Semantic Versioning](https://semver.org/spec/v2.0.0.html).
+## [2.2.14] - 2026-09-30
+
+### Fixed
+
+- Stage fallback OTA packages in public Downloads and grant the resolved system installer
+ explicit read access, avoiding the MG head unit's private-cache package parse failure.
+
## [2.2.13] - 2026-09-30
### Changed
diff --git a/FatihsMG4-unstable-2.2.14.apk.sha256 b/FatihsMG4-unstable-2.2.14.apk.sha256
new file mode 100644
index 0000000..17679b1
--- /dev/null
+++ b/FatihsMG4-unstable-2.2.14.apk.sha256
@@ -0,0 +1 @@
+2878b084beae8af2bf4295b18b996ac71d0ebcd3b8c11beb5453a3e7eb68f7d2 FatihsMG4-unstable-2.2.14.apk
diff --git a/app/build.gradle b/app/build.gradle
index f960ada..7bb6232 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -34,8 +34,8 @@ android {
applicationId "com.evsuite.abrp"
minSdk 27
targetSdk 36
- versionCode 30
- versionName "2.2.13"
+ versionCode 31
+ versionName "2.2.14"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
diff --git a/app/src/unstable/AndroidManifest.xml b/app/src/unstable/AndroidManifest.xml
index 67402de..1e4f316 100644
--- a/app/src/unstable/AndroidManifest.xml
+++ b/app/src/unstable/AndroidManifest.xml
@@ -8,6 +8,9 @@
platform-signed build the platform may install without asking; when it does ask,
this is what lets the confirmation be raised at all. -->
+
+