@memberjunction/core-entities 2.106.0 → 2.108.0

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,13 +8,13 @@ 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.ReportVersionSchema = exports.ReportUserStateSchema = exports.RecordLinkSchema = exports.QueryParameterSchema = exports.PublicLinkSchema = exports.ProjectSchema = exports.EnvironmentSchema = exports.DashboardUserStateSchema = exports.DashboardUserPreferenceSchema = exports.ConversationDetailArtifactSchema = exports.ConversationArtifactSchema = exports.ConversationArtifactVersionSchema = exports.ConversationArtifactPermissionSchema = exports.ComponentSchema = exports.ComponentRegistrySchema = exports.ComponentLibraryLinkSchema = exports.ComponentLibrarySchema = exports.ComponentDependencySchema = exports.CollectionSchema = exports.CollectionArtifactSchema = exports.ArtifactSchema = exports.ArtifactVersionSchema = exports.ArtifactVersionAttributeSchema = exports.ArtifactTypeSchema = exports.AIVendorSchema = exports.AIVendorTypeSchema = exports.AIVendorTypeDefinitionSchema = exports.AIPromptRunSchema = exports.AIPromptModelSchema = exports.AIModelVendorSchema = exports.AIModelPriceUnitTypeSchema = exports.AIModelPriceTypeSchema = exports.AIModelCostSchema = exports.AIConfigurationSchema = exports.AIConfigurationParamSchema = exports.AIAgentTypeSchema = exports.AIAgentStepSchema = exports.AIAgentStepPathSchema = exports.AIAgentRunSchema = exports.AIAgentRunStepSchema = exports.AIAgentRelationshipSchema = exports.AIAgentPromptSchema = exports.AIAgentPermissionSchema = exports.AIAgentArtifactTypeSchema = exports.AccessControlRuleSchema = exports.ListSchema = exports.ListDetailSchema = exports.ListCategorySchema = exports.LibraryItemSchema = exports.LibrarySchema = void 0;
12
- 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 = 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.TaskSchema = exports.TaskTypeSchema = exports.TaskDependencySchema = void 0;
13
- 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 = 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 = void 0;
14
- 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 = 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 = void 0;
15
- exports.ConversationDetailArtifactEntity = exports.ConversationArtifactEntity = exports.ConversationArtifactVersionEntity = exports.ConversationArtifactPermissionEntity = exports.ComponentEntity = exports.ComponentRegistryEntity = exports.ComponentLibraryLinkEntity = exports.ComponentLibraryEntity = exports.ComponentDependencyEntity = exports.CollectionEntity = exports.CollectionArtifactEntity = exports.ArtifactEntity = exports.ArtifactVersionEntity = exports.ArtifactVersionAttributeEntity = exports.ArtifactTypeEntity = exports.AIVendorEntity = exports.AIVendorTypeEntity = exports.AIVendorTypeDefinitionEntity = exports.AIPromptRunEntity = exports.AIPromptModelEntity = exports.AIModelVendorEntity = exports.AIModelPriceUnitTypeEntity = exports.AIModelPriceTypeEntity = exports.AIModelCostEntity = exports.AIConfigurationEntity = exports.AIConfigurationParamEntity = exports.AIAgentTypeEntity = exports.AIAgentStepEntity = exports.AIAgentStepPathEntity = exports.AIAgentRunEntity = exports.AIAgentRunStepEntity = exports.AIAgentRelationshipEntity = exports.AIAgentPromptEntity = exports.AIAgentPermissionEntity = 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 = void 0;
16
- 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 = 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.TaskEntity = exports.TaskTypeEntity = exports.TaskDependencyEntity = exports.ReportVersionEntity = exports.ReportUserStateEntity = exports.RecordLinkEntity = exports.QueryParameterEntity = exports.PublicLinkEntity = exports.ProjectEntity = exports.EnvironmentEntity = exports.DashboardUserStateEntity = exports.DashboardUserPreferenceEntity = void 0;
17
- 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 = void 0;
11
+ exports.ReportUserStateSchema = exports.RecordLinkSchema = exports.QueryParameterSchema = exports.PublicLinkSchema = exports.ProjectSchema = exports.EnvironmentSchema = exports.DashboardUserStateSchema = exports.DashboardUserPreferenceSchema = 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.ArtifactTypeSchema = exports.AIVendorSchema = exports.AIVendorTypeSchema = exports.AIVendorTypeDefinitionSchema = exports.AIPromptRunSchema = exports.AIPromptModelSchema = exports.AIModelVendorSchema = exports.AIModelPriceUnitTypeSchema = exports.AIModelPriceTypeSchema = exports.AIModelCostSchema = exports.AIConfigurationSchema = exports.AIConfigurationParamSchema = exports.AIAgentTypeSchema = exports.AIAgentStepSchema = exports.AIAgentStepPathSchema = exports.AIAgentRunSchema = exports.AIAgentRunStepSchema = exports.AIAgentRelationshipSchema = exports.AIAgentPromptSchema = exports.AIAgentPermissionSchema = exports.AIAgentArtifactTypeSchema = exports.AccessControlRuleSchema = exports.ListSchema = exports.ListDetailSchema = exports.ListCategorySchema = exports.LibraryItemSchema = exports.LibrarySchema = void 0;
12
+ 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 = 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.TaskSchema = exports.TaskTypeSchema = exports.TaskDependencySchema = exports.ScheduledJobSchema = exports.ScheduledJobTypeSchema = exports.ScheduledJobRunSchema = exports.ReportVersionSchema = void 0;
13
+ 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 = 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 = void 0;
14
+ 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 = 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 = void 0;
15
+ exports.ComponentRegistryEntity = exports.ComponentLibraryLinkEntity = exports.ComponentLibraryEntity = exports.ComponentDependencyEntity = exports.CollectionEntity = exports.CollectionPermissionEntity = exports.CollectionArtifactEntity = exports.ArtifactEntity = exports.ArtifactVersionEntity = exports.ArtifactVersionAttributeEntity = exports.ArtifactTypeEntity = exports.AIVendorEntity = exports.AIVendorTypeEntity = exports.AIVendorTypeDefinitionEntity = exports.AIPromptRunEntity = exports.AIPromptModelEntity = exports.AIModelVendorEntity = exports.AIModelPriceUnitTypeEntity = exports.AIModelPriceTypeEntity = exports.AIModelCostEntity = exports.AIConfigurationEntity = exports.AIConfigurationParamEntity = exports.AIAgentTypeEntity = exports.AIAgentStepEntity = exports.AIAgentStepPathEntity = exports.AIAgentRunEntity = exports.AIAgentRunStepEntity = exports.AIAgentRelationshipEntity = exports.AIAgentPromptEntity = exports.AIAgentPermissionEntity = 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 = void 0;
16
+ 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.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.DashboardUserStateEntity = exports.DashboardUserPreferenceEntity = exports.ConversationDetailArtifactEntity = exports.ConversationArtifactEntity = exports.ConversationArtifactVersionEntity = exports.ConversationArtifactPermissionEntity = exports.ComponentEntity = void 0;
17
+ 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 = void 0;
18
18
  const core_1 = require("@memberjunction/core");
19
19
  const global_1 = require("@memberjunction/global");
20
20
  const zod_1 = require("zod");
@@ -606,6 +606,12 @@ exports.ActionSchema = zod_1.z.object({
606
606
  * * Display Name: Icon Class
607
607
  * * SQL Data Type: nvarchar(100)
608
608
  * * Description: Font Awesome icon class (e.g., fa-cog, fa-play, fa-search) for visual representation of the action.`),
609
+ DefaultCompactPromptID: zod_1.z.string().nullable().describe(`
610
+ * * Field Name: DefaultCompactPromptID
611
+ * * Display Name: Default Compact Prompt ID
612
+ * * SQL Data Type: uniqueidentifier
613
+ * * Related Entity/Foreign Key: AI Prompts (vwAIPrompts.ID)
614
+ * * Description: Default prompt for compacting/summarizing this action's results when used by agents with CompactMode=AISummary. Action designers define how their specific results should be summarized. Can be overridden per agent in AIAgentAction.CompactPromptID.`),
609
615
  Category: zod_1.z.string().nullable().describe(`
610
616
  * * Field Name: Category
611
617
  * * Display Name: Category
@@ -618,6 +624,10 @@ exports.ActionSchema = zod_1.z.object({
618
624
  * * Field Name: Parent
619
625
  * * Display Name: Parent
620
626
  * * SQL Data Type: nvarchar(425)`),
627
+ DefaultCompactPrompt: zod_1.z.string().nullable().describe(`
628
+ * * Field Name: DefaultCompactPrompt
629
+ * * Display Name: Default Compact Prompt
630
+ * * SQL Data Type: nvarchar(255)`),
621
631
  RootParentID: zod_1.z.string().nullable().describe(`
622
632
  * * Field Name: RootParentID
623
633
  * * Display Name: Root Parent ID
@@ -723,6 +733,42 @@ exports.AIAgentActionSchema = zod_1.z.object({
723
733
  * * Display Name: Max Executions Per Run
724
734
  * * SQL Data Type: int
725
735
  * * Description: Maximum number of times this action can be executed per agent run`),
736
+ ResultExpirationTurns: zod_1.z.number().nullable().describe(`
737
+ * * Field Name: ResultExpirationTurns
738
+ * * Display Name: Result Expiration Turns
739
+ * * SQL Data Type: int
740
+ * * Description: Number of conversation turns before action results expire from conversation context. NULL = never expire (default). 0 = expire immediately after next turn.`),
741
+ ResultExpirationMode: zod_1.z.union([zod_1.z.literal('Compact'), zod_1.z.literal('None'), zod_1.z.literal('Remove')]).describe(`
742
+ * * Field Name: ResultExpirationMode
743
+ * * Display Name: Result Expiration Mode
744
+ * * SQL Data Type: nvarchar(20)
745
+ * * Default Value: None
746
+ * * Value List Type: List
747
+ * * Possible Values
748
+ * * Remove
749
+ * * None
750
+ * * Compact
751
+ * * Description: How to handle expired action results: None (no expiration, default), Remove (delete message entirely), Compact (reduce size via CompactMode while preserving key information).`),
752
+ CompactMode: zod_1.z.union([zod_1.z.literal('AI Summary'), zod_1.z.literal('First N Chars')]).nullable().describe(`
753
+ * * Field Name: CompactMode
754
+ * * Display Name: Compact Mode
755
+ * * SQL Data Type: nvarchar(20)
756
+ * * Value List Type: List
757
+ * * Possible Values
758
+ * * AI Summary
759
+ * * First N Chars
760
+ * * Description: How to compact results when ResultExpirationMode=Compact: FirstNChars (truncate to CompactLength characters, fast and free), AISummary (use LLM to intelligently summarize with CompactPromptID or Action.DefaultCompactPromptID).`),
761
+ CompactLength: zod_1.z.number().nullable().describe(`
762
+ * * Field Name: CompactLength
763
+ * * Display Name: Compact Length
764
+ * * SQL Data Type: int
765
+ * * Description: Number of characters to keep when CompactMode=FirstNChars. Required when CompactMode is FirstNChars, ignored otherwise.`),
766
+ CompactPromptID: zod_1.z.string().nullable().describe(`
767
+ * * Field Name: CompactPromptID
768
+ * * Display Name: Compact Prompt ID
769
+ * * SQL Data Type: uniqueidentifier
770
+ * * Related Entity/Foreign Key: AI Prompts (vwAIPrompts.ID)
771
+ * * Description: Optional override for AI summarization prompt when CompactMode=AISummary. Lookup hierarchy: this field -> Action.DefaultCompactPromptID -> system default. Allows agent-specific summarization focus (e.g., technical vs. marketing perspective).`),
726
772
  Agent: zod_1.z.string().nullable().describe(`
727
773
  * * Field Name: Agent
728
774
  * * Display Name: Agent
@@ -731,6 +777,10 @@ exports.AIAgentActionSchema = zod_1.z.object({
731
777
  * * Field Name: Action
732
778
  * * Display Name: Action
733
779
  * * SQL Data Type: nvarchar(425)`),
780
+ CompactPrompt: zod_1.z.string().nullable().describe(`
781
+ * * Field Name: CompactPrompt
782
+ * * Display Name: Compact Prompt
783
+ * * SQL Data Type: nvarchar(255)`),
734
784
  });
