@memberjunction/core-entities 2.129.0 → 2.130.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -8,14 +8,14 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.ContentSourceParamSchema = exports.ContentProcessRunSchema = exports.ContentItemSchema = exports.ContentItemTagSchema = exports.ContentItemAttributeSchema = exports.ContentFileTypeSchema = exports.CompanyIntegrationSchema = exports.CompanyIntegrationRunSchema = exports.CompanyIntegrationRunDetailSchema = exports.CompanyIntegrationRunAPILogSchema = exports.CompanyIntegrationRecordMapSchema = exports.CompanySchema = exports.CommunicationRunSchema = exports.CommunicationProviderSchema = exports.CommunicationProviderMessageTypeSchema = exports.CommunicationLogSchema = exports.CommunicationBaseMessageTypeSchema = exports.AuthorizationSchema = exports.AuthorizationRoleSchema = exports.AuditLogSchema = exports.AuditLogTypeSchema = exports.ApplicationSchema = exports.ApplicationSettingSchema = exports.ApplicationEntitySchema = exports.AIResultCacheSchema = exports.AIPromptSchema = exports.AIPromptTypeSchema = exports.AIPromptCategorySchema = exports.AIModelSchema = exports.AIModelTypeSchema = exports.AIModelActionSchema = exports.AIAgentSchema = exports.AIAgentRequestSchema = exports.AIAgentNoteSchema = exports.AIAgentNoteTypeSchema = exports.AIAgentModelSchema = exports.AIAgentLearningCycleSchema = exports.AIAgentActionSchema = exports.AIActionSchema = exports.ActionSchema = exports.ActionResultCodeSchema = exports.ActionParamSchema = exports.ActionLibrarySchema = exports.ActionFilterSchema = exports.ActionExecutionLogSchema = exports.ActionContextSchema = exports.ActionContextTypeSchema = exports.ActionCategorySchema = exports.ActionAuthorizationSchema = exports.loadModule = void 0;
10
10
  exports.IntegrationSchema = exports.IntegrationURLFormatSchema = exports.GeneratedCodeSchema = exports.GeneratedCodeCategorySchema = exports.FileSchema = exports.FileStorageProviderSchema = exports.FileEntityRecordLinkSchema = exports.FileCategorySchema = exports.ExplorerNavigationItemSchema = exports.ErrorLogSchema = exports.EntitySettingSchema = exports.EntityRelationshipSchema = exports.EntityRelationshipDisplayComponentSchema = exports.EntityRecordDocumentSchema = exports.EntityPermissionSchema = exports.EntityFieldSchema = exports.EntityFieldValueSchema = exports.EntityDocumentSchema = exports.EntityDocumentTypeSchema = exports.EntityDocumentSettingSchema = exports.EntityDocumentRunSchema = exports.EntityCommunicationMessageTypeSchema = exports.EntityCommunicationFieldSchema = exports.EntityAIActionSchema = exports.EntityActionSchema = exports.EntityActionParamSchema = exports.EntityActionInvocationSchema = exports.EntityActionInvocationTypeSchema = exports.EntityActionFilterSchema = exports.EntitySchema = exports.EmployeeSchema = exports.EmployeeSkillSchema = exports.EmployeeRoleSchema = exports.EmployeeCompanyIntegrationSchema = exports.DuplicateRunSchema = exports.DuplicateRunDetailSchema = exports.DuplicateRunDetailMatchSchema = exports.DatasetSchema = exports.DatasetItemSchema = exports.DataContextSchema = exports.DataContextItemSchema = exports.DashboardSchema = exports.DashboardCategorySchema = exports.ConversationSchema = exports.ConversationDetailSchema = exports.ContentTypeSchema = exports.ContentTypeAttributeSchema = exports.ContentSourceSchema = exports.ContentSourceTypeSchema = exports.ContentSourceTypeParamSchema = void 0;
11
- exports.CredentialCategorySchema = exports.ConversationDetailRatingSchema = exports.ConversationDetailArtifactSchema = exports.ConversationArtifactSchema = exports.ConversationArtifactVersionSchema = exports.ConversationArtifactPermissionSchema = exports.ComponentSchema = exports.ComponentRegistrySchema = exports.ComponentLibraryLinkSchema = exports.ComponentLibrarySchema = exports.ComponentDependencySchema = exports.CollectionSchema = exports.CollectionPermissionSchema = exports.CollectionArtifactSchema = exports.ArtifactSchema = exports.ArtifactVersionSchema = exports.ArtifactVersionAttributeSchema = exports.ArtifactUseSchema = exports.ArtifactTypeSchema = exports.ArtifactPermissionSchema = exports.AIVendorSchema = exports.AIVendorTypeSchema = exports.AIVendorTypeDefinitionSchema = exports.AIPromptRunSchema = exports.AIPromptModelSchema = exports.AIModelVendorSchema = exports.AIModelPriceUnitTypeSchema = exports.AIModelPriceTypeSchema = exports.AIModelCostSchema = exports.AICredentialBindingSchema = exports.AIConfigurationSchema = exports.AIConfigurationParamSchema = exports.AIAgentTypeSchema = exports.AIAgentStepSchema = exports.AIAgentStepPathSchema = exports.AIAgentRunSchema = exports.AIAgentRunStepSchema = exports.AIAgentRelationshipSchema = exports.AIAgentPromptSchema = exports.AIAgentPermissionSchema = exports.AIAgentExampleSchema = exports.AIAgentDataSourceSchema = exports.AIAgentConfigurationSchema = exports.AIAgentArtifactTypeSchema = exports.AccessControlRuleSchema = exports.ListSchema = exports.ListDetailSchema = exports.ListCategorySchema = exports.LibraryItemSchema = exports.LibrarySchema = void 0;
12
- exports.ReportSnapshotSchema = exports.ReportCategorySchema = exports.RecordMergeLogSchema = exports.RecordMergeDeletionLogSchema = exports.RecordChangeSchema = exports.RecordChangeReplayRunSchema = exports.RecommendationSchema = exports.RecommendationRunSchema = exports.RecommendationProviderSchema = exports.RecommendationItemSchema = exports.QueueSchema = exports.QueueTypeSchema = exports.QueueTaskSchema = exports.QueryPermissionSchema = exports.QueryFieldSchema = exports.QueryEntitySchema = exports.QueryCategorySchema = exports.QuerySchema = exports.OutputTriggerTypeSchema = exports.OutputFormatTypeSchema = exports.OutputDeliveryTypeSchema = exports.UserSettingSchema = exports.TestSchema = exports.TestTypeSchema = exports.TestSuiteSchema = exports.TestSuiteTestSchema = exports.TestSuiteRunSchema = exports.TestRunSchema = exports.TestRunFeedbackSchema = exports.TestRubricSchema = exports.TaskSchema = exports.TaskTypeSchema = exports.TaskDependencySchema = exports.ScheduledJobSchema = exports.ScheduledJobTypeSchema = exports.ScheduledJobRunSchema = exports.ReportVersionSchema = exports.ReportUserStateSchema = exports.RecordLinkSchema = exports.QueryParameterSchema = exports.PublicLinkSchema = exports.ProjectSchema = exports.EnvironmentSchema = exports.EncryptionKeySchema = exports.EncryptionKeySourceSchema = exports.EncryptionAlgorithmSchema = exports.DashboardUserStateSchema = exports.DashboardUserPreferenceSchema = exports.CredentialSchema = exports.CredentialTypeSchema = void 0;
13
- exports.AIAgentModelEntity = exports.AIAgentLearningCycleEntity = exports.AIAgentActionEntity = exports.AIActionEntity = exports.ActionEntity = exports.ActionResultCodeEntity = exports.ActionParamEntity = exports.ActionLibraryEntity = exports.ActionFilterEntity = exports.ActionExecutionLogEntity = exports.ActionContextEntity = exports.ActionContextTypeEntity = exports.ActionCategoryEntity = exports.ActionAuthorizationEntity = exports.WorkspaceSchema = exports.WorkspaceItemSchema = exports.WorkflowSchema = exports.WorkflowRunSchema = exports.WorkflowEngineSchema = exports.VersionInstallationSchema = exports.VectorIndexSchema = exports.VectorDatabaseSchema = exports.UserSchema = exports.UserViewSchema = exports.UserViewRunSchema = exports.UserViewRunDetailSchema = exports.UserViewCategorySchema = exports.UserRoleSchema = exports.UserRecordLogSchema = exports.UserNotificationSchema = exports.UserFavoriteSchema = exports.UserApplicationSchema = exports.UserApplicationEntitySchema = exports.TemplateSchema = exports.TemplateParamSchema = exports.TemplateContentSchema = exports.TemplateContentTypeSchema = exports.TemplateCategorySchema = exports.TagSchema = exports.TaggedItemSchema = exports.SkillSchema = exports.SchemaInfoSchema = exports.ScheduledActionSchema = exports.ScheduledActionParamSchema = exports.RowLevelSecurityFilterSchema = exports.RoleSchema = exports.ResourceTypeSchema = exports.ResourcePermissionSchema = exports.ResourceLinkSchema = exports.ReportSchema = void 0;
14
- exports.DuplicateRunDetailEntity = exports.DuplicateRunDetailMatchEntity = exports.DatasetEntity = exports.DatasetItemEntity = exports.DataContextEntity = exports.DataContextItemEntity = exports.DashboardEntity = exports.DashboardCategoryEntity = exports.ConversationEntity = exports.ConversationDetailEntity = exports.ContentTypeEntity = exports.ContentTypeAttributeEntity = exports.ContentSourceEntity = exports.ContentSourceTypeEntity = exports.ContentSourceTypeParamEntity = exports.ContentSourceParamEntity = exports.ContentProcessRunEntity = exports.ContentItemEntity = exports.ContentItemTagEntity = exports.ContentItemAttributeEntity = exports.ContentFileTypeEntity = exports.CompanyIntegrationEntity = exports.CompanyIntegrationRunEntity = exports.CompanyIntegrationRunDetailEntity = exports.CompanyIntegrationRunAPILogEntity = exports.CompanyIntegrationRecordMapEntity = exports.CompanyEntity = exports.CommunicationRunEntity = exports.CommunicationProviderEntity = exports.CommunicationProviderMessageTypeEntity = exports.CommunicationLogEntity = exports.CommunicationBaseMessageTypeEntity = exports.AuthorizationEntity = exports.AuthorizationRoleEntity = exports.AuditLogEntity = exports.AuditLogTypeEntity = exports.ApplicationEntity = exports.ApplicationSettingEntity = exports.ApplicationEntityEntity = exports.AIResultCacheEntity = exports.AIPromptEntity = exports.AIPromptTypeEntity = exports.AIPromptCategoryEntity = exports.AIModelEntity = exports.AIModelTypeEntity = exports.AIModelActionEntity = exports.AIAgentEntity = exports.AIAgentRequestEntity = exports.AIAgentNoteEntity = exports.AIAgentNoteTypeEntity = void 0;
15
- exports.AIAgentRunEntity = exports.AIAgentRunStepEntity = exports.AIAgentRelationshipEntity = exports.AIAgentPromptEntity = exports.AIAgentPermissionEntity = exports.AIAgentExampleEntity = exports.AIAgentDataSourceEntity = exports.AIAgentConfigurationEntity = exports.AIAgentArtifactTypeEntity = exports.AccessControlRuleEntity = exports.ListEntity = exports.ListDetailEntity = exports.ListCategoryEntity = exports.LibraryItemEntity = exports.LibraryEntity = exports.IntegrationEntity = exports.IntegrationURLFormatEntity = exports.GeneratedCodeEntity = exports.GeneratedCodeCategoryEntity = exports.FileEntity = exports.FileStorageProviderEntity = exports.FileEntityRecordLinkEntity = exports.FileCategoryEntity = exports.ExplorerNavigationItemEntity = exports.ErrorLogEntity = exports.EntitySettingEntity = exports.EntityRelationshipEntity = exports.EntityRelationshipDisplayComponentEntity = exports.EntityRecordDocumentEntity = exports.EntityPermissionEntity = exports.EntityFieldEntity = exports.EntityFieldValueEntity = exports.EntityDocumentEntity = exports.EntityDocumentTypeEntity = exports.EntityDocumentSettingEntity = exports.EntityDocumentRunEntity = exports.EntityCommunicationMessageTypeEntity = exports.EntityCommunicationFieldEntity = exports.EntityAIActionEntity = exports.EntityActionEntity = exports.EntityActionParamEntity = exports.EntityActionInvocationEntity = exports.EntityActionInvocationTypeEntity = exports.EntityActionFilterEntity = exports.EntityEntity = exports.EmployeeEntity = exports.EmployeeSkillEntity = exports.EmployeeRoleEntity = exports.EmployeeCompanyIntegrationEntity = exports.DuplicateRunEntity = void 0;
16
- exports.ScheduledJobRunEntity = exports.ReportVersionEntity = exports.ReportUserStateEntity = exports.RecordLinkEntity = exports.QueryParameterEntity = exports.PublicLinkEntity = exports.ProjectEntity = exports.EnvironmentEntity = exports.EncryptionKeyEntity = exports.EncryptionKeySourceEntity = exports.EncryptionAlgorithmEntity = exports.DashboardUserStateEntity = exports.DashboardUserPreferenceEntity = exports.CredentialEntity = exports.CredentialTypeEntity = exports.CredentialCategoryEntity = exports.ConversationDetailRatingEntity = exports.ConversationDetailArtifactEntity = exports.ConversationArtifactEntity = exports.ConversationArtifactVersionEntity = exports.ConversationArtifactPermissionEntity = exports.ComponentEntity = exports.ComponentRegistryEntity = exports.ComponentLibraryLinkEntity = exports.ComponentLibraryEntity = exports.ComponentDependencyEntity = exports.CollectionEntity = exports.CollectionPermissionEntity = exports.CollectionArtifactEntity = exports.ArtifactEntity = exports.ArtifactVersionEntity = exports.ArtifactVersionAttributeEntity = exports.ArtifactUseEntity = exports.ArtifactTypeEntity = exports.ArtifactPermissionEntity = exports.AIVendorEntity = exports.AIVendorTypeEntity = exports.AIVendorTypeDefinitionEntity = exports.AIPromptRunEntity = exports.AIPromptModelEntity = exports.AIModelVendorEntity = exports.AIModelPriceUnitTypeEntity = exports.AIModelPriceTypeEntity = exports.AIModelCostEntity = exports.AICredentialBindingEntity = exports.AIConfigurationEntity = exports.AIConfigurationParamEntity = exports.AIAgentTypeEntity = exports.AIAgentStepEntity = exports.AIAgentStepPathEntity = void 0;
17
- exports.TemplateContentEntity = exports.TemplateContentTypeEntity = exports.TemplateCategoryEntity = exports.TagEntity = exports.TaggedItemEntity = exports.SkillEntity = exports.SchemaInfoEntity = exports.ScheduledActionEntity = exports.ScheduledActionParamEntity = exports.RowLevelSecurityFilterEntity = exports.RoleEntity = exports.ResourceTypeEntity = exports.ResourcePermissionEntity = exports.ResourceLinkEntity = exports.ReportEntity = exports.ReportSnapshotEntity = exports.ReportCategoryEntity = exports.RecordMergeLogEntity = exports.RecordMergeDeletionLogEntity = exports.RecordChangeEntity = exports.RecordChangeReplayRunEntity = exports.RecommendationEntity = exports.RecommendationRunEntity = exports.RecommendationProviderEntity = exports.RecommendationItemEntity = exports.QueueEntity = exports.QueueTypeEntity = exports.QueueTaskEntity = exports.QueryPermissionEntity = exports.QueryFieldEntity = exports.QueryEntityEntity = exports.QueryCategoryEntity = exports.QueryEntity = exports.OutputTriggerTypeEntity = exports.OutputFormatTypeEntity = exports.OutputDeliveryTypeEntity = exports.UserSettingEntity = exports.TestEntity = exports.TestTypeEntity = exports.TestSuiteEntity = exports.TestSuiteTestEntity = exports.TestSuiteRunEntity = exports.TestRunEntity = exports.TestRunFeedbackEntity = exports.TestRubricEntity = exports.TaskEntity = exports.TaskTypeEntity = exports.TaskDependencyEntity = exports.ScheduledJobEntity = exports.ScheduledJobTypeEntity = void 0;
18
- exports.WorkspaceEntity = exports.WorkspaceItemEntity = exports.WorkflowEntity = exports.WorkflowRunEntity = exports.WorkflowEngineEntity = exports.VersionInstallationEntity = exports.VectorIndexEntity = exports.VectorDatabaseEntity = exports.UserEntity = exports.UserViewEntity = exports.UserViewRunEntity = exports.UserViewRunDetailEntity = exports.UserViewCategoryEntity = exports.UserRoleEntity = exports.UserRecordLogEntity = exports.UserNotificationEntity = exports.UserFavoriteEntity = exports.UserApplicationEntity = exports.UserApplicationEntityEntity = exports.TemplateEntity = exports.TemplateParamEntity = void 0;
11
+ exports.ConversationArtifactPermissionSchema = exports.ComponentSchema = exports.ComponentRegistrySchema = exports.ComponentLibraryLinkSchema = exports.ComponentLibrarySchema = exports.ComponentDependencySchema = exports.CollectionSchema = exports.CollectionPermissionSchema = exports.CollectionArtifactSchema = exports.ArtifactSchema = exports.ArtifactVersionSchema = exports.ArtifactVersionAttributeSchema = exports.ArtifactUseSchema = exports.ArtifactTypeSchema = exports.ArtifactPermissionSchema = exports.AIVendorSchema = exports.AIVendorTypeSchema = exports.AIVendorTypeDefinitionSchema = exports.AIPromptRunSchema = exports.AIPromptModelSchema = exports.AIModelVendorSchema = exports.AIModelPriceUnitTypeSchema = exports.AIModelPriceTypeSchema = exports.AIModelModalitySchema = exports.AIModelCostSchema = exports.AIModelArchitectureSchema = exports.AIModalitySchema = exports.AICredentialBindingSchema = exports.AIConfigurationSchema = exports.AIConfigurationParamSchema = exports.AIArchitectureSchema = exports.AIAgentTypeSchema = exports.AIAgentStepSchema = exports.AIAgentStepPathSchema = exports.AIAgentRunSchema = exports.AIAgentRunStepSchema = exports.AIAgentRelationshipSchema = exports.AIAgentPromptSchema = exports.AIAgentPermissionSchema = exports.AIAgentModalitySchema = exports.AIAgentExampleSchema = exports.AIAgentDataSourceSchema = exports.AIAgentConfigurationSchema = exports.AIAgentArtifactTypeSchema = exports.AccessControlRuleSchema = exports.ListSchema = exports.ListDetailSchema = exports.ListCategorySchema = exports.LibraryItemSchema = exports.LibrarySchema = void 0;
12
+ exports.RecommendationSchema = exports.RecommendationRunSchema = exports.RecommendationProviderSchema = exports.RecommendationItemSchema = exports.QueueSchema = exports.QueueTypeSchema = exports.QueueTaskSchema = exports.QueryPermissionSchema = exports.QueryFieldSchema = exports.QueryEntitySchema = exports.QueryCategorySchema = exports.QuerySchema = exports.OutputTriggerTypeSchema = exports.OutputFormatTypeSchema = exports.OutputDeliveryTypeSchema = exports.UserSettingSchema = exports.TestSchema = exports.TestTypeSchema = exports.TestSuiteSchema = exports.TestSuiteTestSchema = exports.TestSuiteRunSchema = exports.TestRunSchema = exports.TestRunFeedbackSchema = exports.TestRubricSchema = exports.TaskSchema = exports.TaskTypeSchema = exports.TaskDependencySchema = exports.ScheduledJobSchema = exports.ScheduledJobTypeSchema = exports.ScheduledJobRunSchema = exports.ReportVersionSchema = exports.ReportUserStateSchema = exports.RecordLinkSchema = exports.QueryParameterSchema = exports.PublicLinkSchema = exports.ProjectSchema = exports.EnvironmentSchema = exports.EncryptionKeySchema = exports.EncryptionKeySourceSchema = exports.EncryptionAlgorithmSchema = exports.DashboardUserStateSchema = exports.DashboardUserPreferenceSchema = exports.CredentialSchema = exports.CredentialTypeSchema = exports.CredentialCategorySchema = exports.ConversationDetailRatingSchema = exports.ConversationDetailAttachmentSchema = exports.ConversationDetailArtifactSchema = exports.ConversationArtifactSchema = exports.ConversationArtifactVersionSchema = void 0;
13
+ exports.ActionParamEntity = exports.ActionLibraryEntity = exports.ActionFilterEntity = exports.ActionExecutionLogEntity = exports.ActionContextEntity = exports.ActionContextTypeEntity = exports.ActionCategoryEntity = exports.ActionAuthorizationEntity = exports.WorkspaceSchema = exports.WorkspaceItemSchema = exports.WorkflowSchema = exports.WorkflowRunSchema = exports.WorkflowEngineSchema = exports.VersionInstallationSchema = exports.VectorIndexSchema = exports.VectorDatabaseSchema = exports.UserSchema = exports.UserViewSchema = exports.UserViewRunSchema = exports.UserViewRunDetailSchema = exports.UserViewCategorySchema = exports.UserRoleSchema = exports.UserRecordLogSchema = exports.UserNotificationSchema = exports.UserFavoriteSchema = exports.UserApplicationSchema = exports.UserApplicationEntitySchema = exports.TemplateSchema = exports.TemplateParamSchema = exports.TemplateContentSchema = exports.TemplateContentTypeSchema = exports.TemplateCategorySchema = exports.TagSchema = exports.TaggedItemSchema = exports.SkillSchema = exports.SchemaInfoSchema = exports.ScheduledActionSchema = exports.ScheduledActionParamSchema = exports.RowLevelSecurityFilterSchema = exports.RoleSchema = exports.ResourceTypeSchema = exports.ResourcePermissionSchema = exports.ResourceLinkSchema = exports.ReportSchema = exports.ReportSnapshotSchema = exports.ReportCategorySchema = exports.RecordMergeLogSchema = exports.RecordMergeDeletionLogSchema = exports.RecordChangeSchema = exports.RecordChangeReplayRunSchema = void 0;
14
+ exports.DashboardEntity = exports.DashboardCategoryEntity = exports.ConversationEntity = exports.ConversationDetailEntity = exports.ContentTypeEntity = exports.ContentTypeAttributeEntity = exports.ContentSourceEntity = exports.ContentSourceTypeEntity = exports.ContentSourceTypeParamEntity = exports.ContentSourceParamEntity = exports.ContentProcessRunEntity = exports.ContentItemEntity = exports.ContentItemTagEntity = exports.ContentItemAttributeEntity = exports.ContentFileTypeEntity = exports.CompanyIntegrationEntity = exports.CompanyIntegrationRunEntity = exports.CompanyIntegrationRunDetailEntity = exports.CompanyIntegrationRunAPILogEntity = exports.CompanyIntegrationRecordMapEntity = exports.CompanyEntity = exports.CommunicationRunEntity = exports.CommunicationProviderEntity = exports.CommunicationProviderMessageTypeEntity = exports.CommunicationLogEntity = exports.CommunicationBaseMessageTypeEntity = exports.AuthorizationEntity = exports.AuthorizationRoleEntity = exports.AuditLogEntity = exports.AuditLogTypeEntity = exports.ApplicationEntity = exports.ApplicationSettingEntity = exports.ApplicationEntityEntity = exports.AIResultCacheEntity = exports.AIPromptEntity = exports.AIPromptTypeEntity = exports.AIPromptCategoryEntity = exports.AIModelEntity = exports.AIModelTypeEntity = exports.AIModelActionEntity = exports.AIAgentEntity = exports.AIAgentRequestEntity = exports.AIAgentNoteEntity = exports.AIAgentNoteTypeEntity = exports.AIAgentModelEntity = exports.AIAgentLearningCycleEntity = exports.AIAgentActionEntity = exports.AIActionEntity = exports.ActionEntity = exports.ActionResultCodeEntity = void 0;
15
+ exports.AIAgentDataSourceEntity = exports.AIAgentConfigurationEntity = exports.AIAgentArtifactTypeEntity = exports.AccessControlRuleEntity = exports.ListEntity = exports.ListDetailEntity = exports.ListCategoryEntity = exports.LibraryItemEntity = exports.LibraryEntity = exports.IntegrationEntity = exports.IntegrationURLFormatEntity = exports.GeneratedCodeEntity = exports.GeneratedCodeCategoryEntity = exports.FileEntity = exports.FileStorageProviderEntity = exports.FileEntityRecordLinkEntity = exports.FileCategoryEntity = exports.ExplorerNavigationItemEntity = exports.ErrorLogEntity = exports.EntitySettingEntity = exports.EntityRelationshipEntity = exports.EntityRelationshipDisplayComponentEntity = exports.EntityRecordDocumentEntity = exports.EntityPermissionEntity = exports.EntityFieldEntity = exports.EntityFieldValueEntity = exports.EntityDocumentEntity = exports.EntityDocumentTypeEntity = exports.EntityDocumentSettingEntity = exports.EntityDocumentRunEntity = exports.EntityCommunicationMessageTypeEntity = exports.EntityCommunicationFieldEntity = exports.EntityAIActionEntity = exports.EntityActionEntity = exports.EntityActionParamEntity = exports.EntityActionInvocationEntity = exports.EntityActionInvocationTypeEntity = exports.EntityActionFilterEntity = exports.EntityEntity = exports.EmployeeEntity = exports.EmployeeSkillEntity = exports.EmployeeRoleEntity = exports.EmployeeCompanyIntegrationEntity = exports.DuplicateRunEntity = exports.DuplicateRunDetailEntity = exports.DuplicateRunDetailMatchEntity = exports.DatasetEntity = exports.DatasetItemEntity = exports.DataContextEntity = exports.DataContextItemEntity = void 0;
16
+ exports.DashboardUserPreferenceEntity = exports.CredentialEntity = exports.CredentialTypeEntity = exports.CredentialCategoryEntity = exports.ConversationDetailRatingEntity = exports.ConversationDetailAttachmentEntity = exports.ConversationDetailArtifactEntity = exports.ConversationArtifactEntity = exports.ConversationArtifactVersionEntity = exports.ConversationArtifactPermissionEntity = exports.ComponentEntity = exports.ComponentRegistryEntity = exports.ComponentLibraryLinkEntity = exports.ComponentLibraryEntity = exports.ComponentDependencyEntity = exports.CollectionEntity = exports.CollectionPermissionEntity = exports.CollectionArtifactEntity = exports.ArtifactEntity = exports.ArtifactVersionEntity = exports.ArtifactVersionAttributeEntity = exports.ArtifactUseEntity = exports.ArtifactTypeEntity = exports.ArtifactPermissionEntity = exports.AIVendorEntity = exports.AIVendorTypeEntity = exports.AIVendorTypeDefinitionEntity = exports.AIPromptRunEntity = exports.AIPromptModelEntity = exports.AIModelVendorEntity = exports.AIModelPriceUnitTypeEntity = exports.AIModelPriceTypeEntity = exports.AIModelModalityEntity = exports.AIModelCostEntity = exports.AIModelArchitectureEntity = exports.AIModalityEntity = exports.AICredentialBindingEntity = exports.AIConfigurationEntity = exports.AIConfigurationParamEntity = exports.AIArchitectureEntity = exports.AIAgentTypeEntity = exports.AIAgentStepEntity = exports.AIAgentStepPathEntity = exports.AIAgentRunEntity = exports.AIAgentRunStepEntity = exports.AIAgentRelationshipEntity = exports.AIAgentPromptEntity = exports.AIAgentPermissionEntity = exports.AIAgentModalityEntity = exports.AIAgentExampleEntity = void 0;
17
+ exports.ResourcePermissionEntity = exports.ResourceLinkEntity = exports.ReportEntity = exports.ReportSnapshotEntity = exports.ReportCategoryEntity = exports.RecordMergeLogEntity = exports.RecordMergeDeletionLogEntity = exports.RecordChangeEntity = exports.RecordChangeReplayRunEntity = exports.RecommendationEntity = exports.RecommendationRunEntity = exports.RecommendationProviderEntity = exports.RecommendationItemEntity = exports.QueueEntity = exports.QueueTypeEntity = exports.QueueTaskEntity = exports.QueryPermissionEntity = exports.QueryFieldEntity = exports.QueryEntityEntity = exports.QueryCategoryEntity = exports.QueryEntity = exports.OutputTriggerTypeEntity = exports.OutputFormatTypeEntity = exports.OutputDeliveryTypeEntity = exports.UserSettingEntity = exports.TestEntity = exports.TestTypeEntity = exports.TestSuiteEntity = exports.TestSuiteTestEntity = exports.TestSuiteRunEntity = exports.TestRunEntity = exports.TestRunFeedbackEntity = exports.TestRubricEntity = exports.TaskEntity = exports.TaskTypeEntity = exports.TaskDependencyEntity = exports.ScheduledJobEntity = exports.ScheduledJobTypeEntity = exports.ScheduledJobRunEntity = exports.ReportVersionEntity = exports.ReportUserStateEntity = exports.RecordLinkEntity = exports.QueryParameterEntity = exports.PublicLinkEntity = exports.ProjectEntity = exports.EnvironmentEntity = exports.EncryptionKeyEntity = exports.EncryptionKeySourceEntity = exports.EncryptionAlgorithmEntity = exports.DashboardUserStateEntity = void 0;
18
+ exports.WorkspaceEntity = exports.WorkspaceItemEntity = exports.WorkflowEntity = exports.WorkflowRunEntity = exports.WorkflowEngineEntity = exports.VersionInstallationEntity = exports.VectorIndexEntity = exports.VectorDatabaseEntity = exports.UserEntity = exports.UserViewEntity = exports.UserViewRunEntity = exports.UserViewRunDetailEntity = exports.UserViewCategoryEntity = exports.UserRoleEntity = exports.UserRecordLogEntity = exports.UserNotificationEntity = exports.UserFavoriteEntity = exports.UserApplicationEntity = exports.UserApplicationEntityEntity = exports.TemplateEntity = exports.TemplateParamEntity = exports.TemplateContentEntity = exports.TemplateContentTypeEntity = exports.TemplateCategoryEntity = exports.TagEntity = exports.TaggedItemEntity = exports.SkillEntity = exports.SchemaInfoEntity = exports.ScheduledActionEntity = exports.ScheduledActionParamEntity = exports.RowLevelSecurityFilterEntity = exports.RoleEntity = exports.ResourceTypeEntity = void 0;
19
19
  const core_1 = require("@memberjunction/core");
