Mindwtr 0.6.15
Highlights
- Added support for local OpenAI-compatible AI endpoints (for example Ollama/LM Studio/LocalAI/vLLM) via custom base URL.
- Major sync/data integrity hardening across core and cloud (write-lock behavior, deletion timestamp safety, attachment merge consistency, and stronger SQLite integrity checks).
- Mobile UX improvements across iOS and Android (iOS back navigation stabilization, Android checklist keyboard visibility, status bar/theme polish, and inbox/review flow improvements).
- MCP server upgrades for reliability and performance (transactional mutations, typed validation cleanup, FTS-based search, shared quick-add parsing, and expanded tests).
- Release/distribution improvements (official Homebrew cask automation, App Store/TestFlight workflow fixes, and Microsoft Store pipeline updates).
Core / Sync / Cloud
- Added conservative handling for invalid
deletedAttimestamps and fixed attachment winner URI/metadata merge behavior. - Hardened cloud write lock queue continuation and improved write serialization safety.
- Added SQLite data-integrity validation at DB layer (task/project status validation + JSON field validation) and new sync-oriented composite indexes.
- Shared sync client helpers across desktop/mobile to reduce duplication and keep behavior aligned.
- Improved mobile sync config cache TTL and several merge/runtime correctness paths.
Desktop / Mobile
- Stabilized iOS drawer/settings back navigation and gesture behavior.
- Fixed Android checklist title input visibility above keyboard and improved Android status bar theming.
- Improved mobile inbox processing flow and copilot context suggestions.
- Improved weekly review/calendar behavior for scheduled and due tasks.
- Added consistent async loading/error feedback in desktop list/projects workflows.
- Improved desktop accessibility/i18n coverage and grouped selector subscriptions for better maintainability.
AI / MCP / Search
- Added local OpenAI-compatible endpoint support through custom base URL configuration.
- MCP server now uses FTS5 task search (with fallback), wraps task mutations in transactions, and validates typed inputs without unsafe casts.
- MCP service/tool registration test coverage was expanded.
Packaging / Docs / CI
- Switched macOS Homebrew install docs to official
homebrew/caskand added automatic cask bump workflow. - Removed outdated macOS quarantine workaround note after signing pipeline changes.
- Expanded sync/testing wiki guidance and clarified Fluid Recurrence docs.
- Improved CI/workflow reliability across iOS/macOS/Windows publishing and metadata pipelines.
Full Change List (since 0.6.14)
- ec2cfb2 chore(core): remove unused mergeEntities helper
- b23ca57 test(mcp): cover service and tool registration paths
- 06cef56 refactor(sync): share snapshot and cleanup helpers across clients
- a1c32ff refactor(desktop): group selectors and improve a11y/i18n
- 934dcbf fix(desktop): add async loading states and error toasts
- bd2aef6 fix(core): enforce sqlite status/json integrity and add sync indexes
- dfac621 fix(cloud): continue write queue after rejected lock
- a94fe7a docs(wiki): expand sync and testing guidance
- f655972 refactor(mcp): reuse core quick-add parser
- 6273489 docs(readme): remove completed f-droid roadmap item
- 2662328 perf(mobile-sync): increase config cache ttl to 30s
- 0cbd6d7 feat(mcp): use FTS5 for task search with LIKE fallback
- 6d79c90 fix(mcp): replace any casts with enum-validated inputs
- 6208c97 fix(mcp): wrap task mutations in db transactions
- f405dc2 fix(sync): honor attachment winner metadata and uri
- 84241f5 fix(sync): avoid Date.now fallback for invalid deletedAt
- 708c9bd fix(cloud): avoid write-lock continuation on rejected chain
- 161ecea fix(core): make openai provider tests bun-compatible
- c7872cc feat(ai): support local OpenAI-compatible base URLs
- 66c5f97 fix(mobile): keep checklist input visible above keyboard on android
- ee342dc Merge pull request #154 from seclution/patch-1
- 5fee6fd desktop(sync): treat missing WebDAV data.json (404) as empty remote state
- a86723f docs: remove outdated macOS quarantine workaround
- 4fc5195 docs(readme): switch macOS Homebrew to official cask
- 00a46e9 docs: clarify fluid recurrence in readme and wiki
- 6ace16c fix(core): make scheduled promotion test bun-compatible
- 492f58d ci(release): auto-bump official Homebrew cask
- 7f14873 fix(mobile): stabilize iOS back navigation headers
- 9ba1169 fix(mobile): theme android status bar background
- e6a6a4f fix(mobile): apply task editor hidden fields
- e69a2e3 fix(mobile): show scheduled and due tasks in weekly review calendar
- 7bc400b fix(review): hide completed tasks in calendar and all filter
- 96709ad feat(mobile): add copilot context suggestions in inbox flow
- 5790cfa feat(mobile): improve inbox processing next-task flow
- 4e0c3a8 feat(core): promote scheduled tasks to next
- 46d4053 fix(mobile): use plain back icon for drawer stack screens
- 1b29f30 fix(mobile): remove settings back button circle on ios
- 83875b5 fix(mobile): use preventRemove for settings back flow
- 5ccf474 fix(mobile): stabilize ios settings back nav transitions
- fdbaf6c fix(mobile): enable landscape and tablet manifest support
- ea72862 fix(release): trigger ios and mac appstore flows on tag release
- 15cb093 fix(core): relax revision metadata helper typing
- 57dd51d fix(desktop): sort task editor project and area dropdowns
- c5af69a fix(sync): sanitize invalid revision metadata before merge
- b296f32 fix(release): route review-blocked appstore uploads to testflight
- 3cc4dc5 fix(mobile): use app store updates and ios folder sync
- 7957fda docs: add macOS TestFlight beta link to install section
- 213f70d ci(appstore): separate ios/macos review checks and fix mac deliver
- 4d96601 ci(windows): normalize store description line wrapping
- cc52921 ci(macos): use fastlane for app store upload and review
- 32016d8 docs: add mac app store install option and badges
- b0bf8d4 feat(core): allow insecure webdav on private IP ranges
- 8cd3119 ci(workflows): dedupe asc key decode/api helper and clarify tag source
- 4c21b2b ci(ios): extract asc jwt and decode helpers
- 058a385 ci(docker): deduplicate image workflows via reusable pipeline
- 5dc3613 ci(macos-appstore): replace deprecated altool upload
- 1cf6bae ci(workflows): cache rust artifacts for tauri store builds
- 88b615e ci(publish-repo): sign rpm repodata metadata
- 41e8682 ci(workflows): add concurrency guards and job timeouts
- be5f5a9 ci(workflows): pin bun and refresh action versions
- 46b8e1d ci: enforce checks in ci workflow
- 8849619 ci(chocolatey): add package validation smoke test and metadata links
- 53255e2 ci(release): automate chocolatey packaging and publish
- 5d2ac5b docs(security): use private vulnerability reporting
- 6b69c4d docs(issues): refine templates and remove CI form
- 29c9c08 docs: add security policy
- b0d6dc4 docs(issues): add focused templates and issue chooser config
- 56287cf docs(readme): add community section and contributing links
- 6d07e98 fix(ci): use app-scoped appStoreVersions review-state lookup
- d3549f0 chore(ci): remove obsolete msstore metadata workflows
- 6e589b2 fix(core): advance custom monthly BYDAY start dates with interval
- d7d1964 fix(ci): send json body when committing msstore submission
- f499da7 fix(ci): handle missing pending submission in windows release
- afd7cb4 ci(windows): publish msstore package and metadata via single REST submission
- 58ad5ba ci(ios): disable review-state precheck
- 3c379e8 ci(ios): trigger app store release on tags with review submit