v1.19.0

twentyhq/twentyv1.19.0Mar 23, 2026by charlesBochet

AI Summary

This major release (v1.19.0) of Twenty includes significant architectural migrations from Recoil to Jotai and from Emotion to Linaria for styling, along with major security hardening including OAuth improvements, SSRF prevention, and GitHub Actions security fixes. The release also introduces new AI features including AI model pricing with Bedrock provider, visual time picker, and improved navbar with AI chats.

Key Highlights

  • Complete migration from Recoil to Jotai state management and from Emotion to Linaria styling
  • Major security improvements: OAuth RFC compliance with PKCE, SSRF prevention for IMAP/SMTP/CalDAV, and GitHub Actions hardening
  • New AI features: AI model pricing with Bedrock provider, two-layer availability filtering, and AI package upgrade to version six
  • Introduced visual time picker for DateTimePicker and navbar customization with AI chats
  • Refactored view sort to v2 (breaking change) and renamed Command Menu to Side Panel

Breaking Changes

  • View sort refactored to v2 - requires migration of existing view sort configurations
  • Command Menu page/navigation layer renamed to Side Panel - may require updates to custom integrations
  • Morph relations in REST API now require property id suffix
  • Several feature flags removed including sse feature flag and IS_APPLICATION_INSTALLATION_FROM_TARBALL_ENABLED

New Features

  • Add AI model pricing, Bedrock provider, and InferenceProvider/ModelFamily split
  • Add visual time picker to DateTimePicker
  • Add upload file in twenty client
  • Add generate key command and page layout backfill command
  • Add role selector when inviting workspace members
  • Add npm and tarball app distribution with upgrade mechanism
  • Add default relation to standard object on custom object in manifest
  • Support Skill in manifest
  • Remember original URL and redirect after login
  • Unify MCP into single endpoint with lazy tool discovery
  • Add atomic upsertFieldsWidget mutation
  • Add unpin action for records
  • Add two-layer AI model availability filtering
  • OAuth Client with unified ApplicationRegistration, OAuth server, and frontend
  • Wire fields widget to backend with basic edition
  • Introduce conditionalAvailabilityExpression for command menu items
  • Implement page layout override
  • Add standard command menu items
  • Support Quarter as time unit for date filtering
  • Add source to actor fields
  • Add workspace member filter for actor fields
  • Billing for self-hosts
  • Add dataloader and read from cache for view entities

Full Release Notes