20
20
  const global_1 = require("@memberjunction/global");
21
21
  const zod_1 = require("zod");
@@ -1195,7 +1195,7 @@ exports.AIAgentSchema = zod_1.z.object({
1195
1195
  * * Default Value: getutcdate()`),
1196
1196
  ParentID: zod_1.z.string().nullable().describe(`
1197
1197
  * * Field Name: ParentID
1198
- * * Display Name: Parent ID
1198
+ * * Display Name: Parent
1199
1199
  * * SQL Data Type: uniqueidentifier
1200
1200
  * * Related Entity/Foreign Key: AI Agents (vwAIAgents.ID)
1201
1201
  * * Description: References the parent agent in the hierarchical structure. If NULL, this is a root (top-level) agent.`),
@@ -1234,7 +1234,7 @@ exports.AIAgentSchema = zod_1.z.object({
1234
1234
  * * Description: Number of messages that triggers context compression when EnableContextCompression is true.`),
1235
1235
  ContextCompressionPromptID: zod_1.z.string().nullable().describe(`
1236
1236
  * * Field Name: ContextCompressionPromptID
1237
- * * Display Name: Context Compression Prompt ID
1237
+ * * Display Name: Context Compression Prompt
1238
1238
  * * SQL Data Type: uniqueidentifier
1239
1239
  * * Related Entity/Foreign Key: AI Prompts (vwAIPrompts.ID)`),
1240
1240
  ContextCompressionMessageRetentionCount: zod_1.z.number().nullable().describe(`
@@ -1244,7 +1244,7 @@ exports.AIAgentSchema = zod_1.z.object({
1244
1244
  * * Description: Number of recent messages to keep uncompressed when context compression is applied.`),
1245
1245
  TypeID: zod_1.z.string().nullable().describe(`
1246
1246
  * * Field Name: TypeID
1247
- * * Display Name: Type ID
1247
+ * * Display Name: Type
1248
1248
  * * SQL Data Type: uniqueidentifier
1249
1249
  * * Related Entity/Foreign Key: MJ: AI Agent Types (vwAIAgentTypes.ID)
1250
1250
  * * Description: Reference to the AIAgentType that defines the category and system-level behavior for this agent. Cannot be null.`),
@@ -1397,13 +1397,13 @@ if this limit is exceeded.`),
1397
1397
  * * Description: Controls how Chat next steps are handled. When null (default), Chat propagates to caller. When set to Success, Failed, or Retry, Chat steps are remapped to that value and re-validated.`),
1398
1398
  DefaultArtifactTypeID: zod_1.z.string().nullable().describe(`
1399
1399
  * * Field Name: DefaultArtifactTypeID
1400
- * * Display Name: Default Artifact Type ID
1400
+ * * Display Name: Default Artifact Type
1401
1401
  * * SQL Data Type: uniqueidentifier
1402
1402
  * * Related Entity/Foreign Key: MJ: Artifact Types (vwArtifactTypes.ID)
1403
1403
  * * Description: Default artifact type produced by this agent. This is the primary artifact type; additional artifact types can be linked via AIAgentArtifactType junction table. Can be NULL if agent does not produce artifacts by default.`),
1404
1404
  OwnerUserID: zod_1.z.string().describe(`
1405
1405
  * * Field Name: OwnerUserID
1406
- * * Display Name: Owner User ID
1406
+ * * Display Name: Owner User
1407
1407
  * * SQL Data Type: uniqueidentifier
1408
1408
  * * Related Entity/Foreign Key: Users (vwUsers.ID)
1409
1409
  * * Default Value: ECAFCCEC-6A37-EF11-86D4-000D3A4E707E
@@ -1509,13 +1509,29 @@ if this limit is exceeded.`),
1509
1509
  * * Display Name: Max Messages
1510
1510
  * * SQL Data Type: int
1511
1511
  * * Description: Maximum number of conversation messages to include when MessageMode is 'Latest' or 'Bookend'. NULL means no limit (ignored for 'None' and 'All' modes). Must be greater than 0 if specified. For 'Latest': keeps most recent N messages. For 'Bookend': keeps first 2 + most recent (N-2) messages.`),
1512
+ AttachmentStorageProviderID: zod_1.z.string().nullable().describe(`
1513
+ * * Field Name: AttachmentStorageProviderID
1514
+ * * Display Name: Attachment Storage Provider
1515
+ * * SQL Data Type: uniqueidentifier
1516
+ * * Related Entity/Foreign Key: File Storage Providers (vwFileStorageProviders.ID)
1517
+ * * Description: File storage provider for large attachments. Overrides the default from AIConfiguration. NULL uses system default.`),
1518
+ AttachmentRootPath: zod_1.z.string().nullable().describe(`
1519
+ * * Field Name: AttachmentRootPath
1520
+ * * Display Name: Attachment Root Path
1521
+ * * SQL Data Type: nvarchar(500)
1522
+ * * Description: Base path within the storage provider for this agent's attachments. Agent run ID and sequence number are appended to create unique paths. Format: /folder/subfolder`),
1523
+ InlineStorageThresholdBytes: zod_1.z.number().nullable().describe(`
1524
+ * * Field Name: InlineStorageThresholdBytes
1525
+ * * Display Name: Inline Storage Threshold (Bytes)
1526
+ * * SQL Data Type: int
1527
+ * * Description: File size threshold for inline storage. Files <= this size are stored as base64 inline, larger files use MJStorage. NULL uses system default (1MB). Set to 0 to always use MJStorage.`),
1512
1528
  Parent: zod_1.z.string().nullable().describe(`
1513
1529
  * * Field Name: Parent
1514
1530
  * * Display Name: Parent
1515
1531
  * * SQL Data Type: nvarchar(255)`),
1516
1532
  ContextCompressionPrompt: zod_1.z.string().nullable().describe(`
1517
1533
  * * Field Name: ContextCompressionPrompt
1518
- * * Display Name: Context Compression Prompt
1534
+ * * Display Name: Context Compression Prompt Text
1519
1535
  * * SQL Data Type: nvarchar(255)`),
1520
1536
  Type: zod_1.z.string().nullable().describe(`
1521
1537
  * * Field Name: Type
@@ -1529,9 +1545,13 @@ if this limit is exceeded.`),
1529
1545
  * * Field Name: OwnerUser
1530
1546
  * * Display Name: Owner User
1531
1547
  * * SQL Data Type: nvarchar(100)`),
1548
+ AttachmentStorageProvider: zod_1.z.string().nullable().describe(`
1549
+ * * Field Name: AttachmentStorageProvider
1550
+ * * Display Name: Attachment Storage Provider Name
1551
+ * * SQL Data Type: nvarchar(50)`),
1532
1552
  RootParentID: zod_1.z.string().nullable().describe(`
1533
1553
  * * Field Name: RootParentID
1534
- * * Display Name: Root Parent ID
1554
+ * * Display Name: Root Parent
1535
1555
  * * SQL Data Type: uniqueidentifier`),
1536
1556
  });
1537
1557
  /**
@@ -1605,6 +1625,26 @@ exports.AIModelTypeSchema = zod_1.z.object({
1605
1625
  * * Display Name: Updated At
1606
1626
  * * SQL Data Type: datetimeoffset
1607
1627
  * * Default Value: getutcdate()`),
1628
+ DefaultInputModalityID: zod_1.z.string().describe(`
1629
+ * * Field Name: DefaultInputModalityID
1630
+ * * Display Name: Default Input Modality
1631
+ * * SQL Data Type: uniqueidentifier
1632
+ * * Related Entity/Foreign Key: MJ: AI Modalities (vwAIModalities.ID)
1633
+ * * Description: Default input modality for this model type. Models of this type inherit this as their primary input modality unless overridden.`),
1634
+ DefaultOutputModalityID: zod_1.z.string().describe(`
1635
+ * * Field Name: DefaultOutputModalityID
1636
+ * * Display Name: Default Output Modality
1637
+ * * SQL Data Type: uniqueidentifier
1638
+ * * Related Entity/Foreign Key: MJ: AI Modalities (vwAIModalities.ID)
1639
+ * * Description: Default output modality for this model type. Models of this type inherit this as their primary output modality unless overridden.`),
1640
+ DefaultInputModality: zod_1.z.string().describe(`
1641
+ * * Field Name: DefaultInputModality
1642
+ * * Display Name: Default Input Modality
1643
+ * * SQL Data Type: nvarchar(50)`),
1644
+ DefaultOutputModality: zod_1.z.string().describe(`
1645
+ * * Field Name: DefaultOutputModality
1646
+ * * Display Name: Default Output Modality
1647
+ * * SQL Data Type: nvarchar(50)`),
1608
1648
  });
1609
1649
  /**
1610
1650
  * zod schema definition for the entity AI Models
@@ -1625,7 +1665,7 @@ exports.AIModelSchema = zod_1.z.object({
1625
1665
  * * SQL Data Type: nvarchar(MAX)`),
1626
1666
  AIModelTypeID: zod_1.z.string().describe(`
1627
1667
  * * Field Name: AIModelTypeID
1628
- * * Display Name: AI Model Type ID
1668
+ * * Display Name: AI Model Type
1629
1669
  * * SQL Data Type: uniqueidentifier
1630
1670
  * * Related Entity/Foreign Key: AI Model Types (vwAIModelTypes.ID)`),
1631
1671
  PowerRank: zod_1.z.number().nullable().describe(`
@@ -1636,7 +1676,7 @@ exports.AIModelSchema = zod_1.z.object({
1636
1676
  * * Description: Optional column that ranks the power of the AI model. Default is 0 and should be non-negative.`),
1637
1677
  IsActive: zod_1.z.boolean().describe(`
1638
1678
  * * Field Name: IsActive
1639
- * * Display Name: Is Active
1679
+ * * Display Name: Active
1640
1680
  * * SQL Data Type: bit
1641
1681
  * * Default Value: 1
1642
1682
  * * Description: Controls whether this AI model is available for use in the system.`),
@@ -1667,9 +1707,21 @@ exports.AIModelSchema = zod_1.z.object({
1667
1707
  * * Display Name: Model Selection Insights
1668
1708
  * * SQL Data Type: nvarchar(MAX)
1669
1709
  * * Description: This column stores unstructured text notes that provide insights into what the model is particularly good at and areas where it may not perform as well. These notes can be used by a human or an AI to determine if the model is a good fit for various purposes.`),
1710
+ InheritTypeModalities: zod_1.z.boolean().describe(`
1711
+ * * Field Name: InheritTypeModalities
1712
+ * * Display Name: Inherit Type Modalities
1713
+ * * SQL Data Type: bit
1714
+ * * Default Value: 1
1715
+ * * Description: When TRUE (default), the model inherits default input/output modalities from its AIModelType AND can extend with additional modalities via AIModelModality records. When FALSE, only modalities explicitly defined in AIModelModality are used.`),
1716
+ PriorVersionID: zod_1.z.string().nullable().describe(`
1717
+ * * Field Name: PriorVersionID
1718
+ * * Display Name: Prior Version
1719
+ * * SQL Data Type: uniqueidentifier
1720
+ * * Related Entity/Foreign Key: AI Models (vwAIModels.ID)
1721
+ * * Description: Reference to the previous version of this model, creating a version lineage chain. For example, GPT-4 Turbo might reference GPT-4 as its prior version.`),
1670
1722
  AIModelType: zod_1.z.string().describe(`
1671
1723
  * * Field Name: AIModelType
1672
- * * Display Name: AIModel Type
1724
+ * * Display Name: AI Model Type
1673
1725
  * * SQL Data Type: nvarchar(50)`),
1674
1726
  Vendor: zod_1.z.string().nullable().describe(`
1675
1727
  * * Field Name: Vendor
@@ -1685,7 +1737,7 @@ exports.AIModelSchema = zod_1.z.object({
1685
1737
  * * SQL Data Type: nvarchar(255)`),
1686
1738
  APIName: zod_1.z.string().nullable().describe(`
1687
1739
  * * Field Name: APIName
1688
- * * Display Name: APIName
1740
+ * * Display Name: API Name
1689
1741
  * * SQL Data Type: nvarchar(100)`),
1690
1742
  InputTokenLimit: zod_1.z.number().nullable().describe(`
1691
1743
  * * Field Name: InputTokenLimit
@@ -6102,7 +6154,7 @@ exports.EntityFieldValueSchema = zod_1.z.object({
6102
6154
  * * Default Value: newsequentialid()`),
6103
6155
  EntityFieldID: zod_1.z.string().describe(`
6104
6156
  * * Field Name: EntityFieldID
6105
- * * Display Name: Entity Field ID
6157
+ * * Display Name: Entity Field
6106
6158
  * * SQL Data Type: uniqueidentifier
6107
6159
  * * Related Entity/Foreign Key: Entity Fields (vwEntityFields.ID)`),
6108
6160
  Sequence: zod_1.z.number().describe(`
@@ -6126,12 +6178,12 @@ exports.EntityFieldValueSchema = zod_1.z.object({
6126
6178
  * * SQL Data Type: nvarchar(MAX)`),
6127
6179
  __mj_CreatedAt: zod_1.z.date().describe(`
6128
6180
  * * Field Name: __mj_CreatedAt
6129
- * * Display Name: __mj _Created At
6181
+ * * Display Name: Created At
6130
6182
  * * SQL Data Type: datetimeoffset
6131
6183
  * * Default Value: getutcdate()`),
6132
6184
  __mj_UpdatedAt: zod_1.z.date().describe(`
6133
6185
  * * Field Name: __mj_UpdatedAt
6134
- * * Display Name: __mj _Updated At
6186
+ * * Display Name: Updated At
6135
6187
  * * SQL Data Type: datetimeoffset
6136
6188
  * * Default Value: getutcdate()`),
6137
6189
  EntityField: zod_1.z.string().describe(`
@@ -6144,7 +6196,7 @@ exports.EntityFieldValueSchema = zod_1.z.object({
6144
6196
  * * SQL Data Type: nvarchar(255)`),
6145
6197
  EntityID: zod_1.z.string().describe(`
6146
6198
  * * Field Name: EntityID
6147
- * * Display Name: Entity ID
6199
+ * * Display Name: Entity
6148
6200
  * * SQL Data Type: uniqueidentifier`),
6149
6201
  });
6150
6202
  /**
@@ -8328,6 +8380,69 @@ exports.AIAgentExampleSchema = zod_1.z.object({
8328
8380
  * * Display Name: Embedding Model
8329
8381
  * * SQL Data Type: nvarchar(50)`),
8330
8382
  });
8383
+ /**
8384
+ * zod schema definition for the entity MJ: AI Agent Modalities
8385
+ */
8386
+ exports.AIAgentModalitySchema = zod_1.z.object({
8387
+ ID: zod_1.z.string().describe(`
8388
+ * * Field Name: ID
8389
+ * * Display Name: ID
8390
+ * * SQL Data Type: uniqueidentifier
8391
+ * * Default Value: newsequentialid()`),
8392
+ AgentID: zod_1.z.string().describe(`
8393
+ * * Field Name: AgentID
8394
+ * * Display Name: Agent ID
8395
+ * * SQL Data Type: uniqueidentifier
8396
+ * * Related Entity/Foreign Key: AI Agents (vwAIAgents.ID)`),
8397
+ ModalityID: zod_1.z.string().describe(`
8398
+ * * Field Name: ModalityID
8399
+ * * Display Name: Modality ID
8400
+ * * SQL Data Type: uniqueidentifier
8401
+ * * Related Entity/Foreign Key: MJ: AI Modalities (vwAIModalities.ID)`),
8402
+ Direction: zod_1.z.union([zod_1.z.literal('Input'), zod_1.z.literal('Output')]).describe(`
8403
+ * * Field Name: Direction
8404
+ * * Display Name: Direction
8405
+ * * SQL Data Type: nvarchar(10)
8406
+ * * Value List Type: List
8407
+ * * Possible Values
8408
+ * * Input
8409
+ * * Output
8410
+ * * Description: Whether this is an Input or Output modality for the agent.`),
8411
+ IsAllowed: zod_1.z.boolean().describe(`
8412
+ * * Field Name: IsAllowed
8413
+ * * Display Name: Allowed
8414
+ * * SQL Data Type: bit
8415
+ * * Default Value: 1
8416
+ * * Description: Whether this modality is allowed for this agent. Set to FALSE to disable a modality even if the underlying model supports it.`),
8417
+ MaxSizeBytes: zod_1.z.number().nullable().describe(`
8418
+ * * Field Name: MaxSizeBytes
8419
+ * * Display Name: Max Size (Bytes)
8420
+ * * SQL Data Type: int
8421
+ * * Description: Agent-specific maximum size in bytes. Overrides model and system defaults. Must be less than or equal to model limit.`),
8422
+ MaxCountPerMessage: zod_1.z.number().nullable().describe(`
8423
+ * * Field Name: MaxCountPerMessage
8424
+ * * Display Name: Max Count Per Message
8425
+ * * SQL Data Type: int
8426
+ * * Description: Agent-specific maximum count per message. Overrides model and system defaults. Must be less than or equal to model limit.`),
8427
+ __mj_CreatedAt: zod_1.z.date().describe(`
8428
+ * * Field Name: __mj_CreatedAt
8429
+ * * Display Name: Created At
8430
+ * * SQL Data Type: datetimeoffset
8431
+ * * Default Value: getutcdate()`),
8432
+ __mj_UpdatedAt: zod_1.z.date().describe(`
8433
+ * * Field Name: __mj_UpdatedAt
8434
+ * * Display Name: Updated At
8435
+ * * SQL Data Type: datetimeoffset
8436
+ * * Default Value: getutcdate()`),
8437
+ Agent: zod_1.z.string().nullable().describe(`
8438
+ * * Field Name: Agent
8439
+ * * Display Name: Agent
8440
+ * * SQL Data Type: nvarchar(255)`),
8441
+ Modality: zod_1.z.string().describe(`
8442
+ * * Field Name: Modality
8443
+ * * Display Name: Modality
8444
+ * * SQL Data Type: nvarchar(50)`),
8445
+ });
8331
8446
  /**
8332
8447
  * zod schema definition for the entity MJ: AI Agent Permissions
8333
8448
  */
