[AI] Match ai chat composer to figma (#18874)

https://www.figma.com/design/xt8O9mFeLl46C5InWwoMrN/Twenty?node-id=93653-368288&t=obTG32NRidXid4lN-0

closes
https://discord.com/channels/1130383047699738754/1480990726442582086

---------

Co-authored-by: Félix Malfait <felix.malfait@gmail.com>
Co-authored-by: Félix Malfait <felix@twenty.com>
This commit is contained in:
nitin
2026-03-26 11:13:54 +05:30
committed by GitHub
parent dfe9cb4346
commit 578d990b9c
50 changed files with 641 additions and 406 deletions
@@ -6,7 +6,7 @@ export class MigrateModelIdsToCompositeFormat1773900000000
name = 'MigrateModelIdsToCompositeFormat1773900000000';
public async up(queryRunner: QueryRunner): Promise<void> {
// Reset workspace model columns to sentinel defaults.
// Reset workspace model columns to auto-select placeholders.
// The runtime resolves these dynamically from admin preferences.
await queryRunner.query(
`UPDATE "core"."workspace"
@@ -25,7 +25,7 @@ export class MigrateModelIdsToCompositeFormat1773900000000
OR array_length("enabledAiModelIds", 1) > 0`,
);
// Reset agent model IDs to the sentinel so they fall back to workspace defaults
// Reset agent model IDs to the auto-select placeholder so they fall back to workspace defaults
await queryRunner.query(
`UPDATE "core"."agent"
SET "modelId" = 'default-smart-model'
@@ -34,6 +34,6 @@ export class MigrateModelIdsToCompositeFormat1773900000000
}
public async down(_queryRunner: QueryRunner): Promise<void> {
// No reversal needed — sentinel defaults are safe to leave in place.
// No reversal needed — auto-select placeholders are safe to leave in place.
}
}