Release 1.1.15: Cloud conflict resolution on Android (app core 2.44.0) - #46
Merged
Merged
Conversation
ZenNotes 2.44.0 adds Harper, an offline grammar checker, on desktop and web. Phones do not run it: the system keyboard already checks spelling, and the mobile bridge never reports the new supportsHarper capability, so app-core hides the setting, the commands and the editor extension here. Two things still had to change with the source pin. The vault settings normalizer now keeps the harper field (the vault dictionary and ignored suggestions, written by desktop and web), cleaned by the same shared normalizer the other runtimes use; before, a save from this device would have erased what the user taught it. And a Vite stub resolves harper.js and its wasm binary to an empty module, so the bundle never carries Harper's 15.6 MB. harper.js is a dev dependency only, for the types the shared editor code references. Claude-Session: https://claude.ai/code/session_015HNdWonTE8g6dPY2SkdsRS
The 2.44.0 tag moved once after the release cut, to a commit that only fixes the desktop repo's Docker build and its Windows test run; the pin follows so the shell builds from exactly what the tag names. The 1.1.15 version bump (versionCode 17) that this release branch is named for was staged with the earlier pin and never committed; it lands here. Claude-Session: https://claude.ai/code/session_015HNdWonTE8g6dPY2SkdsRS
The tag moved a second time for a Windows-only test fix in the desktop repo; nothing the shell bundles changed. Claude-Session: https://claude.ai/code/session_015HNdWonTE8g6dPY2SkdsRS
The desktop tag moved once more for a release-workflow-only change (the macOS signing keychain fix); the shell bundles nothing from it. Claude-Session: https://claude.ai/code/session_015HNdWonTE8g6dPY2SkdsRS
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
ZenNotes for Android 1.1.15 (versionCode 17): Cloud conflicts become clear choices
The app core moves from 2.38.0 to 2.44.0 (pinned to the final
v2.44.0tag,e56f9ec), and the phone gets the same conflict resolver as desktop (ZenNotes/zennotes#683).What ships
(cloud conflict)files.harper.jsand its 15.6 MB wasm resolve to an empty module (the bridge never reportssupportsHarper, so app-core hides the setting); the vault-settings normalizer now carries theharperdictionary/ignored-lints block through a save from this device so sync from the phone no longer erases it.@vitejs/plugin-react6.1.1,import.meta.dirname, npm override pinningxcode→uuid11.1.1. Native side unchanged (Capacitor 8.5 / SDK 36 / minSdk 24).Verification
npm run typecheckclean andnpm test35/35 one56f9ec;bundleReleaseOK, merged manifest vc 17 / 1.1.15; AAB sha256df164c00a0c17380911ef7a146083f80f5598a6f696328298763fefdcb7ee10e.zennotes://auth; overlapping edit → review prompt in the status bar and the Cloud queue → Keep both changes → combined note saved locally and pushed, prompt cleared, no conflict copy; first-sync conflict → both versions shown → Replace with other device's version (inline confirm) → local replaced; no Harper entry in Settings → Editor;harperblock invault.jsonsurvives a phone settings save.Release docs:
docs/releases/v1.1.15/(local). Same release ships as ZenNotes for iOS 1.9.6.https://claude.ai/code/session_01CWgtKY9sdF4JREoyCzNGtP