@@ -9322,6 +9437,70 @@ exports.AIAgentTypeSchema = zod_1.z.object({
9322
9437
  * * Display Name: System Prompt
9323
9438
  * * SQL Data Type: nvarchar(255)`),
9324
9439
  });
9440
+ /**
9441
+ * zod schema definition for the entity MJ: AI Architectures
9442
+ */
9443
+ exports.AIArchitectureSchema = zod_1.z.object({
9444
+ ID: zod_1.z.string().describe(`
9445
+ * * Field Name: ID
9446
+ * * Display Name: ID
9447
+ * * SQL Data Type: uniqueidentifier
9448
+ * * Default Value: newsequentialid()`),
9449
+ Name: zod_1.z.string().describe(`
9450
+ * * Field Name: Name
9451
+ * * Display Name: Architecture Name
9452
+ * * SQL Data Type: nvarchar(100)`),
9453
+ Description: zod_1.z.string().nullable().describe(`
9454
+ * * Field Name: Description
9455
+ * * Display Name: Description
9456
+ * * SQL Data Type: nvarchar(MAX)`),
9457
+ Category: zod_1.z.union([zod_1.z.literal('Core'), zod_1.z.literal('Hybrid'), zod_1.z.literal('Optimization'), zod_1.z.literal('Specialized')]).describe(`
9458
+ * * Field Name: Category
9459
+ * * Display Name: Category
9460
+ * * SQL Data Type: nvarchar(50)
9461
+ * * Value List Type: List
9462
+ * * Possible Values
9463
+ * * Core
9464
+ * * Hybrid
9465
+ * * Optimization
9466
+ * * Specialized`),
9467
+ ParentArchitectureID: zod_1.z.string().nullable().describe(`
9468
+ * * Field Name: ParentArchitectureID
9469
+ * * Display Name: Parent Architecture ID
9470
+ * * SQL Data Type: uniqueidentifier
9471
+ * * Related Entity/Foreign Key: MJ: AI Architectures (vwAIArchitectures.ID)
9472
+ * * Description: Hierarchical relationship to parent architecture. Used for variants like Sparse Transformer being a child of Transformer.`),
9473
+ WikipediaURL: zod_1.z.string().nullable().describe(`
9474
+ * * Field Name: WikipediaURL
9475
+ * * Display Name: Wikipedia URL
9476
+ * * SQL Data Type: nvarchar(500)`),
9477
+ YearIntroduced: zod_1.z.number().nullable().describe(`
9478
+ * * Field Name: YearIntroduced
9479
+ * * Display Name: Year Introduced
9480
+ * * SQL Data Type: int`),
9481
+ KeyPaper: zod_1.z.string().nullable().describe(`
9482
+ * * Field Name: KeyPaper
9483
+ * * Display Name: Key Paper
9484
+ * * SQL Data Type: nvarchar(500)`),
9485
+ __mj_CreatedAt: zod_1.z.date().describe(`
9486
+ * * Field Name: __mj_CreatedAt
9487
+ * * Display Name: Created At
9488
+ * * SQL Data Type: datetimeoffset
9489
+ * * Default Value: getutcdate()`),
9490
+ __mj_UpdatedAt: zod_1.z.date().describe(`
9491
+ * * Field Name: __mj_UpdatedAt
9492
+ * * Display Name: Updated At
9493
+ * * SQL Data Type: datetimeoffset
9494
+ * * Default Value: getutcdate()`),
9495
+ ParentArchitecture: zod_1.z.string().nullable().describe(`
9496
+ * * Field Name: ParentArchitecture
9497
+ * * Display Name: Parent Architecture
9498
+ * * SQL Data Type: nvarchar(100)`),
9499
+ RootParentArchitectureID: zod_1.z.string().nullable().describe(`
9500
+ * * Field Name: RootParentArchitectureID
9501
+ * * Display Name: Root Parent Architecture ID
9502
+ * * SQL Data Type: uniqueidentifier`),
9503
+ });
9325
9504
  /**
9326
9505
  * zod schema definition for the entity MJ: AI Configuration Params
9327
9506
  */
@@ -9418,13 +9597,13 @@ exports.AIConfigurationSchema = zod_1.z.object({
9418
9597
  * * Description: The current status of the configuration. Values include Active, Inactive, Deprecated, and Preview.`),
9419
9598
  DefaultPromptForContextCompressionID: zod_1.z.string().nullable().describe(`
9420
9599
  * * Field Name: DefaultPromptForContextCompressionID
9421
- * * Display Name: Default Prompt For Context Compression ID
9600
+ * * Display Name: Default Prompt For Context Compression
9422
9601
  * * SQL Data Type: uniqueidentifier
9423
9602
  * * Related Entity/Foreign Key: AI Prompts (vwAIPrompts.ID)
9424
9603
  * * Description: Default prompt to use for context compression when not specified at the agent level.`),
9425
9604
  DefaultPromptForContextSummarizationID: zod_1.z.string().nullable().describe(`
9426
9605
  * * Field Name: DefaultPromptForContextSummarizationID
9427
- * * Display Name: Default Prompt For Context Summarization ID
9606
+ * * Display Name: Default Prompt For Context Summarization
9428
9607
  * * SQL Data Type: uniqueidentifier
9429
9608
  * * Related Entity/Foreign Key: AI Prompts (vwAIPrompts.ID)
9430
9609
  * * Description: Default prompt to use for context summarization when not specified at the agent level.`),
@@ -9438,6 +9617,23 @@ exports.AIConfigurationSchema = zod_1.z.object({
9438
9617
  * * Display Name: Updated At
9439
9618
  * * SQL Data Type: datetimeoffset
9440
9619
  * * Default Value: getutcdate()`),
9620
+ DefaultStorageProviderID: zod_1.z.string().nullable().describe(`
9621
+ * * Field Name: DefaultStorageProviderID
9622
+ * * Display Name: Default Storage Provider
9623
+ * * SQL Data Type: uniqueidentifier
9624
+ * * Related Entity/Foreign Key: File Storage Providers (vwFileStorageProviders.ID)
9625
+ * * Description: Default file storage provider for agent attachments. Used when an agent does not specify its own AttachmentStorageProviderID.`),
9626
+ DefaultStorageRootPath: zod_1.z.string().nullable().describe(`
9627
+ * * Field Name: DefaultStorageRootPath
9628
+ * * Display Name: Default Storage Root Path
9629
+ * * SQL Data Type: nvarchar(500)
9630
+ * * Description: Default root path within the storage provider for agent attachments. Used when an agent does not specify its own AttachmentRootPath.`),
9631
+ ParentID: zod_1.z.string().nullable().describe(`
9632
+ * * Field Name: ParentID
9633
+ * * Display Name: Parent ID
9634
+ * * SQL Data Type: uniqueidentifier
9635
+ * * Related Entity/Foreign Key: MJ: AI Configurations (vwAIConfigurations.ID)
9636
+ * * Description: Optional reference to a parent configuration. When set, this configuration inherits prompt-model mappings and parameters from its parent. Child configurations can override specific settings while inheriting defaults from the parent chain. Supports N-level deep inheritance.`),
9441
9637
  DefaultPromptForContextCompression: zod_1.z.string().nullable().describe(`
9442
9638
  * * Field Name: DefaultPromptForContextCompression
9443
9639
  * * Display Name: Default Prompt For Context Compression
@@ -9446,6 +9642,18 @@ exports.AIConfigurationSchema = zod_1.z.object({
9446
9642
  * * Field Name: DefaultPromptForContextSummarization
9447
9643
  * * Display Name: Default Prompt For Context Summarization
9448
9644
  * * SQL Data Type: nvarchar(255)`),
9645
+ DefaultStorageProvider: zod_1.z.string().nullable().describe(`
9646
+ * * Field Name: DefaultStorageProvider
9647
+ * * Display Name: Default Storage Provider
9648
+ * * SQL Data Type: nvarchar(50)`),
9649
+ Parent: zod_1.z.string().nullable().describe(`
9650
+ * * Field Name: Parent
9651
+ * * Display Name: Parent
9652
+ * * SQL Data Type: nvarchar(100)`),
9653
+ RootParentID: zod_1.z.string().nullable().describe(`
9654
+ * * Field Name: RootParentID
9655
+ * * Display Name: Root Parent ID
9656
+ * * SQL Data Type: uniqueidentifier`),
9449
9657
  });
9450
9658
  /**
9451
9659
  * zod schema definition for the entity MJ: AI Credential Bindings
@@ -9529,6 +9737,134 @@ exports.AICredentialBindingSchema = zod_1.z.object({
9529
9737
  * * Display Name: AI Prompt Model
9530
9738
  * * SQL Data Type: nvarchar(255)`),
9531
9739
  });
9740
+ /**
9741
+ * zod schema definition for the entity MJ: AI Modalities
9742
+ */
9743
+ exports.AIModalitySchema = zod_1.z.object({
9744
+ ID: zod_1.z.string().describe(`
9745
+ * * Field Name: ID
9746
+ * * Display Name: ID
9747
+ * * SQL Data Type: uniqueidentifier
9748
+ * * Default Value: newsequentialid()`),
9749
+ Name: zod_1.z.string().describe(`
9750
+ * * Field Name: Name
9751
+ * * Display Name: Name
9752
+ * * SQL Data Type: nvarchar(50)
9753
+ * * Description: Display name of the modality (e.g., Text, Image, Audio, Video, File, Embedding).`),
9754
+ Description: zod_1.z.string().nullable().describe(`
9755
+ * * Field Name: Description
9756
+ * * Display Name: Description
9757
+ * * SQL Data Type: nvarchar(500)
9758
+ * * Description: Detailed description of this modality and its use cases.`),
9759
+ ContentBlockType: zod_1.z.union([zod_1.z.literal('audio_url'), zod_1.z.literal('embedding'), zod_1.z.literal('file_url'), zod_1.z.literal('image_url'), zod_1.z.literal('text'), zod_1.z.literal('video_url')]).describe(`
9760
+ * * Field Name: ContentBlockType
9761
+ * * Display Name: Content Block Type
9762
+ * * SQL Data Type: nvarchar(50)
9763
+ * * Value List Type: List
9764
+ * * Possible Values
9765
+ * * audio_url
9766
+ * * embedding
9767
+ * * file_url
9768
+ * * image_url
9769
+ * * text
9770
+ * * video_url
9771
+ * * Description: Maps to ChatMessageContentBlock.type values: text, image_url, video_url, audio_url, file_url, embedding. Must match the TypeScript type definition.`),
9772
+ MIMETypePattern: zod_1.z.string().nullable().describe(`
9773
+ * * Field Name: MIMETypePattern
9774
+ * * Display Name: MIME Type Pattern
9775
+ * * SQL Data Type: nvarchar(100)
9776
+ * * Description: MIME type pattern for this modality (e.g., image/*, audio/*, video/*, text/*, application/*). Used for file type validation.`),
9777
+ Type: zod_1.z.union([zod_1.z.literal('Binary'), zod_1.z.literal('Content'), zod_1.z.literal('Structured')]).describe(`
9778
+ * * Field Name: Type
9779
+ * * Display Name: Type
9780
+ * * SQL Data Type: nvarchar(50)
9781
+ * * Default Value: Content
9782
+ * * Value List Type: List
9783
+ * * Possible Values
9784
+ * * Binary
9785
+ * * Content
9786
+ * * Structured
9787
+ * * Description: Classification type: Content (human-readable text), Structured (JSON/embeddings), Binary (media files like images, audio, video).`),
9788
+ DefaultMaxSizeBytes: zod_1.z.number().nullable().describe(`
9789
+ * * Field Name: DefaultMaxSizeBytes
9790
+ * * Display Name: Default Max Size (Bytes)
9791
+ * * SQL Data Type: int
9792
+ * * Description: System-wide default maximum size in bytes for this modality. Can be overridden at model or agent level. NULL means no size limit.`),
9793
+ DefaultMaxCountPerMessage: zod_1.z.number().nullable().describe(`
9794
+ * * Field Name: DefaultMaxCountPerMessage
9795
+ * * Display Name: Default Max Count Per Message
9796
+ * * SQL Data Type: int
9797
+ * * Description: System-wide default maximum count per message for this modality. Can be overridden at model or agent level. NULL means no count limit.`),
9798
+ DisplayOrder: zod_1.z.number().describe(`
9799
+ * * Field Name: DisplayOrder
9800
+ * * Display Name: Display Order
9801
+ * * SQL Data Type: int
9802
+ * * Default Value: 0
9803
+ * * Description: Display order for UI presentation. Lower numbers appear first.`),
9804
+ __mj_CreatedAt: zod_1.z.date().describe(`
9805
+ * * Field Name: __mj_CreatedAt
9806
+ * * Display Name: Created At
9807
+ * * SQL Data Type: datetimeoffset
9808
+ * * Default Value: getutcdate()`),
9809
+ __mj_UpdatedAt: zod_1.z.date().describe(`
9810
+ * * Field Name: __mj_UpdatedAt
9811
+ * * Display Name: Updated At
9812
+ * * SQL Data Type: datetimeoffset
9813
+ * * Default Value: getutcdate()`),
9814
+ });
9815
+ /**
9816
+ * zod schema definition for the entity MJ: AI Model Architectures
9817
+ */
9818
+ exports.AIModelArchitectureSchema = zod_1.z.object({
9819
+ ID: zod_1.z.string().describe(`
9820
+ * * Field Name: ID
9821
+ * * Display Name: ID
9822
+ * * SQL Data Type: uniqueidentifier
9823
+ * * Default Value: newsequentialid()`),
9824
+ ModelID: zod_1.z.string().describe(`
9825
+ * * Field Name: ModelID
9826
+ * * Display Name: Model
9827
+ * * SQL Data Type: uniqueidentifier
9828
+ * * Related Entity/Foreign Key: AI Models (vwAIModels.ID)`),
9829
+ ArchitectureID: zod_1.z.string().describe(`
9830
+ * * Field Name: ArchitectureID
9831
+ * * Display Name: Architecture
9832
+ * * SQL Data Type: uniqueidentifier
9833
+ * * Related Entity/Foreign Key: MJ: AI Architectures (vwAIArchitectures.ID)`),
9834
+ Rank: zod_1.z.number().describe(`
9835
+ * * Field Name: Rank
9836
+ * * Display Name: Rank
9837
+ * * SQL Data Type: int
9838
+ * * Default Value: 1
9839
+ * * Description: Ranking of this architecture for the model. 1=Primary architecture, 2=Secondary, etc. Lower numbers indicate more dominant role.`),
9840
+ Weight: zod_1.z.number().nullable().describe(`
9841
+ * * Field Name: Weight
9842
+ * * Display Name: Weight
9843
+ * * SQL Data Type: decimal(5, 4)
9844
+ * * Description: Optional weight (0.0-1.0) indicating the mix ratio for hybrid architectures. E.g., 0.7 for 70% contribution.`),
9845
+ Notes: zod_1.z.string().nullable().describe(`
9846
+ * * Field Name: Notes
9847
+ * * Display Name: Notes
9848
+ * * SQL Data Type: nvarchar(500)`),
9849
+ __mj_CreatedAt: zod_1.z.date().describe(`
9850
+ * * Field Name: __mj_CreatedAt
9851
+ * * Display Name: Created At
9852
+ * * SQL Data Type: datetimeoffset
9853
+ * * Default Value: getutcdate()`),
9854
+ __mj_UpdatedAt: zod_1.z.date().describe(`
9855
+ * * Field Name: __mj_UpdatedAt
9856
+ * * Display Name: Updated At
9857
+ * * SQL Data Type: datetimeoffset
9858
+ * * Default Value: getutcdate()`),
9859
+ Model: zod_1.z.string().describe(`
9860
+ * * Field Name: Model
9861
+ * * Display Name: Model Name
9862
+ * * SQL Data Type: nvarchar(50)`),
9863
+ Architecture: zod_1.z.string().describe(`
9864
+ * * Field Name: Architecture
9865
+ * * Display Name: Architecture Name
9866
+ * * SQL Data Type: nvarchar(100)`),
9867
+ });
9532
9868
  /**
9533
9869
  * zod schema definition for the entity MJ: AI Model Costs
9534
9870
  */
@@ -9636,6 +9972,90 @@ exports.AIModelCostSchema = zod_1.z.object({
9636
9972
  * * Display Name: Unit Type
9637
9973
  * * SQL Data Type: nvarchar(100)`),
9638
9974
  });
9975
+ /**
9976
+ * zod schema definition for the entity MJ: AI Model Modalities
9977
+ */
9978
+ exports.AIModelModalitySchema = zod_1.z.object({
9979
+ ID: zod_1.z.string().describe(`
9980
+ * * Field Name: ID
9981
+ * * Display Name: ID
9982
+ * * SQL Data Type: uniqueidentifier
9983
+ * * Default Value: newsequentialid()`),
9984
+ ModelID: zod_1.z.string().describe(`
9985
+ * * Field Name: ModelID
9986
+ * * Display Name: Model ID
9987
+ * * SQL Data Type: uniqueidentifier
9988
+ * * Related Entity/Foreign Key: AI Models (vwAIModels.ID)`),
9989
+ ModalityID: zod_1.z.string().describe(`
9990
+ * * Field Name: ModalityID
9991
+ * * Display Name: Modality ID
9992
+ * * SQL Data Type: uniqueidentifier
9993
+ * * Related Entity/Foreign Key: MJ: AI Modalities (vwAIModalities.ID)`),
9994
+ Direction: zod_1.z.union([zod_1.z.literal('Input'), zod_1.z.literal('Output')]).describe(`
9995
+ * * Field Name: Direction
9996
+ * * Display Name: Direction
9997
+ * * SQL Data Type: nvarchar(10)
9998
+ * * Value List Type: List
9999
+ * * Possible Values
10000
+ * * Input
10001
+ * * Output
10002
+ * * Description: Whether this is an Input or Output modality for the model.`),
10003
+ IsSupported: zod_1.z.boolean().describe(`
10004
+ * * Field Name: IsSupported
10005
+ * * Display Name: Is Supported
10006
+ * * SQL Data Type: bit
10007
+ * * Default Value: 1
10008
+ * * Description: Whether this modality is supported. Can be set to FALSE to explicitly disable an inherited modality.`),
10009
+ IsRequired: zod_1.z.boolean().describe(`
10010
+ * * Field Name: IsRequired
10011
+ * * Display Name: Is Required
10012
+ * * SQL Data Type: bit
10013
+ * * Default Value: 0
10014
+ * * Description: For input modalities: whether this modality is required (e.g., text is usually required for LLMs). For outputs: not typically applicable.`),
10015
+ SupportedFormats: zod_1.z.string().nullable().describe(`
10016
+ * * Field Name: SupportedFormats
10017
+ * * Display Name: Supported Formats
10018
+ * * SQL Data Type: nvarchar(500)
10019
+ * * Description: Comma-separated list of supported file formats/extensions (e.g., png,jpg,webp,gif for images or mp3,wav,m4a for audio).`),
10020
+ MaxSizeBytes: zod_1.z.number().nullable().describe(`
10021
+ * * Field Name: MaxSizeBytes
10022
+ * * Display Name: Maximum Size (Bytes)
10023
+ * * SQL Data Type: int
10024
+ * * Description: Model-specific maximum size in bytes. Overrides AIModality.DefaultMaxSizeBytes. NULL means use system default.`),
10025
+ MaxCountPerMessage: zod_1.z.number().nullable().describe(`
10026
+ * * Field Name: MaxCountPerMessage
10027
+ * * Display Name: Maximum Count per Message
10028
+ * * SQL Data Type: int
10029
+ * * Description: Model-specific maximum count per message. Overrides AIModality.DefaultMaxCountPerMessage. NULL means use system default.`),
10030
+ MaxDimension: zod_1.z.number().nullable().describe(`
10031
+ * * Field Name: MaxDimension
10032
+ * * Display Name: Maximum Dimension (px)
10033
+ * * SQL Data Type: int
10034
+ * * Description: For image/video modalities: maximum dimension (width or height) in pixels supported by this model.`),
10035
+ Comments: zod_1.z.string().nullable().describe(`
10036
+ * * Field Name: Comments
10037
+ * * Display Name: Comments
10038
+ * * SQL Data Type: nvarchar(MAX)
10039
+ * * Description: Additional notes or documentation about this model-modality configuration.`),
10040
+ __mj_CreatedAt: zod_1.z.date().describe(`
10041
+ * * Field Name: __mj_CreatedAt
10042
+ * * Display Name: Created At
10043
+ * * SQL Data Type: datetimeoffset
10044
+ * * Default Value: getutcdate()`),
10045
+ __mj_UpdatedAt: zod_1.z.date().describe(`
10046
+ * * Field Name: __mj_UpdatedAt
10047
+ * * Display Name: Updated At
10048
+ * * SQL Data Type: datetimeoffset
10049
+ * * Default Value: getutcdate()`),
10050
+ Model: zod_1.z.string().describe(`
10051
+ * * Field Name: Model
10052
+ * * Display Name: Model
10053
+ * * SQL Data Type: nvarchar(50)`),
10054
+ Modality: zod_1.z.string().describe(`
10055
+ * * Field Name: Modality
10056
+ * * Display Name: Modality
10057
+ * * SQL Data Type: nvarchar(50)`),
10058
+ });
9639
10059
  /**
9640
10060
  * zod schema definition for the entity MJ: AI Model Price Types
9641
10061
  */
@@ -11801,6 +12221,101 @@ exports.ConversationDetailArtifactSchema = zod_1.z.object({
11801
12221
  * * Display Name: Artifact Version
11802
12222
  * * SQL Data Type: nvarchar(255)`),
11803
12223
  });
12224
+ /**
12225
+ * zod schema definition for the entity MJ: Conversation Detail Attachments
12226
+ */
12227
+ exports.ConversationDetailAttachmentSchema = zod_1.z.object({
12228
+ ID: zod_1.z.string().describe(`
12229
+ * * Field Name: ID
12230
+ * * Display Name: ID
12231
+ * * SQL Data Type: uniqueidentifier
12232
+ * * Default Value: newsequentialid()`),
12233
+ ConversationDetailID: zod_1.z.string().describe(`
12234
+ * * Field Name: ConversationDetailID
12235
+ * * Display Name: Conversation Detail
12236
+ * * SQL Data Type: uniqueidentifier
12237
+ * * Related Entity/Foreign Key: Conversation Details (vwConversationDetails.ID)`),
12238
+ ModalityID: zod_1.z.string().describe(`
12239
+ * * Field Name: ModalityID
12240
+ * * Display Name: Modality
12241
+ * * SQL Data Type: uniqueidentifier
12242
+ * * Related Entity/Foreign Key: MJ: AI Modalities (vwAIModalities.ID)
12243
+ * * Description: The modality type of this attachment (Image, Audio, Video, File, etc.). References the AIModality table.`),
12244
+ MimeType: zod_1.z.string().describe(`
12245
+ * * Field Name: MimeType
12246
+ * * Display Name: MIME Type
12247
+ * * SQL Data Type: nvarchar(100)
12248
+ * * Description: MIME type of the attachment (e.g., image/png, video/mp4, audio/mp3).`),
12249
+ FileName: zod_1.z.string().nullable().describe(`
12250
+ * * Field Name: FileName
12251
+ * * Display Name: File Name
12252
+ * * SQL Data Type: nvarchar(4000)
12253
+ * * Description: Original filename of the attachment. Supports long cloud storage paths up to 4000 characters.`),
12254
+ FileSizeBytes: zod_1.z.number().describe(`
12255
+ * * Field Name: FileSizeBytes
12256
+ * * Display Name: File Size (bytes)
12257
+ * * SQL Data Type: int
12258
+ * * Description: Size of the attachment in bytes.`),
12259
+ Width: zod_1.z.number().nullable().describe(`
12260
+ * * Field Name: Width
12261
+ * * Display Name: Width (px)
12262
+ * * SQL Data Type: int
12263
+ * * Description: Width in pixels for images and videos.`),
12264
+ Height: zod_1.z.number().nullable().describe(`
12265
+ * * Field Name: Height
12266
+ * * Display Name: Height (px)
12267
+ * * SQL Data Type: int
12268
+ * * Description: Height in pixels for images and videos.`),
12269
+ DurationSeconds: zod_1.z.number().nullable().describe(`
12270
+ * * Field Name: DurationSeconds
12271
+ * * Display Name: Duration (seconds)
12272
+ * * SQL Data Type: int
12273
+ * * Description: Duration in seconds for audio and video files.`),
12274
+ InlineData: zod_1.z.string().nullable().describe(`
12275
+ * * Field Name: InlineData
12276
+ * * Display Name: Inline Data (Base64)
12277
+ * * SQL Data Type: nvarchar(MAX)
12278
+ * * Description: Base64-encoded file data for small attachments stored inline. Mutually exclusive with FileID - exactly one must be populated.`),
12279
+ FileID: zod_1.z.string().nullable().describe(`
12280
+ * * Field Name: FileID
12281
+ * * Display Name: File
12282
+ * * SQL Data Type: uniqueidentifier
12283
+ * * Related Entity/Foreign Key: Files (vwFiles.ID)
12284
+ * * Description: Reference to File entity for large attachments stored in MJStorage. Mutually exclusive with InlineData - exactly one must be populated.`),
12285
+ DisplayOrder: zod_1.z.number().describe(`
12286
+ * * Field Name: DisplayOrder
12287
+ * * Display Name: Display Order
12288
+ * * SQL Data Type: int
12289
+ * * Default Value: 0
12290
+ * * Description: Display order for multiple attachments in a message. Lower numbers appear first.`),
12291
+ ThumbnailBase64: zod_1.z.string().nullable().describe(`
12292
+ * * Field Name: ThumbnailBase64
12293
+ * * Display Name: Thumbnail (Base64)
12294
+ * * SQL Data Type: nvarchar(MAX)
12295
+ * * Description: Base64-encoded thumbnail image for quick preview display. Max 200px on longest side.`),
12296
+ __mj_CreatedAt: zod_1.z.date().describe(`
12297
+ * * Field Name: __mj_CreatedAt
12298
+ * * Display Name: Created At
12299
+ * * SQL Data Type: datetimeoffset
12300
+ * * Default Value: getutcdate()`),
12301
+ __mj_UpdatedAt: zod_1.z.date().describe(`
12302
+ * * Field Name: __mj_UpdatedAt
12303
+ * * Display Name: Updated At
12304
+ * * SQL Data Type: datetimeoffset
12305
+ * * Default Value: getutcdate()`),
12306
+ ConversationDetail: zod_1.z.string().describe(`
12307
+ * * Field Name: ConversationDetail
12308
+ * * Display Name: Conversation Detail Text
12309
+ * * SQL Data Type: nvarchar(MAX)`),
12310
+ Modality: zod_1.z.string().describe(`
12311
+ * * Field Name: Modality
12312
+ * * Display Name: Modality Name
12313
+ * * SQL Data Type: nvarchar(50)`),
12314
+ File: zod_1.z.string().nullable().describe(`
12315
+ * * Field Name: File
12316
+ * * Display Name: File Reference
12317
+ * * SQL Data Type: nvarchar(500)`),
12318
+ });
11804
12319
  /**
11805
12320
  * zod schema definition for the entity MJ: Conversation Detail Ratings
11806
12321
  */
@@ -13453,7 +13968,7 @@ exports.TestRunFeedbackSchema = zod_1.z.object({
13453
13968
  * * SQL Data Type: nvarchar(255)`),
13454
13969
  ReviewerUser: zod_1.z.string().describe(`
13455
13970
  * * Field Name: ReviewerUser
13456
- * * Display Name: Reviewer Name
13971
+ * * Display Name: Reviewer User
13457
13972
  * * SQL Data Type: nvarchar(100)`),
13458
13973
  });
13459
13974
  /**
@@ -13479,7 +13994,7 @@ exports.TestRunSchema = zod_1.z.object({
13479
13994
  * * Description: Foreign Key - Optional parent suite run if this test was part of a suite execution. NULL for standalone test runs.`),
13480
13995
  RunByUserID: zod_1.z.string().describe(`
13481
13996
  * * Field Name: RunByUserID
13482
- * * Display Name: Run By User ID
13997
+ * * Display Name: Run By User
13483
13998
  * * SQL Data Type: uniqueidentifier
13484
13999
  * * Related Entity/Foreign Key: Users (vwUsers.ID)
13485
14000
  * * Description: Foreign Key - The user who triggered the test run (could be system user for automated runs)`),
@@ -13492,13 +14007,13 @@ exports.TestRunSchema = zod_1.z.object({
13492
14007
  * * Field Name: TargetType
13493
14008
  * * Display Name: Target Type
13494
14009
  * * SQL Data Type: nvarchar(100)
13495
- * * Description: Type of the target being tested (e.g., "Agent Run", "Workflow Run", "Code Generation"). Polymorphic discriminator for TargetLogID.`),
14010
+ * * Description: Optional sub-category or variant label for the test target. Use this to distinguish between different test scenarios within the same entity type (e.g., "Summarization", "Classification", "Code Review" for AI Agent tests). The entity type itself should be specified via TargetLogEntityID.`),
13496
14011
  TargetLogID: zod_1.z.string().nullable().describe(`
13497
14012
  * * Field Name: TargetLogID
13498
- * * Display Name: Target Log ID
14013
+ * * Display Name: Target Log
13499
14014
  * * SQL Data Type: uniqueidentifier
13500
14015
  * * Description: ID of the target execution log (e.g., AIAgentRun.ID, WorkflowRun.ID). This is a soft FK - the actual entity depends on TargetType. The target entity should have a reverse FK back to TestRun for bidirectional navigation.`),
13501
- Status: zod_1.z.union([zod_1.z.literal('Error'), zod_1.z.literal('Failed'), zod_1.z.literal('Passed'), zod_1.z.literal('Pending'), zod_1.z.literal('Running'), zod_1.z.literal('Skipped')]).describe(`
14016
+ Status: zod_1.z.union([zod_1.z.literal('Error'), zod_1.z.literal('Failed'), zod_1.z.literal('Passed'), zod_1.z.literal('Pending'), zod_1.z.literal('Running'), zod_1.z.literal('Skipped'), zod_1.z.literal('Timeout')]).describe(`
13502
14017
  * * Field Name: Status
13503
14018
  * * Display Name: Status
13504
14019
  * * SQL Data Type: nvarchar(20)
@@ -13511,7 +14026,8 @@ exports.TestRunSchema = zod_1.z.object({
13511
14026
  * * Pending
13512
14027
  * * Running
13513
14028
  * * Skipped
13514
- * * Description: Current status of the test run: Pending (queued), Running (in progress), Passed (all checks passed), Failed (at least one check failed), Skipped (not executed), Error (execution error before validation)`),
14029
+ * * Timeout
14030
+ * * Description: Current status of the test run: Pending (queued), Running (in progress), Passed (all checks passed), Failed (at least one check failed), Skipped (not executed), Error (execution error before validation), Timeout (execution exceeded time limit and was cancelled)`),
13515
14031
  StartedAt: zod_1.z.date().nullable().describe(`
13516
14032
  * * Field Name: StartedAt
13517
14033
  * * Display Name: Started At
@@ -13524,7 +14040,7 @@ exports.TestRunSchema = zod_1.z.object({
13524
14040
  * * Description: Timestamp when the test run completed`),
13525
14041
  DurationSeconds: zod_1.z.number().nullable().describe(`
13526
14042
  * * Field Name: DurationSeconds
13527
- * * Display Name: Duration (seconds)
14043
+ * * Display Name: Duration Seconds
13528
14044
  * * SQL Data Type: decimal(10, 3)
13529
14045
  * * Description: Execution time in seconds for this test`),
13530
14046
  InputData: zod_1.z.string().nullable().describe(`
@@ -13564,7 +14080,7 @@ exports.TestRunSchema = zod_1.z.object({
13564
14080
  * * Description: Overall test score from 0.0000 to 1.0000 (0-100%). Calculated by test driver based on passed/failed checks and weights.`),
13565
14081
  CostUSD: zod_1.z.number().nullable().describe(`
13566
14082
  * * Field Name: CostUSD
13567
- * * Display Name: Cost (USD)
14083
+ * * Display Name: Cost USD
13568
14084
  * * SQL Data Type: decimal(10, 6)
13569
14085
  * * Description: Cost in USD for running this test (e.g., LLM token costs, compute resources)`),
13570
14086
  ErrorMessage: zod_1.z.string().nullable().describe(`
@@ -13587,6 +14103,47 @@ exports.TestRunSchema = zod_1.z.object({
13587
14103
  * * Display Name: Updated At
13588
14104
  * * SQL Data Type: datetimeoffset
13589
14105
  * * Default Value: getutcdate()`),
14106
+ Log: zod_1.z.string().nullable().describe(`
14107
+ * * Field Name: Log
14108
+ * * Display Name: Log
14109
+ * * SQL Data Type: nvarchar(MAX)
14110
+ * * Description: Detailed execution log capturing status messages, diagnostic output, and driver-specific information streamed during test execution. Format is timestamped log lines.`),
14111
+ Tags: zod_1.z.string().nullable().describe(`
14112
+ * * Field Name: Tags
14113
+ * * Display Name: Tags
14114
+ * * SQL Data Type: nvarchar(MAX)
14115
+ * * Description: JSON array of user-assigned tags/labels for this test run. Used for categorization, filtering, and comparing runs with different configurations. Inherits from parent suite run tags if not explicitly set.`),
14116
+ MachineName: zod_1.z.string().nullable().describe(`
14117
+ * * Field Name: MachineName
14118
+ * * Display Name: Machine Name
14119
+ * * SQL Data Type: nvarchar(255)
14120
+ * * Description: Hostname of the machine that executed this test. Used for identifying the execution environment and debugging infrastructure-specific issues.`),
14121
+ MachineID: zod_1.z.string().nullable().describe(`
14122
+ * * Field Name: MachineID
14123
+ * * Display Name: Machine ID
14124
+ * * SQL Data Type: nvarchar(255)
14125
+ * * Description: Unique machine identifier (typically MAC address) for the execution host. Enables deduplication and tracking of test execution across different machines.`),
14126
+ RunByUserName: zod_1.z.string().nullable().describe(`
14127
+ * * Field Name: RunByUserName
14128
+ * * Display Name: Run By User Name
14129
+ * * SQL Data Type: nvarchar(255)
14130
+ * * Description: Denormalized user name who ran the test. Stored separately from RunByUserID to enable cross-server aggregation where user IDs differ but names remain consistent.`),
14131
+ RunByUserEmail: zod_1.z.string().nullable().describe(`
14132
+ * * Field Name: RunByUserEmail
14133
+ * * Display Name: Run By User Email
14134
+ * * SQL Data Type: nvarchar(255)
14135
+ * * Description: Denormalized email address of the user who ran the test. Primary identifier for cross-server aggregation since email addresses are unique across MemberJunction instances.`),
14136
+ RunContextDetails: zod_1.z.string().nullable().describe(`
14137
+ * * Field Name: RunContextDetails
14138
+ * * Display Name: Run Context Details
14139
+ * * SQL Data Type: nvarchar(MAX)
14140
+ * * Description: JSON object containing extensible execution context: osType, osVersion, nodeVersion, timezone, locale, ipAddress, and CI/CD metadata (ciProvider, pipelineId, buildNumber, branch, prNumber). Allows detailed environment tracking without schema changes.`),
14141
+ TargetLogEntityID: zod_1.z.string().nullable().describe(`
14142
+ * * Field Name: TargetLogEntityID
14143
+ * * Display Name: Target Log Entity ID
14144
+ * * SQL Data Type: uniqueidentifier
14145
+ * * Related Entity/Foreign Key: Entities (vwEntities.ID)
14146
+ * * Description: Foreign key to Entity table identifying the type of entity referenced by TargetLogID. When populated, TargetLogID is a record ID in this entity. Used for linking test runs to AI Agent Runs, Workflow Runs, or other entity types being tested.`),
13590
14147
  Test: zod_1.z.string().describe(`
13591
14148
  * * Field Name: Test
13592
14149
  * * Display Name: Test
@@ -13599,6 +14156,10 @@ exports.TestRunSchema = zod_1.z.object({
13599
14156
  * * Field Name: RunByUser
13600
14157
  * * Display Name: Run By User
13601
14158
  * * SQL Data Type: nvarchar(100)`),
14159
+ TargetLogEntity: zod_1.z.string().nullable().describe(`
14160
+ * * Field Name: TargetLogEntity
14161
+ * * Display Name: Target Log Entity
14162
+ * * SQL Data Type: nvarchar(255)`),
13602
14163
  });
13603
14164
  /**
13604
14165
  * zod schema definition for the entity MJ: Test Suite Runs
@@ -13691,12 +14252,12 @@ exports.TestSuiteRunSchema = zod_1.z.object({
13691
14252
  * * Description: Number of tests that encountered execution errors (different from failing validation)`),
13692
14253
  TotalDurationSeconds: zod_1.z.number().nullable().describe(`
13693
14254
  * * Field Name: TotalDurationSeconds
13694
- * * Display Name: Total Duration Seconds
14255
+ * * Display Name: Total Duration (seconds)
13695
14256
  * * SQL Data Type: decimal(10, 3)
13696
14257
  * * Description: Total execution time in seconds for the entire suite`),
13697
14258
  TotalCostUSD: zod_1.z.number().nullable().describe(`
13698
14259
  * * Field Name: TotalCostUSD
13699
- * * Display Name: Total Cost USD
14260
+ * * Display Name: Total Cost (USD)
13700
14261
  * * SQL Data Type: decimal(10, 6)
13701
14262
  * * Description: Total cost in USD for running the entire suite (sum of all test costs)`),
13702
14263
  Configuration: zod_1.z.string().nullable().describe(`
@@ -13724,13 +14285,43 @@ exports.TestSuiteRunSchema = zod_1.z.object({
13724
14285
  * * Display Name: Updated At
13725
14286
  * * SQL Data Type: datetimeoffset
13726
14287
  * * Default Value: getutcdate()`),
14288
+ Tags: zod_1.z.string().nullable().describe(`
14289
+ * * Field Name: Tags
14290
+ * * Display Name: Tags
14291
+ * * SQL Data Type: nvarchar(MAX)
14292
+ * * Description: JSON array of user-assigned tags/labels for this suite run. Used for categorization, filtering, and comparing runs with different configurations (e.g., ["Opus 4.5", "New Prompt v3", "Production Config"]).`),
14293
+ MachineName: zod_1.z.string().nullable().describe(`
14294
+ * * Field Name: MachineName
14295
+ * * Display Name: Machine Name
14296
+ * * SQL Data Type: nvarchar(255)
14297
+ * * Description: Hostname of the machine that executed this suite. Used for identifying the execution environment and debugging infrastructure-specific issues.`),
14298
+ MachineID: zod_1.z.string().nullable().describe(`
14299
+ * * Field Name: MachineID
14300
+ * * Display Name: Machine ID
14301
+ * * SQL Data Type: nvarchar(255)
14302
+ * * Description: Unique machine identifier (typically MAC address) for the execution host. Enables deduplication and tracking of suite execution across different machines.`),
14303
+ RunByUserName: zod_1.z.string().nullable().describe(`
14304
+ * * Field Name: RunByUserName
14305
+ * * Display Name: Run By User Name
14306
+ * * SQL Data Type: nvarchar(255)
14307
+ * * Description: Denormalized user name who ran the suite. Stored separately from RunByUserID to enable cross-server aggregation where user IDs differ but names remain consistent.`),
14308
+ RunByUserEmail: zod_1.z.string().nullable().describe(`
14309
+ * * Field Name: RunByUserEmail
14310
+ * * Display Name: Run By User Email
14311
+ * * SQL Data Type: nvarchar(255)
14312
+ * * Description: Denormalized email address of the user who ran the suite. Primary identifier for cross-server aggregation since email addresses are unique across MemberJunction instances.`),
14313
+ RunContextDetails: zod_1.z.string().nullable().describe(`
14314
+ * * Field Name: RunContextDetails
14315
+ * * Display Name: Run Context Details
14316
+ * * SQL Data Type: nvarchar(MAX)
14317
+ * * Description: JSON object containing extensible execution context: osType, osVersion, nodeVersion, timezone, locale, ipAddress, and CI/CD metadata (ciProvider, pipelineId, buildNumber, branch, prNumber). Allows detailed environment tracking without schema changes.`),
13727
14318
  Suite: zod_1.z.string().describe(`
13728
14319
  * * Field Name: Suite
13729
- * * Display Name: Suite Name
14320
+ * * Display Name: Suite
13730
14321
  * * SQL Data Type: nvarchar(255)`),
13731
14322
  RunByUser: zod_1.z.string().describe(`
13732
14323
  * * Field Name: RunByUser
13733
- * * Display Name: Run By User Name
14324
+ * * Display Name: Run By User
13734
14325
  * * SQL Data Type: nvarchar(100)`),
13735
14326
  });
13736
14327
  /**
@@ -13806,7 +14397,7 @@ exports.TestSuiteSchema = zod_1.z.object({
13806
14397
  * * Default Value: newsequentialid()`),
13807
14398
  ParentID: zod_1.z.string().nullable().describe(`
13808
14399
  * * Field Name: ParentID
13809
- * * Display Name: Parent ID
14400
+ * * Display Name: Parent
13810
14401
  * * SQL Data Type: uniqueidentifier
13811
14402
  * * Related Entity/Foreign Key: MJ: Test Suites (vwTestSuites.ID)
13812
14403
  * * Description: Optional parent suite ID for hierarchical organization. NULL for root-level suites.`),
@@ -13851,13 +14442,18 @@ exports.TestSuiteSchema = zod_1.z.object({
13851
14442
  * * Display Name: Updated At
13852
14443
  * * SQL Data Type: datetimeoffset
13853
14444
  * * Default Value: getutcdate()`),
14445
+ MaxExecutionTimeMS: zod_1.z.number().nullable().describe(`
14446
+ * * Field Name: MaxExecutionTimeMS
14447
+ * * Display Name: Max Execution Time (ms)
14448
+ * * SQL Data Type: int
14449
+ * * Description: Maximum total execution time in milliseconds for the entire suite. If NULL, no suite-level timeout applies (individual test timeouts still apply). When exceeded, current test is cancelled and remaining tests are skipped.`),
13854
14450
  Parent: zod_1.z.string().nullable().describe(`
13855
14451
  * * Field Name: Parent
13856
- * * Display Name: Parent
14452
+ * * Display Name: Parent Name
13857
14453
  * * SQL Data Type: nvarchar(255)`),
13858
14454
  RootParentID: zod_1.z.string().nullable().describe(`
13859
14455
  * * Field Name: RootParentID
13860
- * * Display Name: Root Parent ID
14456
+ * * Display Name: Root Parent
13861
14457
  * * SQL Data Type: uniqueidentifier`),
13862
14458
  });
13863
14459
  /**
@@ -13917,7 +14513,7 @@ exports.TestSchema = zod_1.z.object({
13917
14513
  * * Default Value: newsequentialid()`),
13918
14514
  TypeID: zod_1.z.string().describe(`
13919
14515
  * * Field Name: TypeID
13920
- * * Display Name: Type ID
14516
+ * * Display Name: Test Type
13921
14517
  * * SQL Data Type: uniqueidentifier
13922
14518
  * * Related Entity/Foreign Key: MJ: Test Types (vwTestTypes.ID)
13923
14519
  * * Description: Foreign Key - The type of test (e.g., Agent Eval, Workflow Test). Determines which driver class handles execution.`),
@@ -13970,12 +14566,12 @@ exports.TestSchema = zod_1.z.object({
13970
14566
  * * Description: Priority for execution ordering. Lower numbers run first. Useful for dependencies or critical path tests.`),
13971
14567
  EstimatedDurationSeconds: zod_1.z.number().nullable().describe(`
13972
14568
  * * Field Name: EstimatedDurationSeconds
13973
- * * Display Name: Estimated Duration Seconds
14569
+ * * Display Name: Estimated Duration (seconds)
13974
14570
  * * SQL Data Type: int
13975
14571
  * * Description: Estimated execution time in seconds. Used for scheduling and timeout calculations.`),
13976
14572
  EstimatedCostUSD: zod_1.z.number().nullable().describe(`
13977
14573
  * * Field Name: EstimatedCostUSD
13978
- * * Display Name: Estimated Cost USD
14574
+ * * Display Name: Estimated Cost (USD)
13979
14575
  * * SQL Data Type: decimal(10, 6)
13980
14576
  * * Description: Estimated cost in USD for running this test (e.g., LLM token costs, compute resources). Used for budgeting and optimization.`),
13981
14577
  __mj_CreatedAt: zod_1.z.date().describe(`
@@ -13993,9 +14589,14 @@ exports.TestSchema = zod_1.z.object({
13993
14589
  * * Display Name: Repeat Count
13994
14590
  * * SQL Data Type: int
13995
14591
  * * Description: Number of times to repeat this test execution. NULL or 1 = single execution. Values > 1 will create multiple test runs for statistical analysis.`),
14592
+ MaxExecutionTimeMS: zod_1.z.number().nullable().describe(`
14593
+ * * Field Name: MaxExecutionTimeMS
14594
+ * * Display Name: Max Execution Time (ms)
14595
+ * * SQL Data Type: int
14596
+ * * Description: Maximum execution time in milliseconds for this test. If NULL, uses default (300000ms = 5 minutes). Can be overridden by Configuration JSON maxExecutionTime field for backward compatibility.`),
13996
14597
  Type: zod_1.z.string().describe(`
13997
14598
  * * Field Name: Type
13998
- * * Display Name: Type
14599
+ * * Display Name: Test Type Name
13999
14600
  * * SQL Data Type: nvarchar(100)`),
14000
14601
  });
14001
14602
  /**
@@ -20639,7 +21240,7 @@ let AIAgentEntity = class AIAgentEntity extends core_1.BaseEntity {
20639
21240
  }
20640
21241
  /**
20641
21242
  * * Field Name: ParentID
20642
- * * Display Name: Parent ID
21243
+ * * Display Name: Parent
20643
21244
  * * SQL Data Type: uniqueidentifier
20644
21245
  * * Related Entity/Foreign Key: AI Agents (vwAIAgents.ID)
20645
21246
  * * Description: References the parent agent in the hierarchical structure. If NULL, this is a root (top-level) agent.
@@ -20720,7 +21321,7 @@ let AIAgentEntity = class AIAgentEntity extends core_1.BaseEntity {
20720
21321
  }
20721
21322
  /**
20722
21323
  * * Field Name: ContextCompressionPromptID
20723
- * * Display Name: Context Compression Prompt ID
21324
+ * * Display Name: Context Compression Prompt
20724
21325
  * * SQL Data Type: uniqueidentifier
20725
21326
  * * Related Entity/Foreign Key: AI Prompts (vwAIPrompts.ID)
20726
21327
  */
@@ -20744,7 +21345,7 @@ let AIAgentEntity = class AIAgentEntity extends core_1.BaseEntity {
20744
21345
  }
20745
21346
  /**
20746
21347
  * * Field Name: TypeID
20747
- * * Display Name: Type ID
21348
+ * * Display Name: Type
20748
21349
  * * SQL Data Type: uniqueidentifier
20749
21350
  * * Related Entity/Foreign Key: MJ: AI Agent Types (vwAIAgentTypes.ID)
20750
21351
  * * Description: Reference to the AIAgentType that defines the category and system-level behavior for this agent. Cannot be null.
@@ -21058,7 +21659,7 @@ if this limit is exceeded.
21058
21659
  }
21059
21660
  /**
21060
21661
  * * Field Name: DefaultArtifactTypeID
21061
- * * Display Name: Default Artifact Type ID
21662
+ * * Display Name: Default Artifact Type
21062
21663
  * * SQL Data Type: uniqueidentifier
21063
21664
  * * Related Entity/Foreign Key: MJ: Artifact Types (vwArtifactTypes.ID)
21064
21665
  * * Description: Default artifact type produced by this agent. This is the primary artifact type; additional artifact types can be linked via AIAgentArtifactType junction table. Can be NULL if agent does not produce artifacts by default.
@@ -21071,7 +21672,7 @@ if this limit is exceeded.
21071
21672
  }
21072
21673
  /**
21073
21674
  * * Field Name: OwnerUserID
21074
- * * Display Name: Owner User ID
21675
+ * * Display Name: Owner User
21075
21676
  * * SQL Data Type: uniqueidentifier
21076
21677
  * * Related Entity/Foreign Key: Users (vwUsers.ID)
21077
21678
  * * Default Value: ECAFCCEC-6A37-EF11-86D4-000D3A4E707E
@@ -21276,6 +21877,43 @@ if this limit is exceeded.
21276
21877
  this.Set('MaxMessages', value);
21277
21878
  }
21278
21879
  /**
21880
+ * * Field Name: AttachmentStorageProviderID
21881
+ * * Display Name: Attachment Storage Provider
21882
+ * * SQL Data Type: uniqueidentifier
21883
+ * * Related Entity/Foreign Key: File Storage Providers (vwFileStorageProviders.ID)
21884
+ * * Description: File storage provider for large attachments. Overrides the default from AIConfiguration. NULL uses system default.
21885
+ */
21886
+ get AttachmentStorageProviderID() {
21887
+ return this.Get('AttachmentStorageProviderID');
21888
+ }
21889
+ set AttachmentStorageProviderID(value) {
21890
+ this.Set('AttachmentStorageProviderID', value);
21891
+ }
21892
+ /**
21893
+ * * Field Name: AttachmentRootPath
21894
+ * * Display Name: Attachment Root Path
21895
+ * * SQL Data Type: nvarchar(500)
21896
+ * * Description: Base path within the storage provider for this agent's attachments. Agent run ID and sequence number are appended to create unique paths. Format: /folder/subfolder
21897
+ */
21898
+ get AttachmentRootPath() {
21899
+ return this.Get('AttachmentRootPath');
21900
+ }
21901
+ set AttachmentRootPath(value) {
21902
+ this.Set('AttachmentRootPath', value);
21903
+ }
21904
+ /**
21905
+ * * Field Name: InlineStorageThresholdBytes
21906
+ * * Display Name: Inline Storage Threshold (Bytes)
21907
+ * * SQL Data Type: int
21908
+ * * Description: File size threshold for inline storage. Files <= this size are stored as base64 inline, larger files use MJStorage. NULL uses system default (1MB). Set to 0 to always use MJStorage.
21909
+ */
21910
+ get InlineStorageThresholdBytes() {
21911
+ return this.Get('InlineStorageThresholdBytes');
21912
+ }
21913
+ set InlineStorageThresholdBytes(value) {
21914
+ this.Set('InlineStorageThresholdBytes', value);
21915
+ }
21916
+ /**
21279
21917
  * * Field Name: Parent
21280
21918
  * * Display Name: Parent
21281
21919
  * * SQL Data Type: nvarchar(255)
@@ -21285,7 +21923,7 @@ if this limit is exceeded.
21285
21923
  }
21286
21924
  /**
21287
21925
  * * Field Name: ContextCompressionPrompt
21288
- * * Display Name: Context Compression Prompt
21926
+ * * Display Name: Context Compression Prompt Text
21289
21927
  * * SQL Data Type: nvarchar(255)
21290
21928
  */
21291
21929
  get ContextCompressionPrompt() {
@@ -21316,8 +21954,16 @@ if this limit is exceeded.
21316
21954
  return this.Get('OwnerUser');
21317
21955
  }
21318
21956
  /**
21957
+ * * Field Name: AttachmentStorageProvider
21958
+ * * Display Name: Attachment Storage Provider Name
21959
+ * * SQL Data Type: nvarchar(50)
21960
+ */
21961
+ get AttachmentStorageProvider() {
21962
+ return this.Get('AttachmentStorageProvider');
21963
+ }
21964
+ /**
21319
21965
  * * Field Name: RootParentID
21320
- * * Display Name: Root Parent ID
21966
+ * * Display Name: Root Parent
21321
21967
  * * SQL Data Type: uniqueidentifier
21322
21968
  */
21323
21969
  get RootParentID() {
@@ -21525,6 +22171,48 @@ let AIModelTypeEntity = class AIModelTypeEntity extends core_1.BaseEntity {
21525
22171
  get __mj_UpdatedAt() {
21526
22172
  return this.Get('__mj_UpdatedAt');
21527
22173
  }
22174
+ /**
22175
+ * * Field Name: DefaultInputModalityID
22176
+ * * Display Name: Default Input Modality
22177
+ * * SQL Data Type: uniqueidentifier
22178
+ * * Related Entity/Foreign Key: MJ: AI Modalities (vwAIModalities.ID)
22179
+ * * Description: Default input modality for this model type. Models of this type inherit this as their primary input modality unless overridden.
22180
+ */
22181
+ get DefaultInputModalityID() {
22182
+ return this.Get('DefaultInputModalityID');
22183
+ }
22184
+ set DefaultInputModalityID(value) {
22185
+ this.Set('DefaultInputModalityID', value);
22186
+ }
22187
+ /**
22188
+ * * Field Name: DefaultOutputModalityID
22189
+ * * Display Name: Default Output Modality
22190
+ * * SQL Data Type: uniqueidentifier
22191
+ * * Related Entity/Foreign Key: MJ: AI Modalities (vwAIModalities.ID)
22192
+ * * Description: Default output modality for this model type. Models of this type inherit this as their primary output modality unless overridden.
22193
+ */
22194
+ get DefaultOutputModalityID() {
22195
+ return this.Get('DefaultOutputModalityID');
22196
+ }
22197
+ set DefaultOutputModalityID(value) {
22198
+ this.Set('DefaultOutputModalityID', value);
22199
+ }
22200
+ /**
22201
+ * * Field Name: DefaultInputModality
22202
+ * * Display Name: Default Input Modality
22203
+ * * SQL Data Type: nvarchar(50)
22204
+ */
22205
+ get DefaultInputModality() {
22206
+ return this.Get('DefaultInputModality');
22207
+ }
22208
+ /**
22209
+ * * Field Name: DefaultOutputModality
22210
+ * * Display Name: Default Output Modality
22211
+ * * SQL Data Type: nvarchar(50)
22212
+ */
22213
+ get DefaultOutputModality() {
22214
+ return this.Get('DefaultOutputModality');
22215
+ }
21528
22216
  };
21529
22217
  exports.AIModelTypeEntity = AIModelTypeEntity;
21530
22218
  exports.AIModelTypeEntity = AIModelTypeEntity = __decorate([
@@ -21644,7 +22332,7 @@ let AIModelEntity = class AIModelEntity extends core_1.BaseEntity {
21644
22332
  }
21645
22333
  /**
21646
22334
  * * Field Name: AIModelTypeID
21647
- * * Display Name: AI Model Type ID
22335
+ * * Display Name: AI Model Type
21648
22336
  * * SQL Data Type: uniqueidentifier
21649
22337
  * * Related Entity/Foreign Key: AI Model Types (vwAIModelTypes.ID)
21650
22338
  */
@@ -21669,7 +22357,7 @@ let AIModelEntity = class AIModelEntity extends core_1.BaseEntity {
21669
22357
  }
21670
22358
  /**
21671
22359
  * * Field Name: IsActive
21672
- * * Display Name: Is Active
22360
+ * * Display Name: Active
21673
22361
  * * SQL Data Type: bit
21674
22362
  * * Default Value: 1
21675
22363
  * * Description: Controls whether this AI model is available for use in the system.
@@ -21737,8 +22425,34 @@ let AIModelEntity = class AIModelEntity extends core_1.BaseEntity {
21737
22425
  this.Set('ModelSelectionInsights', value);
21738
22426
  }
21739
22427
  /**
22428
+ * * Field Name: InheritTypeModalities
22429
+ * * Display Name: Inherit Type Modalities
22430
+ * * SQL Data Type: bit
22431
+ * * Default Value: 1
22432
+ * * Description: When TRUE (default), the model inherits default input/output modalities from its AIModelType AND can extend with additional modalities via AIModelModality records. When FALSE, only modalities explicitly defined in AIModelModality are used.
22433
+ */
22434
+ get InheritTypeModalities() {
22435
+ return this.Get('InheritTypeModalities');
22436
+ }
22437
+ set InheritTypeModalities(value) {
22438
+ this.Set('InheritTypeModalities', value);
22439
+ }
22440
+ /**
22441
+ * * Field Name: PriorVersionID
22442
+ * * Display Name: Prior Version
22443
+ * * SQL Data Type: uniqueidentifier
22444
+ * * Related Entity/Foreign Key: AI Models (vwAIModels.ID)
22445
+ * * Description: Reference to the previous version of this model, creating a version lineage chain. For example, GPT-4 Turbo might reference GPT-4 as its prior version.
22446
+ */
22447
+ get PriorVersionID() {
22448
+ return this.Get('PriorVersionID');
22449
+ }
22450
+ set PriorVersionID(value) {
22451
+ this.Set('PriorVersionID', value);
22452
+ }
22453
+ /**
21740
22454
  * * Field Name: AIModelType
21741
- * * Display Name: AIModel Type
22455
+ * * Display Name: AI Model Type
21742
22456
  * * SQL Data Type: nvarchar(50)
21743
22457
  */
21744
22458
  get AIModelType() {
@@ -21770,7 +22484,7 @@ let AIModelEntity = class AIModelEntity extends core_1.BaseEntity {
21770
22484
  }
21771
22485
  /**
21772
22486
  * * Field Name: APIName
21773
- * * Display Name: APIName
22487
+ * * Display Name: API Name
21774
22488
  * * SQL Data Type: nvarchar(100)
21775
22489
  */
21776
22490
  get APIName() {
@@ -32893,7 +33607,7 @@ let EntityFieldValueEntity = class EntityFieldValueEntity extends core_1.BaseEnt
32893
33607
  }
32894
33608
  /**
32895
33609
  * * Field Name: EntityFieldID
32896
- * * Display Name: Entity Field ID
33610
+ * * Display Name: Entity Field
32897
33611
  * * SQL Data Type: uniqueidentifier
32898
33612
  * * Related Entity/Foreign Key: Entity Fields (vwEntityFields.ID)
32899
33613
  */
@@ -32952,7 +33666,7 @@ let EntityFieldValueEntity = class EntityFieldValueEntity extends core_1.BaseEnt
32952
33666
  }
32953
33667
  /**
32954
33668
  * * Field Name: __mj_CreatedAt
32955
- * * Display Name: __mj _Created At
33669
+ * * Display Name: Created At
32956
33670
  * * SQL Data Type: datetimeoffset
32957
33671
  * * Default Value: getutcdate()
32958
33672
  */
@@ -32961,7 +33675,7 @@ let EntityFieldValueEntity = class EntityFieldValueEntity extends core_1.BaseEnt
32961
33675
  }
32962
33676
  /**
32963
33677
  * * Field Name: __mj_UpdatedAt
32964
- * * Display Name: __mj _Updated At
33678
+ * * Display Name: Updated At
32965
33679
  * * SQL Data Type: datetimeoffset
32966
33680
  * * Default Value: getutcdate()
32967
33681
  */
@@ -32986,7 +33700,7 @@ let EntityFieldValueEntity = class EntityFieldValueEntity extends core_1.BaseEnt
32986
33700
  }
32987
33701
  /**
32988
33702
  * * Field Name: EntityID
32989
- * * Display Name: Entity ID
33703
+ * * Display Name: Entity
32990
33704
  * * SQL Data Type: uniqueidentifier
32991
33705
  */
32992
33706
  get EntityID() {
@@ -38284,6 +38998,162 @@ exports.AIAgentExampleEntity = AIAgentExampleEntity;
38284
38998
  exports.AIAgentExampleEntity = AIAgentExampleEntity = __decorate([
38285
38999
  (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: AI Agent Examples')
38286
39000
  ], AIAgentExampleEntity);
39001
+ /**
39002
+ * MJ: AI Agent Modalities - strongly typed entity sub-class
39003
+ * * Schema: __mj
39004
+ * * Base Table: AIAgentModality
39005
+ * * Base View: vwAIAgentModalities
39006
+ * * @description Agent-level modality configuration. Allows agents to restrict or customize modality settings beyond what the model supports. Absence of a record means the agent uses model defaults (Text in/out assumed if no records exist).
39007
+ * * Primary Key: ID
39008
+ * @extends {BaseEntity}
39009
+ * @class
39010
+ * @public
39011
+ */
39012
+ let AIAgentModalityEntity = class AIAgentModalityEntity extends core_1.BaseEntity {
39013
+ /**
39014
+ * Loads the MJ: AI Agent Modalities record from the database
39015
+ * @param ID: string - primary key value to load the MJ: AI Agent Modalities record.
39016
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
39017
+ * @returns {Promise<boolean>} - true if successful, false otherwise
39018
+ * @public
39019
+ * @async
39020
+ * @memberof AIAgentModalityEntity
39021
+ * @method
39022
+ * @override
39023
+ */
39024
+ async Load(ID, EntityRelationshipsToLoad) {
39025
+ const compositeKey = new core_1.CompositeKey();
39026
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
39027
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
39028
+ }
39029
+ /**
39030
+ * * Field Name: ID
39031
+ * * Display Name: ID
39032
+ * * SQL Data Type: uniqueidentifier
39033
+ * * Default Value: newsequentialid()
39034
+ */
39035
+ get ID() {
39036
+ return this.Get('ID');
39037
+ }
39038
+ set ID(value) {
39039
+ this.Set('ID', value);
39040
+ }
39041
+ /**
39042
+ * * Field Name: AgentID
39043
+ * * Display Name: Agent ID
39044
+ * * SQL Data Type: uniqueidentifier
39045
+ * * Related Entity/Foreign Key: AI Agents (vwAIAgents.ID)
39046
+ */
39047
+ get AgentID() {
39048
+ return this.Get('AgentID');
39049
+ }
39050
+ set AgentID(value) {
39051
+ this.Set('AgentID', value);
39052
+ }
39053
+ /**
39054
+ * * Field Name: ModalityID
39055
+ * * Display Name: Modality ID
39056
+ * * SQL Data Type: uniqueidentifier
39057
+ * * Related Entity/Foreign Key: MJ: AI Modalities (vwAIModalities.ID)
39058
+ */
39059
+ get ModalityID() {
39060
+ return this.Get('ModalityID');
39061
+ }
39062
+ set ModalityID(value) {
39063
+ this.Set('ModalityID', value);
39064
+ }
39065
+ /**
39066
+ * * Field Name: Direction
39067
+ * * Display Name: Direction
39068
+ * * SQL Data Type: nvarchar(10)
39069
+ * * Value List Type: List
39070
+ * * Possible Values
39071
+ * * Input
39072
+ * * Output
39073
+ * * Description: Whether this is an Input or Output modality for the agent.
39074
+ */
39075
+ get Direction() {
39076
+ return this.Get('Direction');
39077
+ }
39078
+ set Direction(value) {
39079
+ this.Set('Direction', value);
39080
+ }
39081
+ /**
39082
+ * * Field Name: IsAllowed
39083
+ * * Display Name: Allowed
39084
+ * * SQL Data Type: bit
39085
+ * * Default Value: 1
39086
+ * * Description: Whether this modality is allowed for this agent. Set to FALSE to disable a modality even if the underlying model supports it.
39087
+ */
39088
+ get IsAllowed() {
39089
+ return this.Get('IsAllowed');
39090
+ }
39091
+ set IsAllowed(value) {
39092
+ this.Set('IsAllowed', value);
39093
+ }
39094
+ /**
39095
+ * * Field Name: MaxSizeBytes
39096
+ * * Display Name: Max Size (Bytes)
39097
+ * * SQL Data Type: int
39098
+ * * Description: Agent-specific maximum size in bytes. Overrides model and system defaults. Must be less than or equal to model limit.
39099
+ */
39100
+ get MaxSizeBytes() {
39101
+ return this.Get('MaxSizeBytes');
39102
+ }
39103
+ set MaxSizeBytes(value) {
39104
+ this.Set('MaxSizeBytes', value);
39105
+ }
39106
+ /**
39107
+ * * Field Name: MaxCountPerMessage
39108
+ * * Display Name: Max Count Per Message
39109
+ * * SQL Data Type: int
39110
+ * * Description: Agent-specific maximum count per message. Overrides model and system defaults. Must be less than or equal to model limit.
39111
+ */
39112
+ get MaxCountPerMessage() {
39113
+ return this.Get('MaxCountPerMessage');
39114
+ }
39115
+ set MaxCountPerMessage(value) {
39116
+ this.Set('MaxCountPerMessage', value);
39117
+ }
39118
+ /**
39119
+ * * Field Name: __mj_CreatedAt
39120
+ * * Display Name: Created At
39121
+ * * SQL Data Type: datetimeoffset
39122
+ * * Default Value: getutcdate()
39123
+ */
39124
+ get __mj_CreatedAt() {
39125
+ return this.Get('__mj_CreatedAt');
39126
+ }
39127
+ /**
39128
+ * * Field Name: __mj_UpdatedAt
39129
+ * * Display Name: Updated At
39130
+ * * SQL Data Type: datetimeoffset
39131
+ * * Default Value: getutcdate()
39132
+ */
39133
+ get __mj_UpdatedAt() {
39134
+ return this.Get('__mj_UpdatedAt');
39135
+ }
39136
+ /**
39137
+ * * Field Name: Agent
39138
+ * * Display Name: Agent
39139
+ * * SQL Data Type: nvarchar(255)
39140
+ */
39141
+ get Agent() {
39142
+ return this.Get('Agent');
39143
+ }
39144
+ /**
39145
+ * * Field Name: Modality
39146
+ * * Display Name: Modality
39147
+ * * SQL Data Type: nvarchar(50)
39148
+ */
39149
+ get Modality() {
39150
+ return this.Get('Modality');
39151
+ }
39152
+ };
39153
+ exports.AIAgentModalityEntity = AIAgentModalityEntity;
39154
+ exports.AIAgentModalityEntity = AIAgentModalityEntity = __decorate([
39155
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: AI Agent Modalities')
39156
+ ], AIAgentModalityEntity);
38287
39157
  /**
38288
39158
  * MJ: AI Agent Permissions - strongly typed entity sub-class
38289
39159
  * * Schema: __mj
@@ -40730,6 +41600,170 @@ exports.AIAgentTypeEntity = AIAgentTypeEntity;
40730
41600
  exports.AIAgentTypeEntity = AIAgentTypeEntity = __decorate([
40731
41601
  (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: AI Agent Types')
40732
41602
  ], AIAgentTypeEntity);
41603
+ /**
41604
+ * MJ: AI Architectures - strongly typed entity sub-class
41605
+ * * Schema: __mj
41606
+ * * Base Table: AIArchitecture
41607
+ * * Base View: vwAIArchitectures
41608
+ * * @description Master table of AI model architectures (Transformer, Diffusion, MoE, etc.) for model catalog enrichment and eval reporting.
41609
+ * * Primary Key: ID
41610
+ * @extends {BaseEntity}
41611
+ * @class
41612
+ * @public
41613
+ */
41614
+ let AIArchitectureEntity = class AIArchitectureEntity extends core_1.BaseEntity {
41615
+ /**
41616
+ * Loads the MJ: AI Architectures record from the database
41617
+ * @param ID: string - primary key value to load the MJ: AI Architectures record.
41618
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
41619
+ * @returns {Promise<boolean>} - true if successful, false otherwise
41620
+ * @public
41621
+ * @async
41622
+ * @memberof AIArchitectureEntity
41623
+ * @method
41624
+ * @override
41625
+ */
41626
+ async Load(ID, EntityRelationshipsToLoad) {
41627
+ const compositeKey = new core_1.CompositeKey();
41628
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
41629
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
41630
+ }
41631
+ /**
41632
+ * * Field Name: ID
41633
+ * * Display Name: ID
41634
+ * * SQL Data Type: uniqueidentifier
41635
+ * * Default Value: newsequentialid()
41636
+ */
41637
+ get ID() {
41638
+ return this.Get('ID');
41639
+ }
41640
+ set ID(value) {
41641
+ this.Set('ID', value);
41642
+ }
41643
+ /**
41644
+ * * Field Name: Name
41645
+ * * Display Name: Architecture Name
41646
+ * * SQL Data Type: nvarchar(100)
41647
+ */
41648
+ get Name() {
41649
+ return this.Get('Name');
41650
+ }
41651
+ set Name(value) {
41652
+ this.Set('Name', value);
41653
+ }
41654
+ /**
41655
+ * * Field Name: Description
41656
+ * * Display Name: Description
41657
+ * * SQL Data Type: nvarchar(MAX)
41658
+ */
41659
+ get Description() {
41660
+ return this.Get('Description');
41661
+ }
41662
+ set Description(value) {
41663
+ this.Set('Description', value);
41664
+ }
41665
+ /**
41666
+ * * Field Name: Category
41667
+ * * Display Name: Category
41668
+ * * SQL Data Type: nvarchar(50)
41669
+ * * Value List Type: List
41670
+ * * Possible Values
41671
+ * * Core
41672
+ * * Hybrid
41673
+ * * Optimization
41674
+ * * Specialized
41675
+ */
41676
+ get Category() {
41677
+ return this.Get('Category');
41678
+ }
41679
+ set Category(value) {
41680
+ this.Set('Category', value);
41681
+ }
41682
+ /**
41683
+ * * Field Name: ParentArchitectureID
41684
+ * * Display Name: Parent Architecture ID
41685
+ * * SQL Data Type: uniqueidentifier
41686
+ * * Related Entity/Foreign Key: MJ: AI Architectures (vwAIArchitectures.ID)
41687
+ * * Description: Hierarchical relationship to parent architecture. Used for variants like Sparse Transformer being a child of Transformer.
41688
+ */
41689
+ get ParentArchitectureID() {
41690
+ return this.Get('ParentArchitectureID');
41691
+ }
41692
+ set ParentArchitectureID(value) {
41693
+ this.Set('ParentArchitectureID', value);
41694
+ }
41695
+ /**
41696
+ * * Field Name: WikipediaURL
41697
+ * * Display Name: Wikipedia URL
41698
+ * * SQL Data Type: nvarchar(500)
41699
+ */
41700
+ get WikipediaURL() {
41701
+ return this.Get('WikipediaURL');
41702
+ }
41703
+ set WikipediaURL(value) {
41704
+ this.Set('WikipediaURL', value);
41705
+ }
41706
+ /**
41707
+ * * Field Name: YearIntroduced
41708
+ * * Display Name: Year Introduced
41709
+ * * SQL Data Type: int
41710
+ */
41711
+ get YearIntroduced() {
41712
+ return this.Get('YearIntroduced');
41713
+ }
41714
+ set YearIntroduced(value) {
41715
+ this.Set('YearIntroduced', value);
41716
+ }
41717
+ /**
41718
+ * * Field Name: KeyPaper
41719
+ * * Display Name: Key Paper
41720
+ * * SQL Data Type: nvarchar(500)
41721
+ */
41722
+ get KeyPaper() {
41723
+ return this.Get('KeyPaper');
41724
+ }
41725
+ set KeyPaper(value) {
41726
+ this.Set('KeyPaper', value);
41727
+ }
41728
+ /**
41729
+ * * Field Name: __mj_CreatedAt
41730
+ * * Display Name: Created At
41731
+ * * SQL Data Type: datetimeoffset
41732
+ * * Default Value: getutcdate()
41733
+ */
41734
+ get __mj_CreatedAt() {
41735
+ return this.Get('__mj_CreatedAt');
41736
+ }
41737
+ /**
41738
+ * * Field Name: __mj_UpdatedAt
41739
+ * * Display Name: Updated At
41740
+ * * SQL Data Type: datetimeoffset
41741
+ * * Default Value: getutcdate()
41742
+ */
41743
+ get __mj_UpdatedAt() {
41744
+ return this.Get('__mj_UpdatedAt');
41745
+ }
41746
+ /**
41747
+ * * Field Name: ParentArchitecture
41748
+ * * Display Name: Parent Architecture
41749
+ * * SQL Data Type: nvarchar(100)
41750
+ */
41751
+ get ParentArchitecture() {
41752
+ return this.Get('ParentArchitecture');
41753
+ }
41754
+ /**
41755
+ * * Field Name: RootParentArchitectureID
41756
+ * * Display Name: Root Parent Architecture ID
41757
+ * * SQL Data Type: uniqueidentifier
41758
+ */
41759
+ get RootParentArchitectureID() {
41760
+ return this.Get('RootParentArchitectureID');
41761
+ }
41762
+ };
41763
+ exports.AIArchitectureEntity = AIArchitectureEntity;
41764
+ exports.AIArchitectureEntity = AIArchitectureEntity = __decorate([
41765
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: AI Architectures')
41766
+ ], AIArchitectureEntity);
40733
41767
  /**
40734
41768
  * MJ: AI Configuration Params - strongly typed entity sub-class
40735
41769
  * * Schema: __mj
@@ -40967,7 +42001,7 @@ let AIConfigurationEntity = class AIConfigurationEntity extends core_1.BaseEntit
40967
42001
  }
40968
42002
  /**
40969
42003
  * * Field Name: DefaultPromptForContextCompressionID
40970
- * * Display Name: Default Prompt For Context Compression ID
42004
+ * * Display Name: Default Prompt For Context Compression
40971
42005
  * * SQL Data Type: uniqueidentifier
40972
42006
  * * Related Entity/Foreign Key: AI Prompts (vwAIPrompts.ID)
40973
42007
  * * Description: Default prompt to use for context compression when not specified at the agent level.
@@ -40980,7 +42014,7 @@ let AIConfigurationEntity = class AIConfigurationEntity extends core_1.BaseEntit
40980
42014
  }
40981
42015
  /**
40982
42016
  * * Field Name: DefaultPromptForContextSummarizationID
40983
- * * Display Name: Default Prompt For Context Summarization ID
42017
+ * * Display Name: Default Prompt For Context Summarization
40984
42018
  * * SQL Data Type: uniqueidentifier
40985
42019
  * * Related Entity/Foreign Key: AI Prompts (vwAIPrompts.ID)
40986
42020
  * * Description: Default prompt to use for context summarization when not specified at the agent level.
@@ -41010,6 +42044,44 @@ let AIConfigurationEntity = class AIConfigurationEntity extends core_1.BaseEntit
41010
42044
  return this.Get('__mj_UpdatedAt');
41011
42045
  }
41012
42046
  /**
42047
+ * * Field Name: DefaultStorageProviderID
42048
+ * * Display Name: Default Storage Provider
42049
+ * * SQL Data Type: uniqueidentifier
42050
+ * * Related Entity/Foreign Key: File Storage Providers (vwFileStorageProviders.ID)
42051
+ * * Description: Default file storage provider for agent attachments. Used when an agent does not specify its own AttachmentStorageProviderID.
42052
+ */
42053
+ get DefaultStorageProviderID() {
42054
+ return this.Get('DefaultStorageProviderID');
42055
+ }
42056
+ set DefaultStorageProviderID(value) {
42057
+ this.Set('DefaultStorageProviderID', value);
42058
+ }
42059
+ /**
42060
+ * * Field Name: DefaultStorageRootPath
42061
+ * * Display Name: Default Storage Root Path
42062
+ * * SQL Data Type: nvarchar(500)
42063
+ * * Description: Default root path within the storage provider for agent attachments. Used when an agent does not specify its own AttachmentRootPath.
42064
+ */
42065
+ get DefaultStorageRootPath() {
42066
+ return this.Get('DefaultStorageRootPath');
42067
+ }
42068
+ set DefaultStorageRootPath(value) {
42069
+ this.Set('DefaultStorageRootPath', value);
42070
+ }
42071
+ /**
42072
+ * * Field Name: ParentID
42073
+ * * Display Name: Parent ID
42074
+ * * SQL Data Type: uniqueidentifier
42075
+ * * Related Entity/Foreign Key: MJ: AI Configurations (vwAIConfigurations.ID)
42076
+ * * Description: Optional reference to a parent configuration. When set, this configuration inherits prompt-model mappings and parameters from its parent. Child configurations can override specific settings while inheriting defaults from the parent chain. Supports N-level deep inheritance.
42077
+ */
42078
+ get ParentID() {
42079
+ return this.Get('ParentID');
42080
+ }
42081
+ set ParentID(value) {
42082
+ this.Set('ParentID', value);
42083
+ }
42084
+ /**
41013
42085
  * * Field Name: DefaultPromptForContextCompression
41014
42086
  * * Display Name: Default Prompt For Context Compression
41015
42087
  * * SQL Data Type: nvarchar(255)
@@ -41025,6 +42097,30 @@ let AIConfigurationEntity = class AIConfigurationEntity extends core_1.BaseEntit
41025
42097
  get DefaultPromptForContextSummarization() {
41026
42098
  return this.Get('DefaultPromptForContextSummarization');
41027
42099
  }
42100
+ /**
42101
+ * * Field Name: DefaultStorageProvider
42102
+ * * Display Name: Default Storage Provider
42103
+ * * SQL Data Type: nvarchar(50)
42104
+ */
42105
+ get DefaultStorageProvider() {
42106
+ return this.Get('DefaultStorageProvider');
42107
+ }
42108
+ /**
42109
+ * * Field Name: Parent
42110
+ * * Display Name: Parent
42111
+ * * SQL Data Type: nvarchar(100)
42112
+ */
42113
+ get Parent() {
42114
+ return this.Get('Parent');
42115
+ }
42116
+ /**
42117
+ * * Field Name: RootParentID
42118
+ * * Display Name: Root Parent ID
42119
+ * * SQL Data Type: uniqueidentifier
42120
+ */
42121
+ get RootParentID() {
42122
+ return this.Get('RootParentID');
42123
+ }
41028
42124
  };
41029
42125
  exports.AIConfigurationEntity = AIConfigurationEntity;
41030
42126
  exports.AIConfigurationEntity = AIConfigurationEntity = __decorate([
@@ -41285,6 +42381,357 @@ exports.AICredentialBindingEntity = AICredentialBindingEntity;
41285
42381
  exports.AICredentialBindingEntity = AICredentialBindingEntity = __decorate([
41286
42382
  (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: AI Credential Bindings')
41287
42383
  ], AICredentialBindingEntity);
42384
+ /**
42385
+ * MJ: AI Modalities - strongly typed entity sub-class
42386
+ * * Schema: __mj
42387
+ * * Base Table: AIModality
42388
+ * * Base View: vwAIModalities
42389
+ * * @description Master list of AI content modalities (Text, Image, Audio, Video, etc.) that models can accept as input or produce as output. New modalities can be added via INSERT without schema changes.
42390
+ * * Primary Key: ID
42391
+ * @extends {BaseEntity}
42392
+ * @class
42393
+ * @public
42394
+ */
42395
+ let AIModalityEntity = class AIModalityEntity extends core_1.BaseEntity {
42396
+ /**
42397
+ * Loads the MJ: AI Modalities record from the database
42398
+ * @param ID: string - primary key value to load the MJ: AI Modalities record.
42399
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
42400
+ * @returns {Promise<boolean>} - true if successful, false otherwise
42401
+ * @public
42402
+ * @async
42403
+ * @memberof AIModalityEntity
42404
+ * @method
42405
+ * @override
42406
+ */
42407
+ async Load(ID, EntityRelationshipsToLoad) {
42408
+ const compositeKey = new core_1.CompositeKey();
42409
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
42410
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
42411
+ }
42412
+ /**
42413
+ * * Field Name: ID
42414
+ * * Display Name: ID
42415
+ * * SQL Data Type: uniqueidentifier
42416
+ * * Default Value: newsequentialid()
42417
+ */
42418
+ get ID() {
42419
+ return this.Get('ID');
42420
+ }
42421
+ set ID(value) {
42422
+ this.Set('ID', value);
42423
+ }
42424
+ /**
42425
+ * * Field Name: Name
42426
+ * * Display Name: Name
42427
+ * * SQL Data Type: nvarchar(50)
42428
+ * * Description: Display name of the modality (e.g., Text, Image, Audio, Video, File, Embedding).
42429
+ */
42430
+ get Name() {
42431
+ return this.Get('Name');
42432
+ }
42433
+ set Name(value) {
42434
+ this.Set('Name', value);
42435
+ }
42436
+ /**
42437
+ * * Field Name: Description
42438
+ * * Display Name: Description
42439
+ * * SQL Data Type: nvarchar(500)
42440
+ * * Description: Detailed description of this modality and its use cases.
42441
+ */
42442
+ get Description() {
42443
+ return this.Get('Description');
42444
+ }
42445
+ set Description(value) {
42446
+ this.Set('Description', value);
42447
+ }
42448
+ /**
42449
+ * * Field Name: ContentBlockType
42450
+ * * Display Name: Content Block Type
42451
+ * * SQL Data Type: nvarchar(50)
42452
+ * * Value List Type: List
42453
+ * * Possible Values
42454
+ * * audio_url
42455
+ * * embedding
42456
+ * * file_url
42457
+ * * image_url
42458
+ * * text
42459
+ * * video_url
42460
+ * * Description: Maps to ChatMessageContentBlock.type values: text, image_url, video_url, audio_url, file_url, embedding. Must match the TypeScript type definition.
42461
+ */
42462
+ get ContentBlockType() {
42463
+ return this.Get('ContentBlockType');
42464
+ }
42465
+ set ContentBlockType(value) {
42466
+ this.Set('ContentBlockType', value);
42467
+ }
42468
+ /**
42469
+ * * Field Name: MIMETypePattern
42470
+ * * Display Name: MIME Type Pattern
42471
+ * * SQL Data Type: nvarchar(100)
42472
+ * * Description: MIME type pattern for this modality (e.g., image/*, audio/*, video/*, text/*, application/*). Used for file type validation.
42473
+ */
42474
+ get MIMETypePattern() {
42475
+ return this.Get('MIMETypePattern');
42476
+ }
42477
+ set MIMETypePattern(value) {
42478
+ this.Set('MIMETypePattern', value);
42479
+ }
42480
+ /**
42481
+ * * Field Name: Type
42482
+ * * Display Name: Type
42483
+ * * SQL Data Type: nvarchar(50)
42484
+ * * Default Value: Content
42485
+ * * Value List Type: List
42486
+ * * Possible Values
42487
+ * * Binary
42488
+ * * Content
42489
+ * * Structured
42490
+ * * Description: Classification type: Content (human-readable text), Structured (JSON/embeddings), Binary (media files like images, audio, video).
42491
+ */
42492
+ get Type() {
42493
+ return this.Get('Type');
42494
+ }
42495
+ set Type(value) {
42496
+ this.Set('Type', value);
42497
+ }
42498
+ /**
42499
+ * * Field Name: DefaultMaxSizeBytes
42500
+ * * Display Name: Default Max Size (Bytes)
42501
+ * * SQL Data Type: int
42502
+ * * Description: System-wide default maximum size in bytes for this modality. Can be overridden at model or agent level. NULL means no size limit.
42503
+ */
42504
+ get DefaultMaxSizeBytes() {
42505
+ return this.Get('DefaultMaxSizeBytes');
42506
+ }
42507
+ set DefaultMaxSizeBytes(value) {
42508
+ this.Set('DefaultMaxSizeBytes', value);
42509
+ }
42510
+ /**
42511
+ * * Field Name: DefaultMaxCountPerMessage
42512
+ * * Display Name: Default Max Count Per Message
42513
+ * * SQL Data Type: int
42514
+ * * Description: System-wide default maximum count per message for this modality. Can be overridden at model or agent level. NULL means no count limit.
42515
+ */
42516
+ get DefaultMaxCountPerMessage() {
42517
+ return this.Get('DefaultMaxCountPerMessage');
42518
+ }
42519
+ set DefaultMaxCountPerMessage(value) {
42520
+ this.Set('DefaultMaxCountPerMessage', value);
42521
+ }
42522
+ /**
42523
+ * * Field Name: DisplayOrder
42524
+ * * Display Name: Display Order
42525
+ * * SQL Data Type: int
42526
+ * * Default Value: 0
42527
+ * * Description: Display order for UI presentation. Lower numbers appear first.
42528
+ */
42529
+ get DisplayOrder() {
42530
+ return this.Get('DisplayOrder');
42531
+ }
42532
+ set DisplayOrder(value) {
42533
+ this.Set('DisplayOrder', value);
42534
+ }
42535
+ /**
42536
+ * * Field Name: __mj_CreatedAt
42537
+ * * Display Name: Created At
42538
+ * * SQL Data Type: datetimeoffset
42539
+ * * Default Value: getutcdate()
42540
+ */
42541
+ get __mj_CreatedAt() {
42542
+ return this.Get('__mj_CreatedAt');
42543
+ }
42544
+ /**
42545
+ * * Field Name: __mj_UpdatedAt
42546
+ * * Display Name: Updated At
42547
+ * * SQL Data Type: datetimeoffset
42548
+ * * Default Value: getutcdate()
42549
+ */
42550
+ get __mj_UpdatedAt() {
42551
+ return this.Get('__mj_UpdatedAt');
42552
+ }
42553
+ };
42554
+ exports.AIModalityEntity = AIModalityEntity;
42555
+ exports.AIModalityEntity = AIModalityEntity = __decorate([
42556
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: AI Modalities')
42557
+ ], AIModalityEntity);
42558
+ /**
42559
+ * MJ: AI Model Architectures - strongly typed entity sub-class
42560
+ * * Schema: __mj
42561
+ * * Base Table: AIModelArchitecture
42562
+ * * Base View: vwAIModelArchitectures
42563
+ * * @description Junction table linking AI models to their underlying architectures. Supports multiple architectures per model with ranking.
42564
+ * * Primary Key: ID
42565
+ * @extends {BaseEntity}
42566
+ * @class
42567
+ * @public
42568
+ */
42569
+ let AIModelArchitectureEntity = class AIModelArchitectureEntity extends core_1.BaseEntity {
42570
+ /**
42571
+ * Loads the MJ: AI Model Architectures record from the database
42572
+ * @param ID: string - primary key value to load the MJ: AI Model Architectures record.
42573
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
42574
+ * @returns {Promise<boolean>} - true if successful, false otherwise
42575
+ * @public
42576
+ * @async
42577
+ * @memberof AIModelArchitectureEntity
42578
+ * @method
42579
+ * @override
42580
+ */
42581
+ async Load(ID, EntityRelationshipsToLoad) {
42582
+ const compositeKey = new core_1.CompositeKey();
42583
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
42584
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
42585
+ }
42586
+ /**
42587
+ * Validate() method override for MJ: AI Model Architectures entity. This is an auto-generated method that invokes the generated validators for this entity for the following fields:
42588
+ * * Rank: Rank must be greater than zero, ensuring that every item has a positive ranking value.
42589
+ * * Weight: Weight must be between 0 and 1 when a value is provided; if no weight is entered, it may be left empty.
42590
+ * @public
42591
+ * @method
42592
+ * @override
42593
+ */
42594
+ Validate() {
42595
+ const result = super.Validate();
42596
+ this.ValidateRankGreaterThanZero(result);
42597
+ this.ValidateWeightRange(result);
42598
+ result.Success = result.Success && (result.Errors.length === 0);
42599
+ return result;
42600
+ }
42601
+ /**
42602
+ * Rank must be greater than zero, ensuring that every item has a positive ranking value.
42603
+ * @param result - the ValidationResult object to add any errors or warnings to
42604
+ * @public
42605
+ * @method
42606
+ */
42607
+ ValidateRankGreaterThanZero(result) {
42608
+ if (this.Rank <= 0) {
42609
+ result.Errors.push(new core_1.ValidationErrorInfo("Rank", "Rank must be greater than 0.", this.Rank, core_1.ValidationErrorType.Failure));
42610
+ }
42611
+ }
42612
+ /**
42613
+ * Weight must be between 0 and 1 when a value is provided; if no weight is entered, it may be left empty.
42614
+ * @param result - the ValidationResult object to add any errors or warnings to
42615
+ * @public
42616
+ * @method
42617
+ */
42618
+ ValidateWeightRange(result) {
42619
+ // Ensure Weight is within the allowed range when it is provided
42620
+ if (this.Weight != null && (this.Weight < 0 || this.Weight > 1)) {
42621
+ result.Errors.push(new core_1.ValidationErrorInfo("Weight", "Weight must be between 0 and 1.", this.Weight, core_1.ValidationErrorType.Failure));
42622
+ }
42623
+ }
42624
+ /**
42625
+ * * Field Name: ID
42626
+ * * Display Name: ID
42627
+ * * SQL Data Type: uniqueidentifier
42628
+ * * Default Value: newsequentialid()
42629
+ */
42630
+ get ID() {
42631
+ return this.Get('ID');
42632
+ }
42633
+ set ID(value) {
42634
+ this.Set('ID', value);
42635
+ }
42636
+ /**
42637
+ * * Field Name: ModelID
42638
+ * * Display Name: Model
42639
+ * * SQL Data Type: uniqueidentifier
42640
+ * * Related Entity/Foreign Key: AI Models (vwAIModels.ID)
42641
+ */
42642
+ get ModelID() {
42643
+ return this.Get('ModelID');
42644
+ }
42645
+ set ModelID(value) {
42646
+ this.Set('ModelID', value);
42647
+ }
42648
+ /**
42649
+ * * Field Name: ArchitectureID
42650
+ * * Display Name: Architecture
42651
+ * * SQL Data Type: uniqueidentifier
42652
+ * * Related Entity/Foreign Key: MJ: AI Architectures (vwAIArchitectures.ID)
42653
+ */
42654
+ get ArchitectureID() {
42655
+ return this.Get('ArchitectureID');
42656
+ }
42657
+ set ArchitectureID(value) {
42658
+ this.Set('ArchitectureID', value);
42659
+ }
42660
+ /**
42661
+ * * Field Name: Rank
42662
+ * * Display Name: Rank
42663
+ * * SQL Data Type: int
42664
+ * * Default Value: 1
42665
+ * * Description: Ranking of this architecture for the model. 1=Primary architecture, 2=Secondary, etc. Lower numbers indicate more dominant role.
42666
+ */
42667
+ get Rank() {
42668
+ return this.Get('Rank');
42669
+ }
42670
+ set Rank(value) {
42671
+ this.Set('Rank', value);
42672
+ }
42673
+ /**
42674
+ * * Field Name: Weight
42675
+ * * Display Name: Weight
42676
+ * * SQL Data Type: decimal(5, 4)
42677
+ * * Description: Optional weight (0.0-1.0) indicating the mix ratio for hybrid architectures. E.g., 0.7 for 70% contribution.
42678
+ */
42679
+ get Weight() {
42680
+ return this.Get('Weight');
42681
+ }
42682
+ set Weight(value) {
42683
+ this.Set('Weight', value);
42684
+ }
42685
+ /**
42686
+ * * Field Name: Notes
42687
+ * * Display Name: Notes
42688
+ * * SQL Data Type: nvarchar(500)
42689
+ */
42690
+ get Notes() {
42691
+ return this.Get('Notes');
42692
+ }
42693
+ set Notes(value) {
42694
+ this.Set('Notes', value);
42695
+ }
42696
+ /**
42697
+ * * Field Name: __mj_CreatedAt
42698
+ * * Display Name: Created At
42699
+ * * SQL Data Type: datetimeoffset
42700
+ * * Default Value: getutcdate()
42701
+ */
42702
+ get __mj_CreatedAt() {
42703
+ return this.Get('__mj_CreatedAt');
42704
+ }
42705
+ /**
42706
+ * * Field Name: __mj_UpdatedAt
42707
+ * * Display Name: Updated At
42708
+ * * SQL Data Type: datetimeoffset
42709
+ * * Default Value: getutcdate()
42710
+ */
42711
+ get __mj_UpdatedAt() {
42712
+ return this.Get('__mj_UpdatedAt');
42713
+ }
42714
+ /**
42715
+ * * Field Name: Model
42716
+ * * Display Name: Model Name
42717
+ * * SQL Data Type: nvarchar(50)
42718
+ */
42719
+ get Model() {
42720
+ return this.Get('Model');
42721
+ }
42722
+ /**
42723
+ * * Field Name: Architecture
42724
+ * * Display Name: Architecture Name
42725
+ * * SQL Data Type: nvarchar(100)
42726
+ */
42727
+ get Architecture() {
42728
+ return this.Get('Architecture');
42729
+ }
42730
+ };
42731
+ exports.AIModelArchitectureEntity = AIModelArchitectureEntity;
42732
+ exports.AIModelArchitectureEntity = AIModelArchitectureEntity = __decorate([
42733
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: AI Model Architectures')
42734
+ ], AIModelArchitectureEntity);
41288
42735
  /**
41289
42736
  * MJ: AI Model Costs - strongly typed entity sub-class
41290
42737
  * * Schema: __mj
@@ -41601,6 +43048,211 @@ exports.AIModelCostEntity = AIModelCostEntity;
41601
43048
  exports.AIModelCostEntity = AIModelCostEntity = __decorate([
41602
43049
  (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: AI Model Costs')
41603
43050
  ], AIModelCostEntity);
43051
+ /**
43052
+ * MJ: AI Model Modalities - strongly typed entity sub-class
43053
+ * * Schema: __mj
43054
+ * * Base Table: AIModelModality
43055
+ * * Base View: vwAIModelModalities
43056
+ * * @description Junction table linking AI models to their supported input and output modalities with model-specific configuration. Used to extend beyond the default modalities inherited from AIModelType.
43057
+ * * Primary Key: ID
43058
+ * @extends {BaseEntity}
43059
+ * @class
43060
+ * @public
43061
+ */
43062
+ let AIModelModalityEntity = class AIModelModalityEntity extends core_1.BaseEntity {
43063
+ /**
43064
+ * Loads the MJ: AI Model Modalities record from the database
43065
+ * @param ID: string - primary key value to load the MJ: AI Model Modalities record.
43066
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
43067
+ * @returns {Promise<boolean>} - true if successful, false otherwise
43068
+ * @public
43069
+ * @async
43070
+ * @memberof AIModelModalityEntity
43071
+ * @method
43072
+ * @override
43073
+ */
43074
+ async Load(ID, EntityRelationshipsToLoad) {
43075
+ const compositeKey = new core_1.CompositeKey();
43076
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
43077
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
43078
+ }
43079
+ /**
43080
+ * * Field Name: ID
43081
+ * * Display Name: ID
43082
+ * * SQL Data Type: uniqueidentifier
43083
+ * * Default Value: newsequentialid()
43084
+ */
43085
+ get ID() {
43086
+ return this.Get('ID');
43087
+ }
43088
+ set ID(value) {
43089
+ this.Set('ID', value);
43090
+ }
43091
+ /**
43092
+ * * Field Name: ModelID
43093
+ * * Display Name: Model ID
43094
+ * * SQL Data Type: uniqueidentifier
43095
+ * * Related Entity/Foreign Key: AI Models (vwAIModels.ID)
43096
+ */
43097
+ get ModelID() {
43098
+ return this.Get('ModelID');
43099
+ }
43100
+ set ModelID(value) {
43101
+ this.Set('ModelID', value);
43102
+ }
43103
+ /**
43104
+ * * Field Name: ModalityID
43105
+ * * Display Name: Modality ID
43106
+ * * SQL Data Type: uniqueidentifier
43107
+ * * Related Entity/Foreign Key: MJ: AI Modalities (vwAIModalities.ID)
43108
+ */
43109
+ get ModalityID() {
43110
+ return this.Get('ModalityID');
43111
+ }
43112
+ set ModalityID(value) {
43113
+ this.Set('ModalityID', value);
43114
+ }
43115
+ /**
43116
+ * * Field Name: Direction
43117
+ * * Display Name: Direction
43118
+ * * SQL Data Type: nvarchar(10)
43119
+ * * Value List Type: List
43120
+ * * Possible Values
43121
+ * * Input
43122
+ * * Output
43123
+ * * Description: Whether this is an Input or Output modality for the model.
43124
+ */
43125
+ get Direction() {
43126
+ return this.Get('Direction');
43127
+ }
43128
+ set Direction(value) {
43129
+ this.Set('Direction', value);
43130
+ }
43131
+ /**
43132
+ * * Field Name: IsSupported
43133
+ * * Display Name: Is Supported
43134
+ * * SQL Data Type: bit
43135
+ * * Default Value: 1
43136
+ * * Description: Whether this modality is supported. Can be set to FALSE to explicitly disable an inherited modality.
43137
+ */
43138
+ get IsSupported() {
43139
+ return this.Get('IsSupported');
43140
+ }
43141
+ set IsSupported(value) {
43142
+ this.Set('IsSupported', value);
43143
+ }
43144
+ /**
43145
+ * * Field Name: IsRequired
43146
+ * * Display Name: Is Required
43147
+ * * SQL Data Type: bit
43148
+ * * Default Value: 0
43149
+ * * Description: For input modalities: whether this modality is required (e.g., text is usually required for LLMs). For outputs: not typically applicable.
43150
+ */
43151
+ get IsRequired() {
43152
+ return this.Get('IsRequired');
43153
+ }
43154
+ set IsRequired(value) {
43155
+ this.Set('IsRequired', value);
43156
+ }
43157
+ /**
43158
+ * * Field Name: SupportedFormats
43159
+ * * Display Name: Supported Formats
43160
+ * * SQL Data Type: nvarchar(500)
43161
+ * * Description: Comma-separated list of supported file formats/extensions (e.g., png,jpg,webp,gif for images or mp3,wav,m4a for audio).
43162
+ */
43163
+ get SupportedFormats() {
43164
+ return this.Get('SupportedFormats');
43165
+ }
43166
+ set SupportedFormats(value) {
43167
+ this.Set('SupportedFormats', value);
43168
+ }
43169
+ /**
43170
+ * * Field Name: MaxSizeBytes
43171
+ * * Display Name: Maximum Size (Bytes)
43172
+ * * SQL Data Type: int
43173
+ * * Description: Model-specific maximum size in bytes. Overrides AIModality.DefaultMaxSizeBytes. NULL means use system default.
43174
+ */
43175
+ get MaxSizeBytes() {
43176
+ return this.Get('MaxSizeBytes');
43177
+ }
43178
+ set MaxSizeBytes(value) {
43179
+ this.Set('MaxSizeBytes', value);
43180
+ }
43181
+ /**
43182
+ * * Field Name: MaxCountPerMessage
43183
+ * * Display Name: Maximum Count per Message
43184
+ * * SQL Data Type: int
43185
+ * * Description: Model-specific maximum count per message. Overrides AIModality.DefaultMaxCountPerMessage. NULL means use system default.
43186
+ */
43187
+ get MaxCountPerMessage() {
43188
+ return this.Get('MaxCountPerMessage');
43189
+ }
43190
+ set MaxCountPerMessage(value) {
43191
+ this.Set('MaxCountPerMessage', value);
43192
+ }
43193
+ /**
43194
+ * * Field Name: MaxDimension
43195
+ * * Display Name: Maximum Dimension (px)
43196
+ * * SQL Data Type: int
43197
+ * * Description: For image/video modalities: maximum dimension (width or height) in pixels supported by this model.
43198
+ */
43199
+ get MaxDimension() {
43200
+ return this.Get('MaxDimension');
43201
+ }
43202
+ set MaxDimension(value) {
43203
+ this.Set('MaxDimension', value);
43204
+ }
43205
+ /**
43206
+ * * Field Name: Comments
43207
+ * * Display Name: Comments
43208
+ * * SQL Data Type: nvarchar(MAX)
43209
+ * * Description: Additional notes or documentation about this model-modality configuration.
43210
+ */
43211
+ get Comments() {
43212
+ return this.Get('Comments');
43213
+ }
43214
+ set Comments(value) {
43215
+ this.Set('Comments', value);
43216
+ }
43217
+ /**
43218
+ * * Field Name: __mj_CreatedAt
43219
+ * * Display Name: Created At
43220
+ * * SQL Data Type: datetimeoffset
43221
+ * * Default Value: getutcdate()
43222
+ */
43223
+ get __mj_CreatedAt() {
43224
+ return this.Get('__mj_CreatedAt');
43225
+ }
43226
+ /**
43227
+ * * Field Name: __mj_UpdatedAt
43228
+ * * Display Name: Updated At
43229
+ * * SQL Data Type: datetimeoffset
43230
+ * * Default Value: getutcdate()
43231
+ */
43232
+ get __mj_UpdatedAt() {
43233
+ return this.Get('__mj_UpdatedAt');
43234
+ }
43235
+ /**
43236
+ * * Field Name: Model
43237
+ * * Display Name: Model
43238
+ * * SQL Data Type: nvarchar(50)
43239
+ */
43240
+ get Model() {
43241
+ return this.Get('Model');
43242
+ }
43243
+ /**
43244
+ * * Field Name: Modality
43245
+ * * Display Name: Modality
43246
+ * * SQL Data Type: nvarchar(50)
43247
+ */
43248
+ get Modality() {
43249
+ return this.Get('Modality');
43250
+ }
43251
+ };
43252
+ exports.AIModelModalityEntity = AIModelModalityEntity;
43253
+ exports.AIModelModalityEntity = AIModelModalityEntity = __decorate([
43254
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: AI Model Modalities')
43255
+ ], AIModelModalityEntity);
41604
43256
  /**
41605
43257
  * MJ: AI Model Price Types - strongly typed entity sub-class
41606
43258
  * * Schema: __mj
@@ -47186,6 +48838,265 @@ exports.ConversationDetailArtifactEntity = ConversationDetailArtifactEntity;
47186
48838
  exports.ConversationDetailArtifactEntity = ConversationDetailArtifactEntity = __decorate([
47187
48839
  (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: Conversation Detail Artifacts')
47188
48840
  ], ConversationDetailArtifactEntity);
48841
+ /**
48842
+ * MJ: Conversation Detail Attachments - strongly typed entity sub-class
48843
+ * * Schema: __mj
48844
+ * * Base Table: ConversationDetailAttachment
48845
+ * * Base View: vwConversationDetailAttachments
48846
+ * * @description Stores attachments (images, videos, audio, documents) for conversation messages. Supports both inline base64 storage for small files and reference to MJStorage for large files.
48847
+ * * Primary Key: ID
48848
+ * @extends {BaseEntity}
48849
+ * @class
48850
+ * @public
48851
+ */
48852
+ let ConversationDetailAttachmentEntity = class ConversationDetailAttachmentEntity extends core_1.BaseEntity {
48853
+ /**
48854
+ * Loads the MJ: Conversation Detail Attachments record from the database
48855
+ * @param ID: string - primary key value to load the MJ: Conversation Detail Attachments record.
48856
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
48857
+ * @returns {Promise<boolean>} - true if successful, false otherwise
48858
+ * @public
48859
+ * @async
48860
+ * @memberof ConversationDetailAttachmentEntity
48861
+ * @method
48862
+ * @override
48863
+ */
48864
+ async Load(ID, EntityRelationshipsToLoad) {
48865
+ const compositeKey = new core_1.CompositeKey();
48866
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
48867
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
48868
+ }
48869
+ /**
48870
+ * Validate() method override for MJ: Conversation Detail Attachments entity. This is an auto-generated method that invokes the generated validators for this entity for the following fields:
48871
+ * * Table-Level: Each record must include content either directly (InlineData) or by reference (FileID); they cannot both be empty.
48872
+ * @public
48873
+ * @method
48874
+ * @override
48875
+ */
48876
+ Validate() {
48877
+ const result = super.Validate();
48878
+ this.ValidateInlineDataOrFileIDPresence(result);
48879
+ result.Success = result.Success && (result.Errors.length === 0);
48880
+ return result;
48881
+ }
48882
+ /**
48883
+ * Each record must include content either directly (InlineData) or by reference (FileID); they cannot both be empty.
48884
+ * @param result - the ValidationResult object to add any errors or warnings to
48885
+ * @public
48886
+ * @method
48887
+ */
48888
+ ValidateInlineDataOrFileIDPresence(result) {
48889
+ // Ensure that at least one source of content is supplied
48890
+ if (this.InlineData == null && this.FileID == null) {
48891
+ result.Errors.push(new core_1.ValidationErrorInfo("InlineDataOrFileID", "Either InlineData or FileID must be provided; both cannot be empty.", null, core_1.ValidationErrorType.Failure));
48892
+ }
48893
+ }
48894
+ /**
48895
+ * * Field Name: ID
48896
+ * * Display Name: ID
48897
+ * * SQL Data Type: uniqueidentifier
48898
+ * * Default Value: newsequentialid()
48899
+ */
48900
+ get ID() {
48901
+ return this.Get('ID');
48902
+ }
48903
+ set ID(value) {
48904
+ this.Set('ID', value);
48905
+ }
48906
+ /**
48907
+ * * Field Name: ConversationDetailID
48908
+ * * Display Name: Conversation Detail
48909
+ * * SQL Data Type: uniqueidentifier
48910
+ * * Related Entity/Foreign Key: Conversation Details (vwConversationDetails.ID)
48911
+ */
48912
+ get ConversationDetailID() {
48913
+ return this.Get('ConversationDetailID');
48914
+ }
48915
+ set ConversationDetailID(value) {
48916
+ this.Set('ConversationDetailID', value);
48917
+ }
48918
+ /**
48919
+ * * Field Name: ModalityID
48920
+ * * Display Name: Modality
48921
+ * * SQL Data Type: uniqueidentifier
48922
+ * * Related Entity/Foreign Key: MJ: AI Modalities (vwAIModalities.ID)
48923
+ * * Description: The modality type of this attachment (Image, Audio, Video, File, etc.). References the AIModality table.
48924
+ */
48925
+ get ModalityID() {
48926
+ return this.Get('ModalityID');
48927
+ }
48928
+ set ModalityID(value) {
48929
+ this.Set('ModalityID', value);
48930
+ }
48931
+ /**
48932
+ * * Field Name: MimeType
48933
+ * * Display Name: MIME Type
48934
+ * * SQL Data Type: nvarchar(100)
48935
+ * * Description: MIME type of the attachment (e.g., image/png, video/mp4, audio/mp3).
48936
+ */
48937
+ get MimeType() {
48938
+ return this.Get('MimeType');
48939
+ }
48940
+ set MimeType(value) {
48941
+ this.Set('MimeType', value);
48942
+ }
48943
+ /**
48944
+ * * Field Name: FileName
48945
+ * * Display Name: File Name
48946
+ * * SQL Data Type: nvarchar(4000)
48947
+ * * Description: Original filename of the attachment. Supports long cloud storage paths up to 4000 characters.
48948
+ */
48949
+ get FileName() {
48950
+ return this.Get('FileName');
48951
+ }
48952
+ set FileName(value) {
48953
+ this.Set('FileName', value);
48954
+ }
48955
+ /**
48956
+ * * Field Name: FileSizeBytes
48957
+ * * Display Name: File Size (bytes)
48958
+ * * SQL Data Type: int
48959
+ * * Description: Size of the attachment in bytes.
48960
+ */
48961
+ get FileSizeBytes() {
48962
+ return this.Get('FileSizeBytes');
48963
+ }
48964
+ set FileSizeBytes(value) {
48965
+ this.Set('FileSizeBytes', value);
48966
+ }
48967
+ /**
48968
+ * * Field Name: Width
48969
+ * * Display Name: Width (px)
48970
+ * * SQL Data Type: int
48971
+ * * Description: Width in pixels for images and videos.
48972
+ */
48973
+ get Width() {
48974
+ return this.Get('Width');
48975
+ }
48976
+ set Width(value) {
48977
+ this.Set('Width', value);
48978
+ }
48979
+ /**
48980
+ * * Field Name: Height
48981
+ * * Display Name: Height (px)
48982
+ * * SQL Data Type: int
48983
+ * * Description: Height in pixels for images and videos.
48984
+ */
48985
+ get Height() {
48986
+ return this.Get('Height');
48987
+ }
48988
+ set Height(value) {
48989
+ this.Set('Height', value);
48990
+ }
48991
+ /**
48992
+ * * Field Name: DurationSeconds
48993
+ * * Display Name: Duration (seconds)
48994
+ * * SQL Data Type: int
48995
+ * * Description: Duration in seconds for audio and video files.
48996
+ */
48997
+ get DurationSeconds() {
48998
+ return this.Get('DurationSeconds');
48999
+ }
49000
+ set DurationSeconds(value) {
49001
+ this.Set('DurationSeconds', value);
49002
+ }
49003
+ /**
49004
+ * * Field Name: InlineData
49005
+ * * Display Name: Inline Data (Base64)
49006
+ * * SQL Data Type: nvarchar(MAX)
49007
+ * * Description: Base64-encoded file data for small attachments stored inline. Mutually exclusive with FileID - exactly one must be populated.
49008
+ */
49009
+ get InlineData() {
49010
+ return this.Get('InlineData');
49011
+ }
49012
+ set InlineData(value) {
49013
+ this.Set('InlineData', value);
49014
+ }
49015
+ /**
49016
+ * * Field Name: FileID
49017
+ * * Display Name: File
49018
+ * * SQL Data Type: uniqueidentifier
49019
+ * * Related Entity/Foreign Key: Files (vwFiles.ID)
49020
+ * * Description: Reference to File entity for large attachments stored in MJStorage. Mutually exclusive with InlineData - exactly one must be populated.
49021
+ */
49022
+ get FileID() {
49023
+ return this.Get('FileID');
49024
+ }
49025
+ set FileID(value) {
49026
+ this.Set('FileID', value);
49027
+ }
49028
+ /**
49029
+ * * Field Name: DisplayOrder
49030
+ * * Display Name: Display Order
49031
+ * * SQL Data Type: int
49032
+ * * Default Value: 0
49033
+ * * Description: Display order for multiple attachments in a message. Lower numbers appear first.
49034
+ */
49035
+ get DisplayOrder() {
49036
+ return this.Get('DisplayOrder');
49037
+ }
49038
+ set DisplayOrder(value) {
49039
+ this.Set('DisplayOrder', value);
49040
+ }
49041
+ /**
49042
+ * * Field Name: ThumbnailBase64
49043
+ * * Display Name: Thumbnail (Base64)
49044
+ * * SQL Data Type: nvarchar(MAX)
49045
+ * * Description: Base64-encoded thumbnail image for quick preview display. Max 200px on longest side.
49046
+ */
49047
+ get ThumbnailBase64() {
49048
+ return this.Get('ThumbnailBase64');
49049
+ }
49050
+ set ThumbnailBase64(value) {
49051
+ this.Set('ThumbnailBase64', value);
49052
+ }
49053
+ /**
49054
+ * * Field Name: __mj_CreatedAt
49055
+ * * Display Name: Created At
49056
+ * * SQL Data Type: datetimeoffset
49057
+ * * Default Value: getutcdate()
49058
+ */
49059
+ get __mj_CreatedAt() {
49060
+ return this.Get('__mj_CreatedAt');
49061
+ }
49062
+ /**
49063
+ * * Field Name: __mj_UpdatedAt
49064
+ * * Display Name: Updated At
49065
+ * * SQL Data Type: datetimeoffset
49066
+ * * Default Value: getutcdate()
49067
+ */
49068
+ get __mj_UpdatedAt() {
49069
+ return this.Get('__mj_UpdatedAt');
49070
+ }
49071
+ /**
49072
+ * * Field Name: ConversationDetail
49073
+ * * Display Name: Conversation Detail Text
49074
+ * * SQL Data Type: nvarchar(MAX)
49075
+ */
49076
+ get ConversationDetail() {
49077
+ return this.Get('ConversationDetail');
49078
+ }
49079
+ /**
49080
+ * * Field Name: Modality
49081
+ * * Display Name: Modality Name
49082
+ * * SQL Data Type: nvarchar(50)
49083
+ */
49084
+ get Modality() {
49085
+ return this.Get('Modality');
49086
+ }
49087
+ /**
49088
+ * * Field Name: File
49089
+ * * Display Name: File Reference
49090
+ * * SQL Data Type: nvarchar(500)
49091
+ */
49092
+ get File() {
49093
+ return this.Get('File');
49094
+ }
49095
+ };
49096
+ exports.ConversationDetailAttachmentEntity = ConversationDetailAttachmentEntity;
49097
+ exports.ConversationDetailAttachmentEntity = ConversationDetailAttachmentEntity = __decorate([
49098
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: Conversation Detail Attachments')
49099
+ ], ConversationDetailAttachmentEntity);
47189
49100
  /**
47190
49101
  * MJ: Conversation Detail Ratings - strongly typed entity sub-class
47191
49102
  * * Schema: __mj
@@ -51472,7 +53383,7 @@ let TestRunFeedbackEntity = class TestRunFeedbackEntity extends core_1.BaseEntit
51472
53383
  }
51473
53384
  /**
51474
53385
  * * Field Name: ReviewerUser
51475
- * * Display Name: Reviewer Name
53386
+ * * Display Name: Reviewer User
51476
53387
  * * SQL Data Type: nvarchar(100)
51477
53388
  */
51478
53389
  get ReviewerUser() {
@@ -51551,7 +53462,7 @@ let TestRunEntity = class TestRunEntity extends core_1.BaseEntity {
51551
53462
  }
51552
53463
  /**
51553
53464
  * * Field Name: RunByUserID
51554
- * * Display Name: Run By User ID
53465
+ * * Display Name: Run By User
51555
53466
  * * SQL Data Type: uniqueidentifier
51556
53467
  * * Related Entity/Foreign Key: Users (vwUsers.ID)
51557
53468
  * * Description: Foreign Key - The user who triggered the test run (could be system user for automated runs)
@@ -51578,7 +53489,7 @@ let TestRunEntity = class TestRunEntity extends core_1.BaseEntity {
51578
53489
  * * Field Name: TargetType
51579
53490
  * * Display Name: Target Type
51580
53491
  * * SQL Data Type: nvarchar(100)
51581
- * * Description: Type of the target being tested (e.g., "Agent Run", "Workflow Run", "Code Generation"). Polymorphic discriminator for TargetLogID.
53492
+ * * Description: Optional sub-category or variant label for the test target. Use this to distinguish between different test scenarios within the same entity type (e.g., "Summarization", "Classification", "Code Review" for AI Agent tests). The entity type itself should be specified via TargetLogEntityID.
51582
53493
  */
51583
53494
  get TargetType() {
51584
53495
  return this.Get('TargetType');
@@ -51588,7 +53499,7 @@ let TestRunEntity = class TestRunEntity extends core_1.BaseEntity {
51588
53499
  }
51589
53500
  /**
51590
53501
  * * Field Name: TargetLogID
51591
- * * Display Name: Target Log ID
53502
+ * * Display Name: Target Log
51592
53503
  * * SQL Data Type: uniqueidentifier
51593
53504
  * * Description: ID of the target execution log (e.g., AIAgentRun.ID, WorkflowRun.ID). This is a soft FK - the actual entity depends on TargetType. The target entity should have a reverse FK back to TestRun for bidirectional navigation.
51594
53505
  */
@@ -51611,7 +53522,8 @@ let TestRunEntity = class TestRunEntity extends core_1.BaseEntity {
51611
53522
  * * Pending
51612
53523
  * * Running
51613
53524
  * * Skipped
51614
- * * Description: Current status of the test run: Pending (queued), Running (in progress), Passed (all checks passed), Failed (at least one check failed), Skipped (not executed), Error (execution error before validation)
53525
+ * * Timeout
53526
+ * * Description: Current status of the test run: Pending (queued), Running (in progress), Passed (all checks passed), Failed (at least one check failed), Skipped (not executed), Error (execution error before validation), Timeout (execution exceeded time limit and was cancelled)
51615
53527
  */
51616
53528
  get Status() {
51617
53529
  return this.Get('Status');
@@ -51645,7 +53557,7 @@ let TestRunEntity = class TestRunEntity extends core_1.BaseEntity {
51645
53557
  }
51646
53558
  /**
51647
53559
  * * Field Name: DurationSeconds
51648
- * * Display Name: Duration (seconds)
53560
+ * * Display Name: Duration Seconds
51649
53561
  * * SQL Data Type: decimal(10, 3)
51650
53562
  * * Description: Execution time in seconds for this test
51651
53563
  */
@@ -51741,7 +53653,7 @@ let TestRunEntity = class TestRunEntity extends core_1.BaseEntity {
51741
53653
  }
51742
53654
  /**
51743
53655
  * * Field Name: CostUSD
51744
- * * Display Name: Cost (USD)
53656
+ * * Display Name: Cost USD
51745
53657
  * * SQL Data Type: decimal(10, 6)
51746
53658
  * * Description: Cost in USD for running this test (e.g., LLM token costs, compute resources)
51747
53659
  */
@@ -51794,6 +53706,103 @@ let TestRunEntity = class TestRunEntity extends core_1.BaseEntity {
51794
53706
  return this.Get('__mj_UpdatedAt');
51795
53707
  }
51796
53708
  /**
53709
+ * * Field Name: Log
53710
+ * * Display Name: Log
53711
+ * * SQL Data Type: nvarchar(MAX)
53712
+ * * Description: Detailed execution log capturing status messages, diagnostic output, and driver-specific information streamed during test execution. Format is timestamped log lines.
53713
+ */
53714
+ get Log() {
53715
+ return this.Get('Log');
53716
+ }
53717
+ set Log(value) {
53718
+ this.Set('Log', value);
53719
+ }
53720
+ /**
53721
+ * * Field Name: Tags
53722
+ * * Display Name: Tags
53723
+ * * SQL Data Type: nvarchar(MAX)
53724
+ * * Description: JSON array of user-assigned tags/labels for this test run. Used for categorization, filtering, and comparing runs with different configurations. Inherits from parent suite run tags if not explicitly set.
53725
+ */
53726
+ get Tags() {
53727
+ return this.Get('Tags');
53728
+ }
53729
+ set Tags(value) {
53730
+ this.Set('Tags', value);
53731
+ }
53732
+ /**
53733
+ * * Field Name: MachineName
53734
+ * * Display Name: Machine Name
53735
+ * * SQL Data Type: nvarchar(255)
53736
+ * * Description: Hostname of the machine that executed this test. Used for identifying the execution environment and debugging infrastructure-specific issues.
53737
+ */
53738
+ get MachineName() {
53739
+ return this.Get('MachineName');
53740
+ }
53741
+ set MachineName(value) {
53742
+ this.Set('MachineName', value);
53743
+ }
53744
+ /**
53745
+ * * Field Name: MachineID
53746
+ * * Display Name: Machine ID
53747
+ * * SQL Data Type: nvarchar(255)
53748
+ * * Description: Unique machine identifier (typically MAC address) for the execution host. Enables deduplication and tracking of test execution across different machines.
53749
+ */
53750
+ get MachineID() {
53751
+ return this.Get('MachineID');
53752
+ }
53753
+ set MachineID(value) {
53754
+ this.Set('MachineID', value);
53755
+ }
53756
+ /**
53757
+ * * Field Name: RunByUserName
53758
+ * * Display Name: Run By User Name
53759
+ * * SQL Data Type: nvarchar(255)
53760
+ * * Description: Denormalized user name who ran the test. Stored separately from RunByUserID to enable cross-server aggregation where user IDs differ but names remain consistent.
53761
+ */
53762
+ get RunByUserName() {
53763
+ return this.Get('RunByUserName');
53764
+ }
53765
+ set RunByUserName(value) {
53766
+ this.Set('RunByUserName', value);
53767
+ }
53768
+ /**
53769
+ * * Field Name: RunByUserEmail
53770
+ * * Display Name: Run By User Email
53771
+ * * SQL Data Type: nvarchar(255)
53772
+ * * Description: Denormalized email address of the user who ran the test. Primary identifier for cross-server aggregation since email addresses are unique across MemberJunction instances.
53773
+ */
53774
+ get RunByUserEmail() {
53775
+ return this.Get('RunByUserEmail');
53776
+ }
53777
+ set RunByUserEmail(value) {
53778
+ this.Set('RunByUserEmail', value);
53779
+ }
53780
+ /**
53781
+ * * Field Name: RunContextDetails
53782
+ * * Display Name: Run Context Details
53783
+ * * SQL Data Type: nvarchar(MAX)
53784
+ * * Description: JSON object containing extensible execution context: osType, osVersion, nodeVersion, timezone, locale, ipAddress, and CI/CD metadata (ciProvider, pipelineId, buildNumber, branch, prNumber). Allows detailed environment tracking without schema changes.
53785
+ */
53786
+ get RunContextDetails() {
53787
+ return this.Get('RunContextDetails');
53788
+ }
53789
+ set RunContextDetails(value) {
53790
+ this.Set('RunContextDetails', value);
53791
+ }
53792
+ /**
53793
+ * * Field Name: TargetLogEntityID
53794
+ * * Display Name: Target Log Entity ID
53795
+ * * SQL Data Type: uniqueidentifier
53796
+ * * Related Entity/Foreign Key: Entities (vwEntities.ID)
53797
+ * * Description: Foreign key to Entity table identifying the type of entity referenced by TargetLogID. When populated, TargetLogID is a record ID in this entity. Used for linking test runs to AI Agent Runs, Workflow Runs, or other entity types being tested.
53798
+ */
53799
+ get TargetLogEntityID() {
53800
+ return this.Get('TargetLogEntityID');
53801
+ }
53802
+ set TargetLogEntityID(value) {
53803
+ this.Set('TargetLogEntityID', value);
53804
+ }
53805
+ /**
51797
53806
  * * Field Name: Test
51798
53807
  * * Display Name: Test
51799
53808
  * * SQL Data Type: nvarchar(255)
@@ -51817,6 +53826,14 @@ let TestRunEntity = class TestRunEntity extends core_1.BaseEntity {
51817
53826
  get RunByUser() {
51818
53827
  return this.Get('RunByUser');
51819
53828
  }
53829
+ /**
53830
+ * * Field Name: TargetLogEntity
53831
+ * * Display Name: Target Log Entity
53832
+ * * SQL Data Type: nvarchar(255)
53833
+ */
53834
+ get TargetLogEntity() {
53835
+ return this.Get('TargetLogEntity');
53836
+ }
51820
53837
  };
51821
53838
  exports.TestRunEntity = TestRunEntity;
51822
53839
  exports.TestRunEntity = TestRunEntity = __decorate([
@@ -52042,7 +54059,7 @@ let TestSuiteRunEntity = class TestSuiteRunEntity extends core_1.BaseEntity {
52042
54059
  }
52043
54060
  /**
52044
54061
  * * Field Name: TotalDurationSeconds
52045
- * * Display Name: Total Duration Seconds
54062
+ * * Display Name: Total Duration (seconds)
52046
54063
  * * SQL Data Type: decimal(10, 3)
52047
54064
  * * Description: Total execution time in seconds for the entire suite
52048
54065
  */
@@ -52054,7 +54071,7 @@ let TestSuiteRunEntity = class TestSuiteRunEntity extends core_1.BaseEntity {
52054
54071
  }
52055
54072
  /**
52056
54073
  * * Field Name: TotalCostUSD
52057
- * * Display Name: Total Cost USD
54074
+ * * Display Name: Total Cost (USD)
52058
54075
  * * SQL Data Type: decimal(10, 6)
52059
54076
  * * Description: Total cost in USD for running the entire suite (sum of all test costs)
52060
54077
  */
@@ -52119,8 +54136,80 @@ let TestSuiteRunEntity = class TestSuiteRunEntity extends core_1.BaseEntity {
52119
54136
  return this.Get('__mj_UpdatedAt');
52120
54137
  }
52121
54138
  /**
54139
+ * * Field Name: Tags
54140
+ * * Display Name: Tags
54141
+ * * SQL Data Type: nvarchar(MAX)
54142
+ * * Description: JSON array of user-assigned tags/labels for this suite run. Used for categorization, filtering, and comparing runs with different configurations (e.g., ["Opus 4.5", "New Prompt v3", "Production Config"]).
54143
+ */
54144
+ get Tags() {
54145
+ return this.Get('Tags');
54146
+ }
54147
+ set Tags(value) {
54148
+ this.Set('Tags', value);
54149
+ }
54150
+ /**
54151
+ * * Field Name: MachineName
54152
+ * * Display Name: Machine Name
54153
+ * * SQL Data Type: nvarchar(255)
54154
+ * * Description: Hostname of the machine that executed this suite. Used for identifying the execution environment and debugging infrastructure-specific issues.
54155
+ */
54156
+ get MachineName() {
54157
+ return this.Get('MachineName');
54158
+ }
54159
+ set MachineName(value) {
54160
+ this.Set('MachineName', value);
54161
+ }
54162
+ /**
54163
+ * * Field Name: MachineID
54164
+ * * Display Name: Machine ID
54165
+ * * SQL Data Type: nvarchar(255)
54166
+ * * Description: Unique machine identifier (typically MAC address) for the execution host. Enables deduplication and tracking of suite execution across different machines.
54167
+ */
54168
+ get MachineID() {
54169
+ return this.Get('MachineID');
54170
+ }
54171
+ set MachineID(value) {
54172
+ this.Set('MachineID', value);
54173
+ }
54174
+ /**
54175
+ * * Field Name: RunByUserName
54176
+ * * Display Name: Run By User Name
54177
+ * * SQL Data Type: nvarchar(255)
54178
+ * * Description: Denormalized user name who ran the suite. Stored separately from RunByUserID to enable cross-server aggregation where user IDs differ but names remain consistent.
54179
+ */
54180
+ get RunByUserName() {
54181
+ return this.Get('RunByUserName');
54182
+ }
54183
+ set RunByUserName(value) {
54184
+ this.Set('RunByUserName', value);
54185
+ }
54186
+ /**
54187
+ * * Field Name: RunByUserEmail
54188
+ * * Display Name: Run By User Email
54189
+ * * SQL Data Type: nvarchar(255)
54190
+ * * Description: Denormalized email address of the user who ran the suite. Primary identifier for cross-server aggregation since email addresses are unique across MemberJunction instances.
54191
+ */
54192
+ get RunByUserEmail() {
54193
+ return this.Get('RunByUserEmail');
54194
+ }
54195
+ set RunByUserEmail(value) {
54196
+ this.Set('RunByUserEmail', value);
54197
+ }
54198
+ /**
54199
+ * * Field Name: RunContextDetails
54200
+ * * Display Name: Run Context Details
54201
+ * * SQL Data Type: nvarchar(MAX)
54202
+ * * Description: JSON object containing extensible execution context: osType, osVersion, nodeVersion, timezone, locale, ipAddress, and CI/CD metadata (ciProvider, pipelineId, buildNumber, branch, prNumber). Allows detailed environment tracking without schema changes.
54203
+ */
54204
+ get RunContextDetails() {
54205
+ return this.Get('RunContextDetails');
54206
+ }
54207
+ set RunContextDetails(value) {
54208
+ this.Set('RunContextDetails', value);
54209
+ }
54210
+ /**
52122
54211
  * * Field Name: Suite
52123
- * * Display Name: Suite Name
54212
+ * * Display Name: Suite
52124
54213
  * * SQL Data Type: nvarchar(255)
52125
54214
  */
52126
54215
  get Suite() {
@@ -52128,7 +54217,7 @@ let TestSuiteRunEntity = class TestSuiteRunEntity extends core_1.BaseEntity {
52128
54217
  }
52129
54218
  /**
52130
54219
  * * Field Name: RunByUser
52131
- * * Display Name: Run By User Name
54220
+ * * Display Name: Run By User
52132
54221
  * * SQL Data Type: nvarchar(100)
52133
54222
  */
52134
54223
  get RunByUser() {
@@ -52329,7 +54418,7 @@ let TestSuiteEntity = class TestSuiteEntity extends core_1.BaseEntity {
52329
54418
  }
52330
54419
  /**
52331
54420
  * * Field Name: ParentID
52332
- * * Display Name: Parent ID
54421
+ * * Display Name: Parent
52333
54422
  * * SQL Data Type: uniqueidentifier
52334
54423
  * * Related Entity/Foreign Key: MJ: Test Suites (vwTestSuites.ID)
52335
54424
  * * Description: Optional parent suite ID for hierarchical organization. NULL for root-level suites.
@@ -52425,8 +54514,20 @@ let TestSuiteEntity = class TestSuiteEntity extends core_1.BaseEntity {
52425
54514
  return this.Get('__mj_UpdatedAt');
52426
54515
  }
52427
54516
  /**
54517
+ * * Field Name: MaxExecutionTimeMS
54518
+ * * Display Name: Max Execution Time (ms)
54519
+ * * SQL Data Type: int
54520
+ * * Description: Maximum total execution time in milliseconds for the entire suite. If NULL, no suite-level timeout applies (individual test timeouts still apply). When exceeded, current test is cancelled and remaining tests are skipped.
54521
+ */
54522
+ get MaxExecutionTimeMS() {
54523
+ return this.Get('MaxExecutionTimeMS');
54524
+ }
54525
+ set MaxExecutionTimeMS(value) {
54526
+ this.Set('MaxExecutionTimeMS', value);
54527
+ }
54528
+ /**
52428
54529
  * * Field Name: Parent
52429
- * * Display Name: Parent
54530
+ * * Display Name: Parent Name
52430
54531
  * * SQL Data Type: nvarchar(255)
52431
54532
  */
52432
54533
  get Parent() {
@@ -52434,7 +54535,7 @@ let TestSuiteEntity = class TestSuiteEntity extends core_1.BaseEntity {
52434
54535
  }
52435
54536
  /**
52436
54537
  * * Field Name: RootParentID
52437
- * * Display Name: Root Parent ID
54538
+ * * Display Name: Root Parent
52438
54539
  * * SQL Data Type: uniqueidentifier
52439
54540
  */
52440
54541
  get RootParentID() {
@@ -52629,7 +54730,7 @@ let TestEntity = class TestEntity extends core_1.BaseEntity {
52629
54730
  }
52630
54731
  /**
52631
54732
  * * Field Name: TypeID
52632
- * * Display Name: Type ID
54733
+ * * Display Name: Test Type
52633
54734
  * * SQL Data Type: uniqueidentifier
52634
54735
  * * Related Entity/Foreign Key: MJ: Test Types (vwTestTypes.ID)
52635
54736
  * * Description: Foreign Key - The type of test (e.g., Agent Eval, Workflow Test). Determines which driver class handles execution.
@@ -52745,7 +54846,7 @@ let TestEntity = class TestEntity extends core_1.BaseEntity {
52745
54846
  }
52746
54847
  /**
52747
54848
  * * Field Name: EstimatedDurationSeconds
52748
- * * Display Name: Estimated Duration Seconds
54849
+ * * Display Name: Estimated Duration (seconds)
52749
54850
  * * SQL Data Type: int
52750
54851
  * * Description: Estimated execution time in seconds. Used for scheduling and timeout calculations.
52751
54852
  */
@@ -52757,7 +54858,7 @@ let TestEntity = class TestEntity extends core_1.BaseEntity {
52757
54858
  }
52758
54859
  /**
52759
54860
  * * Field Name: EstimatedCostUSD
52760
- * * Display Name: Estimated Cost USD
54861
+ * * Display Name: Estimated Cost (USD)
52761
54862
  * * SQL Data Type: decimal(10, 6)
52762
54863
  * * Description: Estimated cost in USD for running this test (e.g., LLM token costs, compute resources). Used for budgeting and optimization.
52763
54864
  */
@@ -52798,8 +54899,20 @@ let TestEntity = class TestEntity extends core_1.BaseEntity {
52798
54899
  this.Set('RepeatCount', value);
52799
54900
  }
52800
54901
  /**
54902
+ * * Field Name: MaxExecutionTimeMS
54903
+ * * Display Name: Max Execution Time (ms)
54904
+ * * SQL Data Type: int
54905
+ * * Description: Maximum execution time in milliseconds for this test. If NULL, uses default (300000ms = 5 minutes). Can be overridden by Configuration JSON maxExecutionTime field for backward compatibility.
54906
+ */
54907
+ get MaxExecutionTimeMS() {
54908
+ return this.Get('MaxExecutionTimeMS');
54909
+ }
54910
+ set MaxExecutionTimeMS(value) {
54911
+ this.Set('MaxExecutionTimeMS', value);
54912
+ }
54913
+ /**
52801
54914
  * * Field Name: Type
52802
- * * Display Name: Type
54915
+ * * Display Name: Test Type Name
52803
54916
  * * SQL Data Type: nvarchar(100)
52804
54917
  */
52805
54918
  get Type() {