Mindwtr 0.8.0
Highlights
- This release adds optional project due dates, a portable Windows desktop build, and a broad pass of sync and storage hardening across desktop and mobile.
- Desktop project planning is smoother with single-click sidebar selection, a separate archived projects section, better calendar and review contrast, and configurable inline task editor sections.
- Mobile sync is steadier with persistent iOS file-sync bookmarks, clearer cloud-provider grouping, and widgets that size task lists from real widget dimensions.
- Sync now surfaces clock skew metadata, preserves edits made during remote-write recovery, tracks invalid deletion timestamps, and keeps deleted attachments out of visible task data.
Desktop & Planning
- Added optional project due dates across the shared data model, JavaScript SQLite adapter, and desktop storage schema, including migration from existing desktop data.
- Added a Windows portable distribution mode with local profile and config storage beside the executable.
- Improved desktop project navigation with single-click sidebar selection, a separate archived projects section, better calendar and review contrast, and localized focus controls in project and task rows.
- Added inline task editor section defaults, kept the Obsidian integration collapsed by default, and refreshed desktop/wiki docs for portable installs and new project fields.
Mobile, iOS & Android
- Mobile widgets now use actual widget height to decide task limits, and iOS widget payloads are adaptive with a lighter legacy payload for older widget readers.
- iOS file sync now persists security-scoped bookmarks more reliably after folder selection.
- Grouped iCloud sync under cloud providers and kept mobile widget and sync test fixtures aligned with the shared merge stats changes.
Data, Sync & Storage
- Added project due date indexing and migration for both the Rust and JavaScript SQLite adapters.
- Improved merge diagnostics by surfacing large clock skew, tracking invalid deleted timestamps, and making pending remote-write recovery include edits made during backoff.
- Hardened visibility rules by using the shared visible-task helper consistently, enforcing task focus limits, filtering soft-deleted attachments from visible tasks, and making tag deduplication deterministic after rename.
- Improved desktop storage safety on Windows with backup-based atomic writes, and emit a warning event when secrets fall back to plaintext because the keyring is unavailable.
- Search now handles archived tasks and projects consistently.
Docs, CI & Internal Architecture
- Updated the wiki MCP page for the new dueDate and reviewAt fields and refreshed desktop Bun test setup to expose the DOM globals Bun misses.
- Fixed release-window TypeScript regressions in shared sync typings and mobile fixture data.
- Continued cleanup around widget typings, desktop bundling metadata, and release infrastructure.
Full Change List (since 0.7.9)
- fix(mobile): group iCloud sync under cloud providers
- fix(desktop): declare fflate for desktop builds
- feat(settings): inline task editor section defaults
- fix(task-editor): honor section open defaults
- fix(settings): collapse obsidian integration by default
- fix(desktop): make project sidebar selection single-click
- fix(mobile): persist iOS file sync bookmarks
- fix(desktop): improve calendar and review count contrast
- fix(mobile): use widget height for widget updates
- fix(desktop): separate archived projects in sidebar
- feat(desktop): add windows portable mode
- test(mobile): fix widget service typing
- feat(projects): add optional due dates
- fix(storage): migrate project due date before indexing
- fix(schema): add dueDate index to JS SQLite adapter
- fix(store): use isTaskVisible helper consistently in store-projects
- fix(mobile): use adaptive task limit for iOS widgets
- fix(store): enforce max 3 focused tasks limit
- fix(store): deterministic tag deduplication after rename
- fix(store): filter soft-deleted attachments from task display
- docs(wiki): update MCP server page for dueDate and reviewAt fields
- fix(sync): surface clock skew warning in merge result
- fix(sync): track invalid deletedAt timestamps in merge stats
- fix(desktop): safe atomic file writes on Windows
- fix(desktop): emit warning event on keyring plaintext fallback
- fix(i18n): replace hardcoded English strings in sidebar and task components
- fix(sync): include post-failure edits in remote write recovery
- fix(search): consistent archive filtering in search queries
- fix: polish iOS widget payload keys and focus limit error handling
- fix(desktop): expose missing DOM globals in Bun tests
- fix(ci): resolve sync typecheck regressions