Releases: planetaryescape/mxr
Releases · planetaryescape/mxr
Release list
v0.6.6
[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
[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 unsubscrib...
v0.6.5
[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
[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
- *(...
v0.6.4
[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
[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
- *(deliverie...
v0.6.3
[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
[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 Fi...
v0.6.2
[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
[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-...
v0.6.1
[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 ...
v0.6.0
[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 oversi...
v0.5.63
[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 ...
v0.5.62
[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 ...
v0.5.61
[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 i...