v1.4.0
twentyhq/twentyv1.4.0Aug 21, 2025by guillim
AI Summary
Permissions and workflow release with field-level permissions, workflow branches, and 2FA rollout. Included morph backend API and unique fields.
Key Highlights
- Field permissions feature
- Workflow branches
- 2FA rollout
- Unique fields with unicity toggle
- Morph backend CORE API
- Core views seeding
New Features
- Field-level permissions
- Workflow branches
- 2FA authentication
- Unique field creation/deletion
- Morph relation backend API
- Core views seeding at workspace creation
- Manual trigger pinning in navbar
Full Release Notes
## What's Changed * Change type import rule by @FelixMalfait in https://github.com/twentyhq/twenty/pull/13751 * Fix assert unreachable, remove unused variables by @FelixMalfait in https://github.com/twentyhq/twenty/pull/13753 * [permissions] Fix update of relation field permissions by @ijreilly in https://github.com/twentyhq/twenty/pull/13755 * Upgrade NX by @FelixMalfait in https://github.com/twentyhq/twenty/pull/13758 * Display id field input as record picker by @thomtrp in https://github.com/twentyhq/twenty/pull/13759 * feat(nx-cloud): set up nx workspace by @FelixMalfait in https://github.com/twentyhq/twenty/pull/13768 * `FieldMetadataServiceV2.deleteOneField` by @prastoin in https://github.com/twentyhq/twenty/pull/13744 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13771 * [permissions] Add field permissions feature flag in lab by @ijreilly in https://github.com/twentyhq/twenty/pull/13767 * Add workflow filters to the lab by @thomtrp in https://github.com/twentyhq/twenty/pull/13770 * Import - Unique value check optimization by @etiennejouan in https://github.com/twentyhq/twenty/pull/13761 * Eslint migration 4 by @FelixMalfait in https://github.com/twentyhq/twenty/pull/13773 * fix messaging by @charlesBochet in https://github.com/twentyhq/twenty/pull/13772 * Multiple errors on field input transpilation improvement by @prastoin in https://github.com/twentyhq/twenty/pull/13774 * Docs and improve trigger icon handling by @Pavan-Nambi in https://github.com/twentyhq/twenty/pull/13769 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13777 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13778 * Fix qa issues with branches by @martmull in https://github.com/twentyhq/twenty/pull/13776 * Unique field - add unique property creation/deletion on field by @etiennejouan in https://github.com/twentyhq/twenty/pull/13539 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13782 * Unique fields - add unicity toggle on data model settings by @etiennejouan in https://github.com/twentyhq/twenty/pull/13592 * Add workflow branches to lab by @martmull in https://github.com/twentyhq/twenty/pull/13780 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13788 * fix(ui): remove line break in all IMAP section subtitles by @FurquanAnwer in https://github.com/twentyhq/twenty/pull/13785 * user Guide - updating the csv export article by @StephanieJoly4 in https://github.com/twentyhq/twenty/pull/13762 * fix(webhook): clarify endpoint expects application/json payloads by @Ireshudayanga in https://github.com/twentyhq/twenty/pull/13786 * Add destroy for core view resolvers by @bosiraphael in https://github.com/twentyhq/twenty/pull/13745 * Seed core views at workspace creation by @bosiraphael in https://github.com/twentyhq/twenty/pull/13741 * Few fixes before release 1.3.0 by @charlesBochet in https://github.com/twentyhq/twenty/pull/13791 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13792 * Continue ESLINT9 Migration by @FelixMalfait in https://github.com/twentyhq/twenty/pull/13795 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13798 * Sort object destinations in relation field by @BKM14 in https://github.com/twentyhq/twenty/pull/13802 * Upgrade SWC Core and Storybook to v8 by @FelixMalfait in https://github.com/twentyhq/twenty/pull/13799 * fixed changelog date parsing issue by @Bonapara in https://github.com/twentyhq/twenty/pull/13806 * Remove eslint-config-next from twenty-front by @FelixMalfait in https://github.com/twentyhq/twenty/pull/13809 * Code first roles sync by @abdulrahmancodes in https://github.com/twentyhq/twenty/pull/13667 * Fix core views enum names by @bosiraphael in https://github.com/twentyhq/twenty/pull/13805 * Fix start twenty-front not working with flat file config by @FelixMalfait in https://github.com/twentyhq/twenty/pull/13816 * Re-add prettier by @charlesBochet in https://github.com/twentyhq/twenty/pull/13812 * Remove hoisting on server by @charlesBochet in https://github.com/twentyhq/twenty/pull/13821 * Add missing images to lab by @thomtrp in https://github.com/twentyhq/twenty/pull/13824 * lint config backend by @guillim in https://github.com/twentyhq/twenty/pull/13827 * Type fixes and website fix by @FelixMalfait in https://github.com/twentyhq/twenty/pull/13825 * Add Delete branch buttons by @Devessier in https://github.com/twentyhq/twenty/pull/13826 * Adding Merge and IMAP Features to 1.3 Changelog by @vickywxng in https://github.com/twentyhq/twenty/pull/13823 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13828 * Text update by @guillim in https://github.com/twentyhq/twenty/pull/13832 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13833 * Prevent edges selection and deletion by @Devessier in https://github.com/twentyhq/twenty/pull/13830 * chore: scope package.json deps to packages by @FelixMalfait in https://github.com/twentyhq/twenty/pull/13835 * Refactor usePersistField by @lucasbordeau in https://github.com/twentyhq/twenty/pull/13775 * Removed useRecordTable by @lucasbordeau in https://github.com/twentyhq/twenty/pull/13837 * morph backend CORE api by @guillim in https://github.com/twentyhq/twenty/pull/13517 * Add positions on company and person seeds by @ehconitin in https://github.com/twentyhq/twenty/pull/13831 * Improve Stripe checkout to avoid redirecting to page by @FelixMalfait in https://github.com/twentyhq/twenty/pull/13690 * `FieldMetadataServiceV2.updateOne` by @prastoin in https://github.com/twentyhq/twenty/pull/13784 * Delete filter on branch deletion by @thomtrp in https://github.com/twentyhq/twenty/pull/13834 * Remove preconstruct, update wyw by @FelixMalfait in https://github.com/twentyhq/twenty/pull/13844 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13851 * Migrate eslint to mjs by @charlesBochet in https://github.com/twentyhq/twenty/pull/13850 * fix: [Mailbox sync lost banner] Banner overlapping the filters by @neo773 in https://github.com/twentyhq/twenty/pull/13808 * fix IMAP breadcrumb by @ehconitin in https://github.com/twentyhq/twenty/pull/13847 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13852 * [Morph] frontend basic initialisation by @guillim in https://github.com/twentyhq/twenty/pull/13822 * Run yarn dedupe and upgrade TS by @FelixMalfait in https://github.com/twentyhq/twenty/pull/13853 * Improve workflow queue cron reliability by @thomtrp in https://github.com/twentyhq/twenty/pull/13818 * Fix destroy many resolver broken on custom objects by @charlesBochet in https://github.com/twentyhq/twenty/pull/13858 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13859 * `ObjectMetadataServiceV2.createOne` by @prastoin in https://github.com/twentyhq/twenty/pull/13849 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13870 * Bring back edge selection & deletion by @Devessier in https://github.com/twentyhq/twenty/pull/13863 * fix: sync color scheme on loading state by @neo773 in https://github.com/twentyhq/twenty/pull/13878 * Remove X icon for fields that cannot be removed by @BKM14 in https://github.com/twentyhq/twenty/pull/13876 * Unique fields - fixes by @etiennejouan in https://github.com/twentyhq/twenty/pull/13848 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13883 * Rename permissions and fix add rule button by @BKM14 in https://github.com/twentyhq/twenty/pull/13874 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13885 * Permission table fixes by @BKM14 in https://github.com/twentyhq/twenty/pull/13882 * followup #13878 by @neo773 in https://github.com/twentyhq/twenty/pull/13886 * Only allow deleting branches when branches are enabled by @Devessier in https://github.com/twentyhq/twenty/pull/13889 * `ObjectMetadataServiceV2.deleteOne` by @prastoin in https://github.com/twentyhq/twenty/pull/13871 * Refactor record-field into ui sub-folder by @lucasbordeau in https://github.com/twentyhq/twenty/pull/13888 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13890 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13892 * Make source handle blue when node is selected and on hover by @Devessier in https://github.com/twentyhq/twenty/pull/13887 * Allow deleting any branch via keyboard by @Devessier in https://github.com/twentyhq/twenty/pull/13897 * Missing the joincolumnname parsing by @guillim in https://github.com/twentyhq/twenty/pull/13898 * Disable nx ui terminal by @bosiraphael in https://github.com/twentyhq/twenty/pull/13910 * Refactor inline-cell-input hover on field-list by @charlesBochet in https://github.com/twentyhq/twenty/pull/13906 * UpdateMany - Process connect queries in batch by @etiennejouan in https://github.com/twentyhq/twenty/pull/13907 * Stop propagating full workflow in components by @thomtrp in https://github.com/twentyhq/twenty/pull/13900 * Implement proper arrows between nodes for workflows and workflow versions by @Devessier in https://github.com/twentyhq/twenty/pull/13909 * feat: ability to pin a manual trigger in the navbar by @ahmedobaid23 in https://github.com/twentyhq/twenty/pull/13904 * Refactor inline-cell inputs by @charlesBochet in https://github.com/twentyhq/twenty/pull/13914 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13920 * `ObjectMetadataServiceV2.updateOne` by @prastoin in https://github.com/twentyhq/twenty/pull/13891 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13922 * Remove workflow context + clean action config by @thomtrp in https://github.com/twentyhq/twenty/pull/13919 * [fast follows] - improve rest api documentation, fix add new button being considered in drag, fix grip color by @ehconitin in https://github.com/twentyhq/twenty/pull/13709 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13924 * Refactor inline-cell inputs on board by @charlesBochet in https://github.com/twentyhq/twenty/pull/13921 * Add RecordField abstraction by @lucasbordeau in https://github.com/twentyhq/twenty/pull/13923 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13925 * Workspace schema migration runner v2 by @Weiko in https://github.com/twentyhq/twenty/pull/13899 * Refactor board inline-cell input by @charlesBochet in https://github.com/twentyhq/twenty/pull/13928 * Move duplicate key error handling in ORM by @etiennejouan in https://github.com/twentyhq/twenty/pull/13893 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13933 * Improve REST API Docs by @FelixMalfait in https://github.com/twentyhq/twenty/pull/13931 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13939 * Updating user guide index by @StephanieJoly4 in https://github.com/twentyhq/twenty/pull/13942 * fix: merge records settings select by @neo773 in https://github.com/twentyhq/twenty/pull/13944 * fix: suggestion menu item font color by @arikchakma in https://github.com/twentyhq/twenty/pull/13947 * Prepare field option dropdown for RecordField usage by @lucasbordeau in https://github.com/twentyhq/twenty/pull/13935 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13956 * Refactor builder to embed `Object` validation `create/delete/update` by @prastoin in https://github.com/twentyhq/twenty/pull/13934 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13959 * Fix not available workflow version id in runs by @thomtrp in https://github.com/twentyhq/twenty/pull/13958 * fix(filters): unify combinedFilter for queries and bulk delete by @Puranjay-del-Mishra in https://github.com/twentyhq/twenty/pull/13952 * Handle relative date step filter by @thomtrp in https://github.com/twentyhq/twenty/pull/13930 * Workspace migration v2 builder embed field metadata validation by @prastoin in https://github.com/twentyhq/twenty/pull/13960 * Workspace schema migration runner v2 - Fix Enums and Create TsVector by @Weiko in https://github.com/twentyhq/twenty/pull/13955 * fix: Filter Selection Icon Missing #13901 by @Kailash8799 in https://github.com/twentyhq/twenty/pull/13950 * Fix run input tab for filters by @thomtrp in https://github.com/twentyhq/twenty/pull/13961 * Implement new workflow node design by @Devessier in https://github.com/twentyhq/twenty/pull/13929 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13964 * fix(server): field metadata creation service v2 by @prastoin in https://github.com/twentyhq/twenty/pull/13963 * Fix build field order delete object refactor by @prastoin in https://github.com/twentyhq/twenty/pull/13965 * Put back transparent background for code editor by @thomtrp in https://github.com/twentyhq/twenty/pull/13966 * Fix relations creation with metadata v2 by @Weiko in https://github.com/twentyhq/twenty/pull/13967 * minor changes - fixed text color by @AbhinavTalmale in https://github.com/twentyhq/twenty/pull/13970 * fix: scroll to selected element without animation when dropdown opens by @ahmedobaid23 in https://github.com/twentyhq/twenty/pull/13969 * Fix website navigation by @charlesBochet in https://github.com/twentyhq/twenty/pull/13972 * fix(design-system): fix menu item selection & focus state (#13807) by @Kailash8799 in https://github.com/twentyhq/twenty/pull/13948 * Standard relation field for custom objects by @prastoin in https://github.com/twentyhq/twenty/pull/13968 * fix: remove unnecessary spacing in search node's conditional operator field by @aayushprime in https://github.com/twentyhq/twenty/pull/13946 * add view related schema definitions to computeMetadataSchemaComponents by @ehconitin in https://github.com/twentyhq/twenty/pull/13971 * Fix default relation standard field deletion by @prastoin in https://github.com/twentyhq/twenty/pull/13975 * Morph-front-settings by @guillim in https://github.com/twentyhq/twenty/pull/13872 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13976 * Refactor read only object and fields by @neo773 in https://github.com/twentyhq/twenty/pull/13936 * morphfix by @guillim in https://github.com/twentyhq/twenty/pull/13978 * IMAP FIxes by @neo773 in https://github.com/twentyhq/twenty/pull/13973 * Add translations on core views by @ehconitin in https://github.com/twentyhq/twenty/pull/13895 * fix: sort search results by TSRank by @neo773 in https://github.com/twentyhq/twenty/pull/13875 * Fix enum deletion during migration v2 by @Weiko in https://github.com/twentyhq/twenty/pull/13977 * fix `extract-message-util` preserve line break for multi line HTML text by @neo773 in https://github.com/twentyhq/twenty/pull/13983 * [Dashboards] Graph number chart component by @ehconitin in https://github.com/twentyhq/twenty/pull/13984 * fix: workflow node classification by @Harshith-2208 in https://github.com/twentyhq/twenty/pull/13945 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13993 * Refactor field definition and column definition manipulation with record field by @lucasbordeau in https://github.com/twentyhq/twenty/pull/13992 * get rid of singleton usage in view resolver by @ehconitin in https://github.com/twentyhq/twenty/pull/13990 * fix(ai): improve mcp metadata logic by @AMoreaux in https://github.com/twentyhq/twenty/pull/13991 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13996 * Animate between IconX and IconReload by @BKM14 in https://github.com/twentyhq/twenty/pull/13949 * fix: set `content-type` header for isMethodWithBody by @neo773 in https://github.com/twentyhq/twenty/pull/13839 * Add community Railway template in self-hosted cloud provider docs by @thomasmol in https://github.com/twentyhq/twenty/pull/13986 * Multi drag on tables + Refactor by @ehconitin in https://github.com/twentyhq/twenty/pull/13570 * Fix table aligment issue by @BKM14 in https://github.com/twentyhq/twenty/pull/13896 * Fix filters + add behaviour for select by @thomtrp in https://github.com/twentyhq/twenty/pull/13997 * Perform renaming fixes and implement full access card by @BKM14 in https://github.com/twentyhq/twenty/pull/13912 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/13998 * fix: fix position of checkbox and icon by @Kailash8799 in https://github.com/twentyhq/twenty/pull/13999 * [feature]:Improved Options Menu for Default View by @prynsh in https://github.com/twentyhq/twenty/pull/13427 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/14000 * Refactor schema migration runner service discovery by @Weiko in https://github.com/twentyhq/twenty/pull/13988 * Core views frontend by @bosiraphael in https://github.com/twentyhq/twenty/pull/13932 * Removed Redundant Filter Option in Filter Menu by @Nishant891 in https://github.com/twentyhq/twenty/pull/14003 * Fail slow + structured validator error response scoped by object and fields by @prastoin in https://github.com/twentyhq/twenty/pull/13980 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/14004 * feat(ai): enhance metadata handling and add support for tools, prompt… by @AMoreaux in https://github.com/twentyhq/twenty/pull/14002 * fix ui as per figma file by @Kailash8799 in https://github.com/twentyhq/twenty/pull/14008 * i18n - translations by @github-actions[bot] in https://github.com/twentyhq/twenty/pull/14015 * fix: prevent selection clicking outside the table by @Kailash8799 in https://github.com/twentyhq/twenty/pull/14007 * Fix hover on inline cell by @charlesBochet in https://github.com/twentyhq/twenty/pull/14022 * Remove workflow filters from lab by @thomtrp in https://github.com/twentyhq/twenty/pull/14017 * Rollout 2FA by @Weiko in https://github.com/twentyhq/twenty/pull/14023 * Filters: Fix readonly on record picker + select label by @thomtrp in https://github.com/twentyhq/twenty/pull/14026 * Fix title cell by @charlesBochet in https://github.com/twentyhq/twenty/pull/14025 * Rollout field permissions by @Weiko in https://github.com/twentyhq/twenty/pull/14024 * morph fix for release 1.4 by @guillim in https://github.com/twentyhq/twenty/pull/14029 * non edit by @guillim in https://github.com/twentyhq/twenty/pull/14031 * adding upgrade version command by @guillim in https://github.com/twentyhq/twenty/pull/14032 ## New Contributors * @Pavan-Nambi made their first contribution in https://github.com/twentyhq/twenty/pull/13769 * @FurquanAnwer made their first contribution in https://github.com/twentyhq/twenty/pull/13785 * @Ireshudayanga made their first contribution in https://github.com/twentyhq/twenty/pull/13786 * @ahmedobaid23 made their first contribution in https://github.com/twentyhq/twenty/pull/13904 * @arikchakma made their first contribution in https://github.com/twentyhq/twenty/pull/13947 * @Puranjay-del-Mishra made their first contribution in https://github.com/twentyhq/twenty/pull/13952 * @Kailash8799 made their first contribution in https://github.com/twentyhq/twenty/pull/13950 * @AbhinavTalmale made their first contribution in https://github.com/twentyhq/twenty/pull/13970 * @aayushprime made their first contribution in https://github.com/twentyhq/twenty/pull/13946 * @Harshith-2208 made their first contribution in https://github.com/twentyhq/twenty/pull/13945 * @Nishant891 made their first contribution in https://github.com/twentyhq/twenty/pull/14003 **Full Changelog**: https://github.com/twentyhq/twenty/compare/v1.3.0...v1.4.0