v2026.8.10.0

macro-inc/macrov2026.8.10.0Aug 10, 2026by synoet

AI Summary

A major release introducing the Gateway architecture, a comprehensive Reminders integration, and a complete overhaul of the Calendar UI across mobile and desktop platforms.

Key Highlights

  • Implemented the Gateway architecture for microservices
  • Integrated Reminders with schema, API, and Soup view (Active/Scheduled/Done)
  • Redesigned Calendar UI for both mobile and desktop
  • Added Stripe payment bot

New Features

  • Gateway implementation
  • Reminders schema, API, SQS dispatch, and UI integration
  • Calendar Event details UI overhaul
  • Custom properties UI
  • GraphQL lazy hydration for email messages
  • Notification GraphQL mutations
  • AI skills: Catch Me Up and What I Did Yesterday
  • Skills functionality

Full Release Notes

## What's Changed
* feat(calendar): Event details ui changes by @dev-rb in https://github.com/macro-inc/macro/pull/5460
* feat(properties): custom properties ui by @sedson in https://github.com/macro-inc/macro/pull/5457
* feat(email): email optimize attachments and backfill by @whutchinson98 in https://github.com/macro-inc/macro/pull/5448
* feat(call): remove call transcript diarized speaker id by @whutchinson98 in https://github.com/macro-inc/macro/pull/5466
* fix(github): pr comment threading by @whutchinson98 in https://github.com/macro-inc/macro/pull/5468
* chg(sidebar): rename channels widget -> latest, add unread toggle by @sedson in https://github.com/macro-inc/macro/pull/5469
* fix(channels): broadcast message edits to channel participants by @synoet in https://github.com/macro-inc/macro/pull/5458
* feat(ci): restore a nix binary cache substituter via private S3 by @synoet in https://github.com/macro-inc/macro/pull/5450
* feat(graphql): lazily hydrate full email message edges by @seanaye in https://github.com/macro-inc/macro/pull/5470
* feat(graphql): lazily load email thread metadata by @seanaye in https://github.com/macro-inc/macro/pull/5473
* feat(bots): add Stripe payment bot by @synoet in https://github.com/macro-inc/macro/pull/5375
* chore: remove dead infra code by @whutchinson98 in https://github.com/macro-inc/macro/pull/5474
* feat(infra): gateway by @whutchinson98 in https://github.com/macro-inc/macro/pull/5476
* fix(email): skip no-op email_links sync-status updates by @whutchinson98 in https://github.com/macro-inc/macro/pull/5489
* feat(db): add new index to support email link deletion for calendar events by @whutchinson98 in https://github.com/macro-inc/macro/pull/5491
* feat(search): backfill emails by thread id by @gbirman in https://github.com/macro-inc/macro/pull/5472
* fix(calendar): stop treating existing events as proof of setup by @gbirman in https://github.com/macro-inc/macro/pull/5480
* feat(notifications): graphql mutations and queries by @dev-rb in https://github.com/macro-inc/macro/pull/5479
* fix(documents): guard EditDocument on content location by @gbirman in https://github.com/macro-inc/macro/pull/5459
* chore(notification): move the `skipping invalid notification` log to debug by @whutchinson98 in https://github.com/macro-inc/macro/pull/5494
* feat(calendar): mobile ui by @dev-rb in https://github.com/macro-inc/macro/pull/5482
* refactor(calendar): remove email ICS calendar ingestion by @gbirman in https://github.com/macro-inc/macro/pull/5477
* feat(email): add no-op guard thread upsert by @whutchinson98 in https://github.com/macro-inc/macro/pull/5498
* Seanaye/perf/soup cache by @seanaye in https://github.com/macro-inc/macro/pull/5478
* refactor(calendar): drop the email ICS source model and schema by @gbirman in https://github.com/macro-inc/macro/pull/5483
* fix(soup): graphql item not removed from list on done by @dev-rb in https://github.com/macro-inc/macro/pull/5504
* fix(soup): calendar events not filtered out by @dev-rb in https://github.com/macro-inc/macro/pull/5505
* fix(soup): use google source kind in calendar frecency test by @evanhutnik in https://github.com/macro-inc/macro/pull/5506
* fix(soup): use google source kind in calendar grouping test by @evanhutnik in https://github.com/macro-inc/macro/pull/5508
* feat(reminders): reminders schema, API, and SQS fan-out dispatch by @evanhutnik in https://github.com/macro-inc/macro/pull/5462
* feat(reminders): reminder creation UI by @evanhutnik in https://github.com/macro-inc/macro/pull/5463
* feat(dss): Add in DSS to the gateway by @whutchinson98 in https://github.com/macro-inc/macro/pull/5501
* Enable AI worker OTEL export by @404Wolf in https://github.com/macro-inc/macro/pull/5371
* Seanaye/perf/reduce cache allocations by @seanaye in https://github.com/macro-inc/macro/pull/5492
* feat(reminders): Soup integration and the Reminders view by @evanhutnik in https://github.com/macro-inc/macro/pull/5464
* feat(reminders): split the Soup view into Active, Scheduled and Done by @evanhutnik in https://github.com/macro-inc/macro/pull/5485
* feat(reminders): describe a reminder when creating it by @evanhutnik in https://github.com/macro-inc/macro/pull/5486
* Seanaye/feat/combine mutation dispatch by @seanaye in https://github.com/macro-inc/macro/pull/5500
* fix(soup): exclude the calendar arm from grouped queries when its filter is impossible by @evanhutnik in https://github.com/macro-inc/macro/pull/5513
* fix(soup): wire reminders into the GraphQL soup path by @evanhutnik in https://github.com/macro-inc/macro/pull/5514
* feat(calendar): add user calendar mutations synced to Google by @gbirman in https://github.com/macro-inc/macro/pull/5484
* feat(calendar): push refresh_calendar to viewers after provider syncs by @gbirman in https://github.com/macro-inc/macro/pull/5515
* fix(soup): don't show ask ai input when controller by @synoet in https://github.com/macro-inc/macro/pull/5517
* feat(onboarding): pre-add teammates to the team invite list by @synoet in https://github.com/macro-inc/macro/pull/5522
* chore(db): bump local db version by @whutchinson98 in https://github.com/macro-inc/macro/pull/5520
* Seanaye/feat/optimistic links by @seanaye in https://github.com/macro-inc/macro/pull/5502
* chore(nix): consolidate development shells by @seanaye in https://github.com/macro-inc/macro/pull/5512
* style(ui): dropdown/ctx menu selection style, focus first item on open by @sedson in https://github.com/macro-inc/macro/pull/5525
* fix(calls): call tooltips by @whutchinson98 in https://github.com/macro-inc/macro/pull/5526
* feat: skills by @ehayes2000 in https://github.com/macro-inc/macro/pull/5327
* add schema-typed GraphQL cache entity resolvers by @seanaye in https://github.com/macro-inc/macro/pull/5527
* fix: skip group-by labels in soup arrow/j/k navigation by @peterchinman in https://github.com/macro-inc/macro/pull/5524
* feat(calendar): add period and view navigation hotkeys by @dev-rb in https://github.com/macro-inc/macro/pull/5528
* feat(ci): single deploy_on_push workflow for dev by @whutchinson98 in https://github.com/macro-inc/macro/pull/5532
* feat(email): use graphql for block email by @dev-rb in https://github.com/macro-inc/macro/pull/5499
* fix: align mobile create and views menus to the same order by @peterchinman in https://github.com/macro-inc/macro/pull/5529
* fix(sidebar): show unread channels even when outside the newest 100 by @peterchinman in https://github.com/macro-inc/macro/pull/5538
* fix: truncate block names correctly by @peterchinman in https://github.com/macro-inc/macro/pull/5531
* fix(ci): restore desktop Nix builds by @seanaye in https://github.com/macro-inc/macro/pull/5536
* fix(ui): restore missing icon on the call block's Call Again button by @peterchinman in https://github.com/macro-inc/macro/pull/5537
* fix: open MCP connection auth in the system browser on native apps by @peterchinman in https://github.com/macro-inc/macro/pull/5539
* feat(ai): replace demo system skills with Catch Me Up and What I Did Yesterday by @ehayes2000 in https://github.com/macro-inc/macro/pull/5545
* fix(dynamic-ui): delete the stat and card widgets by @ehayes2000 in https://github.com/macro-inc/macro/pull/5540
* fix(calendar): preserve per-occurrence RSVP state and scope event responses by @gbirman in https://github.com/macro-inc/macro/pull/5533
* fix(calendar): missing css file import by @dev-rb in https://github.com/macro-inc/macro/pull/5548
* fix(ios): auth failures by @peterchinman in https://github.com/macro-inc/macro/pull/5530
* fix(ci): use Apple linker for macOS desktop by @seanaye in https://github.com/macro-inc/macro/pull/5550
* fix desktop app login by @seanaye in https://github.com/macro-inc/macro/pull/5547
* fix(calendar): keep rsvp buttons live during the provider round trip by @gbirman in https://github.com/macro-inc/macro/pull/5534
* fix(md): fix stale user name in property chip by @sedson in https://github.com/macro-inc/macro/pull/5551
* style(launcher): list style create menu with automations and skills by @sedson in https://github.com/macro-inc/macro/pull/5554
* fix(recipient-selector): fix focus lock in recip selector combo box by @sedson in https://github.com/macro-inc/macro/pull/5555
* fix(email): make email body text selectable in Safari by @peterchinman in https://github.com/macro-inc/macro/pull/5556


**Full Changelog**: https://github.com/macro-inc/macro/compare/v2026.8.5.0...v2026.8.10.0