diff --git a/AGENTS.md b/AGENTS.md index f652bf0..2696f45 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -2228,7 +2228,7 @@ session with **no other memory of this project**. So: instead of showing the error boundary. - **Baselines** (verified 2026-10-29): `npm test` → **0 errors, 0 warnings**, **156 tests**, build ok. The gate also type-checks the CVM server - (`tsc -p cvm-server/tsconfig.json`). `package.json` version **1.7.62**. + (`tsc -p cvm-server/tsconfig.json`). `package.json` version **1.7.63**. - ✅ Lint is **clean**: `no-explicit-any` = 0 · `react-hooks/exhaustive-deps` = 0 · `no-unused-vars` = 0 · `react-refresh` = 0. Non-component exports were **split into their own modules** (`contexts/language.ts`, `lib/sortOptions.ts`, @@ -2455,7 +2455,7 @@ Rules: or `FORGEJO_PASSWORD`; `scripts/release.sh` calls it automatically when either is set). It uploads the APK and checksum, but does not push git history. - **Self-hosted F-Droid repo:** `https://fdroid.skate-spots.org/repo` - (`org.skatespots.app`; currently 1.7.62). It is a **third-party repo**, not + (`org.skatespots.app`; currently 1.7.63). It is a **third-party repo**, not F-Droid main. Repo signing fingerprint: `88:B1:71:1C:24:02:89:FB:B2:A7:FC:C1:B3:1F:BB:9D:60:F5:7F:19:18:E0:3D:62:2D:35:F2:3D:E1:84:46:75`. The developer APK signature is unchanged; the repo key only signs indexes. @@ -2895,6 +2895,10 @@ Rules: sanitized; marketplace readiness only counts a usable lud16; duplicate Korean picker entry hidden; beta source link points self-hosted. APK sha256 `e746b18e…`, versionCode 10762. Web live at `c08d5d4`. + - **1.7.63 (2026-10-31):** deterministic event merge with event-id tie-break + and local deletion tombstones; EXIF/GPS stripping for decodable uploads; + Android Auto Backup disabled; local OpenSats icon; threat-model document. + APK sha256 `70e1dd1a…`, versionCode 10763. Web live at `3edef9c`. ### Relay archive (dataset backup) - **Transfer content between keys (`scripts/transfer-content.mjs`, 2026-10-04):** diff --git a/distribution/README.md b/distribution/README.md index 3016873..6ab5daf 100644 --- a/distribution/README.md +++ b/distribution/README.md @@ -7,10 +7,10 @@ account is required. - Forge: - Latest release: -- Signed APK (1.7.62): - +- Signed APK (1.7.63): + - SHA-256: - `e746b18ed1e81b200766c06ddbaec07ce2ea8c50e5319e7192d5a1f07e146ca3` + `70e1dd1a5d2477d64988139ec33df4e8db01a5b15e4a7ec4bff52da2f5f719f5` The APK is signed with the same key as the Zapstore build. Installing an F-Droid-signed build over it would require uninstalling SkateSpots and losing diff --git a/fastlane/metadata/android/en-US/changelogs/10763.txt b/fastlane/metadata/android/en-US/changelogs/10763.txt new file mode 100644 index 0000000..68b7f95 --- /dev/null +++ b/fastlane/metadata/android/en-US/changelogs/10763.txt @@ -0,0 +1 @@ +Deterministic relay merging with a stable event-id tie-break and local deletion tombstones; EXIF/GPS stripping on upload; Android cloud backup disabled; local OpenSats icon; added the trust-model document. diff --git a/public/download/index.html b/public/download/index.html index 835a285..46fd4a6 100644 --- a/public/download/index.html +++ b/public/download/index.html @@ -98,16 +98,16 @@ - Download SkateSpots-1.7.62.apk · 56 MB + Download SkateSpots-1.7.63.apk · 56 MB
Requires Android 7.0 or newer. - SHA-256: e746b18ed1e81b200766c06ddbaec07ce2ea8c50e5319e7192d5a1f07e146ca3 + SHA-256: 70e1dd1a5d2477d64988139ec33df4e8db01a5b15e4a7ec4bff52da2f5f719f5 Only install APKs from a source you trust. Android will ask you to allow installs from your browser.