[FIXES_MAIN] Remove objectMetadata standardId (#17632)

# Introduction
In this PR we're deprecating the object metadata standard id and
replacing it to the universalIdentifier usage
As we've totally removed its insertion for both new field and object in
https://github.com/twentyhq/twenty/pull/17572

## Note
- Removed upgrade commands before `1.17`
This commit is contained in:
Paul Rastoin
2026-02-02 15:26:27 +01:00
committed by GitHub
parent 48b4127afa
commit 75921e79bf
98 changed files with 165 additions and 8040 deletions
@@ -18,7 +18,6 @@ const customObjectImageFieldId = 'imageIdentifierFieldMetadataId';
const personFlatObject = getFlatObjectMetadataMock({
id: '20202020-8dec-43d5-b2ff-6eef05095bec',
standardId: '20202020-8dec-43d5-b2ff-6eef05095bec',
nameSingular: 'person',
namePlural: 'people',
labelSingular: 'Person',
@@ -43,7 +42,6 @@ const personFlatObject = getFlatObjectMetadataMock({
const companyFlatObject = getFlatObjectMetadataMock({
id: '20202020-c03c-45d6-a4b0-04afe1357c5c',
standardId: '20202020-c03c-45d6-a4b0-04afe1357c5c',
nameSingular: 'company',
namePlural: 'companies',
labelSingular: 'Company',
@@ -68,7 +66,6 @@ const companyFlatObject = getFlatObjectMetadataMock({
const customObjectFlatObject = getFlatObjectMetadataMock({
id: '20202020-3d75-4aab-bacd-ee176c5f63ca',
standardId: null,
nameSingular: 'regular-custom-object',
namePlural: 'regular-custom-objects',
labelSingular: 'Regular Custom Object',
@@ -93,7 +90,6 @@ const customObjectFlatObject = getFlatObjectMetadataMock({
const nonSearchableFlatObject = getFlatObjectMetadataMock({
id: '20202020-540c-4397-b872-2a90ea2fb809',
standardId: '20202020-540c-4397-b872-2a90ea2fb809',
nameSingular: 'non-searchable-object',
namePlural: 'non-searchable-objects',
labelSingular: '',
@@ -30,7 +30,6 @@ const mockObjectMetadata: FlatObjectMetadata = {
description: null,
standardOverrides: null,
isUIReadOnly: false,
standardId: null,
labelIdentifierFieldMetadataId: null,
imageIdentifierFieldMetadataId: null,
duplicateCriteria: null,
@@ -1,5 +1,4 @@
import deepEqual from 'deep-equal';
import { STANDARD_OBJECT_IDS } from 'twenty-shared/metadata';
import { FieldMetadataType, type ObjectRecord } from 'twenty-shared/types';
import { fastDeepEqual } from 'twenty-shared/utils';
@@ -7,24 +6,26 @@ import { type FlatEntityMaps } from 'src/engine/metadata-modules/flat-entity/typ
import { type FlatFieldMetadata } from 'src/engine/metadata-modules/flat-field-metadata/types/flat-field-metadata.type';
import { buildFieldMapsFromFlatObjectMetadata } from 'src/engine/metadata-modules/flat-field-metadata/utils/build-field-maps-from-flat-object-metadata.util';
import { type FlatObjectMetadata } from 'src/engine/metadata-modules/flat-object-metadata/types/flat-object-metadata.type';
import { STANDARD_OBJECTS } from 'src/engine/workspace-manager/twenty-standard-application/constants/standard-object.constant';
const LARGE_JSON_FIELDS: Record<string, Set<string>> = {
[STANDARD_OBJECT_IDS.workflowVersion]: new Set(['steps', 'trigger']),
[STANDARD_OBJECT_IDS.workflowAutomatedTrigger]: new Set(['settings']),
[STANDARD_OBJECT_IDS.workflowRun]: new Set(['state']),
[STANDARD_OBJECTS.workflowVersion.universalIdentifier]: new Set([
'steps',
'trigger',
]),
[STANDARD_OBJECTS.workflowAutomatedTrigger.universalIdentifier]: new Set([
'settings',
]),
[STANDARD_OBJECTS.workflowRun.universalIdentifier]: new Set(['state']),
};
const isLargeJsonField = (
objectMetadataItem: Pick<FlatObjectMetadata, 'standardId'>,
objectMetadataItem: Pick<FlatObjectMetadata, 'universalIdentifier'>,
key: string,
): boolean => {
const standardId = objectMetadataItem.standardId;
const universalIdentifier = objectMetadataItem.universalIdentifier;
if (!standardId) {
return false;
}
return LARGE_JSON_FIELDS[standardId]?.has(key) ?? false;
return LARGE_JSON_FIELDS[universalIdentifier]?.has(key) ?? false;
};
export const objectRecordChangedValues = (