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