[BREAKING_CHANGE] Deprecate remaining entities standardId (#17639)

# Introduction
Following https://github.com/twentyhq/twenty/pull/17632 and
https://github.com/twentyhq/twenty/pull/17572
This PR deprecates the agent, skill, field metadata and role
`standardId` in favor of the `universalIdentifier` usage

## Note
- Removed previous standard ids declaration modules
- Twenty-sdk now re-exports the `STANDARD_OBJECTS` universalIdentifier
hashmap constant
- deleted some sync-metadata deadcode too ( mainly types )
This commit is contained in:
Paul Rastoin
2026-02-03 09:06:24 +01:00
committed by GitHub
parent cfdcc0065c
commit d35d5c0463
118 changed files with 534 additions and 2279 deletions
@@ -1,6 +1,7 @@
import { InjectDataSource, InjectRepository } from '@nestjs/typeorm';
import { Command } from 'nest-commander';
import { STANDARD_OBJECTS } from 'twenty-shared/metadata';
import {
FieldMetadataType,
type FieldMetadataSettings,
@@ -28,9 +29,7 @@ import { WorkspaceCacheStorageService } from 'src/engine/workspace-cache-storage
import { WorkspaceCacheService } from 'src/engine/workspace-cache/services/workspace-cache.service';
import { type WorkspaceCacheKeyName } from 'src/engine/workspace-cache/types/workspace-cache-key.type';
import { getWorkspaceSchemaName } from 'src/engine/workspace-datasource/utils/get-workspace-schema-name.util';
import { STANDARD_OBJECTS } from 'src/engine/workspace-manager/twenty-standard-application/constants/standard-object.constant';
import { TWENTY_STANDARD_APPLICATION } from 'src/engine/workspace-manager/twenty-standard-application/constants/twenty-standard-applications';
import { ATTACHMENT_STANDARD_FIELD_IDS } from 'src/engine/workspace-manager/workspace-migration/constant/standard-field-ids';
type RelationFieldMetadataSettings =
FieldMetadataSettings<FieldMetadataType.RELATION>;
@@ -199,7 +198,8 @@ export class MigrateAttachmentToMorphRelationsCommand extends ActiveOrSuspendedW
this.logger.log(`✅ Successfully migrated attachment records`);
const morphId = ATTACHMENT_STANDARD_FIELD_IDS.targetMorphId;
const morphId =
STANDARD_OBJECTS.attachment.morphIds.targetMorphId.morphId;
for (const {
field: fieldToMigrate,
@@ -0,0 +1,31 @@
import { type MigrationInterface, type QueryRunner } from 'typeorm';
export class DropStandardIdFromCoreEntities1770047816358
implements MigrationInterface
{
name = 'DropStandardIdFromCoreEntities1770047816358';
public async up(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(
`ALTER TABLE "core"."agent" DROP COLUMN "standardId"`,
);
await queryRunner.query(
`ALTER TABLE "core"."role" DROP COLUMN "standardId"`,
);
await queryRunner.query(
`ALTER TABLE "core"."fieldMetadata" DROP COLUMN "standardId"`,
);
await queryRunner.query(
`ALTER TABLE "core"."skill" DROP COLUMN "standardId"`,
);
}
public async down(queryRunner: QueryRunner): Promise<void> {
await queryRunner.query(`ALTER TABLE "core"."skill" ADD "standardId" uuid`);
await queryRunner.query(
`ALTER TABLE "core"."fieldMetadata" ADD "standardId" uuid`,
);
await queryRunner.query(`ALTER TABLE "core"."role" ADD "standardId" uuid`);
await queryRunner.query(`ALTER TABLE "core"."agent" ADD "standardId" uuid`);
}
}