✨ New features
- feat(connections): add an onDisconnect lifecycle hook to connection providers (#23538) by @abdulrahmancodes
- feat(workflow): route all version content readers through the flag-aware sources (#23583) by @thomtrp
- feat(server): add role management tools for AI chat (#23613) by @FelixMalfait
- feat(workflow): variable pickers for Search Records limit, offset and date filters (#23696) by @thomtrp
- feat(slack): implement channel welcome message functionality (#23699) by @abdulrahmancodes
💅 Improvements & UX
- Add captcha and throttling to the password reset link (#23372) by @bosiraphael
- Keep leading + when filtering phones by calling code (#23546) by @thomtrp
- Fix record title cell reopening on every page refresh (#23551) by @avonian
- Messaging archived account fix (#23553) by @BOHEUS
- Replace last-contact backfill with cursor-paginated per-record backfills (#23582) by @martmull
- Use the fast model for the onboarding setup chat (#23586) by @bosiraphael
- Improve the workspace setup kickoff prompt (#23594) by @bosiraphael
- Fix calendar field picker state handling (#23595) by @Weiko
- Make page layout tab layoutMode diffable and default standalone pages to vertical list (#23596) by @bosiraphael
- v1.6.1 — fix(partners): scope Application RLS to the partner's own partnerUser (#23597) by @rashad
- v1.6.0 — Partners: let partners set the regions they serve on My Profile (#23605) by @rashad
- Harden Fireflies call synchronization lifecycle (#23610) by @ehconitin
- Unwrap settings front components in the front component build (#23631) by @ehconitin
- Fix TOTP validation ignoring the configured tolerance window (#23632) by @FelixMalfait
- Add a roles standard skill for the AI chat agent (#23636) by @bosiraphael
- Keep chart palette colors stable when series order changes (#23638) by @ehconitin
- Remove shouldRunOnVersionUpgrade (#23641) by @martmull
- Migrate web auth from localStorage token pairs to httpOnly cookie sessions (#23642) by @FelixMalfait
- Fix ReconcileIndexViewUniversalIdentifier failing on occupied derived identifiers (#23647) by @prastoin
- Remove noisy actor context injection logs (#23649) by @Weiko
- Update slack app naming (#23650) by @martmull
- Update record page layout card (#23654) by @Bonapara
- Remove outdated index view pitfall from app agent docs (#23667) by @prastoin
- Docs update - Microsoft integration (#23671) by @BOHEUS
- Record and enforce per-user OAuth application authorizations (#23678) by @FelixMalfait
- Bound an application by its own role as well as the user's (#23680) by @FelixMalfait
- Classify Recall no-capture sub codes as NOT_RECORDED in call-recorder app (#23693) by @ehconitin
- Classify OAuth refresh errors by reason instead of status code (#23705) by @neo773
- Default workspaceMember openRecordIn when the workspace is not upgraded yet (#23723) by @FelixMalfait
🐛 Bug fixes
- fix(ai-chat): show streaming activity during and between steps (#23581) by @etiennejouan
- fix(front): reload record board groups when view groups change (#23637) by @thomtrp
- fix(server): preserve null values in record update util (#23639) by @thomtrp
- fix(server): stop FIND_RECORDS from silently ignoring its filter (#23640) by @thomtrp
- fix: provision INDEX view fields for relations created in the same batch as their object (#23665) by @prastoin
- fix(twenty-front): Scrolling and Dragging conflict on mobile devices (#23677) by @git-init-priyanshu
- fix(server): catch application job enqueue throttle instead of failing the batch job (#23684) by @thomtrp
- fix(server): scope personal favorite SSE events to their owner (#23712) by @thomtrp
- fix(workflow): clear nextStepIds when converting a step to If/Else (#23714) by @thomtrp
🔧 Developer & API
- Filter connected account webhook renewal to exclude accounts with failed authentication errors (#23694) by @neo773
- Track connected account webhook subscription lifecycle metrics (#23710) by @neo773
🏗️ Internal changes (5)
- refactor(navigation-menu-item): validate universal properties instead of ids (#23566) by @prastoin
- docs: fix inaccuracies found auditing the docs against v2.27.0 (#23616) by @FelixMalfait
- test(server): strengthen MCP catalog and gating coverage (#23630) by @FelixMalfait
- refactor(last-contact): drive backfill with enqueued jobs (#23646) by @martmull
- ci(pr-review): dispatch on PR open (standard review only) (#23708) by @charlesBochet
Full changelog (77 PRs)
- Add captcha and throttling to the password reset link (#23372) by @bosiraphael
- feat(connections): add an onDisconnect lifecycle hook to connection providers (#23538) by @abdulrahmancodes
- Keep leading + when filtering phones by calling code (#23546) by @thomtrp
- Fix record title cell reopening on every page refresh (#23551) by @avonian
- Messaging archived account fix (#23553) by @BOHEUS
- refactor(navigation-menu-item): validate universal properties instead of ids (#23566) by @prastoin
- fix(ai-chat): show streaming activity during and between steps (#23581) by @etiennejouan
- Replace last-contact backfill with cursor-paginated per-record backfills (#23582) by @martmull
- feat(workflow): route all version content readers through the flag-aware sources (#23583) by @thomtrp
- Use the fast model for the onboarding setup chat (#23586) by @bosiraphael
- Improve the workspace setup kickoff prompt (#23594) by @bosiraphael
- Fix calendar field picker state handling (#23595) by @Weiko
- Make page layout tab layoutMode diffable and default standalone pages to vertical list (#23596) by @bosiraphael
- v1.6.1 — fix(partners): scope Application RLS to the partner's own partnerUser (#23597) by @rashad
- i18n - translations (#23600) by @github-actions
- i18n - docs translations (#23602) by @github-actions
- i18n - translations (#23603) by @github-actions
- chore: bump version to 2.27.0 (#23604) by @twenty-pr
- v1.6.0 — Partners: let partners set the regions they serve on My Profile (#23605) by @rashad
- i18n - docs translations (#23608) by @github-actions
- Harden Fireflies call synchronization lifecycle (#23610) by @ehconitin
- feat(server): add role management tools for AI chat (#23613) by @FelixMalfait
- Move open-record-in to object metadata and member preference (#23614) by @FelixMalfait
- chore: sync AI model catalog from models.dev (#23615) by @github-actions
- docs: fix inaccuracies found auditing the docs against v2.27.0 (#23616) by @FelixMalfait
- i18n - docs translations (#23618) by @github-actions
- i18n - translations (#23620) by @github-actions
- i18n - translations (#23621) by @github-actions
- i18n - docs translations (#23624) by @github-actions
- test(server): strengthen MCP catalog and gating coverage (#23630) by @FelixMalfait
- Unwrap settings front components in the front component build (#23631) by @ehconitin
- Fix TOTP validation ignoring the configured tolerance window (#23632) by @FelixMalfait
- i18n - translations (#23635) by @github-actions
- Add a roles standard skill for the AI chat agent (#23636) by @bosiraphael
- fix(front): reload record board groups when view groups change (#23637) by @thomtrp
- Keep chart palette colors stable when series order changes (#23638) by @ehconitin
- fix(server): preserve null values in record update util (#23639) by @thomtrp
- fix(server): stop FIND_RECORDS from silently ignoring its filter (#23640) by @thomtrp
- Remove shouldRunOnVersionUpgrade (#23641) by @martmull
- Migrate web auth from localStorage token pairs to httpOnly cookie sessions (#23642) by @FelixMalfait
- refactor(last-contact): drive backfill with enqueued jobs (#23646) by @martmull
- Fix ReconcileIndexViewUniversalIdentifier failing on occupied derived identifiers (#23647) by @prastoin
- Remove noisy actor context injection logs (#23649) by @Weiko
- Update slack app naming (#23650) by @martmull
- i18n - docs translations (#23653) by @github-actions
- Update record page layout card (#23654) by @Bonapara
- i18n - translations (#23659) by @github-actions
- i18n - translations (#23660) by @github-actions
- i18n - docs translations (#23662) by @github-actions
- fix: provision INDEX view fields for relations created in the same batch as their object (#23665) by @prastoin
- chore: sync AI model catalog from models.dev (#23666) by @github-actions
- Remove outdated index view pitfall from app agent docs (#23667) by @prastoin
- i18n - docs translations (#23670) by @github-actions
- Docs update - Microsoft integration (#23671) by @BOHEUS
- fix(twenty-front): Scrolling and Dragging conflict on mobile devices (#23677) by @git-init-priyanshu
- Record and enforce per-user OAuth application authorizations (#23678) by @FelixMalfait
- Bound an application by its own role as well as the user's (#23680) by @FelixMalfait
- chore: sync AI model catalog from models.dev (#23682) by @github-actions
- fix(server): catch application job enqueue throttle instead of failing the batch job (#23684) by @thomtrp
- Classify Recall no-capture sub codes as NOT_RECORDED in call-recorder app (#23693) by @ehconitin
- Filter connected account webhook renewal to exclude accounts with failed authentication errors (#23694) by @neo773
- feat(workflow): variable pickers for Search Records limit, offset and date filters (#23696) by @thomtrp
- i18n - translations (#23698) by @github-actions
- feat(slack): implement channel welcome message functionality (#23699) by @abdulrahmancodes
- i18n - translations (#23700) by @github-actions
- i18n - docs translations (#23701) by @github-actions
- Classify OAuth refresh errors by reason instead of status code (#23705) by @neo773
- ci(pr-review): dispatch on PR open (standard review only) (#23708) by @charlesBochet
- Track connected account webhook subscription lifecycle metrics (#23710) by @neo773
- fix(server): scope personal favorite SSE events to their owner (#23712) by @thomtrp
- i18n - translations (#23713) by @github-actions
- fix(workflow): clear nextStepIds when converting a step to If/Else (#23714) by @thomtrp
- i18n - translations (#23720) by @github-actions
- i18n - docs translations (#23721) by @github-actions
- Default workspaceMember openRecordIn when the workspace is not upgraded yet (#23723) by @FelixMalfait
- i18n - translations (#23728) by @github-actions
- i18n - docs translations (#23729) by @github-actions
Full Changelog: twenty/v2.26.0...twenty/v2.27.0