## What's Changed
* Fix impossible scroll in sdk app:dev by @charlesBochet in https://github.com/twentyhq/twenty/pull/18051
* Harden server-side input validation and auth defaults by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18018
* Prevent SSRF via IMAP/SMTP/CalDAV by @neo773 in https://github.com/twentyhq/twenty/pull/17973
* Fix website build by @charlesBochet in https://github.com/twentyhq/twenty/pull/18052
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18053
* Improve security settings card grouping and description overflow by @Bonapara in https://github.com/twentyhq/twenty/pull/17928
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18056
* Fix website build by @charlesBochet in https://github.com/twentyhq/twenty/pull/18057
* Messages Message Folder Association by @neo773 in https://github.com/twentyhq/twenty/pull/17398
* Fix website build by @charlesBochet in https://github.com/twentyhq/twenty/pull/18061
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18062
* Migrate dropdown to jotai by @charlesBochet in https://github.com/twentyhq/twenty/pull/18063
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18067
* Bump @xyflow/react from 12.4.2 to 12.10.0 by @dependabot[bot] in https://github.com/twentyhq/twenty/pull/18070
* Bump @emotion/is-prop-valid from 1.3.0 to 1.4.0 by @dependabot[bot] in https://github.com/twentyhq/twenty/pull/18068
* Bump eslint-config-next from 14.2.33 to 14.2.35 by @dependabot[bot] in https://github.com/twentyhq/twenty/pull/18069
* FILES field - Attachment name display fix by @etiennejouan in https://github.com/twentyhq/twenty/pull/18073
* Add objectRecordCounts query to /metadata endpoint by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18054
* Refactor and standardize `isSystem` field and object by @prastoin in https://github.com/twentyhq/twenty/pull/17992
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18079
* fix: remove the error message for test failure in ci-front by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/18076
* Keep migrating to jotai by @charlesBochet in https://github.com/twentyhq/twenty/pull/18064
* Remove non positive integer constraint on Nav Menu Item by @etiennejouan in https://github.com/twentyhq/twenty/pull/18081
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18086
* Refactor message backfill command by @prastoin in https://github.com/twentyhq/twenty/pull/18078
* Migrate more to Jotai by @charlesBochet in https://github.com/twentyhq/twenty/pull/18087
* Factorize and add public-assets/*path endpoint by @martmull in https://github.com/twentyhq/twenty/pull/18080
* Twenty standard app static options id by @prastoin in https://github.com/twentyhq/twenty/pull/18089
* Create LLMS.md on create-twenty-app by @thomtrp in https://github.com/twentyhq/twenty/pull/18091
* Fix google compose scope not gated by feature flag by @Weiko in https://github.com/twentyhq/twenty/pull/18093
* Remove non positive integer constraint on Nav Menu Item 2/2 by @etiennejouan in https://github.com/twentyhq/twenty/pull/18090
* [FRONT COMPONENTS] Declare command menu items in front components by @bosiraphael in https://github.com/twentyhq/twenty/pull/18047
* Fix: add a new style to the target text box by @bugisthegod in https://github.com/twentyhq/twenty/pull/18065
* chore: upgrade @swc/core to 1.15.11 and align SWC ecosystem by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18088
* Rework types for logic function by @charlesBochet in https://github.com/twentyhq/twenty/pull/18074
* Add page layout backfill command by @Weiko in https://github.com/twentyhq/twenty/pull/18095
* feat: added workspace member filter for actor fields by @abk404 in https://github.com/twentyhq/twenty/pull/16628
* fix: laggy edition of FormNumberFieldInput by @AnkittChauhan in https://github.com/twentyhq/twenty/pull/18011
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18100
* fix: convert metered tier upTo from internal to display credits in listPlans by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18108
* Fix participant matching failing due to updating all columns instead of only changed fields by @neo773 in https://github.com/twentyhq/twenty/pull/18105
* Fix global search for CJK and non-tokenizable text by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18030
* Support `Skill` in manifest by @prastoin in https://github.com/twentyhq/twenty/pull/18092
* Remove sse feature flag by @thomtrp in https://github.com/twentyhq/twenty/pull/18114
* Add default relation to standard object on custom object in manifest  by @martmull in https://github.com/twentyhq/twenty/pull/18033
* Unify MCP into single endpoint with lazy tool discovery by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18113
* fix: hover appearing on not shared for junction relations by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/18058
* Typecheck main sdk by @prastoin in https://github.com/twentyhq/twenty/pull/18124
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18120
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18122
* Fix search edge case with permissions by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18123
* Wire fields widget to backend + basic edition by @Devessier in https://github.com/twentyhq/twenty/pull/17965
* Fix flaky 2FA encryption test for AES-256-CBC wrong-key behavior by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18126
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18127
* [FRONT COMPONENTS] Headless components by @bosiraphael in https://github.com/twentyhq/twenty/pull/18096
* Fix front component cleanup by @bosiraphael in https://github.com/twentyhq/twenty/pull/18132
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18131
* Minor fixes following up Temporal refactor by @lucasbordeau in https://github.com/twentyhq/twenty/pull/18139
* Create view and navigation item on add-object command - to be tested by @thomtrp in https://github.com/twentyhq/twenty/pull/18134
* Add server health check every 2 secs on app:dev by @thomtrp in https://github.com/twentyhq/twenty/pull/18142
* Add upload file in twenty client by @martmull in https://github.com/twentyhq/twenty/pull/18129
* Fix frontComponentHostCommunicationApi is not defined error by @bosiraphael in https://github.com/twentyhq/twenty/pull/18145
* Update README: add E2B logo and improve heading by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18144
* Expose standard universal identifiers by @martmull in https://github.com/twentyhq/twenty/pull/18152
* feat: design the ai-models tab on settings ai page by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/18147
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18146
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18141
* Add AI model pricing, Bedrock provider, and InferenceProvider/ModelFamily split by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18155
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18156
* Change runners temp by @charlesBochet in https://github.com/twentyhq/twenty/pull/18163
* [FRONT COMPONENTS] Add loader to command menu items by @bosiraphael in https://github.com/twentyhq/twenty/pull/18165
* Jotai 12 by @charlesBochet in https://github.com/twentyhq/twenty/pull/18160
* Fix CI by @charlesBochet in https://github.com/twentyhq/twenty/pull/18168
* Billing - Fix by @etiennejouan in https://github.com/twentyhq/twenty/pull/18135
* [FRONT COMPONENTS] Add snackbar to the API by @bosiraphael in https://github.com/twentyhq/twenty/pull/18136
* feat: add atomic `upsertFieldsWidget` mutation to replace multiple view field group/field API calls by @Copilot in https://github.com/twentyhq/twenty/pull/18137
* With RLS predicates on Select, only show possible values in option picker by @Weiko in https://github.com/twentyhq/twenty/pull/18166
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18175
* Add generate key command by @thomtrp in https://github.com/twentyhq/twenty/pull/18171
* Various SDK improvements by @charlesBochet in https://github.com/twentyhq/twenty/pull/18115
* Fix cross app installation by @prastoin in https://github.com/twentyhq/twenty/pull/18151
* fix: use default Apollo client for AI chat file upload by @a827681306 in https://github.com/twentyhq/twenty/pull/18158
* Restore depot by @prastoin in https://github.com/twentyhq/twenty/pull/18179
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18176
* feat: add two-layer AI model availability filtering by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18170
* Change runner from depot-ubuntu-24.04 to ubuntu-latest by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18182
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18183
* Fix ci-server ci by @prastoin in https://github.com/twentyhq/twenty/pull/18180
* Jotai 13 by @charlesBochet in https://github.com/twentyhq/twenty/pull/18178
* Fix: Password validation requires data and hash arguments by @sonarly[bot] in https://github.com/twentyhq/twenty/pull/18189
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18197
* Allow video, audio and iFrame in front components by @bosiraphael in https://github.com/twentyhq/twenty/pull/18200
* Host-remote refresh token implementation by @ehconitin in https://github.com/twentyhq/twenty/pull/18044
* Fix app env var fetching by @Devessier in https://github.com/twentyhq/twenty/pull/18199
* Improve Jotai work by @charlesBochet in https://github.com/twentyhq/twenty/pull/18205
* Rename Jotai state hooks and utilities to consistent Atom-based naming by @charlesBochet in https://github.com/twentyhq/twenty/pull/18209
* Fix twenty zapier by @martmull in https://github.com/twentyhq/twenty/pull/18191
* Fix function logs by @martmull in https://github.com/twentyhq/twenty/pull/18215
* Add manifest integration tests by @martmull in https://github.com/twentyhq/twenty/pull/18203
* Deploy new cli version by @martmull in https://github.com/twentyhq/twenty/pull/18216
* fix: delete orphan favorites before 1.18 migration by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/18219
* Fully deprecate old recoil by @charlesBochet in https://github.com/twentyhq/twenty/pull/18210
* Handle SSE event for View and ViewField by @lucasbordeau in https://github.com/twentyhq/twenty/pull/18218
* fix dashboard duplicate by @ehconitin in https://github.com/twentyhq/twenty/pull/18193
* Resolve involved application ids from API metadata by @prastoin in https://github.com/twentyhq/twenty/pull/18221
* Fix Google API Availability and a edge case by @neo773 in https://github.com/twentyhq/twenty/pull/18150
* Improve create-twenty-app command by @martmull in https://github.com/twentyhq/twenty/pull/18226
* [FRONT COMPONENTS] Serialize relation between widget and front component by @bosiraphael in https://github.com/twentyhq/twenty/pull/18228
* feat: upgrade ai package to version six and the corresponding @ai-sdk/* packages to compatible versions by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/18172
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18231
* Fix bugs tied to jotai migration by @charlesBochet in https://github.com/twentyhq/twenty/pull/18227
* Fix jwt auth guard for application by @prastoin in https://github.com/twentyhq/twenty/pull/18234
* Fix front comp build/run order to be processed before dependent entities by @prastoin in https://github.com/twentyhq/twenty/pull/18232
* logicFunction sourceHandlerPath and builtHandlerPath manifest updates are not saved by @Weiko in https://github.com/twentyhq/twenty/pull/18230
* Fix dropdown scroll by restoring scroll container nesting order by @ehconitin in https://github.com/twentyhq/twenty/pull/18239
* Introduce npx nx mock:generate twenty-front by @charlesBochet in https://github.com/twentyhq/twenty/pull/18237
* introduce metadata api client to twenty sdk by @Weiko in https://github.com/twentyhq/twenty/pull/18233
* fix: fast-xml-parser related dependabot alerts by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/18241
* Update doc for front components by @Devessier in https://github.com/twentyhq/twenty/pull/18196
* Fix page layout widget creation with front component by @etiennejouan in https://github.com/twentyhq/twenty/pull/18242
* Rework atom naming by @charlesBochet in https://github.com/twentyhq/twenty/pull/18240
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18243
* fix: next-mdx-remote related dependabot alerts by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/18244
* Handle ObjectMetadataItem, FieldMetadataItem and NavigationMenuItem with SSE events by @lucasbordeau in https://github.com/twentyhq/twenty/pull/18235
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18245
* Fix twenty-sdk typecheck race condition by @charlesBochet in https://github.com/twentyhq/twenty/pull/18246
* followup 18044 by @ehconitin in https://github.com/twentyhq/twenty/pull/18213
* Fix Jotai state leak in frontend tests causing unbounded memory growth by @charlesBochet in https://github.com/twentyhq/twenty/pull/18249
* Remove any recoil reference from project by @charlesBochet in https://github.com/twentyhq/twenty/pull/18250
* Centralized universal identifier validation on create by @prastoin in https://github.com/twentyhq/twenty/pull/18258
* Add define post isntall logic function by @martmull in https://github.com/twentyhq/twenty/pull/18248
* Bump @sentry/react from 10.27.0 to 10.40.0 by @dependabot[bot] in https://github.com/twentyhq/twenty/pull/18252
* Fix remaining non v4 uuid universal identifier by @prastoin in https://github.com/twentyhq/twenty/pull/18263
* Bump @babel/preset-react from 7.26.3 to 7.28.5 by @dependabot[bot] in https://github.com/twentyhq/twenty/pull/18254
* Allow uuidv5 for universal identifier by @prastoin in https://github.com/twentyhq/twenty/pull/18265
* Add events and properties to video, audio and iFrame by @bosiraphael in https://github.com/twentyhq/twenty/pull/18257
* Bump @emotion/styled from 11.13.0 to 11.14.1 by @dependabot[bot] in https://github.com/twentyhq/twenty/pull/18253
* OAuth Client - Add OAuth propagator by @etiennejouan in https://github.com/twentyhq/twenty/pull/18266
* Improve test tooling by @charlesBochet in https://github.com/twentyhq/twenty/pull/18259
* fix: basic-ftp related dependabot alert by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/18269
* Add Twenty app settings custom app by @Weiko in https://github.com/twentyhq/twenty/pull/18273
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18278
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18274
* Fix ai agent node prompt and variables by @thomtrp in https://github.com/twentyhq/twenty/pull/18275
* Upgrade blocknote dependencies from 0.31.1 to 0.47.0. by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/18207
* fix: upgrade storybook to latest to resolve dependabot alert by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/18285
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18291
* Fix more tests by @charlesBochet in https://github.com/twentyhq/twenty/pull/18287
* Fix empty user id clickhouse by @Devessier in https://github.com/twentyhq/twenty/pull/18238
* Fix more tests 2 by @charlesBochet in https://github.com/twentyhq/twenty/pull/18293
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18295
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18280
* Navbar with AI chats by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/18161
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18300
* Navbar customization v2 by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/18026
* OAuth Client — Unified ApplicationRegistration, OAuth server, and frontend by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18267
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18302
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18306
* A few fixes on table performance by @charlesBochet in https://github.com/twentyhq/twenty/pull/18304
* Migrate twenty ui to linaria by @charlesBochet in https://github.com/twentyhq/twenty/pull/18307
* Fix expression injection in cross-repo GitHub Actions workflow by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18316
* Fix E2E tests broken by redesigned navigation menu by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18315
* Harden GitHub Actions: fix injections, isolate privileged operations to ci-privileged repo by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18318
* Fields widget rename group by @Devessier in https://github.com/twentyhq/twenty/pull/18169
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18321
* Draft emails fix onblur on text input and callout banner component overflow by @neo773 in https://github.com/twentyhq/twenty/pull/18310
* Fix self host application by @martmull in https://github.com/twentyhq/twenty/pull/18292
* OAuth security hardening: RFC compliance, PKCE binding, rate limiting by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18305
* Do not console.log while consoleListener by @martmull in https://github.com/twentyhq/twenty/pull/18322
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18323
* Prevent deletion of il-else branches  by @thomtrp in https://github.com/twentyhq/twenty/pull/18294
* Migrate pagelayout position frontend by @Weiko in https://github.com/twentyhq/twenty/pull/18229
* Refactor chip component hierarchy: AvatarChip → AvatarOrIcon by @charlesBochet in https://github.com/twentyhq/twenty/pull/18313
* chore(twenty-front): migrate small modules from Emotion to Linaria (PR 1/10) by @charlesBochet in https://github.com/twentyhq/twenty/pull/18314
* Fix command menu text/number inputs to commit on blur and cancel cleanly on Escape by @ehconitin in https://github.com/twentyhq/twenty/pull/18283
* feat: introduce role selector when inviting members to a workspace by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/18085
* feat: remember original URL and redirect after login by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18308
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18330
* fix: [Note] Title not filled by default #13838 by @bugisthegod in https://github.com/twentyhq/twenty/pull/18297
* fix: record does not open in side panel after returning from fullscreen by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/17131
* chore(twenty-front): migrate auth, activities, AI, pages and small modules from Emotion to Linaria (PR 2-3/10) by @charlesBochet in https://github.com/twentyhq/twenty/pull/18328
* Composite action: Spawn twenty instance by @prastoin in https://github.com/twentyhq/twenty/pull/18317
* Builder runs delete update and then create by @prastoin in https://github.com/twentyhq/twenty/pull/18272
* Fix name singular updates in dev mode by @martmull in https://github.com/twentyhq/twenty/pull/18339
* OAuth Edge case crash + cleanup by @neo773 in https://github.com/twentyhq/twenty/pull/18326
* SDK Split command and cli logic by @prastoin in https://github.com/twentyhq/twenty/pull/18320
* [SDK] Make public-operations non throw by @prastoin in https://github.com/twentyhq/twenty/pull/18343
* Migrate CI runners from Depot back to GitHub-hosted runners by @charlesBochet in https://github.com/twentyhq/twenty/pull/18347
* Workflow iterator continues on faillure by @thomtrp in https://github.com/twentyhq/twenty/pull/18325
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18349
* Fix trigger missing by @martmull in https://github.com/twentyhq/twenty/pull/18348
* Apollo enrich by @etiennejouan in https://github.com/twentyhq/twenty/pull/18277
* Fix missing omit in application config by @martmull in https://github.com/twentyhq/twenty/pull/18354
* chore(twenty-front): migrate command-menu, workflow, page-layout and UI modules from Emotion to Linaria (PR 4-6/10) by @charlesBochet in https://github.com/twentyhq/twenty/pull/18342
* `[SDK]` Execute logic function e2e test by @prastoin in https://github.com/twentyhq/twenty/pull/18351
* Remove files by @prastoin in https://github.com/twentyhq/twenty/pull/18360
* Complete linaria migration by @charlesBochet in https://github.com/twentyhq/twenty/pull/18361
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18368
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18370
* fix: upgrade nestjs dependencies to upgrade multer transitive import by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/18374
* fix: rollup 4 has arbitrary file write via path traversal by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/18373
* fix: fast-xml-parser has stack overflow in XMLBuilder with preserve order by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/18375
* `[CREATE_APP]` Integration testing scaffold by @prastoin in https://github.com/twentyhq/twenty/pull/18345
* Refactor modal by @charlesBochet in https://github.com/twentyhq/twenty/pull/18377
* Support ungrouped fields + improve edition UX by @Devessier in https://github.com/twentyhq/twenty/pull/18224
* followup: centralize widget common properties and add widget bulk update integration tests by @ehconitin in https://github.com/twentyhq/twenty/pull/18225
* Common API - Filter validation layer by @etiennejouan in https://github.com/twentyhq/twenty/pull/18187
* `[BREAKING_CHANGE_VIEW_SORT]` Refactor view sort to v2 by @BOHEUS in https://github.com/twentyhq/twenty/pull/17609
* Tt call recording app by @prastoin in https://github.com/twentyhq/twenty/pull/18281
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18380
* fix: use ForbiddenException in DevelopmentGuard to prevent Sentry noise by @ehconitin in https://github.com/twentyhq/twenty/pull/18378
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18383
* Replace align-center with padding by @thomtrp in https://github.com/twentyhq/twenty/pull/18384
* [FRONT COMPONENTS] Introduce conditionalAvailabilityExpression to command menu items by @bosiraphael in https://github.com/twentyhq/twenty/pull/18319
* Increase size of input in test setting logic function tab by @martmull in https://github.com/twentyhq/twenty/pull/18369
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18387
* [DevXP] Improve Linaria pre-build speed by @charlesBochet in https://github.com/twentyhq/twenty/pull/18382
* Enable password reset from app.twenty.com with workspace fallback by @Bonapara in https://github.com/twentyhq/twenty/pull/18271
* Navbar AI chats followup by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/18336
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18388
* Fix invalid universal identifier format command cache flush by @prastoin in https://github.com/twentyhq/twenty/pull/18385
* Improve workflow perfs by @thomtrp in https://github.com/twentyhq/twenty/pull/18376
* fix google signup edge case by @neo773 in https://github.com/twentyhq/twenty/pull/18365
* [DevXP] Simplify twenty-ui theme system: replace auto-generated files with static CSS variables by @charlesBochet in https://github.com/twentyhq/twenty/pull/18389
* File storage cleaning by @etiennejouan in https://github.com/twentyhq/twenty/pull/18381
* fix: minimatch related dependabot alerts by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/18396
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18398
* Bump @dagrejs/dagre from 1.1.3 to 1.1.8 by @dependabot[bot] in https://github.com/twentyhq/twenty/pull/18409
* Bump @blocknote/server-util from 0.47.0 to 0.47.1 by @dependabot[bot] in https://github.com/twentyhq/twenty/pull/18408
* feat: upgrade nx to latest by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/18404
* Bump @clickhouse/client from 1.11.0 to 1.18.1 by @dependabot[bot] in https://github.com/twentyhq/twenty/pull/18410
* feat: add npm and tarball app distribution with upgrade mechanism by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18358
* Headless action modal by @ehconitin in https://github.com/twentyhq/twenty/pull/18270
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18415
* Update Command Menu Item entity by @bosiraphael in https://github.com/twentyhq/twenty/pull/18391
* Stop catching all workflow errors by @thomtrp in https://github.com/twentyhq/twenty/pull/18392
* AI tools to create a demo workspace by @lucasbordeau in https://github.com/twentyhq/twenty/pull/18236
* fix: SVGO DoS through entity expansion in DOCTYPE by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/18416
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18419
* Set widget position's type according to parent tab by @Devessier in https://github.com/twentyhq/twenty/pull/18411
* Added SSE effect for view relations objects by @lucasbordeau in https://github.com/twentyhq/twenty/pull/18386
* Remove unecessary queries for aggregate by @charlesBochet in https://github.com/twentyhq/twenty/pull/18421
* Only update value at creation by @martmull in https://github.com/twentyhq/twenty/pull/18350
* Fix missing test input values by @martmull in https://github.com/twentyhq/twenty/pull/18424
* Deprecate runtime theme objects in favor of CSS variables by @charlesBochet in https://github.com/twentyhq/twenty/pull/18402
* Fix server logs leak by @prastoin in https://github.com/twentyhq/twenty/pull/18423
* refactor!: rename Command Menu page/navigation layer to Side Panel by @ehconitin in https://github.com/twentyhq/twenty/pull/18393
* Improve workspace auth context surface by @Weiko in https://github.com/twentyhq/twenty/pull/18164
* `[SDK]` Pure ESM by @prastoin in https://github.com/twentyhq/twenty/pull/18427
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18429
* fix: composite field sub-menu not showing in advanced filter by @bugisthegod in https://github.com/twentyhq/twenty/pull/18395
* Backfill record page layouts for custom objects by @Devessier in https://github.com/twentyhq/twenty/pull/18428
* Add ESLint rules to disallow jotaiStore and direct atomFamily usage in selectors by @lucasbordeau in https://github.com/twentyhq/twenty/pull/18422
* Remove all styled(Component) patterns in favor of parent wrappers and props by @charlesBochet in https://github.com/twentyhq/twenty/pull/18430
* chore(front): remove vite-plugin-checker background TS/ESLint checks by @charlesBochet in https://github.com/twentyhq/twenty/pull/18437
* Removed z-index dynamic logic for table by @lucasbordeau in https://github.com/twentyhq/twenty/pull/18436
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18440
* feat: create specialized component for header by @Devessier in https://github.com/twentyhq/twenty/pull/18438
* fix blocklist by @neo773 in https://github.com/twentyhq/twenty/pull/18332
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18442
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18445
* fix: vertical alignment of +N More tab overflow button by @charlesBochet in https://github.com/twentyhq/twenty/pull/18446
* Fix Workflow layout show page by @charlesBochet in https://github.com/twentyhq/twenty/pull/18447
* fix: remove add record on workflow runs/versions by @charlesBochet in https://github.com/twentyhq/twenty/pull/18448
* Migrate from ESLint to OxLint by @charlesBochet in https://github.com/twentyhq/twenty/pull/18443
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18450
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18451
* Refactor application module architecture for clarity and explicitness by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18432
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18452
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18454
* Fixed scrollbar height issue in Kanban view and adjusted the calendar view to adjust with the new change by @Lakshayyy-m in https://github.com/twentyhq/twenty/pull/18367
* Improve build performance 2x by @charlesBochet in https://github.com/twentyhq/twenty/pull/18449
* Fix workflow nodes color in dark mode by @bugisthegod in https://github.com/twentyhq/twenty/pull/18456
* fix server production build by @Weiko in https://github.com/twentyhq/twenty/pull/18458
* Optimize merge queue to only run E2E and integrate prettier into lint by @charlesBochet in https://github.com/twentyhq/twenty/pull/18459
* Allow users to set where new fields must be created in a record page layout by @Devessier in https://github.com/twentyhq/twenty/pull/18420
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18462
* Bug fixes batch by @thomtrp in https://github.com/twentyhq/twenty/pull/18457
* fix: enforce the user to pass in property with id suffix for morph relations in Rest API by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/18335
* Re-enable disabled lint rules and right-size CI runners by @charlesBochet in https://github.com/twentyhq/twenty/pull/18461
* Add default viewField when creating object by @martmull in https://github.com/twentyhq/twenty/pull/18441
* fix: handle Escape in date/datetime pickers and remove ValidationStep any by @kiannidev in https://github.com/twentyhq/twenty/pull/18107
* [Fix] : Dragged element is considered to be part of a dropdown in dashboard tab list by @carbonFibreCode in https://github.com/twentyhq/twenty/pull/18414
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18464
* fix: morph relation persist uses wrong foreign key naming, producing invalid field parentObjectId. by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/18352
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18468
* Added record filter hidden fields in query by @lucasbordeau in https://github.com/twentyhq/twenty/pull/18149
* Add twenty/folder-structure custom oxlint rule by @charlesBochet in https://github.com/twentyhq/twenty/pull/18467
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18474
* Fix app:dev CLI by removing deleted createOneApplication mutation by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18460
* Navbar drag drop using dnd kit by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/18288
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18475
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18494
* Make all widgets of record page layouts non-editable except Fields widgets by @Devessier in https://github.com/twentyhq/twenty/pull/18471
* `[SDK]` Agent in manifest by @prastoin in https://github.com/twentyhq/twenty/pull/18431
* refactor(command-menu-item): rename Actions to CommandMenuItem by @ehconitin in https://github.com/twentyhq/twenty/pull/18489
* Fix wrong type usage by @martmull in https://github.com/twentyhq/twenty/pull/18499
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18498
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18496
* ci: replace 4-core runners with ubuntu-latest by @charlesBochet in https://github.com/twentyhq/twenty/pull/18503
* Fix empty record index page by @thomtrp in https://github.com/twentyhq/twenty/pull/18500
* `[SDK]` Refactor clients by @prastoin in https://github.com/twentyhq/twenty/pull/18433
* fix: throw clear error on invalid LOG_LEVELS by @Felipeness in https://github.com/twentyhq/twenty/pull/18495
* feat: unpin action by @Devessier in https://github.com/twentyhq/twenty/pull/18505
* Implement page layout override by @Weiko in https://github.com/twentyhq/twenty/pull/18472
* Add draft message persistence for AI chat threads by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/18371
* Docs: restructure Extend section with API, Webhooks, and Apps pages by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18517
* Add doc on standard object u ids by @martmull in https://github.com/twentyhq/twenty/pull/18519
* `[CREATE_APP]` Generate basic CI workflow by @prastoin in https://github.com/twentyhq/twenty/pull/18511
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18508
* Remove IS_APPLICATION_INSTALLATION_FROM_TARBALL_ENABLED feature flag by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18520
* Improve SSRF IP validation and add protocol allowlist by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18518
* Fix task rows by @thomtrp in https://github.com/twentyhq/twenty/pull/18522
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18528
* [Feat] : add source to actor fields by @carbonFibreCode in https://github.com/twentyhq/twenty/pull/18118
* Cancel in progress only if different event than merge by @thomtrp in https://github.com/twentyhq/twenty/pull/18530
* Design fixes batch post linaria migration by @thomtrp in https://github.com/twentyhq/twenty/pull/18509
* Table refactor : removed z-index dynamic logic completely and flex-wrap by @lucasbordeau in https://github.com/twentyhq/twenty/pull/18466
* feat: add visual time picker to DateTimePicker (#15057) by @bugisthegod in https://github.com/twentyhq/twenty/pull/17952
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18532
* Update front components documentation by @bosiraphael in https://github.com/twentyhq/twenty/pull/18521
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18534
* Fix permission settings page by @thomtrp in https://github.com/twentyhq/twenty/pull/18535
* Create fake hidden fields group by @Devessier in https://github.com/twentyhq/twenty/pull/18525
* Fix linaria css regressions by @neo773 in https://github.com/twentyhq/twenty/pull/18492
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18537
* fix: validate input before formatting in MultiItemFieldInput by @neo773 in https://github.com/twentyhq/twenty/pull/18334
* Move fixture apps from twenty-sdk to twenty-apps/fixtures by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18531
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18541
* feat : Added "Quarter" as a time unity to filter on date by @carbonFibreCode in https://github.com/twentyhq/twenty/pull/18289
* Fix add more tab bottom separator by @thomtrp in https://github.com/twentyhq/twenty/pull/18529
* fix: respect number format in currency input by @kiannidev in https://github.com/twentyhq/twenty/pull/18469
* Add standard command menu items by @bosiraphael in https://github.com/twentyhq/twenty/pull/18527
* small ai chat fix by @Bonapara in https://github.com/twentyhq/twenty/pull/18547
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18546
* Fix form field select + form field number by @thomtrp in https://github.com/twentyhq/twenty/pull/18538
* Improve apps settings UI and remove unused tarball upload code by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18549
* Navigate to page when clicking nav item in edit mode by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/18526
* Replace newFieldDefaultConfiguration with newFieldDefaultVisibility by @Devessier in https://github.com/twentyhq/twenty/pull/18539
* Fix navigation drag drop indicator position by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/18515
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18553
* Add system view fallback by @Weiko in https://github.com/twentyhq/twenty/pull/18536
* Backfill standard views command by @Weiko in https://github.com/twentyhq/twenty/pull/18540
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18555
* fix standard app for server build by @Weiko in https://github.com/twentyhq/twenty/pull/18558
* Separate code pathways for IS_COMMAND_MENU_ITEM_ENABLED flag by @ehconitin in https://github.com/twentyhq/twenty/pull/18542
* Add common loader by @thomtrp in https://github.com/twentyhq/twenty/pull/18556
* Run vulnerable operation in isolated environment by @martmull in https://github.com/twentyhq/twenty/pull/18523
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18557
* Add standard front component ci by @bosiraphael in https://github.com/twentyhq/twenty/pull/18560
* Create twenty app e2e test ci by @prastoin in https://github.com/twentyhq/twenty/pull/18497
* feat: default code interpreter and logic function to Disabled in production by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18559
* Fix breadcrumb infinite loop by @thomtrp in https://github.com/twentyhq/twenty/pull/18561
* Fix dashboard creation + role permission page design by @thomtrp in https://github.com/twentyhq/twenty/pull/18565
* Fix new navbar item position after reordering existing items by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/18516
* Bump oxlint from 1.51.0 to 1.53.0 by @dependabot[bot] in https://github.com/twentyhq/twenty/pull/18569
* Bump path-to-regexp from 8.2.0 to 8.3.0 by @dependabot[bot] in https://github.com/twentyhq/twenty/pull/18571
* Bump @swc/core from 1.15.11 to 1.15.18 by @dependabot[bot] in https://github.com/twentyhq/twenty/pull/18570
* Refactor dev environment setup with auto-detection and Docker support by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18564
* fix(front): stabilize downloadFile unit test and return promise chain by @hamzafa1d1 in https://github.com/twentyhq/twenty/pull/18484
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18566
* Display a single Add a Section button by @Devessier in https://github.com/twentyhq/twenty/pull/18563
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18576
* Fix PDF Upload edge case by @neo773 in https://github.com/twentyhq/twenty/pull/18533
* Fix app dev flickering by @martmull in https://github.com/twentyhq/twenty/pull/18562
* [COMMAND MENU ITEMS] Add engine component key by @bosiraphael in https://github.com/twentyhq/twenty/pull/18554
* Fix onboarding flow: workspace creation modal and invite team skip by @charlesBochet in https://github.com/twentyhq/twenty/pull/18577
* fix: replace unsafe JSON.parse casts with parseJson in filter dropdowns by @hamzafa1d1 in https://github.com/twentyhq/twenty/pull/18513
* Fix AI demo workspace skill by @lucasbordeau in https://github.com/twentyhq/twenty/pull/18575
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18578
* Create missing standard table and fields widget views by @Weiko in https://github.com/twentyhq/twenty/pull/18543
* Move 1.19 backfill pagelayout and views to 1.20 by @Weiko in https://github.com/twentyhq/twenty/pull/18582
* Hide tabs for system objects by @Weiko in https://github.com/twentyhq/twenty/pull/18583
* Billing for self-hosts by @ijreilly in https://github.com/twentyhq/twenty/pull/18075
* [COMMAND MENU ITEMS] Remove standard front components by @bosiraphael in https://github.com/twentyhq/twenty/pull/18581
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18586
* Fix flaky return-to-path e2e tests by @charlesBochet in https://github.com/twentyhq/twenty/pull/18580
* Update yarn lock by @bosiraphael in https://github.com/twentyhq/twenty/pull/18589
* Bug fix batches by @thomtrp in https://github.com/twentyhq/twenty/pull/18588
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18591
* Fix wrong uuid error by @martmull in https://github.com/twentyhq/twenty/pull/18590
* Side Panel Sub Page Framework® by @Devessier in https://github.com/twentyhq/twenty/pull/18579
* Fix sdk metadata client codegen by @Weiko in https://github.com/twentyhq/twenty/pull/18599
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/18595
* Fix Flow tab missing for workflow run by @Weiko in https://github.com/twentyhq/twenty/pull/18602
* Fix wrong uuid error on field metadata by @charlesBochet in https://github.com/twentyhq/twenty/pull/18598
* Reset selected widget when exiting record page layout edit mode by @Copilot in https://github.com/twentyhq/twenty/pull/18603
* Add dataloader and read from cache for view entities by @Weiko in https://github.com/twentyhq/twenty/pull/18594
* fix: accept production enterprise keys in development environment by @FelixMalfait in https://github.com/twentyhq/twenty/pull/18611
* Re-fetch conditional display property in the frontend by @Devessier in https://github.com/twentyhq/twenty/pull/18601
* Backfill existing workspaces with standard command menu items by @bosiraphael in https://github.com/twentyhq/twenty/pull/18596
* Separate create draft cases op by @thomtrp in https://github.com/twentyhq/twenty/pull/18613
* Bring back relations notes tasks targets by @Devessier in https://github.com/twentyhq/twenty/pull/18600
* Fix app install file upload by @martmull in https://github.com/twentyhq/twenty/pull/18593
* fix: split tsvector migration, add configurable DB timeout, reorder 1.19 commands by @charlesBochet in https://github.com/twentyhq/twenty/pull/18614

## New Contributors
* @AnkittChauhan made their first contribution in https://github.com/twentyhq/twenty/pull/18011
* @a827681306 made their first contribution in https://github.com/twentyhq/twenty/pull/18158
* @Felipeness made their first contribution in https://github.com/twentyhq/twenty/pull/18495
* @hamzafa1d1 made their first contribution in https://github.com/twentyhq/twenty/pull/18484

**Full Changelog**: https://github.com/twentyhq/twenty/compare/v1.18.0...v1.19.0