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