735
785
  /**
736
786
  * zod schema definition for the entity AI Agent Learning Cycles
@@ -1261,6 +1311,17 @@ if this limit is exceeded.`),
1261
1311
  * * Related Entity/Foreign Key: Users (vwUsers.ID)
1262
1312
  * * Default Value: ECAFCCEC-6A37-EF11-86D4-000D3A4E707E
1263
1313
  * * Description: The user who owns and created this AI agent. Automatically set to the current user if not specified. Owner has full permissions (view, run, edit, delete) regardless of ACL entries.`),
1314
+ InvocationMode: zod_1.z.union([zod_1.z.literal('Any'), zod_1.z.literal('Sub-Agent'), zod_1.z.literal('Top-Level')]).describe(`
1315
+ * * Field Name: InvocationMode
1316
+ * * Display Name: Invocation Mode
1317
+ * * SQL Data Type: nvarchar(20)
1318
+ * * Default Value: Any
1319
+ * * Value List Type: List
1320
+ * * Possible Values
1321
+ * * Sub-Agent
1322
+ * * Any
1323
+ * * Top-Level
1324
+ * * Description: Controls how the agent can be invoked: Any (default - can be top-level or sub-agent), Top-Level (only callable as primary agent), Sub-Agent (only callable as sub-agent). Used to filter available agents in tools like Sage.`),
1264
1325
  Parent: zod_1.z.string().nullable().describe(`
1265
1326
  * * Field Name: Parent
1266
1327
  * * Display Name: Parent
@@ -3723,6 +3784,11 @@ exports.ConversationDetailSchema = zod_1.z.object({
3723
3784
  * * Complete
3724
3785
  * * Error
3725
3786
  * * Description: Status of the conversation message. Complete indicates finished processing, In-Progress indicates active agent work, Error indicates processing failed.`),
3787
+ SuggestedResponses: zod_1.z.string().nullable().describe(`
3788
+ * * Field Name: SuggestedResponses
3789
+ * * Display Name: Suggested Responses
3790
+ * * SQL Data Type: nvarchar(MAX)
3791
+ * * Description: JSON array of suggested responses that can be displayed to the user for quick replies. Each response object contains: text (display text), allowInput (boolean), iconClass (optional Font Awesome class), and data (optional payload).`),
3726
3792
  Conversation: zod_1.z.string().nullable().describe(`
3727
3793
  * * Field Name: Conversation
3728
3794
  * * Display Name: Conversation
@@ -7692,6 +7758,21 @@ exports.AIAgentRelationshipSchema = zod_1.z.object({
7692
7758
  * * Display Name: Updated At
7693
7759
  * * SQL Data Type: datetimeoffset
7694
7760
  * * Default Value: getutcdate()`),
7761
+ SubAgentOutputMapping: zod_1.z.string().nullable().describe(`
7762
+ * * Field Name: SubAgentOutputMapping
7763
+ * * Display Name: Sub Agent Output Mapping
7764
+ * * SQL Data Type: nvarchar(MAX)
7765
+ * * Description: JSON configuration mapping sub-agent result payload paths to parent agent payload paths. Enables controlled merging of sub-agent results. Format: {"subAgentPath": "parentPath", "*": "captureAllPath"}. If null, sub-agent results are not automatically merged into parent payload.`),
7766
+ SubAgentInputMapping: zod_1.z.string().nullable().describe(`
7767
+ * * Field Name: SubAgentInputMapping
7768
+ * * Display Name: Sub Agent Input Mapping
7769
+ * * SQL Data Type: nvarchar(MAX)
7770
+ * * Description: JSON mapping of parent payload paths to sub-agent initial payload paths. Enables structural data transfer from parent to related sub-agent. Format: {"parentPath": "subAgentPath", "parent.nested": "subAgent.field"}. Example: {"searchQuery": "query", "maxResults": "limit"}. If null, sub-agent starts with empty payload (default behavior).`),
7771
+ SubAgentContextPaths: zod_1.z.string().nullable().describe(`
7772
+ * * Field Name: SubAgentContextPaths
7773
+ * * Display Name: Sub Agent Context Paths
7774
+ * * SQL Data Type: nvarchar(MAX)
7775
+ * * Description: JSON array of parent payload paths to send as LLM context to related sub-agent. Sub-agent receives this data in a formatted context message before its task message. Format: ["path1", "path2.nested", "path3.*", "*"]. Use "*" to send entire parent payload. Example: ["userPreferences", "priorFindings.summary", "sources[*]"]. If null, no parent context is sent (default behavior).`),
7695
7776
  Agent: zod_1.z.string().nullable().describe(`
7696
7777
  * * Field Name: Agent
7697
7778
  * * Display Name: Agent
@@ -8089,6 +8170,12 @@ each time the agent processes a prompt step.`),
8089
8170
  * * Display Name: Comments
8090
8171
  * * SQL Data Type: nvarchar(MAX)
8091
8172
  * * Description: Human-readable notes and comments about this agent run`),
8173
+ ScheduledJobRunID: zod_1.z.string().nullable().describe(`
8174
+ * * Field Name: ScheduledJobRunID
8175
+ * * Display Name: Scheduled Job Run ID
8176
+ * * SQL Data Type: uniqueidentifier
8177
+ * * Related Entity/Foreign Key: MJ: Scheduled Job Runs (vwScheduledJobRuns.ID)
8178
+ * * Description: Links to the scheduled job run that triggered this agent execution. NULL for manually-triggered agent runs. Enables tracking which scheduled jobs spawned which agent executions.`),
8092
8179
  Agent: zod_1.z.string().nullable().describe(`
8093
8180
  * * Field Name: Agent
8094
8181
  * * Display Name: Agent
@@ -9823,6 +9910,78 @@ exports.CollectionArtifactSchema = zod_1.z.object({
9823
9910
  * * Display Name: Artifact
9824
9911
  * * SQL Data Type: nvarchar(255)`),
9825
9912
  });
9913
+ /**
9914
+ * zod schema definition for the entity MJ: Collection Permissions
9915
+ */
9916
+ exports.CollectionPermissionSchema = zod_1.z.object({
9917
+ ID: zod_1.z.string().describe(`
9918
+ * * Field Name: ID
9919
+ * * Display Name: ID
9920
+ * * SQL Data Type: uniqueidentifier
9921
+ * * Default Value: newsequentialid()`),
9922
+ CollectionID: zod_1.z.string().describe(`
9923
+ * * Field Name: CollectionID
9924
+ * * Display Name: Collection ID
9925
+ * * SQL Data Type: uniqueidentifier
9926
+ * * Related Entity/Foreign Key: MJ: Collections (vwCollections.ID)`),
9927
+ UserID: zod_1.z.string().describe(`
9928
+ * * Field Name: UserID
9929
+ * * Display Name: User ID
9930
+ * * SQL Data Type: uniqueidentifier
9931
+ * * Related Entity/Foreign Key: Users (vwUsers.ID)`),
9932
+ CanRead: zod_1.z.boolean().describe(`
9933
+ * * Field Name: CanRead
9934
+ * * Display Name: Can Read
9935
+ * * SQL Data Type: bit
9936
+ * * Default Value: 1
9937
+ * * Description: Always 1 - users must have read permission to access a shared collection`),
9938
+ CanShare: zod_1.z.boolean().describe(`
9939
+ * * Field Name: CanShare
9940
+ * * Display Name: Can Share
9941
+ * * SQL Data Type: bit
9942
+ * * Default Value: 0
9943
+ * * Description: Can share this collection with others (but cannot grant more permissions than they have)`),
9944
+ CanEdit: zod_1.z.boolean().describe(`
9945
+ * * Field Name: CanEdit
9946
+ * * Display Name: Can Edit
9947
+ * * SQL Data Type: bit
9948
+ * * Default Value: 0
9949
+ * * Description: Can add/remove artifacts to/from this collection`),
9950
+ CanDelete: zod_1.z.boolean().describe(`
9951
+ * * Field Name: CanDelete
9952
+ * * Display Name: Can Delete
9953
+ * * SQL Data Type: bit
9954
+ * * Default Value: 0
9955
+ * * Description: Can delete the collection, child collections, and artifacts`),
9956
+ SharedByUserID: zod_1.z.string().nullable().describe(`
9957
+ * * Field Name: SharedByUserID
9958
+ * * Display Name: Shared By User ID
9959
+ * * SQL Data Type: uniqueidentifier
9960
+ * * Related Entity/Foreign Key: Users (vwUsers.ID)
9961
+ * * Description: The user who shared this collection (NULL if shared by owner)`),
9962
+ __mj_CreatedAt: zod_1.z.date().describe(`
9963
+ * * Field Name: __mj_CreatedAt
9964
+ * * Display Name: Created At
9965
+ * * SQL Data Type: datetimeoffset
9966
+ * * Default Value: getutcdate()`),
9967
+ __mj_UpdatedAt: zod_1.z.date().describe(`
9968
+ * * Field Name: __mj_UpdatedAt
9969
+ * * Display Name: Updated At
9970
+ * * SQL Data Type: datetimeoffset
9971
+ * * Default Value: getutcdate()`),
9972
+ Collection: zod_1.z.string().describe(`
9973
+ * * Field Name: Collection
9974
+ * * Display Name: Collection
9975
+ * * SQL Data Type: nvarchar(255)`),
9976
+ User: zod_1.z.string().describe(`
9977
+ * * Field Name: User
9978
+ * * Display Name: User
9979
+ * * SQL Data Type: nvarchar(100)`),
9980
+ SharedByUser: zod_1.z.string().nullable().describe(`
9981
+ * * Field Name: SharedByUser
9982
+ * * Display Name: Shared By User
9983
+ * * SQL Data Type: nvarchar(100)`),
9984
+ });
9826
9985
  /**
9827
9986
  * zod schema definition for the entity MJ: Collections
9828
9987
  */
