v1.17.0

twentyhq/twentyv1.17.0Feb 18, 2026by charlesBochet

AI Summary

Feature-rich release with Record Page Layouts enabled by default, webhook v2, logic functions (renamed from serverless), Files v2 with FILES field, and SSE for real-time updates. Major security and performance improvements.

Key Highlights

  • Record Page Layouts enabled by default
  • Webhook v2 with schema changes and actor context for webhooks
  • Logic functions (renamed from serverless functions)
  • Files v2 - FILES field type with filtering and display
  • SSE (Server-Sent Events) for real-time updates

Breaking Changes

  • BREAKING_CHANGE: Deprecate remaining entities standardId
  • Rename serverlessFunction to logicFunction
  • REQUIRES_FULL_CACHE_FLUSH: FlatEntity refactored to UniversalFlatEntity
  • OBJECT_CACHE_FLUSH_REQUIRED: Remove FlatObjectMetadata custom fieldMetadataIds fk aggregator
  • REQUIRES_CACHE_FLUSH_FOR_FIELD_AND_OBJECT: FlatFieldMetadata and FlatObjectMetadata required universal

New Features

  • Prometheus exporter for metrics
  • Front component widget and rendering
  • Twenty SDK 0.5.0 release
  • RLS (Row Level Security) implementation
  • Bulk input mode for select options
  • Claude Code GitHub Workflow integration
  • Apps marketplace (first draft)
  • Custom canvas bar chart for dashboards

Full Release Notes

