Features
- feat(scheduled-tasks): pause/resume, mutation toasts, submit guards, empty state (#5044)
- feat(scheduled-tasks): minute-granular calendar + user timezone preference (#5038)
- feat(billing): gate programmatic workflow execution behind a paid plan (#5036)
- feat(hubspot): add notes, emails, properties & associations tools (#5037)
- feat(scheduled-tasks): calendar views + persisted, runnable tasks (#4979)
- feat(blocks): add external-service url to block metadata (#5032)
Improvements
- improvement(settings): right-align timezone picker, order by popularity, drop tooltip (#5043)
- improvement(salesforce): align tools + block with Salesforce API and harden CRUD/analytics (#5040)
- improvement(perms): followup to org scoping of permission groups
- improvement(permissions): permission groups scoped to organization level (#5035)
- improvement(sim-trigger): change execution terminology to run (#5033)
- improvement(react-query): codebase-wide audit — server-state hooks, webhook coherence, resume migration (#5024)
- perf(mothership): virtualize chat transcript and isolate input from stream re-renders (#5019)
Bug Fixes
- fix(chat): fail closed when embed gate cannot resolve workspace (#5046)
- fix(mothership): streaming completion-flash fix + Tavily brand icon (#5030)
- fix(db-part-4): enforce consistent cross-resource lock ordering (#5027)
- fix(chat): escape attachment filename and validate file URL scheme to prevent XSS (#5028)
- fix(skills): reuse shared upload field in skill import modal; logo-only Quartr icon (#5026)
- fix(db): correct misleading error message when DATABASE_REPLICA_URL is malformed (#5023)
- fix(db-part-3): bound cross-request shared promises against pool wedge (#5021)