@@ -9878,6 +10037,12 @@ exports.CollectionSchema = zod_1.z.object({
9878
10037
  * * Display Name: Updated At
9879
10038
  * * SQL Data Type: datetimeoffset
9880
10039
  * * Default Value: getutcdate()`),
10040
+ OwnerID: zod_1.z.string().nullable().describe(`
10041
+ * * Field Name: OwnerID
10042
+ * * Display Name: Owner ID
10043
+ * * SQL Data Type: uniqueidentifier
10044
+ * * Related Entity/Foreign Key: Users (vwUsers.ID)
10045
+ * * Description: The user who owns this collection and has full permissions`),
9881
10046
  Environment: zod_1.z.string().describe(`
9882
10047
  * * Field Name: Environment
9883
10048
  * * Display Name: Environment
@@ -9886,6 +10051,10 @@ exports.CollectionSchema = zod_1.z.object({
9886
10051
  * * Field Name: Parent
9887
10052
  * * Display Name: Parent
9888
10053
  * * SQL Data Type: nvarchar(255)`),
10054
+ Owner: zod_1.z.string().nullable().describe(`
10055
+ * * Field Name: Owner
10056
+ * * Display Name: Owner
10057
+ * * SQL Data Type: nvarchar(100)`),
9889
10058
  RootParentID: zod_1.z.string().nullable().describe(`
9890
10059
  * * Field Name: RootParentID
9891
10060
  * * Display Name: Root Parent ID
@@ -11068,6 +11237,321 @@ exports.ReportVersionSchema = zod_1.z.object({
11068
11237
  * * Display Name: Report
11069
11238
  * * SQL Data Type: nvarchar(255)`),
11070
11239
  });
11240
+ /**
11241
+ * zod schema definition for the entity MJ: Scheduled Job Runs
11242
+ */
11243
+ exports.ScheduledJobRunSchema = zod_1.z.object({
11244
+ ID: zod_1.z.string().describe(`
11245
+ * * Field Name: ID
11246
+ * * Display Name: ID
11247
+ * * SQL Data Type: uniqueidentifier
11248
+ * * Default Value: newsequentialid()`),
11249
+ ScheduledJobID: zod_1.z.string().describe(`
11250
+ * * Field Name: ScheduledJobID
11251
+ * * Display Name: Scheduled Job ID
11252
+ * * SQL Data Type: uniqueidentifier
11253
+ * * Related Entity/Foreign Key: MJ: Scheduled Jobs (vwScheduledJobs.ID)`),
11254
+ StartedAt: zod_1.z.date().describe(`
11255
+ * * Field Name: StartedAt
11256
+ * * Display Name: Started At
11257
+ * * SQL Data Type: datetimeoffset
11258
+ * * Default Value: sysdatetimeoffset()
11259
+ * * Description: Timestamp when this job execution began. Set immediately before calling the job plugin's Execute method.`),
11260
+ CompletedAt: zod_1.z.date().nullable().describe(`
11261
+ * * Field Name: CompletedAt
11262
+ * * Display Name: Completed At
11263
+ * * SQL Data Type: datetimeoffset
11264
+ * * Description: Timestamp when this job execution completed (successfully or with failure). NULL while the job is still running.`),
11265
+ Status: zod_1.z.union([zod_1.z.literal('Cancelled'), zod_1.z.literal('Completed'), zod_1.z.literal('Failed'), zod_1.z.literal('Running'), zod_1.z.literal('Timeout')]).describe(`
11266
+ * * Field Name: Status
11267
+ * * Display Name: Status
11268
+ * * SQL Data Type: nvarchar(20)
11269
+ * * Default Value: Running
11270
+ * * Value List Type: List
11271
+ * * Possible Values
11272
+ * * Running
11273
+ * * Timeout
11274
+ * * Completed
11275
+ * * Cancelled
11276
+ * * Failed
11277
+ * * Description: Current status of the job execution. Running=currently executing, Completed=finished (check Success for outcome), Failed=exception during execution, Cancelled=manually cancelled, Timeout=exceeded maximum execution time.`),
11278
+ Success: zod_1.z.boolean().nullable().describe(`
11279
+ * * Field Name: Success
11280
+ * * Display Name: Success
11281
+ * * SQL Data Type: bit
11282
+ * * Description: Whether the job execution completed successfully. NULL while running, TRUE if successful, FALSE if failed. This is the job-level success from the plugin's Execute method, separate from domain-specific success tracking.`),
11283
+ ErrorMessage: zod_1.z.string().nullable().describe(`
11284
+ * * Field Name: ErrorMessage
11285
+ * * Display Name: Error Message
11286
+ * * SQL Data Type: nvarchar(MAX)
11287
+ * * Description: Error message if the job failed. NULL for successful runs. Contains exception messages or error details from the plugin's Execute method.`),
11288
+ Details: zod_1.z.string().nullable().describe(`
11289
+ * * Field Name: Details
11290
+ * * Display Name: Details
11291
+ * * SQL Data Type: nvarchar(MAX)
11292
+ * * Description: Job-type specific execution details stored as JSON. May include references to domain-specific run records (e.g., {"AgentRunID": "...", "TokensUsed": 5000}), performance metrics, or other execution metadata. Schema is defined by the job type plugin.`),
11293
+ ExecutedByUserID: zod_1.z.string().nullable().describe(`
11294
+ * * Field Name: ExecutedByUserID
11295
+ * * Display Name: Executed By User ID
11296
+ * * SQL Data Type: uniqueidentifier
11297
+ * * Related Entity/Foreign Key: Users (vwUsers.ID)
11298
+ * * Description: User context under which the job was executed. Typically the OwnerUserID from the schedule, but can be overridden in job-specific configuration.`),
11299
+ QueuedAt: zod_1.z.date().nullable().describe(`
11300
+ * * Field Name: QueuedAt
11301
+ * * Display Name: Queued At
11302
+ * * SQL Data Type: datetimeoffset
11303
+ * * Description: Timestamp when this execution was queued (for ConcurrencyMode=Queue). NULL for immediate executions. When set, indicates this run is waiting for a previous execution to complete before starting.`),
11304
+ __mj_CreatedAt: zod_1.z.date().describe(`
11305
+ * * Field Name: __mj_CreatedAt
11306
+ * * Display Name: Created At
11307
+ * * SQL Data Type: datetimeoffset
11308
+ * * Default Value: getutcdate()`),
11309
+ __mj_UpdatedAt: zod_1.z.date().describe(`
11310
+ * * Field Name: __mj_UpdatedAt
11311
+ * * Display Name: Updated At
11312
+ * * SQL Data Type: datetimeoffset
11313
+ * * Default Value: getutcdate()`),
11314
+ ScheduledJob: zod_1.z.string().describe(`
11315
+ * * Field Name: ScheduledJob
11316
+ * * Display Name: Scheduled Job
11317
+ * * SQL Data Type: nvarchar(200)`),
11318
+ ExecutedByUser: zod_1.z.string().nullable().describe(`
11319
+ * * Field Name: ExecutedByUser
11320
+ * * Display Name: Executed By User
11321
+ * * SQL Data Type: nvarchar(100)`),
11322
+ });
11323
+ /**
11324
+ * zod schema definition for the entity MJ: Scheduled Job Types
11325
+ */
11326
+ exports.ScheduledJobTypeSchema = zod_1.z.object({
11327
+ ID: zod_1.z.string().describe(`
11328
+ * * Field Name: ID
11329
+ * * Display Name: ID
11330
+ * * SQL Data Type: uniqueidentifier
11331
+ * * Default Value: newsequentialid()`),
11332
+ Name: zod_1.z.string().describe(`
11333
+ * * Field Name: Name
11334
+ * * Display Name: Name
11335
+ * * SQL Data Type: nvarchar(100)
11336
+ * * Description: Unique name identifying this job type (e.g., Agent, Action, Report).`),
11337
+ Description: zod_1.z.string().nullable().describe(`
11338
+ * * Field Name: Description
11339
+ * * Display Name: Description
11340
+ * * SQL Data Type: nvarchar(MAX)
11341
+ * * Description: Human-readable description of what this job type does and when it should be used.`),
11342
+ DriverClass: zod_1.z.string().describe(`
11343
+ * * Field Name: DriverClass
11344
+ * * Display Name: Driver Class
11345
+ * * SQL Data Type: nvarchar(255)
11346
+ * * Description: TypeScript class name that implements BaseScheduledJob for this job type. Used by ClassFactory to instantiate the correct plugin at runtime.`),
11347
+ DomainRunEntity: zod_1.z.string().nullable().describe(`
11348
+ * * Field Name: DomainRunEntity
11349
+ * * Display Name: Domain Run Entity
11350
+ * * SQL Data Type: nvarchar(255)
11351
+ * * Description: Name of the entity that stores execution records for this job type (e.g., "MJ: AI Agent Runs", "Action Execution Logs"). Used for generic UI linking to domain-specific run records. NULL if job type uses ScheduledJobRun as its only execution record.`),
11352
+ DomainRunEntityFKey: zod_1.z.string().nullable().describe(`
11353
+ * * Field Name: DomainRunEntityFKey
11354
+ * * Display Name: Domain Run Entity F Key
11355
+ * * SQL Data Type: nvarchar(100)
11356
+ * * Description: Name of the foreign key field in the DomainRunEntity that links back to ScheduledJobRun (e.g., "ScheduleID"). Used for querying related domain runs. NULL if DomainRunEntity is NULL.`),
11357
+ NotificationsAvailable: zod_1.z.boolean().describe(`
11358
+ * * Field Name: NotificationsAvailable
11359
+ * * Display Name: Notifications Available
11360
+ * * SQL Data Type: bit
11361
+ * * Default Value: 1
11362
+ * * Description: Indicates whether this job type supports sending notifications on completion or failure.`),
11363
+ __mj_CreatedAt: zod_1.z.date().describe(`
11364
+ * * Field Name: __mj_CreatedAt
11365
+ * * Display Name: Created At
11366
+ * * SQL Data Type: datetimeoffset
11367
+ * * Default Value: getutcdate()`),
11368
+ __mj_UpdatedAt: zod_1.z.date().describe(`
11369
+ * * Field Name: __mj_UpdatedAt
11370
+ * * Display Name: Updated At
11371
+ * * SQL Data Type: datetimeoffset
11372
+ * * Default Value: getutcdate()`),
11373
+ });
11374
+ /**
11375
+ * zod schema definition for the entity MJ: Scheduled Jobs
11376
+ */
11377
+ exports.ScheduledJobSchema = zod_1.z.object({
11378
+ ID: zod_1.z.string().describe(`
11379
+ * * Field Name: ID
11380
+ * * Display Name: ID
11381
+ * * SQL Data Type: uniqueidentifier
11382
+ * * Default Value: newsequentialid()`),
11383
+ JobTypeID: zod_1.z.string().describe(`
11384
+ * * Field Name: JobTypeID
11385
+ * * Display Name: Job Type ID
11386
+ * * SQL Data Type: uniqueidentifier
11387
+ * * Related Entity/Foreign Key: MJ: Scheduled Job Types (vwScheduledJobTypes.ID)`),
11388
+ Name: zod_1.z.string().describe(`
11389
+ * * Field Name: Name
11390
+ * * Display Name: Name
11391
+ * * SQL Data Type: nvarchar(200)
11392
+ * * Description: Human-readable name for this scheduled job. Should clearly identify what the job does.`),
11393
+ Description: zod_1.z.string().nullable().describe(`
11394
+ * * Field Name: Description
11395
+ * * Display Name: Description
11396
+ * * SQL Data Type: nvarchar(MAX)
11397
+ * * Description: Detailed description of the job's purpose, what it does, and any important notes about its execution.`),
11398
+ CronExpression: zod_1.z.string().describe(`
11399
+ * * Field Name: CronExpression
11400
+ * * Display Name: Cron Expression
11401
+ * * SQL Data Type: nvarchar(120)
11402
+ * * Description: Cron expression defining when the job should execute (e.g., "0 30 9 * * MON-FRI" for weekdays at 9:30 AM). Uses standard cron syntax with seconds precision.`),
11403
+ Timezone: zod_1.z.string().describe(`
11404
+ * * Field Name: Timezone
11405
+ * * Display Name: Timezone
11406
+ * * SQL Data Type: nvarchar(64)
11407
+ * * Default Value: UTC
11408
+ * * Description: IANA timezone identifier for interpreting the cron expression (e.g., "America/Chicago", "UTC"). Ensures consistent scheduling across different server locations.`),
11409
+ StartAt: zod_1.z.date().nullable().describe(`
11410
+ * * Field Name: StartAt
11411
+ * * Display Name: Start At
11412
+ * * SQL Data Type: datetimeoffset
11413
+ * * Description: Optional start date/time for when this schedule becomes active. Job will not execute before this time. NULL means active immediately upon creation.`),
11414
+ EndAt: zod_1.z.date().nullable().describe(`
11415
+ * * Field Name: EndAt
11416
+ * * Display Name: End At
11417
+ * * SQL Data Type: datetimeoffset
11418
+ * * Description: Optional end date/time for when this schedule expires. Job will not execute after this time. NULL means no expiration.`),
11419
+ Status: zod_1.z.union([zod_1.z.literal('Active'), zod_1.z.literal('Disabled'), zod_1.z.literal('Expired'), zod_1.z.literal('Paused'), zod_1.z.literal('Pending')]).describe(`
11420
+ * * Field Name: Status
11421
+ * * Display Name: Status
11422
+ * * SQL Data Type: nvarchar(20)
11423
+ * * Default Value: Pending
11424
+ * * Value List Type: List
11425
+ * * Possible Values
11426
+ * * Paused
11427
+ * * Disabled
11428
+ * * Expired
11429
+ * * Pending
11430
+ * * Active
11431
+ * * Description: Current status of the schedule. Pending=created but not yet active, Active=currently running on schedule, Paused=temporarily stopped, Disabled=manually disabled, Expired=past EndAt date.`),
11432
+ Configuration: zod_1.z.string().nullable().describe(`
11433
+ * * Field Name: Configuration
11434
+ * * Display Name: Configuration
11435
+ * * SQL Data Type: nvarchar(MAX)
11436
+ * * Description: Job-type specific configuration stored as JSON. Schema is defined by the ScheduledJobType plugin. For Agents: includes AgentID, StartingPayload, InitialMessage, etc. For Actions: includes ActionID and parameter mappings.`),
11437
+ OwnerUserID: zod_1.z.string().nullable().describe(`
11438
+ * * Field Name: OwnerUserID
11439
+ * * Display Name: Owner User ID
11440
+ * * SQL Data Type: uniqueidentifier
11441
+ * * Related Entity/Foreign Key: Users (vwUsers.ID)
11442
+ * * Description: User who owns this schedule. Used as the execution context if no specific user is configured in the job-specific configuration.`),
11443
+ LastRunAt: zod_1.z.date().nullable().describe(`
11444
+ * * Field Name: LastRunAt
11445
+ * * Display Name: Last Run At
11446
+ * * SQL Data Type: datetimeoffset
11447
+ * * Description: Timestamp of the most recent execution. Updated after each run. Used for monitoring and dashboard displays.`),
11448
+ NextRunAt: zod_1.z.date().nullable().describe(`
11449
+ * * Field Name: NextRunAt
11450
+ * * Display Name: Next Run At
11451
+ * * SQL Data Type: datetimeoffset
11452
+ * * Description: Calculated timestamp of when this job should next execute based on the cron expression. Updated after each run. Used by scheduler to determine which jobs are due.`),
11453
+ RunCount: zod_1.z.number().describe(`
11454
+ * * Field Name: RunCount
11455
+ * * Display Name: Run Count
11456
+ * * SQL Data Type: int
11457
+ * * Default Value: 0
11458
+ * * Description: Total number of times this schedule has been executed, including both successful and failed runs.`),
11459
+ SuccessCount: zod_1.z.number().describe(`
11460
+ * * Field Name: SuccessCount
11461
+ * * Display Name: Success Count
11462
+ * * SQL Data Type: int
11463
+ * * Default Value: 0
11464
+ * * Description: Number of times this schedule has executed successfully (Success = true in ScheduledJobRun).`),
11465
+ FailureCount: zod_1.z.number().describe(`
11466
+ * * Field Name: FailureCount
11467
+ * * Display Name: Failure Count
11468
+ * * SQL Data Type: int
11469
+ * * Default Value: 0
11470
+ * * Description: Number of times this schedule has executed but failed (Success = false in ScheduledJobRun).`),
11471
+ NotifyOnSuccess: zod_1.z.boolean().describe(`
11472
+ * * Field Name: NotifyOnSuccess
11473
+ * * Display Name: Notify On Success
11474
+ * * SQL Data Type: bit
11475
+ * * Default Value: 0
11476
+ * * Description: Whether to send notifications when the job completes successfully.`),
11477
+ NotifyOnFailure: zod_1.z.boolean().describe(`
11478
+ * * Field Name: NotifyOnFailure
11479
+ * * Display Name: Notify On Failure
11480
+ * * SQL Data Type: bit
11481
+ * * Default Value: 1
11482
+ * * Description: Whether to send notifications when the job fails. Defaults to true for alerting on failures.`),
11483
+ NotifyUserID: zod_1.z.string().nullable().describe(`
11484
+ * * Field Name: NotifyUserID
11485
+ * * Display Name: Notify User ID
11486
+ * * SQL Data Type: uniqueidentifier
11487
+ * * Related Entity/Foreign Key: Users (vwUsers.ID)
11488
+ * * Description: User to notify about job execution results. If NULL and notifications are enabled, falls back to OwnerUserID.`),
11489
+ NotifyViaEmail: zod_1.z.boolean().describe(`
11490
+ * * Field Name: NotifyViaEmail
11491
+ * * Display Name: Notify Via Email
11492
+ * * SQL Data Type: bit
11493
+ * * Default Value: 0
11494
+ * * Description: Whether to send email notifications. Requires NotifyOnSuccess or NotifyOnFailure to also be enabled.`),
11495
+ NotifyViaInApp: zod_1.z.boolean().describe(`
11496
+ * * Field Name: NotifyViaInApp
11497
+ * * Display Name: Notify Via In App
11498
+ * * SQL Data Type: bit
11499
+ * * Default Value: 1
11500
+ * * Description: Whether to send in-app notifications. Requires NotifyOnSuccess or NotifyOnFailure to also be enabled. Defaults to true.`),
11501
+ LockToken: zod_1.z.string().nullable().describe(`
11502
+ * * Field Name: LockToken
11503
+ * * Display Name: Lock Token
11504
+ * * SQL Data Type: uniqueidentifier
11505
+ * * Description: Unique token used for distributed locking across multiple server instances. Set when a server claims the job for execution. Prevents duplicate executions in multi-server environments.`),
11506
+ LockedAt: zod_1.z.date().nullable().describe(`
11507
+ * * Field Name: LockedAt
11508
+ * * Display Name: Locked At
11509
+ * * SQL Data Type: datetimeoffset
11510
+ * * Description: Timestamp when the lock was acquired. Used with ExpectedCompletionAt to detect stale locks from crashed server instances.`),
11511
+ LockedByInstance: zod_1.z.string().nullable().describe(`
11512
+ * * Field Name: LockedByInstance
11513
+ * * Display Name: Locked By Instance
11514
+ * * SQL Data Type: nvarchar(255)
11515
+ * * Description: Identifier of the server instance that currently holds the lock (e.g., "hostname-12345"). Used for troubleshooting and monitoring which server is executing which job.`),
11516
+ ExpectedCompletionAt: zod_1.z.date().nullable().describe(`
11517
+ * * Field Name: ExpectedCompletionAt
11518
+ * * Display Name: Expected Completion At
11519
+ * * SQL Data Type: datetimeoffset
11520
+ * * Description: Expected completion time for the current execution. If current time exceeds this and lock still exists, the lock is considered stale and can be claimed by another instance. Handles crashed server cleanup.`),
11521
+ ConcurrencyMode: zod_1.z.union([zod_1.z.literal('Concurrent'), zod_1.z.literal('Queue'), zod_1.z.literal('Skip')]).describe(`
11522
+ * * Field Name: ConcurrencyMode
11523
+ * * Display Name: Concurrency Mode
11524
+ * * SQL Data Type: nvarchar(20)
11525
+ * * Default Value: Skip
11526
+ * * Value List Type: List
11527
+ * * Possible Values
11528
+ * * Queue
11529
+ * * Concurrent
11530
+ * * Skip
11531
+ * * Description: Controls behavior when a new execution is scheduled while a previous execution is still running. Skip=do not start new execution (default), Queue=wait for current to finish then execute, Concurrent=allow multiple simultaneous executions.`),
11532
+ __mj_CreatedAt: zod_1.z.date().describe(`
11533
+ * * Field Name: __mj_CreatedAt
11534
+ * * Display Name: Created At
11535
+ * * SQL Data Type: datetimeoffset
11536
+ * * Default Value: getutcdate()`),
11537
+ __mj_UpdatedAt: zod_1.z.date().describe(`
11538
+ * * Field Name: __mj_UpdatedAt
11539
+ * * Display Name: Updated At
11540
+ * * SQL Data Type: datetimeoffset
11541
+ * * Default Value: getutcdate()`),
11542
+ JobType: zod_1.z.string().describe(`
11543
+ * * Field Name: JobType
11544
+ * * Display Name: Job Type
11545
+ * * SQL Data Type: nvarchar(100)`),
11546
+ OwnerUser: zod_1.z.string().nullable().describe(`
11547
+ * * Field Name: OwnerUser
11548
+ * * Display Name: Owner User
11549
+ * * SQL Data Type: nvarchar(100)`),
11550
+ NotifyUser: zod_1.z.string().nullable().describe(`
11551
+ * * Field Name: NotifyUser
11552
+ * * Display Name: Notify User
11553
+ * * SQL Data Type: nvarchar(100)`),
11554
+ });
11071
11555
  /**
11072
11556
  * zod schema definition for the entity MJ: Task Dependencies
11073
11557
  */
@@ -16199,6 +16683,19 @@ let ActionEntity = class ActionEntity extends core_1.BaseEntity {
16199
16683
  this.Set('IconClass', value);
16200
16684
  }
16201
16685
  /**
16686
+ * * Field Name: DefaultCompactPromptID
16687
+ * * Display Name: Default Compact Prompt ID
16688
+ * * SQL Data Type: uniqueidentifier
16689
+ * * Related Entity/Foreign Key: AI Prompts (vwAIPrompts.ID)
16690
+ * * Description: Default prompt for compacting/summarizing this action's results when used by agents with CompactMode=AISummary. Action designers define how their specific results should be summarized. Can be overridden per agent in AIAgentAction.CompactPromptID.
16691
+ */
16692
+ get DefaultCompactPromptID() {
16693
+ return this.Get('DefaultCompactPromptID');
16694
+ }
16695
+ set DefaultCompactPromptID(value) {
16696
+ this.Set('DefaultCompactPromptID', value);
16697
+ }
16698
+ /**
16202
16699
  * * Field Name: Category
16203
16700
  * * Display Name: Category
16204
16701
  * * SQL Data Type: nvarchar(255)
@@ -16223,6 +16720,14 @@ let ActionEntity = class ActionEntity extends core_1.BaseEntity {
16223
16720
  return this.Get('Parent');
16224
16721
  }
16225
16722
  /**
16723
+ * * Field Name: DefaultCompactPrompt
16724
+ * * Display Name: Default Compact Prompt
16725
+ * * SQL Data Type: nvarchar(255)
16726
+ */
16727
+ get DefaultCompactPrompt() {
16728
+ return this.Get('DefaultCompactPrompt');
16729
+ }
16730
+ /**
16226
16731
  * * Field Name: RootParentID
16227
16732
  * * Display Name: Root Parent ID
16228
16733
  * * SQL Data Type: uniqueidentifier
@@ -16543,6 +17048,77 @@ let AIAgentActionEntity = class AIAgentActionEntity extends core_1.BaseEntity {
16543
17048
  this.Set('MaxExecutionsPerRun', value);
16544
17049
  }
16545
17050
  /**
17051
+ * * Field Name: ResultExpirationTurns
17052
+ * * Display Name: Result Expiration Turns
17053
+ * * SQL Data Type: int
17054
+ * * Description: Number of conversation turns before action results expire from conversation context. NULL = never expire (default). 0 = expire immediately after next turn.
17055
+ */
17056
+ get ResultExpirationTurns() {
17057
+ return this.Get('ResultExpirationTurns');
17058
+ }
17059
+ set ResultExpirationTurns(value) {
17060
+ this.Set('ResultExpirationTurns', value);
17061
+ }
17062
+ /**
17063
+ * * Field Name: ResultExpirationMode
17064
+ * * Display Name: Result Expiration Mode
17065
+ * * SQL Data Type: nvarchar(20)
17066
+ * * Default Value: None
17067
+ * * Value List Type: List
17068
+ * * Possible Values
17069
+ * * Remove
17070
+ * * None
17071
+ * * Compact
17072
+ * * Description: How to handle expired action results: None (no expiration, default), Remove (delete message entirely), Compact (reduce size via CompactMode while preserving key information).
17073
+ */
17074
+ get ResultExpirationMode() {
17075
+ return this.Get('ResultExpirationMode');
17076
+ }
17077
+ set ResultExpirationMode(value) {
17078
+ this.Set('ResultExpirationMode', value);
17079
+ }
17080
+ /**
17081
+ * * Field Name: CompactMode
17082
+ * * Display Name: Compact Mode
17083
+ * * SQL Data Type: nvarchar(20)
17084
+ * * Value List Type: List
17085
+ * * Possible Values
17086
+ * * AI Summary
17087
+ * * First N Chars
17088
+ * * Description: How to compact results when ResultExpirationMode=Compact: FirstNChars (truncate to CompactLength characters, fast and free), AISummary (use LLM to intelligently summarize with CompactPromptID or Action.DefaultCompactPromptID).
17089
+ */
17090
+ get CompactMode() {
17091
+ return this.Get('CompactMode');
17092
+ }
17093
+ set CompactMode(value) {
17094
+ this.Set('CompactMode', value);
17095
+ }
17096
+ /**
17097
+ * * Field Name: CompactLength
17098
+ * * Display Name: Compact Length
17099
+ * * SQL Data Type: int
17100
+ * * Description: Number of characters to keep when CompactMode=FirstNChars. Required when CompactMode is FirstNChars, ignored otherwise.
17101
+ */
17102
+ get CompactLength() {
17103
+ return this.Get('CompactLength');
17104
+ }
17105
+ set CompactLength(value) {
17106
+ this.Set('CompactLength', value);
17107
+ }
17108
+ /**
17109
+ * * Field Name: CompactPromptID
17110
+ * * Display Name: Compact Prompt ID
17111
+ * * SQL Data Type: uniqueidentifier
17112
+ * * Related Entity/Foreign Key: AI Prompts (vwAIPrompts.ID)
17113
+ * * Description: Optional override for AI summarization prompt when CompactMode=AISummary. Lookup hierarchy: this field -> Action.DefaultCompactPromptID -> system default. Allows agent-specific summarization focus (e.g., technical vs. marketing perspective).
17114
+ */
17115
+ get CompactPromptID() {
17116
+ return this.Get('CompactPromptID');
17117
+ }
17118
+ set CompactPromptID(value) {
17119
+ this.Set('CompactPromptID', value);
17120
+ }
17121
+ /**
16546
17122
  * * Field Name: Agent
16547
17123
  * * Display Name: Agent
16548
17124
  * * SQL Data Type: nvarchar(255)
@@ -16558,6 +17134,14 @@ let AIAgentActionEntity = class AIAgentActionEntity extends core_1.BaseEntity {
16558
17134
  get Action() {
16559
17135
  return this.Get('Action');
16560
17136
  }
17137
+ /**
17138
+ * * Field Name: CompactPrompt
17139
+ * * Display Name: Compact Prompt
17140
+ * * SQL Data Type: nvarchar(255)
17141
+ */
17142
+ get CompactPrompt() {
17143
+ return this.Get('CompactPrompt');
17144
+ }
16561
17145
  };
16562
17146
  exports.AIAgentActionEntity = AIAgentActionEntity;
16563
17147
  exports.AIAgentActionEntity = AIAgentActionEntity = __decorate([
@@ -17910,6 +18494,24 @@ if this limit is exceeded.
17910
18494
  this.Set('OwnerUserID', value);
17911
18495
  }
17912
18496
  /**
18497
+ * * Field Name: InvocationMode
18498
+ * * Display Name: Invocation Mode
18499
+ * * SQL Data Type: nvarchar(20)
18500
+ * * Default Value: Any
18501
+ * * Value List Type: List
18502
+ * * Possible Values
18503
+ * * Sub-Agent
18504
+ * * Any
18505
+ * * Top-Level
18506
+ * * Description: Controls how the agent can be invoked: Any (default - can be top-level or sub-agent), Top-Level (only callable as primary agent), Sub-Agent (only callable as sub-agent). Used to filter available agents in tools like Sage.
18507
+ */
18508
+ get InvocationMode() {
18509
+ return this.Get('InvocationMode');
18510
+ }
18511
+ set InvocationMode(value) {
18512
+ this.Set('InvocationMode', value);
18513
+ }
18514
+ /**
17913
18515
  * * Field Name: Parent
17914
18516
  * * Display Name: Parent
17915
18517
  * * SQL Data Type: nvarchar(255)
@@ -24278,6 +24880,18 @@ let ConversationDetailEntity = class ConversationDetailEntity extends core_1.Bas
24278
24880
  this.Set('Status', value);
24279
24881
  }
24280
24882
  /**
24883
+ * * Field Name: SuggestedResponses
24884
+ * * Display Name: Suggested Responses
24885
+ * * SQL Data Type: nvarchar(MAX)
24886
+ * * Description: JSON array of suggested responses that can be displayed to the user for quick replies. Each response object contains: text (display text), allowInput (boolean), iconClass (optional Font Awesome class), and data (optional payload).
24887
+ */
24888
+ get SuggestedResponses() {
24889
+ return this.Get('SuggestedResponses');
24890
+ }
24891
+ set SuggestedResponses(value) {
24892
+ this.Set('SuggestedResponses', value);
24893
+ }
24894
+ /**
24281
24895
  * * Field Name: Conversation
24282
24896
  * * Display Name: Conversation
24283
24897
  * * SQL Data Type: nvarchar(255)
@@ -33622,7 +34236,7 @@ let AIAgentPermissionEntity = class AIAgentPermissionEntity extends core_1.BaseE
33622
34236
  const hasRole = this.RoleID !== null;
33623
34237
  const hasUser = this.UserID !== null;
33624
34238
  if ((hasRole && hasUser) || (!hasRole && !hasUser)) {
33625
- result.Errors.push(new core_1.ValidationErrorInfo("RoleID/UserID", "You must specify either a Role or a User, but not both and not neither.", `RoleID: ${this.RoleID}, UserID: ${this.UserID}`, core_1.ValidationErrorType.Failure));
34239
+ result.Errors.push(new core_1.ValidationErrorInfo("RoleID/UserID", "You must specify either a Role or a User, but not both and not neither.", `RoleID: $${this.RoleID}, UserID: $${this.UserID}`, core_1.ValidationErrorType.Failure));
33626
34240
  }
33627
34241
  }
33628
34242
  /**
@@ -34116,6 +34730,42 @@ let AIAgentRelationshipEntity = class AIAgentRelationshipEntity extends core_1.B
34116
34730
  return this.Get('__mj_UpdatedAt');
34117
34731
  }
34118
34732
  /**
34733
+ * * Field Name: SubAgentOutputMapping
34734
+ * * Display Name: Sub Agent Output Mapping
34735
+ * * SQL Data Type: nvarchar(MAX)
34736
+ * * Description: JSON configuration mapping sub-agent result payload paths to parent agent payload paths. Enables controlled merging of sub-agent results. Format: {"subAgentPath": "parentPath", "*": "captureAllPath"}. If null, sub-agent results are not automatically merged into parent payload.
34737
+ */
34738
+ get SubAgentOutputMapping() {
34739
+ return this.Get('SubAgentOutputMapping');
34740
+ }
34741
+ set SubAgentOutputMapping(value) {
34742
+ this.Set('SubAgentOutputMapping', value);
34743
+ }
34744
+ /**
34745
+ * * Field Name: SubAgentInputMapping
34746
+ * * Display Name: Sub Agent Input Mapping
34747
+ * * SQL Data Type: nvarchar(MAX)
34748
+ * * Description: JSON mapping of parent payload paths to sub-agent initial payload paths. Enables structural data transfer from parent to related sub-agent. Format: {"parentPath": "subAgentPath", "parent.nested": "subAgent.field"}. Example: {"searchQuery": "query", "maxResults": "limit"}. If null, sub-agent starts with empty payload (default behavior).
34749
+ */
34750
+ get SubAgentInputMapping() {
34751
+ return this.Get('SubAgentInputMapping');
34752
+ }
34753
+ set SubAgentInputMapping(value) {
34754
+ this.Set('SubAgentInputMapping', value);
34755
+ }
34756
+ /**
34757
+ * * Field Name: SubAgentContextPaths
34758
+ * * Display Name: Sub Agent Context Paths
34759
+ * * SQL Data Type: nvarchar(MAX)
34760
+ * * Description: JSON array of parent payload paths to send as LLM context to related sub-agent. Sub-agent receives this data in a formatted context message before its task message. Format: ["path1", "path2.nested", "path3.*", "*"]. Use "*" to send entire parent payload. Example: ["userPreferences", "priorFindings.summary", "sources[*]"]. If null, no parent context is sent (default behavior).
34761
+ */
34762
+ get SubAgentContextPaths() {
34763
+ return this.Get('SubAgentContextPaths');
34764
+ }
34765
+ set SubAgentContextPaths(value) {
34766
+ this.Set('SubAgentContextPaths', value);
34767
+ }
34768
+ /**
34119
34769
  * * Field Name: Agent
34120
34770
  * * Display Name: Agent
34121
34771
  * * SQL Data Type: nvarchar(255)
@@ -35045,6 +35695,19 @@ each time the agent processes a prompt step.
35045
35695
  this.Set('Comments', value);
35046
35696
  }
35047
35697
  /**
35698
+ * * Field Name: ScheduledJobRunID
35699
+ * * Display Name: Scheduled Job Run ID
35700
+ * * SQL Data Type: uniqueidentifier
35701
+ * * Related Entity/Foreign Key: MJ: Scheduled Job Runs (vwScheduledJobRuns.ID)
35702
+ * * Description: Links to the scheduled job run that triggered this agent execution. NULL for manually-triggered agent runs. Enables tracking which scheduled jobs spawned which agent executions.
35703
+ */
35704
+ get ScheduledJobRunID() {
35705
+ return this.Get('ScheduledJobRunID');
35706
+ }
35707
+ set ScheduledJobRunID(value) {
35708
+ this.Set('ScheduledJobRunID', value);
35709
+ }
35710
+ /**
35048
35711
  * * Field Name: Agent
35049
35712
  * * Display Name: Agent
35050
35713
  * * SQL Data Type: nvarchar(255)
@@ -39610,6 +40273,182 @@ exports.CollectionArtifactEntity = CollectionArtifactEntity;
39610
40273
  exports.CollectionArtifactEntity = CollectionArtifactEntity = __decorate([
39611
40274
  (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: Collection Artifacts')
39612
40275
  ], CollectionArtifactEntity);
40276
+ /**
40277
+ * MJ: Collection Permissions - strongly typed entity sub-class
40278
+ * * Schema: __mj
40279
+ * * Base Table: CollectionPermission
40280
+ * * Base View: vwCollectionPermissions
40281
+ * * @description Manages sharing permissions for collections, allowing granular access control
40282
+ * * Primary Key: ID
40283
+ * @extends {BaseEntity}
40284
+ * @class
40285
+ * @public
40286
+ */
40287
+ let CollectionPermissionEntity = class CollectionPermissionEntity extends core_1.BaseEntity {
40288
+ /**
40289
+ * Loads the MJ: Collection Permissions record from the database
40290
+ * @param ID: string - primary key value to load the MJ: Collection Permissions record.
40291
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
40292
+ * @returns {Promise<boolean>} - true if successful, false otherwise
40293
+ * @public
40294
+ * @async
40295
+ * @memberof CollectionPermissionEntity
40296
+ * @method
40297
+ * @override
40298
+ */
40299
+ async Load(ID, EntityRelationshipsToLoad) {
40300
+ const compositeKey = new core_1.CompositeKey();
40301
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
40302
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
40303
+ }
40304
+ /**
40305
+ * * Field Name: ID
40306
+ * * Display Name: ID
40307
+ * * SQL Data Type: uniqueidentifier
40308
+ * * Default Value: newsequentialid()
40309
+ */
40310
+ get ID() {
40311
+ return this.Get('ID');
40312
+ }
40313
+ set ID(value) {
40314
+ this.Set('ID', value);
40315
+ }
40316
+ /**
40317
+ * * Field Name: CollectionID
40318
+ * * Display Name: Collection ID
40319
+ * * SQL Data Type: uniqueidentifier
40320
+ * * Related Entity/Foreign Key: MJ: Collections (vwCollections.ID)
40321
+ */
40322
+ get CollectionID() {
40323
+ return this.Get('CollectionID');
40324
+ }
40325
+ set CollectionID(value) {
40326
+ this.Set('CollectionID', value);
40327
+ }
40328
+ /**
40329
+ * * Field Name: UserID
40330
+ * * Display Name: User ID
40331
+ * * SQL Data Type: uniqueidentifier
40332
+ * * Related Entity/Foreign Key: Users (vwUsers.ID)
40333
+ */
40334
+ get UserID() {
40335
+ return this.Get('UserID');
40336
+ }
40337
+ set UserID(value) {
40338
+ this.Set('UserID', value);
40339
+ }
40340
+ /**
40341
+ * * Field Name: CanRead
40342
+ * * Display Name: Can Read
40343
+ * * SQL Data Type: bit
40344
+ * * Default Value: 1
40345
+ * * Description: Always 1 - users must have read permission to access a shared collection
40346
+ */
40347
+ get CanRead() {
40348
+ return this.Get('CanRead');
40349
+ }
40350
+ set CanRead(value) {
40351
+ this.Set('CanRead', value);
40352
+ }
40353
+ /**
40354
+ * * Field Name: CanShare
40355
+ * * Display Name: Can Share
40356
+ * * SQL Data Type: bit
40357
+ * * Default Value: 0
40358
+ * * Description: Can share this collection with others (but cannot grant more permissions than they have)
40359
+ */
40360
+ get CanShare() {
40361
+ return this.Get('CanShare');
40362
+ }
40363
+ set CanShare(value) {
40364
+ this.Set('CanShare', value);
40365
+ }
40366
+ /**
40367
+ * * Field Name: CanEdit
40368
+ * * Display Name: Can Edit
40369
+ * * SQL Data Type: bit
40370
+ * * Default Value: 0
40371
+ * * Description: Can add/remove artifacts to/from this collection
40372
+ */
40373
+ get CanEdit() {
40374
+ return this.Get('CanEdit');
40375
+ }
40376
+ set CanEdit(value) {
40377
+ this.Set('CanEdit', value);
40378
+ }
40379
+ /**
40380
+ * * Field Name: CanDelete
40381
+ * * Display Name: Can Delete
40382
+ * * SQL Data Type: bit
40383
+ * * Default Value: 0
40384
+ * * Description: Can delete the collection, child collections, and artifacts
40385
+ */
40386
+ get CanDelete() {
40387
+ return this.Get('CanDelete');
40388
+ }
40389
+ set CanDelete(value) {
40390
+ this.Set('CanDelete', value);
40391
+ }
40392
+ /**
40393
+ * * Field Name: SharedByUserID
40394
+ * * Display Name: Shared By User ID
40395
+ * * SQL Data Type: uniqueidentifier
40396
+ * * Related Entity/Foreign Key: Users (vwUsers.ID)
40397
+ * * Description: The user who shared this collection (NULL if shared by owner)
40398
+ */
40399
+ get SharedByUserID() {
40400
+ return this.Get('SharedByUserID');
40401
+ }
40402
+ set SharedByUserID(value) {
40403
+ this.Set('SharedByUserID', value);
40404
+ }
40405
+ /**
40406
+ * * Field Name: __mj_CreatedAt
40407
+ * * Display Name: Created At
40408
+ * * SQL Data Type: datetimeoffset
40409
+ * * Default Value: getutcdate()
40410
+ */
40411
+ get __mj_CreatedAt() {
40412
+ return this.Get('__mj_CreatedAt');
40413
+ }
40414
+ /**
40415
+ * * Field Name: __mj_UpdatedAt
40416
+ * * Display Name: Updated At
40417
+ * * SQL Data Type: datetimeoffset
40418
+ * * Default Value: getutcdate()
40419
+ */
40420
+ get __mj_UpdatedAt() {
40421
+ return this.Get('__mj_UpdatedAt');
40422
+ }
40423
+ /**
40424
+ * * Field Name: Collection
40425
+ * * Display Name: Collection
40426
+ * * SQL Data Type: nvarchar(255)
40427
+ */
40428
+ get Collection() {
40429
+ return this.Get('Collection');
40430
+ }
40431
+ /**
40432
+ * * Field Name: User
40433
+ * * Display Name: User
40434
+ * * SQL Data Type: nvarchar(100)
40435
+ */
40436
+ get User() {
40437
+ return this.Get('User');
40438
+ }
40439
+ /**
40440
+ * * Field Name: SharedByUser
40441
+ * * Display Name: Shared By User
40442
+ * * SQL Data Type: nvarchar(100)
40443
+ */
40444
+ get SharedByUser() {
40445
+ return this.Get('SharedByUser');
40446
+ }
40447
+ };
40448
+ exports.CollectionPermissionEntity = CollectionPermissionEntity;
40449
+ exports.CollectionPermissionEntity = CollectionPermissionEntity = __decorate([
40450
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: Collection Permissions')
40451
+ ], CollectionPermissionEntity);
39613
40452
  /**
39614
40453
  * MJ: Collections - strongly typed entity sub-class
39615
40454
  * * Schema: __mj
@@ -39754,6 +40593,19 @@ let CollectionEntity = class CollectionEntity extends core_1.BaseEntity {
39754
40593
  return this.Get('__mj_UpdatedAt');
39755
40594
  }
39756
40595
  /**
40596
+ * * Field Name: OwnerID
40597
+ * * Display Name: Owner ID
40598
+ * * SQL Data Type: uniqueidentifier
40599
+ * * Related Entity/Foreign Key: Users (vwUsers.ID)
40600
+ * * Description: The user who owns this collection and has full permissions
40601
+ */
40602
+ get OwnerID() {
40603
+ return this.Get('OwnerID');
40604
+ }
40605
+ set OwnerID(value) {
40606
+ this.Set('OwnerID', value);
40607
+ }
40608
+ /**
39757
40609
  * * Field Name: Environment
39758
40610
  * * Display Name: Environment
39759
40611
  * * SQL Data Type: nvarchar(255)
@@ -39770,6 +40622,14 @@ let CollectionEntity = class CollectionEntity extends core_1.BaseEntity {
39770
40622
  return this.Get('Parent');
39771
40623
  }
39772
40624
  /**
40625
+ * * Field Name: Owner
40626
+ * * Display Name: Owner
40627
+ * * SQL Data Type: nvarchar(100)
40628
+ */
40629
+ get Owner() {
40630
+ return this.Get('Owner');
40631
+ }
40632
+ /**
39773
40633
  * * Field Name: RootParentID
39774
40634
  * * Display Name: Root Parent ID
39775
40635
  * * SQL Data Type: uniqueidentifier
@@ -42815,6 +43675,808 @@ exports.ReportVersionEntity = ReportVersionEntity;
42815
43675
  exports.ReportVersionEntity = ReportVersionEntity = __decorate([
42816
43676
  (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: Report Versions')
42817
43677
  ], ReportVersionEntity);
43678
+ /**
43679
+ * MJ: Scheduled Job Runs - strongly typed entity sub-class
43680
+ * * Schema: __mj
43681
+ * * Base Table: ScheduledJobRun
43682
+ * * Base View: vwScheduledJobRuns
43683
+ * * @description Records execution history for scheduled jobs. Provides uniform tracking across all job types. Each record represents one execution attempt of a scheduled job.
43684
+ * * Primary Key: ID
43685
+ * @extends {BaseEntity}
43686
+ * @class
43687
+ * @public
43688
+ */
43689
+ let ScheduledJobRunEntity = class ScheduledJobRunEntity extends core_1.BaseEntity {
43690
+ /**
43691
+ * Loads the MJ: Scheduled Job Runs record from the database
43692
+ * @param ID: string - primary key value to load the MJ: Scheduled Job Runs record.
43693
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
43694
+ * @returns {Promise<boolean>} - true if successful, false otherwise
43695
+ * @public
43696
+ * @async
43697
+ * @memberof ScheduledJobRunEntity
43698
+ * @method
43699
+ * @override
43700
+ */
43701
+ async Load(ID, EntityRelationshipsToLoad) {
43702
+ const compositeKey = new core_1.CompositeKey();
43703
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
43704
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
43705
+ }
43706
+ /**
43707
+ * Validate() method override for MJ: Scheduled Job Runs entity. This is an auto-generated method that invokes the generated validators for this entity for the following fields:
43708
+ * * Details: This rule ensures that if the Details field is not empty, it must contain a valid JSON value.
43709
+ * @public
43710
+ * @method
43711
+ * @override
43712
+ */
43713
+ Validate() {
43714
+ const result = super.Validate();
43715
+ this.ValidateDetailsAsJson(result);
43716
+ result.Success = result.Success && (result.Errors.length === 0);
43717
+ return result;
43718
+ }
43719
+ /**
43720
+ * This rule ensures that if the Details field is not empty, it must contain a valid JSON value.
43721
+ * @param result - the ValidationResult object to add any errors or warnings to
43722
+ * @public
43723
+ * @method
43724
+ */
43725
+ ValidateDetailsAsJson(result) {
43726
+ if (this.Details != null) {
43727
+ try {
43728
+ JSON.parse(this.Details);
43729
+ }
43730
+ catch (e) {
43731
+ result.Errors.push(new core_1.ValidationErrorInfo("Details", "Details must be a valid JSON if provided.", this.Details, core_1.ValidationErrorType.Failure));
43732
+ }
43733
+ }
43734
+ }
43735
+ /**
43736
+ * * Field Name: ID
43737
+ * * Display Name: ID
43738
+ * * SQL Data Type: uniqueidentifier
43739
+ * * Default Value: newsequentialid()
43740
+ */
43741
+ get ID() {
43742
+ return this.Get('ID');
43743
+ }
43744
+ set ID(value) {
43745
+ this.Set('ID', value);
43746
+ }
43747
+ /**
43748
+ * * Field Name: ScheduledJobID
43749
+ * * Display Name: Scheduled Job ID
43750
+ * * SQL Data Type: uniqueidentifier
43751
+ * * Related Entity/Foreign Key: MJ: Scheduled Jobs (vwScheduledJobs.ID)
43752
+ */
43753
+ get ScheduledJobID() {
43754
+ return this.Get('ScheduledJobID');
43755
+ }
43756
+ set ScheduledJobID(value) {
43757
+ this.Set('ScheduledJobID', value);
43758
+ }
43759
+ /**
43760
+ * * Field Name: StartedAt
43761
+ * * Display Name: Started At
43762
+ * * SQL Data Type: datetimeoffset
43763
+ * * Default Value: sysdatetimeoffset()
43764
+ * * Description: Timestamp when this job execution began. Set immediately before calling the job plugin's Execute method.
43765
+ */
43766
+ get StartedAt() {
43767
+ return this.Get('StartedAt');
43768
+ }
43769
+ set StartedAt(value) {
43770
+ this.Set('StartedAt', value);
43771
+ }
43772
+ /**
43773
+ * * Field Name: CompletedAt
43774
+ * * Display Name: Completed At
43775
+ * * SQL Data Type: datetimeoffset
43776
+ * * Description: Timestamp when this job execution completed (successfully or with failure). NULL while the job is still running.
43777
+ */
43778
+ get CompletedAt() {
43779
+ return this.Get('CompletedAt');
43780
+ }
43781
+ set CompletedAt(value) {
43782
+ this.Set('CompletedAt', value);
43783
+ }
43784
+ /**
43785
+ * * Field Name: Status
43786
+ * * Display Name: Status
43787
+ * * SQL Data Type: nvarchar(20)
43788
+ * * Default Value: Running
43789
+ * * Value List Type: List
43790
+ * * Possible Values
43791
+ * * Running
43792
+ * * Timeout
43793
+ * * Completed
43794
+ * * Cancelled
43795
+ * * Failed
43796
+ * * Description: Current status of the job execution. Running=currently executing, Completed=finished (check Success for outcome), Failed=exception during execution, Cancelled=manually cancelled, Timeout=exceeded maximum execution time.
43797
+ */
43798
+ get Status() {
43799
+ return this.Get('Status');
43800
+ }
43801
+ set Status(value) {
43802
+ this.Set('Status', value);
43803
+ }
43804
+ /**
43805
+ * * Field Name: Success
43806
+ * * Display Name: Success
43807
+ * * SQL Data Type: bit
43808
+ * * Description: Whether the job execution completed successfully. NULL while running, TRUE if successful, FALSE if failed. This is the job-level success from the plugin's Execute method, separate from domain-specific success tracking.
43809
+ */
43810
+ get Success() {
43811
+ return this.Get('Success');
43812
+ }
43813
+ set Success(value) {
43814
+ this.Set('Success', value);
43815
+ }
43816
+ /**
43817
+ * * Field Name: ErrorMessage
43818
+ * * Display Name: Error Message
43819
+ * * SQL Data Type: nvarchar(MAX)
43820
+ * * Description: Error message if the job failed. NULL for successful runs. Contains exception messages or error details from the plugin's Execute method.
43821
+ */
43822
+ get ErrorMessage() {
43823
+ return this.Get('ErrorMessage');
43824
+ }
43825
+ set ErrorMessage(value) {
43826
+ this.Set('ErrorMessage', value);
43827
+ }
43828
+ /**
43829
+ * * Field Name: Details
43830
+ * * Display Name: Details
43831
+ * * SQL Data Type: nvarchar(MAX)
43832
+ * * Description: Job-type specific execution details stored as JSON. May include references to domain-specific run records (e.g., {"AgentRunID": "...", "TokensUsed": 5000}), performance metrics, or other execution metadata. Schema is defined by the job type plugin.
43833
+ */
43834
+ get Details() {
43835
+ return this.Get('Details');
43836
+ }
43837
+ set Details(value) {
43838
+ this.Set('Details', value);
43839
+ }
43840
+ /**
43841
+ * * Field Name: ExecutedByUserID
43842
+ * * Display Name: Executed By User ID
43843
+ * * SQL Data Type: uniqueidentifier
43844
+ * * Related Entity/Foreign Key: Users (vwUsers.ID)
43845
+ * * Description: User context under which the job was executed. Typically the OwnerUserID from the schedule, but can be overridden in job-specific configuration.
43846
+ */
43847
+ get ExecutedByUserID() {
43848
+ return this.Get('ExecutedByUserID');
43849
+ }
43850
+ set ExecutedByUserID(value) {
43851
+ this.Set('ExecutedByUserID', value);
43852
+ }
43853
+ /**
43854
+ * * Field Name: QueuedAt
43855
+ * * Display Name: Queued At
43856
+ * * SQL Data Type: datetimeoffset
43857
+ * * Description: Timestamp when this execution was queued (for ConcurrencyMode=Queue). NULL for immediate executions. When set, indicates this run is waiting for a previous execution to complete before starting.
43858
+ */
43859
+ get QueuedAt() {
43860
+ return this.Get('QueuedAt');
43861
+ }
43862
+ set QueuedAt(value) {
43863
+ this.Set('QueuedAt', value);
43864
+ }
43865
+ /**
43866
+ * * Field Name: __mj_CreatedAt
43867
+ * * Display Name: Created At
43868
+ * * SQL Data Type: datetimeoffset
43869
+ * * Default Value: getutcdate()
43870
+ */
43871
+ get __mj_CreatedAt() {
43872
+ return this.Get('__mj_CreatedAt');
43873
+ }
43874
+ /**
43875
+ * * Field Name: __mj_UpdatedAt
43876
+ * * Display Name: Updated At
43877
+ * * SQL Data Type: datetimeoffset
43878
+ * * Default Value: getutcdate()
43879
+ */
43880
+ get __mj_UpdatedAt() {
43881
+ return this.Get('__mj_UpdatedAt');
43882
+ }
43883
+ /**
43884
+ * * Field Name: ScheduledJob
43885
+ * * Display Name: Scheduled Job
43886
+ * * SQL Data Type: nvarchar(200)
43887
+ */
43888
+ get ScheduledJob() {
43889
+ return this.Get('ScheduledJob');
43890
+ }
43891
+ /**
43892
+ * * Field Name: ExecutedByUser
43893
+ * * Display Name: Executed By User
43894
+ * * SQL Data Type: nvarchar(100)
43895
+ */
43896
+ get ExecutedByUser() {
43897
+ return this.Get('ExecutedByUser');
43898
+ }
43899
+ };
43900
+ exports.ScheduledJobRunEntity = ScheduledJobRunEntity;
43901
+ exports.ScheduledJobRunEntity = ScheduledJobRunEntity = __decorate([
43902
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: Scheduled Job Runs')
43903
+ ], ScheduledJobRunEntity);
43904
+ /**
43905
+ * MJ: Scheduled Job Types - strongly typed entity sub-class
43906
+ * * Schema: __mj
43907
+ * * Base Table: ScheduledJobType
43908
+ * * Base View: vwScheduledJobTypes
43909
+ * * @description Defines types of schedulable jobs and their plugin implementations. Each job type represents a different kind of work that can be scheduled (e.g., Agents, Actions, Reports).
43910
+ * * Primary Key: ID
43911
+ * @extends {BaseEntity}
43912
+ * @class
43913
+ * @public
43914
+ */
43915
+ let ScheduledJobTypeEntity = class ScheduledJobTypeEntity extends core_1.BaseEntity {
43916
+ /**
43917
+ * Loads the MJ: Scheduled Job Types record from the database
43918
+ * @param ID: string - primary key value to load the MJ: Scheduled Job Types record.
43919
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
43920
+ * @returns {Promise<boolean>} - true if successful, false otherwise
43921
+ * @public
43922
+ * @async
43923
+ * @memberof ScheduledJobTypeEntity
43924
+ * @method
43925
+ * @override
43926
+ */
43927
+ async Load(ID, EntityRelationshipsToLoad) {
43928
+ const compositeKey = new core_1.CompositeKey();
43929
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
43930
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
43931
+ }
43932
+ /**
43933
+ * * Field Name: ID
43934
+ * * Display Name: ID
43935
+ * * SQL Data Type: uniqueidentifier
43936
+ * * Default Value: newsequentialid()
43937
+ */
43938
+ get ID() {
43939
+ return this.Get('ID');
43940
+ }
43941
+ set ID(value) {
43942
+ this.Set('ID', value);
43943
+ }
43944
+ /**
43945
+ * * Field Name: Name
43946
+ * * Display Name: Name
43947
+ * * SQL Data Type: nvarchar(100)
43948
+ * * Description: Unique name identifying this job type (e.g., Agent, Action, Report).
43949
+ */
43950
+ get Name() {
43951
+ return this.Get('Name');
43952
+ }
43953
+ set Name(value) {
43954
+ this.Set('Name', value);
43955
+ }
43956
+ /**
43957
+ * * Field Name: Description
43958
+ * * Display Name: Description
43959
+ * * SQL Data Type: nvarchar(MAX)
43960
+ * * Description: Human-readable description of what this job type does and when it should be used.
43961
+ */
43962
+ get Description() {
43963
+ return this.Get('Description');
43964
+ }
43965
+ set Description(value) {
43966
+ this.Set('Description', value);
43967
+ }
43968
+ /**
43969
+ * * Field Name: DriverClass
43970
+ * * Display Name: Driver Class
43971
+ * * SQL Data Type: nvarchar(255)
43972
+ * * Description: TypeScript class name that implements BaseScheduledJob for this job type. Used by ClassFactory to instantiate the correct plugin at runtime.
43973
+ */
43974
+ get DriverClass() {
43975
+ return this.Get('DriverClass');
43976
+ }
43977
+ set DriverClass(value) {
43978
+ this.Set('DriverClass', value);
43979
+ }
43980
+ /**
43981
+ * * Field Name: DomainRunEntity
43982
+ * * Display Name: Domain Run Entity
43983
+ * * SQL Data Type: nvarchar(255)
43984
+ * * Description: Name of the entity that stores execution records for this job type (e.g., "MJ: AI Agent Runs", "Action Execution Logs"). Used for generic UI linking to domain-specific run records. NULL if job type uses ScheduledJobRun as its only execution record.
43985
+ */
43986
+ get DomainRunEntity() {
43987
+ return this.Get('DomainRunEntity');
43988
+ }
43989
+ set DomainRunEntity(value) {
43990
+ this.Set('DomainRunEntity', value);
43991
+ }
43992
+ /**
43993
+ * * Field Name: DomainRunEntityFKey
43994
+ * * Display Name: Domain Run Entity F Key
43995
+ * * SQL Data Type: nvarchar(100)
43996
+ * * Description: Name of the foreign key field in the DomainRunEntity that links back to ScheduledJobRun (e.g., "ScheduleID"). Used for querying related domain runs. NULL if DomainRunEntity is NULL.
43997
+ */
43998
+ get DomainRunEntityFKey() {
43999
+ return this.Get('DomainRunEntityFKey');
44000
+ }
44001
+ set DomainRunEntityFKey(value) {
44002
+ this.Set('DomainRunEntityFKey', value);
44003
+ }
44004
+ /**
44005
+ * * Field Name: NotificationsAvailable
44006
+ * * Display Name: Notifications Available
44007
+ * * SQL Data Type: bit
44008
+ * * Default Value: 1
44009
+ * * Description: Indicates whether this job type supports sending notifications on completion or failure.
44010
+ */
44011
+ get NotificationsAvailable() {
44012
+ return this.Get('NotificationsAvailable');
44013
+ }
44014
+ set NotificationsAvailable(value) {
44015
+ this.Set('NotificationsAvailable', value);
44016
+ }
44017
+ /**
44018
+ * * Field Name: __mj_CreatedAt
44019
+ * * Display Name: Created At
44020
+ * * SQL Data Type: datetimeoffset
44021
+ * * Default Value: getutcdate()
44022
+ */
44023
+ get __mj_CreatedAt() {
44024
+ return this.Get('__mj_CreatedAt');
44025
+ }
44026
+ /**
44027
+ * * Field Name: __mj_UpdatedAt
44028
+ * * Display Name: Updated At
44029
+ * * SQL Data Type: datetimeoffset
44030
+ * * Default Value: getutcdate()
44031
+ */
44032
+ get __mj_UpdatedAt() {
44033
+ return this.Get('__mj_UpdatedAt');
44034
+ }
44035
+ };
44036
+ exports.ScheduledJobTypeEntity = ScheduledJobTypeEntity;
44037
+ exports.ScheduledJobTypeEntity = ScheduledJobTypeEntity = __decorate([
44038
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: Scheduled Job Types')
44039
+ ], ScheduledJobTypeEntity);
44040
+ /**
44041
+ * MJ: Scheduled Jobs - strongly typed entity sub-class
44042
+ * * Schema: __mj
44043
+ * * Base Table: ScheduledJob
44044
+ * * Base View: vwScheduledJobs
44045
+ * * @description Defines schedules for automated job execution across all schedulable types. Each record represents a scheduled job with its cron expression, configuration, and execution tracking.
44046
+ * * Primary Key: ID
44047
+ * @extends {BaseEntity}
44048
+ * @class
44049
+ * @public
44050
+ */
44051
+ let ScheduledJobEntity = class ScheduledJobEntity extends core_1.BaseEntity {
44052
+ /**
44053
+ * Loads the MJ: Scheduled Jobs record from the database
44054
+ * @param ID: string - primary key value to load the MJ: Scheduled Jobs record.
44055
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
44056
+ * @returns {Promise<boolean>} - true if successful, false otherwise
44057
+ * @public
44058
+ * @async
44059
+ * @memberof ScheduledJobEntity
44060
+ * @method
44061
+ * @override
44062
+ */
44063
+ async Load(ID, EntityRelationshipsToLoad) {
44064
+ const compositeKey = new core_1.CompositeKey();
44065
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
44066
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
44067
+ }
44068
+ /**
44069
+ * Validate() method override for MJ: Scheduled Jobs entity. This is an auto-generated method that invokes the generated validators for this entity for the following fields:
44070
+ * * Configuration: This rule ensures that if the Configuration field has a value, it must be valid JSON. If the Configuration field is empty or not set, this rule does not apply.
44071
+ * @public
44072
+ * @method
44073
+ * @override
44074
+ */
44075
+ Validate() {
44076
+ const result = super.Validate();
44077
+ this.ValidateConfigurationIsJson(result);
44078
+ result.Success = result.Success && (result.Errors.length === 0);
44079
+ return result;
44080
+ }
44081
+ /**
44082
+ * This rule ensures that if the Configuration field has a value, it must be valid JSON. If the Configuration field is empty or not set, this rule does not apply.
44083
+ * @param result - the ValidationResult object to add any errors or warnings to
44084
+ * @public
44085
+ * @method
44086
+ */
44087
+ ValidateConfigurationIsJson(result) {
44088
+ if (this.Configuration != null) {
44089
+ try {
44090
+ JSON.parse(this.Configuration);
44091
+ }
44092
+ catch (e) {
44093
+ result.Errors.push(new core_1.ValidationErrorInfo("Configuration", "If specified, Configuration must be valid JSON.", this.Configuration, core_1.ValidationErrorType.Failure));
44094
+ }
44095
+ }
44096
+ }
44097
+ /**
44098
+ * * Field Name: ID
44099
+ * * Display Name: ID
44100
+ * * SQL Data Type: uniqueidentifier
44101
+ * * Default Value: newsequentialid()
44102
+ */
44103
+ get ID() {
44104
+ return this.Get('ID');
44105
+ }
44106
+ set ID(value) {
44107
+ this.Set('ID', value);
44108
+ }
44109
+ /**
44110
+ * * Field Name: JobTypeID
44111
+ * * Display Name: Job Type ID
44112
+ * * SQL Data Type: uniqueidentifier
44113
+ * * Related Entity/Foreign Key: MJ: Scheduled Job Types (vwScheduledJobTypes.ID)
44114
+ */
44115
+ get JobTypeID() {
44116
+ return this.Get('JobTypeID');
44117
+ }
44118
+ set JobTypeID(value) {
44119
+ this.Set('JobTypeID', value);
44120
+ }
44121
+ /**
44122
+ * * Field Name: Name
44123
+ * * Display Name: Name
44124
+ * * SQL Data Type: nvarchar(200)
44125
+ * * Description: Human-readable name for this scheduled job. Should clearly identify what the job does.
44126
+ */
44127
+ get Name() {
44128
+ return this.Get('Name');
44129
+ }
44130
+ set Name(value) {
44131
+ this.Set('Name', value);
44132
+ }
44133
+ /**
44134
+ * * Field Name: Description
44135
+ * * Display Name: Description
44136
+ * * SQL Data Type: nvarchar(MAX)
44137
+ * * Description: Detailed description of the job's purpose, what it does, and any important notes about its execution.
44138
+ */
44139
+ get Description() {
44140
+ return this.Get('Description');
44141
+ }
44142
+ set Description(value) {
44143
+ this.Set('Description', value);
44144
+ }
44145
+ /**
44146
+ * * Field Name: CronExpression
44147
+ * * Display Name: Cron Expression
44148
+ * * SQL Data Type: nvarchar(120)
44149
+ * * Description: Cron expression defining when the job should execute (e.g., "0 30 9 * * MON-FRI" for weekdays at 9:30 AM). Uses standard cron syntax with seconds precision.
44150
+ */
44151
+ get CronExpression() {
44152
+ return this.Get('CronExpression');
44153
+ }
44154
+ set CronExpression(value) {
44155
+ this.Set('CronExpression', value);
44156
+ }
44157
+ /**
44158
+ * * Field Name: Timezone
44159
+ * * Display Name: Timezone
44160
+ * * SQL Data Type: nvarchar(64)
44161
+ * * Default Value: UTC
44162
+ * * Description: IANA timezone identifier for interpreting the cron expression (e.g., "America/Chicago", "UTC"). Ensures consistent scheduling across different server locations.
44163
+ */
44164
+ get Timezone() {
44165
+ return this.Get('Timezone');
44166
+ }
44167
+ set Timezone(value) {
44168
+ this.Set('Timezone', value);
44169
+ }
44170
+ /**
44171
+ * * Field Name: StartAt
44172
+ * * Display Name: Start At
44173
+ * * SQL Data Type: datetimeoffset
44174
+ * * Description: Optional start date/time for when this schedule becomes active. Job will not execute before this time. NULL means active immediately upon creation.
44175
+ */
44176
+ get StartAt() {
44177
+ return this.Get('StartAt');
44178
+ }
44179
+ set StartAt(value) {
44180
+ this.Set('StartAt', value);
44181
+ }
44182
+ /**
44183
+ * * Field Name: EndAt
44184
+ * * Display Name: End At
44185
+ * * SQL Data Type: datetimeoffset
44186
+ * * Description: Optional end date/time for when this schedule expires. Job will not execute after this time. NULL means no expiration.
44187
+ */
44188
+ get EndAt() {
44189
+ return this.Get('EndAt');
44190
+ }
44191
+ set EndAt(value) {
44192
+ this.Set('EndAt', value);
44193
+ }
44194
+ /**
44195
+ * * Field Name: Status
44196
+ * * Display Name: Status
44197
+ * * SQL Data Type: nvarchar(20)
44198
+ * * Default Value: Pending
44199
+ * * Value List Type: List
44200
+ * * Possible Values
44201
+ * * Paused
44202
+ * * Disabled
44203
+ * * Expired
44204
+ * * Pending
44205
+ * * Active
44206
+ * * Description: Current status of the schedule. Pending=created but not yet active, Active=currently running on schedule, Paused=temporarily stopped, Disabled=manually disabled, Expired=past EndAt date.
44207
+ */
44208
+ get Status() {
44209
+ return this.Get('Status');
44210
+ }
44211
+ set Status(value) {
44212
+ this.Set('Status', value);
44213
+ }
44214
+ /**
44215
+ * * Field Name: Configuration
44216
+ * * Display Name: Configuration
44217
+ * * SQL Data Type: nvarchar(MAX)
44218
+ * * Description: Job-type specific configuration stored as JSON. Schema is defined by the ScheduledJobType plugin. For Agents: includes AgentID, StartingPayload, InitialMessage, etc. For Actions: includes ActionID and parameter mappings.
44219
+ */
44220
+ get Configuration() {
44221
+ return this.Get('Configuration');
44222
+ }
44223
+ set Configuration(value) {
44224
+ this.Set('Configuration', value);
44225
+ }
44226
+ /**
44227
+ * * Field Name: OwnerUserID
44228
+ * * Display Name: Owner User ID
44229
+ * * SQL Data Type: uniqueidentifier
44230
+ * * Related Entity/Foreign Key: Users (vwUsers.ID)
44231
+ * * Description: User who owns this schedule. Used as the execution context if no specific user is configured in the job-specific configuration.
44232
+ */
44233
+ get OwnerUserID() {
44234
+ return this.Get('OwnerUserID');
44235
+ }
44236
+ set OwnerUserID(value) {
44237
+ this.Set('OwnerUserID', value);
44238
+ }
44239
+ /**
44240
+ * * Field Name: LastRunAt
44241
+ * * Display Name: Last Run At
44242
+ * * SQL Data Type: datetimeoffset
44243
+ * * Description: Timestamp of the most recent execution. Updated after each run. Used for monitoring and dashboard displays.
44244
+ */
44245
+ get LastRunAt() {
44246
+ return this.Get('LastRunAt');
44247
+ }
44248
+ set LastRunAt(value) {
44249
+ this.Set('LastRunAt', value);
44250
+ }
44251
+ /**
44252
+ * * Field Name: NextRunAt
44253
+ * * Display Name: Next Run At
44254
+ * * SQL Data Type: datetimeoffset
44255
+ * * Description: Calculated timestamp of when this job should next execute based on the cron expression. Updated after each run. Used by scheduler to determine which jobs are due.
44256
+ */
44257
+ get NextRunAt() {
44258
+ return this.Get('NextRunAt');
44259
+ }
44260
+ set NextRunAt(value) {
44261
+ this.Set('NextRunAt', value);
44262
+ }
44263
+ /**
44264
+ * * Field Name: RunCount
44265
+ * * Display Name: Run Count
44266
+ * * SQL Data Type: int
44267
+ * * Default Value: 0
44268
+ * * Description: Total number of times this schedule has been executed, including both successful and failed runs.
44269
+ */
44270
+ get RunCount() {
44271
+ return this.Get('RunCount');
44272
+ }
44273
+ set RunCount(value) {
44274
+ this.Set('RunCount', value);
44275
+ }
44276
+ /**
44277
+ * * Field Name: SuccessCount
44278
+ * * Display Name: Success Count
44279
+ * * SQL Data Type: int
44280
+ * * Default Value: 0
44281
+ * * Description: Number of times this schedule has executed successfully (Success = true in ScheduledJobRun).
44282
+ */
44283
+ get SuccessCount() {
44284
+ return this.Get('SuccessCount');
44285
+ }
44286
+ set SuccessCount(value) {
44287
+ this.Set('SuccessCount', value);
44288
+ }
44289
+ /**
44290
+ * * Field Name: FailureCount
44291
+ * * Display Name: Failure Count
44292
+ * * SQL Data Type: int
44293
+ * * Default Value: 0
44294
+ * * Description: Number of times this schedule has executed but failed (Success = false in ScheduledJobRun).
44295
+ */
44296
+ get FailureCount() {
44297
+ return this.Get('FailureCount');
44298
+ }
44299
+ set FailureCount(value) {
44300
+ this.Set('FailureCount', value);
44301
+ }
44302
+ /**
44303
+ * * Field Name: NotifyOnSuccess
44304
+ * * Display Name: Notify On Success
44305
+ * * SQL Data Type: bit
44306
+ * * Default Value: 0
44307
+ * * Description: Whether to send notifications when the job completes successfully.
44308
+ */
44309
+ get NotifyOnSuccess() {
44310
+ return this.Get('NotifyOnSuccess');
44311
+ }
44312
+ set NotifyOnSuccess(value) {
44313
+ this.Set('NotifyOnSuccess', value);
44314
+ }
44315
+ /**
44316
+ * * Field Name: NotifyOnFailure
44317
+ * * Display Name: Notify On Failure
44318
+ * * SQL Data Type: bit
44319
+ * * Default Value: 1
44320
+ * * Description: Whether to send notifications when the job fails. Defaults to true for alerting on failures.
44321
+ */
44322
+ get NotifyOnFailure() {
44323
+ return this.Get('NotifyOnFailure');
44324
+ }
44325
+ set NotifyOnFailure(value) {
44326
+ this.Set('NotifyOnFailure', value);
44327
+ }
44328
+ /**
44329
+ * * Field Name: NotifyUserID
44330
+ * * Display Name: Notify User ID
44331
+ * * SQL Data Type: uniqueidentifier
44332
+ * * Related Entity/Foreign Key: Users (vwUsers.ID)
44333
+ * * Description: User to notify about job execution results. If NULL and notifications are enabled, falls back to OwnerUserID.
44334
+ */
44335
+ get NotifyUserID() {
44336
+ return this.Get('NotifyUserID');
44337
+ }
44338
+ set NotifyUserID(value) {
44339
+ this.Set('NotifyUserID', value);
44340
+ }
44341
+ /**
44342
+ * * Field Name: NotifyViaEmail
44343
+ * * Display Name: Notify Via Email
44344
+ * * SQL Data Type: bit
44345
+ * * Default Value: 0
44346
+ * * Description: Whether to send email notifications. Requires NotifyOnSuccess or NotifyOnFailure to also be enabled.
44347
+ */
44348
+ get NotifyViaEmail() {
44349
+ return this.Get('NotifyViaEmail');
44350
+ }
44351
+ set NotifyViaEmail(value) {
44352
+ this.Set('NotifyViaEmail', value);
44353
+ }
44354
+ /**
44355
+ * * Field Name: NotifyViaInApp
44356
+ * * Display Name: Notify Via In App
44357
+ * * SQL Data Type: bit
44358
+ * * Default Value: 1
44359
+ * * Description: Whether to send in-app notifications. Requires NotifyOnSuccess or NotifyOnFailure to also be enabled. Defaults to true.
44360
+ */
44361
+ get NotifyViaInApp() {
44362
+ return this.Get('NotifyViaInApp');
44363
+ }
44364
+ set NotifyViaInApp(value) {
44365
+ this.Set('NotifyViaInApp', value);
44366
+ }
44367
+ /**
44368
+ * * Field Name: LockToken
44369
+ * * Display Name: Lock Token
44370
+ * * SQL Data Type: uniqueidentifier
44371
+ * * Description: Unique token used for distributed locking across multiple server instances. Set when a server claims the job for execution. Prevents duplicate executions in multi-server environments.
44372
+ */
44373
+ get LockToken() {
44374
+ return this.Get('LockToken');
44375
+ }
44376
+ set LockToken(value) {
44377
+ this.Set('LockToken', value);
44378
+ }
44379
+ /**
44380
+ * * Field Name: LockedAt
44381
+ * * Display Name: Locked At
44382
+ * * SQL Data Type: datetimeoffset
44383
+ * * Description: Timestamp when the lock was acquired. Used with ExpectedCompletionAt to detect stale locks from crashed server instances.
44384
+ */
44385
+ get LockedAt() {
44386
+ return this.Get('LockedAt');
44387
+ }
44388
+ set LockedAt(value) {
44389
+ this.Set('LockedAt', value);
44390
+ }
44391
+ /**
44392
+ * * Field Name: LockedByInstance
44393
+ * * Display Name: Locked By Instance
44394
+ * * SQL Data Type: nvarchar(255)
44395
+ * * Description: Identifier of the server instance that currently holds the lock (e.g., "hostname-12345"). Used for troubleshooting and monitoring which server is executing which job.
44396
+ */
44397
+ get LockedByInstance() {
44398
+ return this.Get('LockedByInstance');
44399
+ }
44400
+ set LockedByInstance(value) {
44401
+ this.Set('LockedByInstance', value);
44402
+ }
44403
+ /**
44404
+ * * Field Name: ExpectedCompletionAt
44405
+ * * Display Name: Expected Completion At
44406
+ * * SQL Data Type: datetimeoffset
44407
+ * * Description: Expected completion time for the current execution. If current time exceeds this and lock still exists, the lock is considered stale and can be claimed by another instance. Handles crashed server cleanup.
44408
+ */
44409
+ get ExpectedCompletionAt() {
44410
+ return this.Get('ExpectedCompletionAt');
44411
+ }
44412
+ set ExpectedCompletionAt(value) {
44413
+ this.Set('ExpectedCompletionAt', value);
44414
+ }
44415
+ /**
44416
+ * * Field Name: ConcurrencyMode
44417
+ * * Display Name: Concurrency Mode
44418
+ * * SQL Data Type: nvarchar(20)
44419
+ * * Default Value: Skip
44420
+ * * Value List Type: List
44421
+ * * Possible Values
44422
+ * * Queue
44423
+ * * Concurrent
44424
+ * * Skip
44425
+ * * Description: Controls behavior when a new execution is scheduled while a previous execution is still running. Skip=do not start new execution (default), Queue=wait for current to finish then execute, Concurrent=allow multiple simultaneous executions.
44426
+ */
44427
+ get ConcurrencyMode() {
44428
+ return this.Get('ConcurrencyMode');
44429
+ }
44430
+ set ConcurrencyMode(value) {
44431
+ this.Set('ConcurrencyMode', value);
44432
+ }
44433
+ /**
44434
+ * * Field Name: __mj_CreatedAt
44435
+ * * Display Name: Created At
44436
+ * * SQL Data Type: datetimeoffset
44437
+ * * Default Value: getutcdate()
44438
+ */
44439
+ get __mj_CreatedAt() {
44440
+ return this.Get('__mj_CreatedAt');
44441
+ }
44442
+ /**
44443
+ * * Field Name: __mj_UpdatedAt
44444
+ * * Display Name: Updated At
44445
+ * * SQL Data Type: datetimeoffset
44446
+ * * Default Value: getutcdate()
44447
+ */
44448
+ get __mj_UpdatedAt() {
44449
+ return this.Get('__mj_UpdatedAt');
44450
+ }
44451
+ /**
44452
+ * * Field Name: JobType
44453
+ * * Display Name: Job Type
44454
+ * * SQL Data Type: nvarchar(100)
44455
+ */
44456
+ get JobType() {
44457
+ return this.Get('JobType');
44458
+ }
44459
+ /**
44460
+ * * Field Name: OwnerUser
44461
+ * * Display Name: Owner User
44462
+ * * SQL Data Type: nvarchar(100)
44463
+ */
44464
+ get OwnerUser() {
44465
+ return this.Get('OwnerUser');
44466
+ }
44467
+ /**
44468
+ * * Field Name: NotifyUser
44469
+ * * Display Name: Notify User
44470
+ * * SQL Data Type: nvarchar(100)
44471
+ */
44472
+ get NotifyUser() {
44473
+ return this.Get('NotifyUser');
44474
+ }
44475
+ };
44476
+ exports.ScheduledJobEntity = ScheduledJobEntity;
44477
+ exports.ScheduledJobEntity = ScheduledJobEntity = __decorate([
44478
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: Scheduled Jobs')
44479
+ ], ScheduledJobEntity);
42818
44480
  /**
42819
44481
  * MJ: Task Dependencies - strongly typed entity sub-class
42820
44482
  * * Schema: __mj