Skip to content

v0.6.6

Latest

Choose a tag to compare

@bhekanik bhekanik released this 11 Jul 09:22
8c605fb

[0.6.6] - 2026-07-11

🚀 Features

  • Edit stored drafts in place across CLI, TUI, and web (#110)
  • (imap) File sent mail into the server Sent folder via APPEND (multi-account parity with Gmail) (#127)

🐛 Bug Fixes

  • Unblock CI (crossbeam-epoch RUSTSEC-2026-0204 + clippy question_mark) (#111)
  • (tui) Expand visual-line selection to thread rows, not flat envelope indices (#112)
  • (cli) Confine attachment downloads to --dir and sanitize mail filename (#113)
  • Make reader quote and activity/history truncation char-boundary safe (#115)
  • (store) Index messages(account_id, message_id_header) to kill dedup full-scans (#109)
  • (gmail) Decode message bodies by declared charset instead of dropping non-UTF-8 (P1 data loss) (#114)
  • (smtp) Guard cleartext auth, validate config, classify transient send errors (#123)
  • (imap) Harden sync, dates, labels, snippets, and command safety (13 fixes) (#125)
  • (sync) Scope message-direction classification to the receiving account (#126)

⚙️ Miscellaneous Tasks

  • (main) Release 0.6.6 (#117)

[0.6.5] - 2026-07-05

🐛 Bug Fixes

  • Harden TUI event delivery, rendering, and draft hygiene (#105)

⚙️ Miscellaneous Tasks

  • (main) Release 0.6.5 (#106)

[0.6.4] - 2026-07-03

📚 Documentation

  • Close out the issue backlog — crate docs, protocol docs, verified jq examples (#101)

⚙️ Miscellaneous Tasks

  • Run the rustdoc gate on Rust changes and fix latent doc links (#104)
  • (main) Release 0.6.4
  • Sync Cargo.lock with the 0.6.4 version bump

[0.6.3] - 2026-07-01

📚 Documentation

  • (site) Lead the hero with a terminal demo and a smaller headline (#97)

⚙️ Miscellaneous Tasks

  • (main) Release 0.6.3
  • Sync Cargo.lock with the 0.6.3 version bump
  • Bump anyhow past RUSTSEC-2026-0190 and prune stale deny ignores

[0.6.2] - 2026-06-25

🐛 Bug Fixes

  • Validate gmail token refs
  • Limit bridge query token auth
  • Redact inline secrets in bug reports
  • Align imap push capability reporting
  • Serialize snooze provider mutations
  • Harden attachment cache filenames
  • Prevent sync loop deadlock when a detached sync wedges

🚜 Refactor

  • Remove dead daemon export module
  • Remove dead web state module

📚 Documentation

  • (site) Surface examples on the landing and point the site at mxr.sh (#93)
  • Clarify subscription replied counts
  • Clarify reserved semantic config fields
  • Reconcile triage gap tracker
  • Clarify roadmap status
  • Remove stale web action comments
  • Triage root todo backlog
  • Clarify deferred provider and bridge work
  • Verify all install channels in release flow

🧪 Testing

  • Document mutation dedup lock invariant
  • Require activity request classification

⚙️ Miscellaneous Tasks

  • (site) Bump astro to 6.4.8 and patch transitive deps (#94)
  • (main) Release 0.6.2 (#96)

[0.6.1] - 2026-06-12

🚀 Features

  • (web) Global z shortcut undoes the last mail mutation
  • (web) Scoped shortcut registry, [/] triage keys, * sequences, pending-prefix chip
  • (web) Safety-check + collaborators bridge routes, undo-send pref, send-later parser
  • (web) Inline/popout compose surfaces and safety-gated send
  • (web) Send later from compose with natural-language scheduling
  • (web) Cmd+shift+enter sends and archives the source conversation
  • (web) Snippet picker dialog on cmd+semicolon
  • (web) Signature picker dialog on cmd+shift+g
  • (web) Maybe-include collaborator chips above recipients
  • (web) Recipient field RFC 5322 parsing and combobox a11y
  • (web) Vim mode line and ex commands in markdown compose editor
  • (web) Minimal formatting toolbar for the rich text editor
  • (web) Attachment size warning and per-file upload progress
  • (tui) Toast notification queue for operation outcomes
  • (tui) Status-bar spinner for in-flight work and bulk n/m progress
  • (tui) Per-account sync state in the sidebar
  • (tui) Context-aware shortcuts, help context filter, pending chord hint
  • (web) Terminate OAuth poll on terminal states, add cancel + error surfacing
  • (web) Rename and delete labels from the label picker
  • (web) Screener account switcher and decisions tab
  • (web) Paginate subscription drilldown lens
  • (web) Thread/recipient briefings, expert finder, commitment resolve, relationship view

🐛 Bug Fixes

  • (tui) Bind activity log to g y and guard against keybinding collisions
  • (tui) Name the request in IPC error messages and surface thread-load failures
  • (web) Close compose data-loss holes
  • (web) Point e2e harness at target-cli binary, regen OpenAPI types
  • (tui) Surface failed pre-send safety checks in the send modal
  • (tui) Rustfmt the Phase 4 changes and drop an unused test import
  • (web) Rustfmt the Phase 3 bridge handlers

🚜 Refactor

  • (web) Extract useComposeSession and ComposeEditorPanel from ComposeRoute
  • (tui) Hygiene — shared centered_rect, theme contrast tokens, small-terminal guard, modal cleanup on tab switch

⚙️ Miscellaneous Tasks

  • (main) Release 0.6.1
  • Sync Cargo.lock to 0.6.1

[0.6.0] - 2026-06-12

⚙️ Miscellaneous Tasks

  • (main) Release 0.6.0
  • Sync internal dep requirements and Cargo.lock to 0.6.0

[0.5.63] - 2026-06-11

🐛 Bug Fixes

  • Race-free daemon upgrade handoff + UTF-8-safe prompt truncation (#82)

⚙️ Miscellaneous Tasks

  • (main) Release 0.5.63
  • Sync Cargo.lock to 0.5.63

[0.5.62] - 2026-06-11

🚀 Features

  • Issue a safety override token in the blocked-send error
  • Per-action destructive scopes for agent profiles
  • Persist mutation job history across daemon restarts
  • Surface scheduled sends lost to a crash mid-flush
  • Tell users when a mutation's undo could not be recorded
  • Reply to the Reply-To address when the sender set one

🐛 Bug Fixes

  • Detach sync on timeout instead of cancelling mid-flight
  • (web) Handle SyncError, ReminderTriggered, and reconciliation events
  • Signal clients to resync when their event stream lags
  • Stop silently dating/attributing mail to wrong values

💼 Other

  • Fix/sync-cancellation-safe-timeout
  • Refactor/exhaustive-request-classification
  • Feat/override-token-on-blocked-send
  • Feat/granular-destructive-scopes
  • Fix/web-event-invalidation-gaps
  • Fix/lagged-broadcast-resync
  • Feat/persist-mutation-jobs
  • Feat/scheduled-send-attempt-marker
  • Test/e2e-async-job-restart
  • Fix/silent-data-fallbacks
  • Chore/dead-code-sweep
  • Test/outbound-mime-coverage
  • Refactor/web-rightrail-typesafety
  • Refactor/shared-query-builder
  • Chore/test-speed-quickwins
  • Feat/undo-unavailable-hint
  • Refactor/log-non-fatal-cleanup-errors
  • Feat/reply-to-capture

🚜 Refactor

  • Classify every IPC request exhaustively for safety policy
  • (web) Guard RightRail attachment payload instead of casting
  • Consolidate the parse+schema+build query idiom
  • Log best-effort cleanup failures instead of swallowing them

🎨 Styling

  • Rustfmt the undo_unavailable serialization test

🧪 Testing

  • E2e journey — async job history survives daemon restart
  • Cover the outbound send/MIME build path
  • Update cli_help jobs snapshot for the persistence note

⚙️ Miscellaneous Tasks

  • Delete dead code (orphaned rule_parsing.rs, unused PageStub)
  • Trim dev/test debuginfo to line tables for faster links
  • (main) Release 0.5.62
  • Sync Cargo.lock to 0.5.62

[0.5.61] - 2026-06-06

💼 Other

  • Prepare mxr 0.5.61

🧪 Testing

  • Accept completed zero-change sync status

[0.5.60] - 2026-06-06

🐛 Bug Fixes

  • Prevent stuck sync and mutation rollback

💼 Other

  • Prepare mxr 0.5.60

[0.5.59] - 2026-06-06

🚀 Features

  • Add agent and mcp safety profiles
  • Add first-party mcp server

🐛 Bug Fixes

  • Track TUI summary requests per thread
  • Sync gmail imap from all mail
  • Restore workspace ci after v1 merge

💼 Other

  • Land task-001 agent and mcp safety
  • Land task-002 gmail imap all mail
  • Land task-003 mcp server
  • Land task-004 launch proof
  • Land task-005 v1 docs
  • Ship v1 agent mcp gmail launch

📚 Documentation

  • Refine mxr readmes
  • Align v1 launch guidance
  • Record v1 blocker plan

🧪 Testing

  • Add v1 launch proof gate

⚙️ Miscellaneous Tasks

  • (main) Release 0.5.59

[0.5.58] - 2026-06-05

🚀 Features

  • Relationship-aware AI drafting, cross-client parity, compose redesign (#58)

⚙️ Miscellaneous Tasks

  • (main) Release 0.5.58 (#59)

[0.5.57] - 2026-06-04

🐛 Bug Fixes

  • Track TUI summary requests per thread (#55)

⚙️ Miscellaneous Tasks

  • (main) Release 0.5.57

[0.5.56] - 2026-06-04

🐛 Bug Fixes

  • Satisfy cli journey clippy

⚙️ Miscellaneous Tasks

  • (main) Release 0.5.56

[0.5.55] - 2026-06-03

🐛 Bug Fixes

  • Clean up release clippy lints

⚙️ Miscellaneous Tasks

  • (main) Release 0.5.55

[0.5.54] - 2026-06-03

🐛 Bug Fixes

  • Satisfy release ci checks

⚙️ Miscellaneous Tasks

  • (main) Release 0.5.54

[0.5.53] - 2026-06-03

🧪 Testing

  • Update cli smoke for paginated search output

⚙️ Miscellaneous Tasks

  • (main) Release 0.5.53

[0.5.52] - 2026-06-03

📚 Documentation

  • Record triage cli gaps plan

⚙️ Miscellaneous Tasks

  • Align dependabot grouping with automerge policy (#49)
  • (main) Release 0.5.52

[0.5.51] - 2026-05-31

🐛 Bug Fixes

  • (keychain) Enable a Linux keyring backend so credentials persist
  • (provider-imap) Skip non-selectable folders; don't abort sync on [Gmail]
  • Repair Linux keyring CI
  • Cover dbus in workflow checks

⚙️ Miscellaneous Tasks

  • (main) Release 0.5.51
  • Update release lockfile

[0.5.50] - 2026-05-31

🚀 Features

  • (cli) Count --format plain, thread/message count parity, unsubscribe --dry-run preflight
  • (summarize) Lead thread summaries with a strict triage verdict line
  • (triage) Cached triage-signal surface across CLI/TUI/web with store cache
  • (search) --group-by sender aggregation across CLI/TUI/web
  • (mutations) Chunked/async large-batch jobs surface across clients
  • (unsubscribe) --purge unsubscribe + footprint clear with dry-run preview
  • (rules) Chained rule actions + atomic route verb across clients

🐛 Bug Fixes

  • (reader) Readable HTML-to-text fallback in reader view
  • (search) Lift tantivy result ceiling + offset pagination

📚 Documentation

  • Clarify subscriptions --rank opened_count semantics

⚙️ Miscellaneous Tasks

  • (main) Release 0.5.50

[0.5.49] - 2026-05-31

🐛 Bug Fixes

  • Repair GA release checks
  • Relax release gates

[0.5.48] - 2026-05-31

🐛 Bug Fixes

  • Harden GA release path

[0.5.47] - 2026-05-29

📚 Documentation

  • Document account selection

[0.5.46] - 2026-05-29

🚀 Features

  • Add notification chimes

⚙️ Miscellaneous Tasks

  • Release 0.5.46

[0.5.45] - 2026-05-28

🚀 Features

  • Scope cli commands by account

⚙️ Miscellaneous Tasks

  • Release 0.5.45

[0.5.44] - 2026-05-28

⚙️ Miscellaneous Tasks

  • Capture mxr worktree updates
  • Release 0.5.44

[0.5.43] - 2026-05-25

⚙️ Miscellaneous Tasks

  • Release 0.5.43

[0.5.42] - 2026-05-25

🚀 Features

  • (invites) Re-hydrate attachment-only invites in mxr invites backfill

🐛 Bug Fixes

  • (gmail) Detect calendar invites delivered as .ics attachments
  • (deliveries) Detect order confirmations with dotted order numbers

⚙️ Miscellaneous Tasks

  • Release 0.5.42

[0.5.41] - 2026-05-25

🐛 Bug Fixes

  • (daemon) Acquire the index lock before touching the socket on startup

⚙️ Miscellaneous Tasks

  • Release 0.5.41

[0.5.40] - 2026-05-25

🐛 Bug Fixes

  • (deliveries) Never detect spam or trashed mail as a delivery

⚙️ Miscellaneous Tasks

  • Release 0.5.40

[0.5.39] - 2026-05-24

🐛 Bug Fixes

  • (tui) Open a delivery's email inline in a split preview

⚙️ Miscellaneous Tasks

  • Release 0.5.39

[0.5.38] - 2026-05-24

🐛 Bug Fixes

  • (tui) Unblock the Deliveries screen and enrich its rows

⚙️ Miscellaneous Tasks

  • Release 0.5.38

[0.5.37] - 2026-05-24

🚀 Features

  • Calendar invites lens and web page with inline RSVP

🚜 Refactor

  • Idiomatic Rust pass and safe simplifications
  • Typed HandlerError for daemon IPC handlers

📚 Documentation

  • Add idiomatic Rust rubric
  • Document the calendar invites page across clients

🎨 Styling

  • Complete rustfmt for the idiomatic Rust pass

⚙️ Miscellaneous Tasks

  • Release 0.5.37

[0.5.36] - 2026-05-23

🐛 Bug Fixes

  • (ci) Rustfmt, clippy, and openapi snapshot for the deliveries release

⚙️ Miscellaneous Tasks

  • Release 0.5.36

[0.5.35] - 2026-05-23

🚀 Features

  • (web) Unify message/thread lists onto the mailbox list
  • (web) Search keyboard flow — Enter hands off to the list, / refocuses query
  • (deliveries) Track packages from inbound mail across CLI, web, and TUI
  • (demo) Seed shipping mail so the demo profile shows deliveries

📚 Documentation

  • (deliveries) Document the deliveries surface; fix analytics keybinding

⚙️ Miscellaneous Tasks

  • Release 0.5.35

[0.5.34] - 2026-05-22

🚀 Features

  • (web) Dedicated keymap for full search + clearer palette selection
  • (web) Make analytics message rows open their thread

🐛 Bug Fixes

  • (web) Use loopback OAuth flow for Gmail onboarding, not device-code

⚙️ Miscellaneous Tasks

  • Release 0.5.34

[0.5.33] - 2026-05-22

🐛 Bug Fixes

  • Guard Command::Accounts dispatch with ensure_daemon_running
  • Stop background workers from starving the SQLite connection pool

⚙️ Miscellaneous Tasks

  • Release 0.5.33

[0.5.32] - 2026-05-22

🐛 Bug Fixes

  • Resolve gmail oauth flow client-side so desktop uses loopback

⚙️ Miscellaneous Tasks

  • Bump version to 0.5.32

[0.5.31] - 2026-05-21

⚙️ Miscellaneous Tasks

  • Stabilize release gates
  • Bump version to 0.5.31

[0.5.30] - 2026-05-21

🐛 Bug Fixes

  • Surface web auth recovery

⚙️ Miscellaneous Tasks

  • Bump version to 0.5.30

[0.5.29] - 2026-05-21

🐛 Bug Fixes

  • Reopen healthy daemon web bridge

[0.5.28] - 2026-05-21

🐛 Bug Fixes

  • Detach autostarted daemon

[0.5.27] - 2026-05-21

⚙️ Miscellaneous Tasks

  • Verify homebrew release on macos

[0.5.26] - 2026-05-21

🧪 Testing

  • Refresh account help snapshots

[0.5.25] - 2026-05-21

🐛 Bug Fixes

  • Keep cached mail visible without gmail auth

💼 Other

  • Migrate workflows to Blacksmith runners (#37)

[0.5.24] - 2026-05-21

🐛 Bug Fixes

  • Avoid interactive gmail keychain reads

[0.5.23] - 2026-05-21

🐛 Bug Fixes

  • Avoid daemon restart on busy status

[0.5.22] - 2026-05-21

🐛 Bug Fixes

  • Align web ipc protocol

⚙️ Miscellaneous Tasks

  • Bump version to 0.5.22

[0.5.21] - 2026-05-21

🐛 Bug Fixes

  • Remove production panic and unwrap paths
  • Track daemon background task lifecycle
  • Satisfy current stable clippy
  • Satisfy rust 1.95 clippy
  • Compile web ui without built spa
  • Satisfy rust 1.95 clippy again

🚜 Refactor

  • Fix large enum variants and API convention lints
  • Introduce parameter structs for wide helper APIs
  • Split oversized integration modules
  • Remove remaining API lint allowances
  • Finish oversized integration module split
  • Finish rust idiom cleanup tail

📚 Documentation

  • Refresh architecture boundary model

🎨 Styling

  • Apply rustfmt across workspace

🧪 Testing

  • Restore semantic local coverage
  • Document intentional test panic and unwrap policy
  • Narrow panic and unwrap lint expectations
  • Prove final cleanup gates
  • Strengthen test quality gates

⚙️ Miscellaneous Tasks

  • Clean dependency audit noise
  • Enforce clean clippy across workspace
  • Add stable pre-pr verification gate
  • Reduce dependency audit noise
  • Bump version to 0.5.21

[0.5.20] - 2026-05-19

🐛 Bug Fixes

  • Stabilize TUI body and mutation state

[0.5.19] - 2026-05-19

🚀 Features

  • Prepare mail-threading for external publish
  • Prepare list-unsubscribe for external publish
  • Prepare mail-query for external publish
  • Prepare mailbox-formats for external publish
  • Inline calendar reply with localization scaffold
  • Custom IMAP keywords on flags (MSP Phase E)
  • Thread.message_ids + threads_changed delta (MSP Phase F)

💼 Other

  • Bump clippy MSRV to 1.88

🚜 Refactor

  • Namespace SyncCapabilities into sync/mutate/search/push
  • Add typed SyncCursorExpired error variant
  • Add Role enum + Label.role field for MSP §2.3 alignment
  • Drop dead RecoveringNotFoundProvider mock
  • Opaque SyncCursor (MSP Phase B)
  • Has_more on SyncBatch (MSP Phase C)
  • Unified apply_mutation + idempotent retry (MSP Phase D)

📚 Documentation

  • Mark mail-threading extraction complete
  • Capture mail-threading extraction lessons
  • Mark list-unsubscribe extraction complete
  • Raise the publishing bar; mark 04/06/08/09 as won't-do
  • Move compose/humanizer/llm/keychain into wont-do/
  • Mark mail-query extraction complete
  • Mark mailbox-formats extraction complete
  • Capture naming lesson; mail-threading v0.1.1 description fix
  • Mail Sync Protocol (MSP) spike — spec, alignment audit, blog draft
  • Consolidate MSP initiative under docs/msp/ with README + ROADMAP
  • Agent build-and-verify workflow in AGENTS.md
  • Archive jwz-threading audit to extractable-crates/done/
  • Mark MSP Phase A done in ROADMAP
  • Mark MSP Phase B done in ROADMAP
  • Retract MSP Phase G; body delivery is now a negotiated capability

🧪 Testing

  • Accept openapi spec snapshot — Role added to schema list

⚙️ Miscellaneous Tasks

  • Consume mail-threading from crates.io
  • Consume list-unsubscribe from crates.io
  • Consume mail-query from crates.io
  • Consume mailbox-formats from crates.io
  • Relocate agent skills under .agents/, symlink CLAUDE.md
  • Release 0.5.19

[0.5.18] - 2026-05-15

🐛 Bug Fixes

  • (web) Clear stale bridge-port + surface child failures

⚡ Performance

  • (tui) De-quadratic the mail-list row markers

⚙️ Miscellaneous Tasks

  • Release 0.5.18

[0.5.17] - 2026-05-15

🐛 Bug Fixes

  • (tui) Unstick the y summarize keybinding and broaden auto-summary

⚙️ Miscellaneous Tasks

  • Release 0.5.17

[0.5.16] - 2026-05-15

🚀 Features

  • Extract mail-threading into standalone crate

🐛 Bug Fixes

  • (tui) Prevent archive bounce-back and polish UI surfaces

⚡ Performance

  • (daemon) Unblock sync hot path and split IPC priority lanes

⚙️ Miscellaneous Tasks

  • Release 0.5.16

[0.5.15] - 2026-05-15

🐛 Bug Fixes

  • Harden semantic local tests

[0.5.14] - 2026-05-15

🐛 Bug Fixes

  • Stabilize release test fixtures

[0.5.13] - 2026-05-15

🐛 Bug Fixes

  • Restore semantic release checks

[0.5.12] - 2026-05-15

🐛 Bug Fixes

  • Restore release CI checks

[0.5.11] - 2026-05-15

🚀 Features

  • Support calendar email invites

[0.5.10] - 2026-05-15

⚙️ Miscellaneous Tasks

  • Fix release binary target path

[0.5.9] - 2026-05-15

🚀 Features

  • (tui) Show Outlook device code during auth (#33)
  • (outlook) Bundle client ID into release builds (#32)
  • Add relationship-aware drafting and signatures
  • (web) Surface summaries and sender context
  • Complete relationship intelligence surfaces
  • Complete platform workflow parity
  • [] make web app installable
  • Complete relationship workflow surfaces
  • (store) Include cc/bcc and reply pairs in contact rollup
  • (semantic) Expose chunk id, source kind, and snippet on hits
  • (llm) Scaffold answer-coverage, archive-ask, decision-log, briefing, expert features
  • (core) Add DraftIntent and thread it through compose, send, and storage
  • (daemon) Block sends on missing recipients, invalid addresses, and reply-all gaps
  • (safety) Scaffold deterministic pre-send safety crate
  • (safety) Wire protocol and CLI --check for draft safety pipeline
  • (safety) Single-use override tokens and send-gate audit
  • (safety) LLM answer-coverage check with citation validation
  • (tui) Render safety verdict and override token in send-confirm modal
  • (commitments) Extract draft commitment candidates and promote on send
  • (owed) List owed-reply threads with overdue ranking
  • (tui) Owed-replies lens render
  • (archive) Mxr ask with citation-validated retrieval
  • (decisions) Citation-backed decision log store + IPC + CLI
  • (send-time) Per-recipient reply-bucket optimizer + IPC + CLI
  • (cadence) Relationship watchlist with drift query
  • (briefing) Thread + recipient briefings with content-hash cache
  • (suggest) "maybe include" recipient suggestions with Bcc-leak guard
  • (expert) Expert finder ranks answerers, not askers
  • (whois) Query-time entity explainer with no new schema
  • (tui) Wire compose-flow safety check + override-token send-path
  • (tui) Owed-replies sidebar lens with post-send refresh
  • (archive) Hybrid lexical+semantic retrieval with honest executed_mode
  • (decisions) LLM extractor + mxr decisions rebuild subcommand
  • (safety) Wire send-time recommendation as Severity::Info hint
  • (tui) Briefing modal + B-key handler for thread briefings
  • (suggest) Mxr suggest-recipients CLI
  • (expert) Mxr expert CLI surface for FindExpert IPC
  • (tui) Whois modal + W keybind on focused sender
  • (tui) Wire dormant-thread hint + suggest row + expert palette entry
  • [] add shared web action registry foundation
  • [] extend optimistic mail mutations to label/move/unsubscribe/read-and-archive
  • [] add bridge contacts autocomplete
  • [] add web compose contact autocomplete and outbound undo
  • [] add draft-assist right-rail panel
  • [] add UpdateSavedSearch protocol request, daemon handler, and bridge route
  • [] add web saved-search manager and search scope picker
  • [] add web account repair and refresh
  • [] add Wrapped story mode, share-as-image, and refresh-contacts command
  • [] extend rule actions to label/move/read-and-archive
  • [] add sender route, screener multi-account notice, registry-driven keybindings page
  • [] prompt for save destination when downloading attachments
  • [] add tri-state LinkDensity classification
  • [] extract body link metrics during sync and persist link_count
  • [] add has:link / has:link-heavy / has:link-none search filters
  • [] add doctor --recompute-link-counts backfill
  • [] render tri-state link indicator on TUI and web mail rows
  • [] make mxr demo sticky with stop/status/reset subcommands
  • [] add DemoLlmProvider so demo LLM features run fully offline
  • [] inline thread summary preview and rework reply prewarm dispatcher
  • Isolate dev runtime identity
  • (store) Add user activity log schema and event log filtering
  • (daemon) Add user activity log recorder and CLI
  • Wire activity log end-to-end and add TUI modal
  • (web) Add activity log route
  • Ship AI-email features (pre-send safety, archive intel, timing/cadence, briefings, decisions, commitments, reply later)
  • (web) Split diagnostics into events/logs panels, expand settings, add tests
  • (tui) Polish command palette, send-confirm modal, diagnostics page, behaviors
  • Add is:owed-reply search filter and ClientKind tagging for bench fixtures

🐛 Bug Fixes

  • (daemon) Truncate long attachment filenames (#30)
  • (store) Make migration 026 idempotent for pre-versioning backfill
  • (snapshots) Refresh openapi spec summary for AI-email schemas
  • (cli) Refresh and extend cli_help snapshots for AI-email subcommands
  • Improve gmail account validation

💼 Other

  • Isolate CLI cargo into target-cli/ + scripts/cargo-test wrapper

🚜 Refactor

  • [] remove native desktop app
  • [] rename client shell route
  • (test-support) Promote daemon-spawning helpers from cli_journey
  • [] migrate HelpDialog and StatusBar to action registry
  • [] migrate global keymap to action registry
  • [] migrate command palette to action registry

📚 Documentation

  • Document semantic relationship workflows
  • Refresh mxr guidance and references
  • Add implementation journey context
  • Update vision handoff status
  • [] explain no native desktop app
  • Refresh vision handoff
  • Move ai-email vision out of vision subfolder
  • [] add web parity-closure plan
  • [] document web parity closure on docs site
  • [] document sticky demo mode, has:link filters, and link indicator
  • [] add user activity log design plan
  • Consolidate per-feature design docs into single files
  • (site) Add user-facing guides for activity log and AI features

⚡ Performance

  • [] prewarm reply context on message open for instant r/a

🧪 Testing

  • (safety) Grep test for raw secret leakage + fix AWS regex gap
  • (protocol) JSON roundtrip proptests for AI-email IPC variants
  • [] add link_count fixture in search test envelope

⚙️ Miscellaneous Tasks

  • Fix openapi conformance setup
  • Enable openapi 3.1 schemathesis lint
  • Pin schemathesis hypothesis dependency
  • Update release artifact matrix

[0.5.8] - 2026-05-11

🚀 Features

  • (web) Improve mail navigation and sender profiles

💼 Other

  • Prepare mxr 0.5.8

[0.5.7] - 2026-05-11

🚀 Features

  • (web) Harden bridge stability

💼 Other

  • Prepare mxr 0.5.7

⚙️ Miscellaneous Tasks

  • Ship CLI-only release artifacts

[0.5.6] - 2026-05-11

💼 Other

  • Prepare mxr 0.5.6

[0.5.5] - 2026-05-11

💼 Other

  • Prepare mxr 0.5.5

[0.5.4] - 2026-05-09

🚀 Features

  • (analytics) Perf, UX overhaul; release ships semantic-local

💼 Other

  • Prepare mxr 0.5.4

[0.5.3] - 2026-05-08

🚀 Features

  • Phase 1-4 — triage, drafts, llm scaffolding, sender view, screener

💼 Other

  • Prepare mxr 0.5.3

[0.5.2] - 2026-05-08

🚀 Features

  • (analytics) Cut decoration, surface ratios and distribution shapes

💼 Other

  • Prepare mxr 0.5.2

[0.5.1] - 2026-05-07

🚀 Features

  • (analytics) Dashboard redesign across all 6 tabs + stale-while-revalidate cache

💼 Other

  • Prepare mxr 0.5.1

[0.5.0] - 2026-05-07

🚀 Features

  • (bridge) Slice 1 — feature-gated ToSchema on protocol
  • (bridge) Slice 2 — utoipa scaffold + openapi.json + Swagger UI
  • (bridge) Slice 3 — bucket all 47 routes under /api/v1/* + 308 shim
  • (bridge) Slice 4 — auth hardening, /health, host & CORS allowlists
  • (bridge) Slice 5 — daemon-hosted bridge as managed task
  • (bridge) Slice 6 — close protocol coverage gap (~30 new routes)
  • (bridge) Slice 7 — integration harness + OpenAPI conformance CI
  • (bridge) Slice 8 — desktop app forward-compat + codegen tooling

💼 Other

  • Prepare mxr 0.5.0

📚 Documentation

  • Cover Analytics tab + self-healing rebuild flow
  • Rewrite landing page around user superpowers
  • Restructure landing page with proper layering and lineage timeline
  • Flagship polish on landing page (impeccable pass)
  • Overhaul landing page (dark default, no cards, nyx-influenced)
  • Restore docs navigation on the landing page
  • (bridge) Add v0.5 HTTP bridge guide

[0.4.72] - 2026-05-07

🚀 Features

  • Self-healing analytics with live progress feedback

💼 Other

  • Prepare mxr 0.4.72

[0.4.71] - 2026-05-07

🚀 Features

  • (tui) Add CLI-equivalent analytics views to TUI

💼 Other

  • Prepare mxr 0.4.71

[0.4.70] - 2026-05-06

🐛 Bug Fixes

  • (provider-gmail) Normalize OAuth scope order in keychain lookups

💼 Other

  • Prepare mxr 0.4.70

[0.4.69] - 2026-05-06

💼 Other

  • Prepare mxr 0.4.69

⚙️ Miscellaneous Tasks

  • Sync Cargo.lock to 0.4.68

[0.4.68] - 2026-05-06

🚀 Features

  • Add --dry-run to mxr send and mxr unsnooze
  • Store Gmail OAuth tokens in OS keychain instead of plaintext on disk
  • [] add Gmail-style search operators
  • Surface body-fetch failures in TUI + Gmail attachment base64 fix

🐛 Bug Fixes

  • Upsert labels and envelopes by natural key to survive ID derivation change

💼 Other

  • Prepare mxr 0.4.68

🚜 Refactor

  • Typed MxrError::RateLimited and IpcErrorKind::RateLimited
  • Track applied DB migrations in schema_migrations table

📚 Documentation

  • Fix install instructions to match shipped reality
  • (cli) Document undo, snooze, accounts repair/disable/remove, search operators
  • Drop ghost flags, lead with mxr accounts add for IMAP/SMTP

🎨 Styling

  • Cargo fmt --all

🧪 Testing

  • Live Gmail end-to-end smoke covering the 0.4.52 label regression class

⚙️ Miscellaneous Tasks

  • Add macOS code signing + notarization to release pipeline

[0.4.67] - 2026-05-06

🐛 Bug Fixes

  • [] harden desktop packaged smoke
  • [] satisfy warning-deny cargo check

⚙️ Miscellaneous Tasks

  • [] pause desktop builds [skip ci]

[0.4.66] - 2026-05-05

🐛 Bug Fixes

  • [] add desktop RPM license metadata

[0.4.65] - 2026-05-05

🐛 Bug Fixes

  • [] add desktop RPM release metadata

[0.4.64] - 2026-05-05

🚀 Features

  • V1 TUI ship-blockers — send-to-Sent visibility and IPC connection state
  • (tui) Centralized async error surfacing — UserError ring buffer + reporter
  • Mxr wrapped + mxr storage --by message
  • Undo log foundation — store layer + protocol surface
  • Undo daemon pipeline — snapshot, restore, reverse-op
  • Mxr undo CLI + Tantivy reindex on restore
  • (tui) Undo binding — u reverses the most recent destructive mutation
  • (tui) Saved-search form data model + dispatch helpers
  • (tui) Saved-search modal + sidebar n/e/d + dispatch wiring
  • (tui) Semantic controls in command palette
  • (tui) Account repair from accounts view
  • (tui) Rule form shell hooks + client-side validation
  • (tui) Four analytics views unified in one Analytics screen
  • (tui) Compose validation errors escalate to modal
  • (tui) Task-oriented help section
  • (tui) HTML view polish — clearer placeholders + scroll on toggle
  • (daemon) IMAP IDLE wake-up framework + FakeProvider hook
  • (provider-imap) Real IMAP IDLE protocol wiring
  • [] stabilize daemon desktop protocol

🐛 Bug Fixes

  • Analytics correctness — date floor, time-window filters, reply-pair backfill
  • [] harden desktop app shell
  • [] clear ship-blocking test gates

💼 Other

  • Distribute mxr via brew + cargo install --git, drop crates.io
  • [] add desktop release dependencies

📚 Documentation

  • Add analytics guide + CLI reference section
  • Add analytics workflow recipes — situations, not commands
  • Cover mxr wrapped + storage --by message drill-down

⚙️ Miscellaneous Tasks

  • Use a PAT for release-please so tag push fires release.yml
  • [] verify desktop release artifacts
  • [] ignore local Claude locks
  • [] bump release version to 0.4.64

[0.4.63] - 2026-05-04

🐛 Bug Fixes

  • Per-crate .sqlx and conditional build.rs offline default

💼 Other

  • Prepare mxr 0.4.63

[0.4.62] - 2026-05-04

🐛 Bug Fixes

  • Force SQLX_OFFLINE=true via build.rs in published crates

💼 Other

  • Prepare mxr 0.4.62

[0.4.61] - 2026-05-04

🐛 Bug Fixes

  • Topologically sort crates.io publish loop

💼 Other

  • Prepare mxr 0.4.61

[0.4.60] - 2026-05-04

🐛 Bug Fixes

  • Publish mxr-test-support before its dependents

💼 Other

  • Prepare mxr 0.4.60

[0.4.59] - 2026-05-04

💼 Other

  • Add description field to all internal crates for crates.io publish
  • Prepare mxr 0.4.59

[0.4.58] - 2026-05-04

🚀 Features

  • Email analytics — schema migrations + store APIs
  • Email analytics — protocol + daemon plumbing
  • Email analytics — CLI commands
  • Send-flow correctness — sent visibility, draft state machine, idempotency
  • CLI surface — non-interactive accounts add and logs --format json
  • Gmail device flow for ssh and headless

🐛 Bug Fixes

  • Prevent silent label corruption with transactional set_message_labels
  • Drop unused Timelike import to clear CI -D warnings
  • Sync Cargo.lock to 0.4.56 workspace version
  • Build artifacts for release-prepare commits even when diff is version-only

💼 Other

  • Prepare crates.io publishing pipeline
  • Prepare mxr 0.4.55
  • Prepare mxr 0.4.56
  • Prepare mxr 0.4.57
  • Prepare mxr 0.4.58

📚 Documentation

  • Install path, quick-start, troubleshooting, release-please drift

🎨 Styling

  • Cargo fmt --all sweep

⚙️ Miscellaneous Tasks

  • Allow manual trigger of release workflow on existing tag

[0.4.54] - 2026-05-03

🚀 Features

  • Ship CLI v1 — compose journeys, mutation coherence, IMAP UIDPLUS safety

💼 Other

  • Prepare mxr 0.4.54

📚 Documentation

  • Add A010 — CLI v1 ship gate addendum

[0.4.53] - 2026-05-03

💼 Other

  • Prepare mxr 0.4.53

[0.4.52] - 2026-05-02

💼 Other

  • Prepare mxr 0.4.52

⚙️ Miscellaneous Tasks

  • Update release action runtime
  • Refresh auxiliary lockfiles [skip ci]

[0.4.51] - 2026-05-01

🚀 Features

  • [] add debug action trace

🐛 Bug Fixes

  • Update rustls webpki advisory
  • [] satisfy validation lint fixes

💼 Other

  • Bump to 0.4.51

🚜 Refactor

  • [] compose TUI app state

⚙️ Miscellaneous Tasks

  • Update actions node runtime
  • Update actions node runtime
  • Gate expensive checks

[0.4.50] - 2026-05-01

🐛 Bug Fixes

  • Isolate account mutations

[0.4.49] - 2026-04-23

🚜 Refactor

  • Improve smart pointer usage

[0.4.48] - 2026-04-22

🐛 Bug Fixes

  • Polish desktop workflows

[0.4.47] - 2026-04-22

🐛 Bug Fixes

  • Complete desktop mail parity

[0.4.46] - 2026-04-21

🐛 Bug Fixes

  • Recover broken daemon sockets

[0.4.45] - 2026-04-21

🐛 Bug Fixes

  • Unify search message view behavior

[0.4.44] - 2026-04-21

🐛 Bug Fixes

  • Clarify message view states

[0.4.43] - 2026-04-21

🐛 Bug Fixes

  • Replace macos keychain items during repair

[0.4.42] - 2026-04-21

🐛 Bug Fixes

  • Avoid keychain prompts and recover message bodies

[0.4.41] - 2026-04-20

🐛 Bug Fixes

  • Rehydrate missing bodies and render non-text mail

[0.4.40] - 2026-04-20

🐛 Bug Fixes

  • Cache browser-open files

[0.4.39] - 2026-04-20

🐛 Bug Fixes

  • Restore browser open flow

[0.4.38] - 2026-04-20

🐛 Bug Fixes

  • Cache provider secrets and restore tui shortcuts

[0.4.37] - 2026-04-20

🚜 Refactor

  • Harden async runtime paths

[0.4.36] - 2026-04-01

🐛 Bug Fixes

  • Prioritize file attachments in attachment modal

[0.4.35] - 2026-04-01

🐛 Bug Fixes

  • Support draft-first compose flow

💼 Other

  • Block compromised axios versions in dependabot

[0.4.34] - 2026-03-31

🐛 Bug Fixes

  • Make search results behave like mailbox

[0.4.33] - 2026-03-30

🚀 Features

  • Add config-inclusive reset mode

[0.4.32] - 2026-03-30

⚙️ Miscellaneous Tasks

  • Fix desktop release manifest packaging

[0.4.31] - 2026-03-30

⚙️ Miscellaneous Tasks

  • Fix desktop release lockfile

[0.4.30] - 2026-03-30

🚀 Features

  • [] refresh desktop workbench shell
  • [] harden semantic ingest lifecycle
  • Add safe local-state reset command

🐛 Bug Fixes

  • [] reconcile folder mutations
  • [] clean rebase fallout
  • [] tighten semantic search pipeline
  • [] scope sync command by account

💼 Other

  • [] fix docs site loading

🚜 Refactor

  • [] formalize IPC buckets
  • [] make workspace boundaries real

📚 Documentation

  • [] align IPC docs
  • [] update site architecture
  • [] document provider truth seams
  • [] update semantic search docs
  • [] document sync and search lifecycle

⚙️ Miscellaneous Tasks

  • Unblock dependabot auto-merge
  • [] clean runtime clippy warnings
  • [] clean client clippy warnings

[0.4.29] - 2026-03-27

🚀 Features

  • [] harden mailbox html rendering

🐛 Bug Fixes

  • [] resolve label refs for mutations

💼 Other

  • V0.4.29

📚 Documentation

  • [] rewrite docs landing copy

🧪 Testing

  • Enforce idiomatic rust test quality

[0.4.28] - 2026-03-26

💼 Other

  • V0.4.28

[0.4.27] - 2026-03-25

🐛 Bug Fixes

  • Load accounts at startup for sidebar account switcher

[0.4.26] - 2026-03-25

🐛 Bug Fixes

  • Multi-account UX, sidebar jump, search multi-select

[0.4.25] - 2026-03-25

🚀 Features

  • Add scrollable account test details modal in TUI
  • Add config edit/get/set CLI commands

🐛 Bug Fixes

  • Sanitize IMAP protocol parse errors for end users
  • Gracefully handle missing providers instead of panicking
  • Pass Gmail OAuth secrets to release build steps
  • Render onboarding modal globally and surface sync errors

📚 Documentation

  • Expand Gmail setup guide with full walkthrough

⚙️ Miscellaneous Tasks

  • Bump version to 0.4.25

[0.4.24] - 2026-03-24

🐛 Bug Fixes

  • Publish vendored async-imap before mxr release

[0.4.23] - 2026-03-24

🚀 Features

  • Improve tui help and account setup

📚 Documentation

  • Align docs and harden site build

[0.4.22] - 2026-03-24

🐛 Bug Fixes

  • Release v0.4.22 publish gate

[0.4.21] - 2026-03-24

🐛 Bug Fixes

  • Release v0.4.21 cli scope

[0.4.20] - 2026-03-24

🐛 Bug Fixes

  • Release v0.4.20 artifact scope

[0.4.19] - 2026-03-24

🐛 Bug Fixes

  • Release v0.4.19 workflow outputs

[0.4.18] - 2026-03-24

🚀 Features

  • Refresh tui ux

🐛 Bug Fixes

  • Align lockfile with v0.4.17 publish

⚙️ Miscellaneous Tasks

  • Release v0.4.18

[0.4.17] - 2026-03-24

🐛 Bug Fixes

  • Collapse mxr into a single publishable package

⚙️ Miscellaneous Tasks

  • Skip release-please for non-shippable changes
  • (main) Release 0.4.17

[0.4.16] - 2026-03-23

🐛 Bug Fixes

  • Make release-please handle workspace crates

⚙️ Miscellaneous Tasks

  • Target workspace versions explicitly for release-please
  • Use simple releaser for workspace versioning
  • Stop running CI on main pushes
  • Skip untouched release artifacts
  • Limit macos releases to desktop changes
  • Generate release matrix from change scope
  • Gate desktop packaging on desktop changes
  • (main) Release 0.4.16

[0.4.15] - 2026-03-23

🐛 Bug Fixes

  • Stabilize tui archive selection and search results
  • Restore release version sync

⚙️ Miscellaneous Tasks

  • Release 0.4.15

[0.4.14] - 2026-03-23

🐛 Bug Fixes

  • Release 0.4.14 publish mxr-web

[0.4.13] - 2026-03-23

🚀 Features

  • [] add daemon web bridge
  • [] add desktop shell for mxr
  • [] expand bridge and tui parity
  • [] finish desktop workbench
  • [] tighten desktop tui parity

🐛 Bug Fixes

  • Stabilize daemon startup
  • [] avoid envelope id decode panic
  • [] route search escape to inbox
  • Release 0.4.13 search recovery

🧪 Testing

  • [] fix mxr-web default limit fixtures

⚙️ Miscellaneous Tasks

  • [] package desktop app in release

[0.4.12] - 2026-03-23

🐛 Bug Fixes

  • Improve tui interaction recovery
  • Release 0.4.12 tui contrast recovery

[0.4.11] - 2026-03-22

🚀 Features

  • Persistent search workspace

[0.4.10] - 2026-03-22

🐛 Bug Fixes

  • Release 0.4.10 search tab hydration

[0.4.9] - 2026-03-22

🐛 Bug Fixes

  • Release 0.4.9 search and diagnostics recovery

[0.4.8] - 2026-03-22

🐛 Bug Fixes

  • Release 0.4.8 publish sync

[0.4.7] - 2026-03-22

🐛 Bug Fixes

  • Release 0.4.7 mailbox polish

[0.4.6] - 2026-03-22

🐛 Bug Fixes

  • Release 0.4.6 gmail stale cursor recovery

[0.4.5] - 2026-03-21

🐛 Bug Fixes

  • Release 0.4.5 daemon startup recovery

[0.4.4] - 2026-03-21

🐛 Bug Fixes

  • Unblock crates publish for 0.4.4

[0.4.3] - 2026-03-21

🚀 Features

  • Ship semantic search and diagnostics overhaul

[0.4.2] - 2026-03-21

🐛 Bug Fixes

  • Repair 0.4.2 release

[0.4.1] - 2026-03-21

🐛 Bug Fixes

  • Repair 0.4.1 release

[0.4.0] - 2026-03-21

🚀 Features

  • Add hybrid semantic search

🐛 Bug Fixes

  • Unblock crates publish
  • Make crates publish rerunnable
  • Tolerate duplicate crate publishes
  • Remove redundant crates wait
  • Package sqlx metadata with mxr-store
  • Publish test support before readers
  • Retry crates publish on rate limits
  • Wait for crates index propagation

⚙️ Miscellaneous Tasks

  • Prepare v0.4.0 release

[0.3.1] - 2026-03-21

🚀 Features

  • Ship subscriptions mailbox

🐛 Bug Fixes

  • Render complete homebrew formulas
  • Harden crates publish path

[0.3.0] - 2026-03-21

🚀 Features

  • Ship local-first docs and mutation history

[0.2.0] - 2026-03-20

🚀 Features

  • (tui) Add centralized theme system, remove all hardcoded colors
  • (tui) Complete UI overhaul phases 2-10
  • (tui) Highlight URLs in message body with blue underline
  • (tui) Add URL picker modal (L key) with labeled links
  • TUI polish, theme presets, snapshot tests, and remaining work

🐛 Bug Fixes

  • (tui) Clean up deprecated method and dead code warnings
  • (tui) Restore line numbers in mail list

📚 Documentation

  • Humanize all copy, update install to cargo install mxr

⚙️ Miscellaneous Tasks

  • Bump to v0.2.0

[0.1.2] - 2026-03-20

🐛 Bug Fixes

  • Publish async-imap fork as mxr-async-imap, make all crates publishable

[0.1.1] - 2026-03-20

🐛 Bug Fixes

  • Enable cargo install mxr via crates.io

📚 Documentation

  • Update install instructions — all methods now live

⚙️ Miscellaneous Tasks

  • Bump version to 0.1.1

[0.1.0] - 2026-03-20

🚀 Features

  • Implement mxr-core types, provider traits, and error types
  • Implement mxr-store with SQLite persistence
  • Implement mxr-search with Tantivy BM25 indexing
  • Implement mxr-protocol with IPC codec and command types
  • Implement fake provider for testing
  • Implement sync engine orchestrating providers, store, and search
  • Implement daemon with Unix socket server and background sync
  • Implement TUI client with ratatui
  • Implement IMAP provider with session management and UID polling
  • Implement Gmail provider with OAuth2 and delta sync
  • Implement SMTP send provider via lettre
  • Implement config system with TOML resolution and defaults
  • Implement compose workflow with YAML frontmatter and $EDITOR
  • Implement reader mode with HTML-to-text pipeline
  • Expand core types and protocol for Phase 2
  • Expand store with full CRUD, label counts, and body caching
  • Enhance search with AST parser, saved searches, and body indexing
  • Add threading algorithm, body prefetch, and backfill to sync
  • Implement full CLI surface and expand daemon handler
  • Enhance TUI with keybindings, command palette, and message view
  • Replace lazy body hydration with eager fetch in core types
  • Update IPC protocol for eager body fetch and server drafts
  • Eager body fetch in sync engine, apply delta label changes
  • Adapt all providers to eager body fetch
  • Add compose picker, send confirmation, and instant body display
  • Add landing page with marketing copy and custom styling
  • Overhaul landing page, README, and docs
  • Terminal-native design overhaul, fix crates.io readme

🐛 Bug Fixes

  • Debounce body fetches during rapid scrolling in ThreePane mode
  • Switch Linux release targets from musl to gnu (OpenSSL compat)
  • Build Linux x86_64 natively with libssl-dev, skip aarch64-linux for now
  • Correct release archive naming for homebrew compatibility

🚜 Refactor

  • Remove lazy body fetch from store, add contacts query
  • Adapt daemon to eager body fetch
  • Rename mxr-daemon package to mxr for simpler cargo install

📚 Documentation

  • Add blueprint and implementation plans
  • Update implementation plans and add release pipeline blueprint
  • Add documentation site and legal pages
  • Document eager body fetch (D049) and daemon trait boundary
  • Add all documentation content pages
  • Rewrite README with positioning and marketing copy
  • Add IMAP/SMTP setup guide as first-class getting started page
  • Replace pre-built binaries link with from-source until first release
  • Reposition as the universal email CLI, lead with agent-native
  • Expand comparison table with notmuch, meli, and nuanced feature details
  • Add mxr CLI skill for AI agent integration
  • Fix comparison table accuracy after audit
  • Collaborative positioning, fix broken install methods

🧪 Testing

  • Add IMAP provider integration tests
  • Add e2e search integration tests

⚙️ Miscellaneous Tasks

  • Scaffold workspace with CI, licenses, and toolchain config
  • Update workspace deps and project config for Phase 2
  • Add AI editor skills and config
  • Remove windsurf skill symlinks
  • Add release pipeline with auto-versioning
  • Deploy docs to Vercel, fix starlight social config
  • Prepare for v0.1.0 release
  • Add missing adapter-skeleton source and vendored async-imap