Drifty 1.8.0
Pre-release
Pre-release
Summary
Drifty 1.8.0 adds self-service account deletion, surfaces Memory and agent access
in Settings, opens the Pro plan chooser from the sidebar, keeps Flow detail in a
persistent menu, and fixes AI classification usage-limit handling.
Changes
Added
- You can now delete your Drifty account from Settings. Deletion stops Cloud billing, removes your account data from Drifty Cloud, and clears device sync, while your local tracking history stays on your Mac. If any step cannot be completed, Drifty stops and tells you what happened instead of leaving the account half-removed.
- Settings now surfaces Memory and agent access so you can see what Drifty remembers and which agent surfaces are available.
- The Pro plan chooser now opens directly from the sidebar.
Changed
- Flow detail moved into a persistent menu, so your chosen detail level stays selected between visits.
- The Week legend now matches Day hover behavior for consistent highlighting.
- Cloud plan choice and checkout recovery were polished, including clearer states when a checkout needs to be resumed.
Fixed
- Drifty Cloud AI classification now handles usage limits without falsely reporting a connection problem.
- The focus and drift hover marker now lines up with the point it describes.
- Classification source badges are more compact and no longer crowd the surrounding hover cards.
- Settings select controls now keep their layout balanced alongside row actions.
- Fallback site icons are centered again.
- Update checks now always install the latest available release instead of a stale one detected earlier.
Internal / Docs / Tests
- Synchronized release metadata to 1.8.0 across npm workspaces, lockfiles, Tauri manifests, Rust package metadata, tracker CLI, and build/analytics coverage.
- Added a Dev-only pet-mode cursor hunt behind existing Dev gating.
- Added a PostgreSQL-level account deletion race-condition harness.
Compatibility
- Apple Silicon Macs running macOS 13 or later.
Downloads
- Manual install: drifty_1.8.0_aarch64.dmg
- DMG SHA-256: 4ba1eda304d9fa45ee081b9f919d31db3bfdfd8531150c62eb3cd870a3f4ecac
- Updater archives are for in-app updates and are not manual downloads.
Verification
- Frozen source: b3037ee3f712ca1010b289259e785d54984b26ca.
- Reviewed merged changes: Drifty PRs #910, #911, #912, #914, #915, #916, #917, #918, #919, #920, #921, #922, #923, #924, and release preparation PR #931.
- Full repository gate passed: typecheck, web (2903 passed), Python (622 passed, 1 skipped), and Rust (416 passed, 8 ignored).
- Signed and notarized app submission: 36c84a69-be89-405b-9244-f2d565be4179 (Accepted).
- Signed and notarized DMG submission: 6ca02319-06c2-4497-89d6-34d04fd326d4 (Accepted).
- Gatekeeper, stapling, package inventory, nested sidecar and helper signatures, and updater signature length passed.
- Finder presentation gate passed with a byte-identical .DS_Store template, window size 660x400, icon size 128, and text size 16.
- Clean macOS VM QA passed on a disposable Tart clone with no Command Line Tools and no Homebrew Python: Gatekeeper accepted the DMG and the installed app, the app reported 1.8.0, and the bundled tracker sidecar served and recorded local history.
- Poisoned-runtime negative controls passed: with a fake python3 first on PATH and DRIFTY_PYTHON_BIN pointing at it, the app selected only the bundled sidecar for serve and daemon, and the external-python marker never appeared.
- Daemon recovery passed: killing the persistent serve process respawned it from the installed bundle.
- Visible GUI click-through passed on the clean VM: onboarding rendered from the installed production app, the System Events permission prompt was declined and left denied, and the account step surfaced Google and email sign-in with correct sign-in expiry and retry states.
- Account deletion server behavior was verified separately against an isolated Supabase preview branch and a real Polar sandbox organization across ten failure and recovery scenarios, including shared-team blocking, stale customer-id fallback, post-billing purge failure, provider-outcome-unknown, auth-delete rollback, and token replay rejection.
- Release class: general.
Diff basis
- Previous public release: 1.7.1 at 08fbe88dcda601e65d8abc835b251767fa0f5754.
- Source range: 08fbe88dcda601e65d8abc835b251767fa0f5754..b3037ee3f712ca1010b289259e785d54984b26ca.
- User-facing PRs: #911, #912, #914, #915, #916, #917, #918, #919, #920, #921, #922.
- Internal or Dev-only PRs: #910, #923, #924.
- Release preparation PR: #931.
- Supabase schema changes: account deletion adds purge_account_personal_data, account_deletion_has_shared_owned_organization, and a pre-delete auth.users cleanup trigger. All are service-role only and additive; no cloud-api-v1 RPC, function, table, or client-used column was removed or renamed.
- PRs #928 and #929 merged after this binary was frozen and are not included in this release.