## What's Changed
* Add prometheus exporter by @thomtrp in https://github.com/twentyhq/twenty/pull/17392
* Fix event logic for soft-delete and restore by @lucasbordeau in https://github.com/twentyhq/twenty/pull/17393
* Change `formatResult` to return string instead of `Date` object for `DATE_TIME` by @lucasbordeau in https://github.com/twentyhq/twenty/pull/17407
* fix(twenty-server): add SSRF protection to webhook requests by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17403
* fix(twenty-server): preserve input order in createMany response by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17412
* fix: refresh virtualized table when field metadata is updated ( #16388 ) by @carbonFibreCode in https://github.com/twentyhq/twenty/pull/17214
* docs: align type import guidelines with ESLint configuration by @kratisinghh in https://github.com/twentyhq/twenty/pull/17275
* Migrate attachments to morph relations + fix morph join column filtering by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17381
* Fix the default value of search record if the filter is boolean type by @araj00 in https://github.com/twentyhq/twenty/pull/17297
* `[Debug log level]` Print validation build result failure by @prastoin in https://github.com/twentyhq/twenty/pull/17423
* feat: fix junction toggle persistence and add type-safe documentation paths by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17421
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17424
* Fix upgrade command order `backfillStandardPageLayoutsCommand` by @prastoin in https://github.com/twentyhq/twenty/pull/17430
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17426
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17433
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17434
* Add front component widget by @bosiraphael in https://github.com/twentyhq/twenty/pull/17440
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17443
* Invalidate flat cache command by @prastoin in https://github.com/twentyhq/twenty/pull/17442
* [Fix] Bug with one to many update in table #16340 by @carbonFibreCode in https://github.com/twentyhq/twenty/pull/17416
* `[OBJECT_CACHE_FLUSH_REQUIRED_WHEN_RELEASED]` Remove `FlatObjectMetadata` custom `fieldMetadataIds` fk aggregator property by @prastoin in https://github.com/twentyhq/twenty/pull/17438
* [TYPES] `UniversalEntity` `JsonbProperty` and `SerializedRelation` by @prastoin in https://github.com/twentyhq/twenty/pull/17396
* fix: prevent record title reset on focus for notes and tasks by @Richman018 in https://github.com/twentyhq/twenty/pull/17439
* Backfill `owner` standard field check colliding `joinColumnName` by @prastoin in https://github.com/twentyhq/twenty/pull/17449
* fix isCalendarFieldReadOnly function to check if calender field is re… by @Mazen-Saeed in https://github.com/twentyhq/twenty/pull/17319
* IMAP fix edge case of nested folder filtering of unwanted folders by @neo773 in https://github.com/twentyhq/twenty/pull/17428
* Use pipeline to count event stream by @thomtrp in https://github.com/twentyhq/twenty/pull/17450
* Implement sync in dev mode by @martmull in https://github.com/twentyhq/twenty/pull/17405
* fix: update calendar setup CTA to 'Finish Setup' with floppy icon by @Bonapara in https://github.com/twentyhq/twenty/pull/17464
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17468
* Integrate NavigationMenuItem with feature flag support by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/17268
* Invalidate and flush cache post 1.16 upgrade by @prastoin in https://github.com/twentyhq/twenty/pull/17465
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17469
* Add upgrade to org plan card to RLS by @Weiko in https://github.com/twentyhq/twenty/pull/17455
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17472
* docs: add example output after creating postgres role by @TomLarson20 in https://github.com/twentyhq/twenty/pull/17451
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17473
* Fix "Level: Error serverlessFunctionPayloads.map is not a function" error by @ijreilly in https://github.com/twentyhq/twenty/pull/17474
* Fixed plain object in field value for workflow by @lucasbordeau in https://github.com/twentyhq/twenty/pull/17470
* Activate Record Page Layouts flag by default by @Devessier in https://github.com/twentyhq/twenty/pull/17467
* UpdateTaskOnDeleteActionCommand - Add logs by @etiennejouan in https://github.com/twentyhq/twenty/pull/17479
* Patch `formatResult` to pass Date object through by @lucasbordeau in https://github.com/twentyhq/twenty/pull/17483
* [Dashboards] Fix page layout navigation edit mode sync by @ehconitin in https://github.com/twentyhq/twenty/pull/17478
* Introduce webhook v2 by @charlesBochet in https://github.com/twentyhq/twenty/pull/17456
* Implement dev mode nice UI by @martmull in https://github.com/twentyhq/twenty/pull/17471
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17485
* Encrypt/decrypt app secret variables by @ijreilly in https://github.com/twentyhq/twenty/pull/17394
* Backfill webhooks universal and application by @charlesBochet in https://github.com/twentyhq/twenty/pull/17486
* [Fix] display current object label in morph relation picker after rename 2/2 by @ijreilly in https://github.com/twentyhq/twenty/pull/17484
* Add WorkspaceAuthContextMiddleware by @Weiko in https://github.com/twentyhq/twenty/pull/17487
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17481
* Nested serialized relation property by @prastoin in https://github.com/twentyhq/twenty/pull/17490
* Migrate cron, databaseEventTrigger, httpRoute triggers to serverless functions by @charlesBochet in https://github.com/twentyhq/twenty/pull/17488
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17493
* fix message channels stuck in ONGOING by @neo773 in https://github.com/twentyhq/twenty/pull/17492
* fix: use universalIdentifier to identify the field in migrate-attachment-to-morph-relations by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17444
* 2081 extensibility publish cli tools and update doc with recent changes by @martmull in https://github.com/twentyhq/twenty/pull/17495
* Fix internal app by @martmull in https://github.com/twentyhq/twenty/pull/17496
* Add delete and restore event handling for table and board by @lucasbordeau in https://github.com/twentyhq/twenty/pull/17489
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17499
* Rename serverlessFunction to logicFunction by @charlesBochet in https://github.com/twentyhq/twenty/pull/17494
* Clean up and enhance logging for messaging and calendar by @neo773 in https://github.com/twentyhq/twenty/pull/17498
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17500
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17501
* self host 1.16 logs debug by @prastoin in https://github.com/twentyhq/twenty/pull/17510
* Fix error "No widget found in canvas layout" by @Devessier in https://github.com/twentyhq/twenty/pull/17512
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17502
* Display Fields widgets title by @Copilot in https://github.com/twentyhq/twenty/pull/17518
* Fix AI chat infinite loading shimmer on empty workspace by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17521
* `[REQUIRES_FULL_CACHE_FLUSH_WHEN_RELEASED]` Refactor `FlatEntity` to be `UniversalFlatEntity` superset by @prastoin in https://github.com/twentyhq/twenty/pull/17452
* Front component rendering by @bosiraphael in https://github.com/twentyhq/twenty/pull/17482
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17528
* [Bug] Fix broken variables for database event by @thomtrp in https://github.com/twentyhq/twenty/pull/17526
* Fix: time format issue in datepicker mask by @vasu1303 in https://github.com/twentyhq/twenty/pull/16922
* Refactor WorkspaceAuthContext to use discriminated union types by @Weiko in https://github.com/twentyhq/twenty/pull/17491
* Bump @prettier/sync from 0.5.3 to 0.5.5 by @dependabot[bot] in https://github.com/twentyhq/twenty/pull/17536
* Bump psl from 1.9.0 to 1.15.0 by @dependabot[bot] in https://github.com/twentyhq/twenty/pull/17535
* feat: Add bulk input mode for select options #5539 by @eni4sure in https://github.com/twentyhq/twenty/pull/17459
* 2162 Add asset watcher in twenty-sdk dev mode by @martmull in https://github.com/twentyhq/twenty/pull/17513
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17538
* fix: standardize billing price display to integers when necessary by @iampraiez in https://github.com/twentyhq/twenty/pull/17445
* File storage refactor - Switch to applicationUniversalIdentifier by @etiennejouan in https://github.com/twentyhq/twenty/pull/17541
* App logic function as step by @thomtrp in https://github.com/twentyhq/twenty/pull/17525
* [Fix] Various typeError fixes by @ijreilly in https://github.com/twentyhq/twenty/pull/17508
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17542
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17545
* Record page layout edition frontend by @Devessier in https://github.com/twentyhq/twenty/pull/17519
* Fix `UpdateTaskOnDeleteActionCommand` order and simplify by @prastoin in https://github.com/twentyhq/twenty/pull/17527
* Refactor `delete` `objectMetadata` action type and handler to be workspace agnostic by @prastoin in https://github.com/twentyhq/twenty/pull/17530
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17546
* Files v2 - FILES field update/create in common API by @etiennejouan in https://github.com/twentyhq/twenty/pull/17400
* Update pageLayout* data models for backend recordPageLayout refactor by @Weiko in https://github.com/twentyhq/twenty/pull/17446
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17558
* Fix React warnings for custom props on styled DOM elements by @Copilot in https://github.com/twentyhq/twenty/pull/17553
* Remove redundant label by @Devessier in https://github.com/twentyhq/twenty/pull/17563
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17565
* `[REQUIRES_CACHE_FLUSH_FOR_FIELD_AND_OBJECT]``FlatFieldMetadata` and `FlatObjectMetadata` required universal by @prastoin in https://github.com/twentyhq/twenty/pull/17557
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17568
* Improve API + set functions in state by @thomtrp in https://github.com/twentyhq/twenty/pull/17560
* Add standard record page layout by @Weiko in https://github.com/twentyhq/twenty/pull/17567
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17549
* fix: lodash has prototype pollution vulnerability in _.unset and _.omit functions by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17551
* Remove versions from logicFunction by @charlesBochet in https://github.com/twentyhq/twenty/pull/17540
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17577
* fix: replacement of a substring with itself  by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17497
* handle HTTP 400, 500, 502, 504 in parseMicrosoftMessagesImportError by @neo773 in https://github.com/twentyhq/twenty/pull/17509
* Files - Delete command by @etiennejouan in https://github.com/twentyhq/twenty/pull/17576
* Files Field - Add new controller by @etiennejouan in https://github.com/twentyhq/twenty/pull/17561
* Add border bottom to display organization plan features by @BOHEUS in https://github.com/twentyhq/twenty/pull/17422
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17578
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17579
* [FRONT COMPONENTS] Build front components from twenty apps for remote dom  by @bosiraphael in https://github.com/twentyhq/twenty/pull/17566
* Refactor workflow to use new functions by @charlesBochet in https://github.com/twentyhq/twenty/pull/17552
* Patch the postgres db url while using an external resource enabling a… by @larron in https://github.com/twentyhq/twenty/pull/17431
* Update manifest structure by @martmull in https://github.com/twentyhq/twenty/pull/17547
* Unit test back vscode task by @prastoin in https://github.com/twentyhq/twenty/pull/17583
* Workflow Send Email Node Multiple Recipients Support by @neo773 in https://github.com/twentyhq/twenty/pull/17458
* Added option to prevent sending requests to twenty-icons by @BOHEUS in https://github.com/twentyhq/twenty/pull/16723
* Improve email onboarding step by @BOHEUS in https://github.com/twentyhq/twenty/pull/17427
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17584
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17585
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17586
* feat: CommandMenuItem entity and FrontComponent support in command menu by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/17555
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17590
* [GroupBy] Fix order by date granularity by @ijreilly in https://github.com/twentyhq/twenty/pull/17573
* Fix SSE for workflow show page  by @thomtrp in https://github.com/twentyhq/twenty/pull/17582
* fix: prevent default object re-selection in relation field form by @claytonlin1110 in https://github.com/twentyhq/twenty/pull/17313
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17591
* [Apps] Apps marketplace (first draft) by @ijreilly in https://github.com/twentyhq/twenty/pull/17562
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17592
* Rework logic function module by @charlesBochet in https://github.com/twentyhq/twenty/pull/17588
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17593
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17594
* fix: allow board column tag to shrink so aggregate value remains visible by @bitloi in https://github.com/twentyhq/twenty/pull/17372
* Keep simplifying logic functions by @charlesBochet in https://github.com/twentyhq/twenty/pull/17595
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17597
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17599
* [Dashboards] Replace nivo bar chart with custom canvas bar chart by @ehconitin in https://github.com/twentyhq/twenty/pull/17441
* Add Claude Code GitHub Workflow by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17615
* feat: add cross-repo Claude dispatch from core-team-issues by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17616
* fix: force Claude Code to use Opus model by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17618
* Fix: Favorite records not showing in sidebar by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/17614
* Revert "fix: prevent default object re-selection in relation field fo… by @ijreilly in https://github.com/twentyhq/twenty/pull/17619
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17620
* Handle SSE event stream reconnection by @lucasbordeau in https://github.com/twentyhq/twenty/pull/17523
* feat: lazy dev env setup for Claude CI workflow by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17621
* [FRONT COMPONENTS] Move to twenty-sdk by @bosiraphael in https://github.com/twentyhq/twenty/pull/17587
* `ObjectMetadata` and `FieldMetadata` agnostic workspace migration runner by @prastoin in https://github.com/twentyhq/twenty/pull/17572
* fix: move Claude allowed tools to claude_args by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17625
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17626
* Update discord link by @Bonapara in https://github.com/twentyhq/twenty/pull/17627
* [Dashboards] Auto focus effect on standalone widget by @ehconitin in https://github.com/twentyhq/twenty/pull/17623
* fix: Claude workflow — prevent bot self-cancellation and add CI permissions by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17628
* Differentiate edit mode behavior for record pages vs dashboards by @Copilot in https://github.com/twentyhq/twenty/pull/17550
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17634
* `[FIXES_MAIN]` Remove `objectMetadata` `standardId` by @prastoin in https://github.com/twentyhq/twenty/pull/17632
* chore: replace depot.dev runners with GitHub-hosted runners by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17641
* fix: increase Claude max turns to 200 and add missing bash tools by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17642
* Fix creation of objects with acronym names (e.g. "O&J") by @ijreilly in https://github.com/twentyhq/twenty/pull/17633
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17650
* Fix build docker image error by @bosiraphael in https://github.com/twentyhq/twenty/pull/17649
* Silent errors on code step build by @thomtrp in https://github.com/twentyhq/twenty/pull/17651
* Migrate workflow serverless to logic by @charlesBochet in https://github.com/twentyhq/twenty/pull/17646
* `[BREAKING_CHANGE]` Deprecate remaining entities `standardId` by @prastoin in https://github.com/twentyhq/twenty/pull/17639
* fix: increase performance test thresholds for GitHub Actions runners by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17656
* fix: use red3 for dark mode danger background color by @Bonapara in https://github.com/twentyhq/twenty/pull/17658
* Allow twenty standard app to access messaging items by @ijreilly in https://github.com/twentyhq/twenty/pull/17659
* Upload files instead ofsources by @martmull in https://github.com/twentyhq/twenty/pull/17608
* Fix spaces in code step + suggestion overflow by @thomtrp in https://github.com/twentyhq/twenty/pull/17664
* fix: increase RelationToOneFieldDisplay perf threshold to 0.4ms by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17671
* Improve cache-clear behavior by @charlesBochet in https://github.com/twentyhq/twenty/pull/17662
* Fix code container display by @thomtrp in https://github.com/twentyhq/twenty/pull/17666
* fix: increase findByText timeout for lazy-loaded DateTimePicker tests by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17672
* [FRONT COMPONENTS] Frontend component widget creation by @ehconitin in https://github.com/twentyhq/twenty/pull/17653
* [Dashboard] fix rich text widget bugs + text selection in non edit mode by @ehconitin in https://github.com/twentyhq/twenty/pull/17624
* Disable initial animation in Toggle component by @Copilot in https://github.com/twentyhq/twenty/pull/17648
* Upgrade application model by @charlesBochet in https://github.com/twentyhq/twenty/pull/17673
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17678
* Add position to page layout widgets by @Weiko in https://github.com/twentyhq/twenty/pull/17643
* Scaffold Fields widget edition by @Copilot in https://github.com/twentyhq/twenty/pull/17548
* Remote dom twenty UI POC by @bosiraphael in https://github.com/twentyhq/twenty/pull/17652
* Refactor flat entity maps to be universal oriented by @prastoin in https://github.com/twentyhq/twenty/pull/17665
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17682
* feat: make feature flag image optional by @Devessier in https://github.com/twentyhq/twenty/pull/17679
* Publish twenty packages by @martmull in https://github.com/twentyhq/twenty/pull/17676
* Fix message/calendar channels stuck with null syncStageStartedAt by @neo773 in https://github.com/twentyhq/twenty/pull/17684
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17688
* Trigger refetch workflow on version creation by @thomtrp in https://github.com/twentyhq/twenty/pull/17685
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17689
* Backfill package json for custom and standard app by @charlesBochet in https://github.com/twentyhq/twenty/pull/17681
* Migrate gmail fetch by batch to library by @neo773 in https://github.com/twentyhq/twenty/pull/17514
* i18n - docs translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17692
* Migrate noteTarget and taskTarget to Morph. by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17476
* Fix twenty sdk build by @martmull in https://github.com/twentyhq/twenty/pull/17696
* Remove logic function layer by @charlesBochet in https://github.com/twentyhq/twenty/pull/17697
* Fetch soft-deleted records in Record Page Layouts by @Devessier in https://github.com/twentyhq/twenty/pull/17698
* fix: prevent anonymous users from bypassing workspace creation restriction by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17635
* fix(workspace-cache): memory leak in deleteFromLocalCache by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17686
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17704
* Billing - Fix inactivity by @etiennejouan in https://github.com/twentyhq/twenty/pull/17703
* Files v2 - File table migration + data migration command by @etiennejouan in https://github.com/twentyhq/twenty/pull/17661
* [FRONT COMPONENTS] Expose twenty UI in twenty sdk by @bosiraphael in https://github.com/twentyhq/twenty/pull/17645
* Files field - add files field display and input + filtering by @etiennejouan in https://github.com/twentyhq/twenty/pull/17637
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17706
* Fix build without nx build by @martmull in https://github.com/twentyhq/twenty/pull/17700
* feat: audit Logs by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17660
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17708
* Put SSE in lab by @thomtrp in https://github.com/twentyhq/twenty/pull/17709
* [FRONT COMPONENT] Stories in twenty-sdk for front component generation and upon render interactivity by @ehconitin in https://github.com/twentyhq/twenty/pull/17675
* Add real time image by @thomtrp in https://github.com/twentyhq/twenty/pull/17710
* Refactor workspace migration update action by @prastoin in https://github.com/twentyhq/twenty/pull/17701
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17712
* Improve qualification of rest errors by @ijreilly in https://github.com/twentyhq/twenty/pull/17629
* [fix] Some fixes by @ijreilly in https://github.com/twentyhq/twenty/pull/17674
* Fix twenty sdk build 3 by @martmull in https://github.com/twentyhq/twenty/pull/17715
* fix: use TwentyConfigService instead of ConfigService for ENTERPRISE_KEY by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17721
* Display "Not shared" indicator for RLS-restricted relation fields by @Weiko in https://github.com/twentyhq/twenty/pull/17713
* Fix typeorm internal query builder missing twenty internal context by @Weiko in https://github.com/twentyhq/twenty/pull/17719
* exclude Gmail category labels only for system folders by @neo773 in https://github.com/twentyhq/twenty/pull/17640
* Refactor workflow-logic-function-interaction by @charlesBochet in https://github.com/twentyhq/twenty/pull/17699
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17724
* Bump @cyntler/react-doc-viewer from 1.17.0 to 1.17.1 by @dependabot[bot] in https://github.com/twentyhq/twenty/pull/17727
* Front components communication between host and remote by @bosiraphael in https://github.com/twentyhq/twenty/pull/17716
* Fix note/task target creation to support morph relations by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17734
* fix: fast-xml-parser has rangeerror dos numeric entities bug by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17732
* Refactor twenty-sdk folder stucture by @bosiraphael in https://github.com/twentyhq/twenty/pull/17733
* Fixed SSE connection retry infinite loop by @lucasbordeau in https://github.com/twentyhq/twenty/pull/17723
* fix: update lockfile for twenty CLI bin path change by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17739
* Fix twenty sdk build by @martmull in https://github.com/twentyhq/twenty/pull/17729
* Bump drizzle-kit from 0.31.5 to 0.31.8 by @dependabot[bot] in https://github.com/twentyhq/twenty/pull/17725
* fix: set isActive=true in morph migration & add system fields toggle by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17736
* Improve workflow crons by @thomtrp in https://github.com/twentyhq/twenty/pull/17720
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17743
* Never display broken relations in record page layouts by @Devessier in https://github.com/twentyhq/twenty/pull/17738
* Add lock on version creation by @thomtrp in https://github.com/twentyhq/twenty/pull/17740
* Fix twenty sdk build 5 by @martmull in https://github.com/twentyhq/twenty/pull/17744
* Add gauge for awaiting jobs by @thomtrp in https://github.com/twentyhq/twenty/pull/17747
* fix: use real founder headshots in seed data by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17749
* Files v2 - Use Files field in attachment by @etiennejouan in https://github.com/twentyhq/twenty/pull/17707
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17751
* Allow filtering by page layout type and fetch more fields by @Devessier in https://github.com/twentyhq/twenty/pull/17750
* fix: add command to fix morph relation field name mismatches by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17757
* - fixed coloring of item type tag in dark mode by @Lakshayyy-m in https://github.com/twentyhq/twenty/pull/17745
* Fix twenty-emails build by @Weiko in https://github.com/twentyhq/twenty/pull/17760
* Fix CSV preview duplicate key warning (#10920) by @bugisthegod in https://github.com/twentyhq/twenty/pull/17754
* Migrate favorites to navigation menu items (1.17 upgrade) by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/17477
* Fix iterator creation by @thomtrp in https://github.com/twentyhq/twenty/pull/17763
* Spread in parent and requires  `FlatEntity.__universal` by @prastoin in https://github.com/twentyhq/twenty/pull/17753
* Store record page layouts in a global state by @Devessier in https://github.com/twentyhq/twenty/pull/17759
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17768
* Fix record page layout BE by @Weiko in https://github.com/twentyhq/twenty/pull/17758
* Validate timezone input in group-by date queries by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17777
* Rename REFRESH_TOKEN_COOL_DOWN to REFRESH_TOKEN_REUSE_GRACE_PERIOD and anchor the grace window by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17782
* Centralize outbound HTTP requests through SecureHttpClientService by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17779
* Remove unused GraphQL throttler plugin and graphql-rate-limit dependency by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17785
* Add token type validation and remove dead code in JWT verification by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17784
* Add sync front component by @Weiko in https://github.com/twentyhq/twenty/pull/17748
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17789
* Fix Cloudflare webhook guard validation logic by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17780
* Fix importing people with mixed-case domain URL failing to match company by @bugisthegod in https://github.com/twentyhq/twenty/pull/17774
* Harden local file storage driver path resolution by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17783
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17790
* Reorganize logic function files by @martmull in https://github.com/twentyhq/twenty/pull/17766
* fix: webpack related dependabot alerts by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17792
* feat: improve AI chat - system prompt, tool output, context window display by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17769
* Flush cache before and after upgrade for self-hosts by @ijreilly in https://github.com/twentyhq/twenty/pull/17800
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17803
* [FRONT COMPONENTS] Navigate from the remote by @bosiraphael in https://github.com/twentyhq/twenty/pull/17762
* Fix file constraint migration by @charlesBochet in https://github.com/twentyhq/twenty/pull/17796
* Resolve tar related dependabot alerts in the application-layer. by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17801
* [FRONT COMPONENTS] Create Icon component in twenty ui by @bosiraphael in https://github.com/twentyhq/twenty/pull/17797
* Redesign AI chat and add pre-existing prompts. by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17787
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17804
* Use backend types in Record Page Layouts' frontend by @Devessier in https://github.com/twentyhq/twenty/pull/17794
* Serve frontend components by @Weiko in https://github.com/twentyhq/twenty/pull/17798
* Fix captcha validation failing due to missing URL in secure axios adapter by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17807
* [FRONT COMPONENTS] Serialize events through the worker boundary by @bosiraphael in https://github.com/twentyhq/twenty/pull/17767
* [Fix] fix relations in apps by @ijreilly in https://github.com/twentyhq/twenty/pull/17791
* Allow AI to update code steps by @thomtrp in https://github.com/twentyhq/twenty/pull/17761
* Migrate `Views-xxx` `Index` `Field` `Object` `Skill` to be fully universal ( all actions and metadata runner and builder ) + all metadata update actions runner by @prastoin in https://github.com/twentyhq/twenty/pull/17687
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17817
* Migrate metrics to prometheus by @charlesBochet in https://github.com/twentyhq/twenty/pull/17810
* [FRONT COMPONENTS] Retrieve the front components from the backend by @bosiraphael in https://github.com/twentyhq/twenty/pull/17813
* Release Twenty SDK 0.5.0 by @charlesBochet in https://github.com/twentyhq/twenty/pull/17818
* Fix RLS creation logic by @Weiko in https://github.com/twentyhq/twenty/pull/17815
* Add handling for internal_failure in Gmail API error parser by @neo773 in https://github.com/twentyhq/twenty/pull/17718
* Improve AI-chat design to match the one provided in Figma by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17816
* releasing RLS by @Weiko in https://github.com/twentyhq/twenty/pull/17809
* [Fix] fix timelineActivities on notes and tasks by @ijreilly in https://github.com/twentyhq/twenty/pull/17814
* Show accounts with pending message channel configuration by @neo773 in https://github.com/twentyhq/twenty/pull/17770
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17820
* Google OAuth check real permissions before creating channels by @neo773 in https://github.com/twentyhq/twenty/pull/17714
* fix: axios related dependabot alerts by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17821
* fix: set a margin even for empty side-column widgets by @Devessier in https://github.com/twentyhq/twenty/pull/17806
* fix: remove axios stale entry by ensuring transitive version of axios is also latest by @mabdullahabaid in https://github.com/twentyhq/twenty/pull/17823
* - Added accomodation of mobile navigation bar in command menu by @Lakshayyy-m in https://github.com/twentyhq/twenty/pull/17419
* Remove the code of old show pages by @Devessier in https://github.com/twentyhq/twenty/pull/17811
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17830
* Extract SecureHttpClientService into its own module by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17828
* Fix downgrade to Pro CTA icon and wording by @Bonapara in https://github.com/twentyhq/twenty/pull/17829
* Remove standard ids by @prastoin in https://github.com/twentyhq/twenty/pull/17833
* Fix ci + improvements by @martmull in https://github.com/twentyhq/twenty/pull/17795
* Fix row-level permissions 'Where' left spacing by @Bonapara in https://github.com/twentyhq/twenty/pull/17831
* revert releasing RLS (#17809) by @Weiko in https://github.com/twentyhq/twenty/pull/17832
* Clarify forms usage by @BOHEUS in https://github.com/twentyhq/twenty/pull/17772
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17835
* Query cache instead of database for event listener webhook, logicFunction, triggers by @charlesBochet in https://github.com/twentyhq/twenty/pull/17824
* Migrate all remaining workspace migration create action to universal by @prastoin in https://github.com/twentyhq/twenty/pull/17836
* [DASHBOARDS] chat agent improvements + new validation layer by @ehconitin in https://github.com/twentyhq/twenty/pull/17722
* i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/17838
* SSO - Check if assertion is signed by @thomtrp in https://github.com/twentyhq/twenty/pull/17837
* Fix blocknote.map crash with generic field-level RICH_TEXT_V2 handler by @FelixMalfait in https://github.com/twentyhq/twenty/pull/17834
* Fix commands order for v1.17.0 by @ijreilly in https://github.com/twentyhq/twenty/pull/17839

## New Contributors
* @kratisinghh made their first contribution in https://github.com/twentyhq/twenty/pull/17275
* @Richman018 made their first contribution in https://github.com/twentyhq/twenty/pull/17439
* @Mazen-Saeed made their first contribution in https://github.com/twentyhq/twenty/pull/17319
* @TomLarson20 made their first contribution in https://github.com/twentyhq/twenty/pull/17451
* @vasu1303 made their first contribution in https://github.com/twentyhq/twenty/pull/16922
* @eni4sure made their first contribution in https://github.com/twentyhq/twenty/pull/17459
* @iampraiez made their first contribution in https://github.com/twentyhq/twenty/pull/17445
* @larron made their first contribution in https://github.com/twentyhq/twenty/pull/17431
* @claytonlin1110 made their first contribution in https://github.com/twentyhq/twenty/pull/17313

**Full Changelog**: https://github.com/twentyhq/twenty/compare/v1.16.0...v1.17.0