twentyhq/twenty · critical · Error
Standard application is missing messageList view column ${un
Error message
Standard application is missing messageList view column ${universalIdentifier} What it means
Thrown by the 2.20 create-message-list-view command when a messageList view-column universal identifier is not found in the standard application's flatViewFieldMaps via findFlatEntityByUniversalIdentifier. The command builds viewFieldsToCreate from the standard's view-field definitions; absence means the standard seed does not contain those messageList view columns.
Source
Thrown at packages/twenty-server/src/database/commands/upgrade-version-command/2-20/2-20-workspace-command-1783525261001-create-message-list-view.command.ts:100
});
const viewsToCreate = this.resolveViewsToCreate({
flatViewMaps,
standardAllFlatEntityMaps,
});
const viewFieldsToCreate = LIST_VIEW_FIELD_UNIVERSAL_IDENTIFIERS.filter(
(universalIdentifier) =>
!isDefined(flatViewFieldMaps.byUniversalIdentifier[universalIdentifier]),
).map((universalIdentifier) => {
const standardViewField =
findFlatEntityByUniversalIdentifier<FlatViewField>({
flatEntityMaps: standardAllFlatEntityMaps.flatViewFieldMaps,
universalIdentifier,
});
if (!isDefined(standardViewField)) {
throw new Error(
`Standard application is missing messageList view column ${universalIdentifier}`,
);
}
return standardViewField;
});
if (viewsToCreate.length === 0 && viewFieldsToCreate.length === 0) {
this.logger.log(
`messageList view already exists for workspace ${workspaceId}, skipping`,
);
return;
}
if (isDryRun) {
this.logger.log(
`[DRY RUN] Workspace ${workspaceId}: ${viewsToCreate.length} view(s), ${viewFieldsToCreate.length} view column(s)`,View on GitHub (pinned to 1f5dd2bbd2)
Solutions
- Confirm the standard seed defines the missing messageList view-column universal identifiers (grep the seed source).
- Rebuild and redeploy the image with the matching view-column seed.
- Verify the standard application loads correctly.
- Re-run the upgrade after redeployment.
Defensive patterns
Strategy: validation
Validate before calling
// Preflight: confirm the standard seed defines all messageList view columns.
const missing = LIST_VIEW_FIELD_UNIVERSAL_IDENTIFIERS.filter(
(id) => !isDefined(standardAllFlatEntityMaps.flatViewFieldMaps.byUniversalIdentifier[id]),
);
if (missing.length) {
throw new Error(`Image standard seed lacks messageList view columns: ${missing.join(', ')}; rebuild and redeploy.`);
} Type guard
import { isDefined } from '@twenty/shared';
function standardDefinesAllViewFields(
maps: { byUniversalIdentifier: Record<string, unknown> },
ids: string[],
): boolean {
return ids.every((id) => isDefined(maps.byUniversalIdentifier[id]));
} Prevention
- Build image from a single commit so view-column seed ships with the command.
- Preflight all referenced standard view-field identifiers before upgrade.
- Never cherry-pick a command without its seed updates.
When it happens
Trigger: Running the 2.20 upgrade from an image whose standard seed predates or omits the messageList view-column definitions. Cherry-picking the command without its seed update, or loading the wrong standard application.
Common situations: Code+seed version mismatch; build excluding the view-seed module; partial deployment.
Related errors
- Standard application is missing messageCampaign view column
- Standard application is missing the Message isDraft field me
- Standard application is missing messageCampaign field ${univ
- Standard application is missing messageCampaign view ${CAMPA
- Failed to create messageList view for workspace ${workspaceI
AI-assisted analysis of twentyhq/twenty@1f5dd2bbd2 (2026-08-12).
Data as JSON: /api/errors/127cc118aa04b452.
Report an issue: GitHub.