@memberjunction/core-entities 2.105.0 → 2.107.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.
|
@@ -9,12 +9,12 @@ 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
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.
|
|
13
|
-
exports.
|
|
14
|
-
exports.
|
|
15
|
-
exports.
|
|
16
|
-
exports.
|
|
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;
|
|
12
|
+
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 = exports.ScheduledJobSchema = exports.ScheduledJobTypeSchema = exports.ScheduledJobRunSchema = void 0;
|
|
13
|
+
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 = exports.UserViewRunSchema = exports.UserViewRunDetailSchema = exports.UserViewCategorySchema = void 0;
|
|
14
|
+
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 = exports.CompanyIntegrationRunAPILogEntity = exports.CompanyIntegrationRecordMapEntity = exports.CompanyEntity = void 0;
|
|
15
|
+
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 = exports.ErrorLogEntity = exports.EntitySettingEntity = exports.EntityRelationshipEntity = void 0;
|
|
16
|
+
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.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 = 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 = 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");
|
|
@@ -7692,6 +7692,11 @@ exports.AIAgentRelationshipSchema = zod_1.z.object({
|
|
|
7692
7692
|
* * Display Name: Updated At
|
|
7693
7693
|
* * SQL Data Type: datetimeoffset
|
|
7694
7694
|
* * Default Value: getutcdate()`),
|
|
7695
|
+
SubAgentOutputMapping: zod_1.z.string().nullable().describe(`
|
|
7696
|
+
* * Field Name: SubAgentOutputMapping
|
|
7697
|
+
* * Display Name: Sub Agent Output Mapping
|
|
7698
|
+
* * SQL Data Type: nvarchar(MAX)
|
|
7699
|
+
* * 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.`),
|
|
7695
7700
|
Agent: zod_1.z.string().nullable().describe(`
|
|
7696
7701
|
* * Field Name: Agent
|
|
7697
7702
|
* * Display Name: Agent
|
|
@@ -8089,6 +8094,12 @@ each time the agent processes a prompt step.`),
|
|
|
8089
8094
|
* * Display Name: Comments
|
|
8090
8095
|
* * SQL Data Type: nvarchar(MAX)
|
|
8091
8096
|
* * Description: Human-readable notes and comments about this agent run`),
|
|
8097
|
+
ScheduledJobRunID: zod_1.z.string().nullable().describe(`
|
|
8098
|
+
* * Field Name: ScheduledJobRunID
|
|
8099
|
+
* * Display Name: Scheduled Job Run ID
|
|
8100
|
+
* * SQL Data Type: uniqueidentifier
|
|
8101
|
+
* * Related Entity/Foreign Key: MJ: Scheduled Job Runs (vwScheduledJobRuns.ID)
|
|
8102
|
+
* * 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
8103
|
Agent: zod_1.z.string().nullable().describe(`
|
|
8093
8104
|
* * Field Name: Agent
|
|
8094
8105
|
* * Display Name: Agent
|
|
@@ -11068,6 +11079,321 @@ exports.ReportVersionSchema = zod_1.z.object({
|
|
|
11068
11079
|
* * Display Name: Report
|
|
11069
11080
|
* * SQL Data Type: nvarchar(255)`),
|
|
11070
11081
|
});
|
|
11082
|
+
/**
|
|
11083
|
+
* zod schema definition for the entity MJ: Scheduled Job Runs
|
|
11084
|
+
*/
|
|
11085
|
+
exports.ScheduledJobRunSchema = zod_1.z.object({
|
|
11086
|
+
ID: zod_1.z.string().describe(`
|
|
11087
|
+
* * Field Name: ID
|
|
11088
|
+
* * Display Name: ID
|
|
11089
|
+
* * SQL Data Type: uniqueidentifier
|
|
11090
|
+
* * Default Value: newsequentialid()`),
|
|
11091
|
+
ScheduledJobID: zod_1.z.string().describe(`
|
|
11092
|
+
* * Field Name: ScheduledJobID
|
|
11093
|
+
* * Display Name: Scheduled Job ID
|
|
11094
|
+
* * SQL Data Type: uniqueidentifier
|
|
11095
|
+
* * Related Entity/Foreign Key: MJ: Scheduled Jobs (vwScheduledJobs.ID)`),
|
|
11096
|
+
StartedAt: zod_1.z.date().describe(`
|
|
11097
|
+
* * Field Name: StartedAt
|
|
11098
|
+
* * Display Name: Started At
|
|
11099
|
+
* * SQL Data Type: datetimeoffset
|
|
11100
|
+
* * Default Value: sysdatetimeoffset()
|
|
11101
|
+
* * Description: Timestamp when this job execution began. Set immediately before calling the job plugin's Execute method.`),
|
|
11102
|
+
CompletedAt: zod_1.z.date().nullable().describe(`
|
|
11103
|
+
* * Field Name: CompletedAt
|
|
11104
|
+
* * Display Name: Completed At
|
|
11105
|
+
* * SQL Data Type: datetimeoffset
|
|
11106
|
+
* * Description: Timestamp when this job execution completed (successfully or with failure). NULL while the job is still running.`),
|
|
11107
|
+
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(`
|
|
11108
|
+
* * Field Name: Status
|
|
11109
|
+
* * Display Name: Status
|
|
11110
|
+
* * SQL Data Type: nvarchar(20)
|
|
11111
|
+
* * Default Value: Running
|
|
11112
|
+
* * Value List Type: List
|
|
11113
|
+
* * Possible Values
|
|
11114
|
+
* * Running
|
|
11115
|
+
* * Timeout
|
|
11116
|
+
* * Completed
|
|
11117
|
+
* * Cancelled
|
|
11118
|
+
* * Failed
|
|
11119
|
+
* * 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.`),
|
|
11120
|
+
Success: zod_1.z.boolean().nullable().describe(`
|
|
11121
|
+
* * Field Name: Success
|
|
11122
|
+
* * Display Name: Success
|
|
11123
|
+
* * SQL Data Type: bit
|
|
11124
|
+
* * 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.`),
|
|
11125
|
+
ErrorMessage: zod_1.z.string().nullable().describe(`
|
|
11126
|
+
* * Field Name: ErrorMessage
|
|
11127
|
+
* * Display Name: Error Message
|
|
11128
|
+
* * SQL Data Type: nvarchar(MAX)
|
|
11129
|
+
* * Description: Error message if the job failed. NULL for successful runs. Contains exception messages or error details from the plugin's Execute method.`),
|
|
11130
|
+
Details: zod_1.z.string().nullable().describe(`
|
|
11131
|
+
* * Field Name: Details
|
|
11132
|
+
* * Display Name: Details
|
|
11133
|
+
* * SQL Data Type: nvarchar(MAX)
|
|
11134
|
+
* * 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.`),
|
|
11135
|
+
ExecutedByUserID: zod_1.z.string().nullable().describe(`
|
|
11136
|
+
* * Field Name: ExecutedByUserID
|
|
11137
|
+
* * Display Name: Executed By User ID
|
|
11138
|
+
* * SQL Data Type: uniqueidentifier
|
|
11139
|
+
* * Related Entity/Foreign Key: Users (vwUsers.ID)
|
|
11140
|
+
* * Description: User context under which the job was executed. Typically the OwnerUserID from the schedule, but can be overridden in job-specific configuration.`),
|
|
11141
|
+
QueuedAt: zod_1.z.date().nullable().describe(`
|
|
11142
|
+
* * Field Name: QueuedAt
|
|
11143
|
+
* * Display Name: Queued At
|
|
11144
|
+
* * SQL Data Type: datetimeoffset
|
|
11145
|
+
* * 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.`),
|
|
11146
|
+
__mj_CreatedAt: zod_1.z.date().describe(`
|
|
11147
|
+
* * Field Name: __mj_CreatedAt
|
|
11148
|
+
* * Display Name: Created At
|
|
11149
|
+
* * SQL Data Type: datetimeoffset
|
|
11150
|
+
* * Default Value: getutcdate()`),
|
|
11151
|
+
__mj_UpdatedAt: zod_1.z.date().describe(`
|
|
11152
|
+
* * Field Name: __mj_UpdatedAt
|
|
11153
|
+
* * Display Name: Updated At
|
|
11154
|
+
* * SQL Data Type: datetimeoffset
|
|
11155
|
+
* * Default Value: getutcdate()`),
|
|
11156
|
+
ScheduledJob: zod_1.z.string().describe(`
|
|
11157
|
+
* * Field Name: ScheduledJob
|
|
11158
|
+
* * Display Name: Scheduled Job
|
|
11159
|
+
* * SQL Data Type: nvarchar(200)`),
|
|
11160
|
+
ExecutedByUser: zod_1.z.string().nullable().describe(`
|
|
11161
|
+
* * Field Name: ExecutedByUser
|
|
11162
|
+
* * Display Name: Executed By User
|
|
11163
|
+
* * SQL Data Type: nvarchar(100)`),
|
|
11164
|
+
});
|
|
11165
|
+
/**
|
|
11166
|
+
* zod schema definition for the entity MJ: Scheduled Job Types
|
|
11167
|
+
*/
|
|
11168
|
+
exports.ScheduledJobTypeSchema = zod_1.z.object({
|
|
11169
|
+
ID: zod_1.z.string().describe(`
|
|
11170
|
+
* * Field Name: ID
|
|
11171
|
+
* * Display Name: ID
|
|
11172
|
+
* * SQL Data Type: uniqueidentifier
|
|
11173
|
+
* * Default Value: newsequentialid()`),
|
|
11174
|
+
Name: zod_1.z.string().describe(`
|
|
11175
|
+
* * Field Name: Name
|
|
11176
|
+
* * Display Name: Name
|
|
11177
|
+
* * SQL Data Type: nvarchar(100)
|
|
11178
|
+
* * Description: Unique name identifying this job type (e.g., Agent, Action, Report).`),
|
|
11179
|
+
Description: zod_1.z.string().nullable().describe(`
|
|
11180
|
+
* * Field Name: Description
|
|
11181
|
+
* * Display Name: Description
|
|
11182
|
+
* * SQL Data Type: nvarchar(MAX)
|
|
11183
|
+
* * Description: Human-readable description of what this job type does and when it should be used.`),
|
|
11184
|
+
DriverClass: zod_1.z.string().describe(`
|
|
11185
|
+
* * Field Name: DriverClass
|
|
11186
|
+
* * Display Name: Driver Class
|
|
11187
|
+
* * SQL Data Type: nvarchar(255)
|
|
11188
|
+
* * Description: TypeScript class name that implements BaseScheduledJob for this job type. Used by ClassFactory to instantiate the correct plugin at runtime.`),
|
|
11189
|
+
DomainRunEntity: zod_1.z.string().nullable().describe(`
|
|
11190
|
+
* * Field Name: DomainRunEntity
|
|
11191
|
+
* * Display Name: Domain Run Entity
|
|
11192
|
+
* * SQL Data Type: nvarchar(255)
|
|
11193
|
+
* * 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.`),
|
|
11194
|
+
DomainRunEntityFKey: zod_1.z.string().nullable().describe(`
|
|
11195
|
+
* * Field Name: DomainRunEntityFKey
|
|
11196
|
+
* * Display Name: Domain Run Entity F Key
|
|
11197
|
+
* * SQL Data Type: nvarchar(100)
|
|
11198
|
+
* * 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.`),
|
|
11199
|
+
NotificationsAvailable: zod_1.z.boolean().describe(`
|
|
11200
|
+
* * Field Name: NotificationsAvailable
|
|
11201
|
+
* * Display Name: Notifications Available
|
|
11202
|
+
* * SQL Data Type: bit
|
|
11203
|
+
* * Default Value: 1
|
|
11204
|
+
* * Description: Indicates whether this job type supports sending notifications on completion or failure.`),
|
|
11205
|
+
__mj_CreatedAt: zod_1.z.date().describe(`
|
|
11206
|
+
* * Field Name: __mj_CreatedAt
|
|
11207
|
+
* * Display Name: Created At
|
|
11208
|
+
* * SQL Data Type: datetimeoffset
|
|
11209
|
+
* * Default Value: getutcdate()`),
|
|
11210
|
+
__mj_UpdatedAt: zod_1.z.date().describe(`
|
|
11211
|
+
* * Field Name: __mj_UpdatedAt
|
|
11212
|
+
* * Display Name: Updated At
|
|
11213
|
+
* * SQL Data Type: datetimeoffset
|
|
11214
|
+
* * Default Value: getutcdate()`),
|
|
11215
|
+
});
|
|
11216
|
+
/**
|
|
11217
|
+
* zod schema definition for the entity MJ: Scheduled Jobs
|
|
11218
|
+
*/
|
|
11219
|
+
exports.ScheduledJobSchema = zod_1.z.object({
|
|
11220
|
+
ID: zod_1.z.string().describe(`
|
|
11221
|
+
* * Field Name: ID
|
|
11222
|
+
* * Display Name: ID
|
|
11223
|
+
* * SQL Data Type: uniqueidentifier
|
|
11224
|
+
* * Default Value: newsequentialid()`),
|
|
11225
|
+
JobTypeID: zod_1.z.string().describe(`
|
|
11226
|
+
* * Field Name: JobTypeID
|
|
11227
|
+
* * Display Name: Job Type ID
|
|
11228
|
+
* * SQL Data Type: uniqueidentifier
|
|
11229
|
+
* * Related Entity/Foreign Key: MJ: Scheduled Job Types (vwScheduledJobTypes.ID)`),
|
|
11230
|
+
Name: zod_1.z.string().describe(`
|
|
11231
|
+
* * Field Name: Name
|
|
11232
|
+
* * Display Name: Name
|
|
11233
|
+
* * SQL Data Type: nvarchar(200)
|
|
11234
|
+
* * Description: Human-readable name for this scheduled job. Should clearly identify what the job does.`),
|
|
11235
|
+
Description: zod_1.z.string().nullable().describe(`
|
|
11236
|
+
* * Field Name: Description
|
|
11237
|
+
* * Display Name: Description
|
|
11238
|
+
* * SQL Data Type: nvarchar(MAX)
|
|
11239
|
+
* * Description: Detailed description of the job's purpose, what it does, and any important notes about its execution.`),
|
|
11240
|
+
CronExpression: zod_1.z.string().describe(`
|
|
11241
|
+
* * Field Name: CronExpression
|
|
11242
|
+
* * Display Name: Cron Expression
|
|
11243
|
+
* * SQL Data Type: nvarchar(120)
|
|
11244
|
+
* * 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.`),
|
|
11245
|
+
Timezone: zod_1.z.string().describe(`
|
|
11246
|
+
* * Field Name: Timezone
|
|
11247
|
+
* * Display Name: Timezone
|
|
11248
|
+
* * SQL Data Type: nvarchar(64)
|
|
11249
|
+
* * Default Value: UTC
|
|
11250
|
+
* * Description: IANA timezone identifier for interpreting the cron expression (e.g., "America/Chicago", "UTC"). Ensures consistent scheduling across different server locations.`),
|
|
11251
|
+
StartAt: zod_1.z.date().nullable().describe(`
|
|
11252
|
+
* * Field Name: StartAt
|
|
11253
|
+
* * Display Name: Start At
|
|
11254
|
+
* * SQL Data Type: datetimeoffset
|
|
11255
|
+
* * Description: Optional start date/time for when this schedule becomes active. Job will not execute before this time. NULL means active immediately upon creation.`),
|
|
11256
|
+
EndAt: zod_1.z.date().nullable().describe(`
|
|
11257
|
+
* * Field Name: EndAt
|
|
11258
|
+
* * Display Name: End At
|
|
11259
|
+
* * SQL Data Type: datetimeoffset
|
|
11260
|
+
* * Description: Optional end date/time for when this schedule expires. Job will not execute after this time. NULL means no expiration.`),
|
|
11261
|
+
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(`
|
|
11262
|
+
* * Field Name: Status
|
|
11263
|
+
* * Display Name: Status
|
|
11264
|
+
* * SQL Data Type: nvarchar(20)
|
|
11265
|
+
* * Default Value: Pending
|
|
11266
|
+
* * Value List Type: List
|
|
11267
|
+
* * Possible Values
|
|
11268
|
+
* * Paused
|
|
11269
|
+
* * Disabled
|
|
11270
|
+
* * Expired
|
|
11271
|
+
* * Pending
|
|
11272
|
+
* * Active
|
|
11273
|
+
* * 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.`),
|
|
11274
|
+
Configuration: zod_1.z.string().nullable().describe(`
|
|
11275
|
+
* * Field Name: Configuration
|
|
11276
|
+
* * Display Name: Configuration
|
|
11277
|
+
* * SQL Data Type: nvarchar(MAX)
|
|
11278
|
+
* * 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.`),
|
|
11279
|
+
OwnerUserID: zod_1.z.string().nullable().describe(`
|
|
11280
|
+
* * Field Name: OwnerUserID
|
|
11281
|
+
* * Display Name: Owner User ID
|
|
11282
|
+
* * SQL Data Type: uniqueidentifier
|
|
11283
|
+
* * Related Entity/Foreign Key: Users (vwUsers.ID)
|
|
11284
|
+
* * Description: User who owns this schedule. Used as the execution context if no specific user is configured in the job-specific configuration.`),
|
|
11285
|
+
LastRunAt: zod_1.z.date().nullable().describe(`
|
|
11286
|
+
* * Field Name: LastRunAt
|
|
11287
|
+
* * Display Name: Last Run At
|
|
11288
|
+
* * SQL Data Type: datetimeoffset
|
|
11289
|
+
* * Description: Timestamp of the most recent execution. Updated after each run. Used for monitoring and dashboard displays.`),
|
|
11290
|
+
NextRunAt: zod_1.z.date().nullable().describe(`
|
|
11291
|
+
* * Field Name: NextRunAt
|
|
11292
|
+
* * Display Name: Next Run At
|
|
11293
|
+
* * SQL Data Type: datetimeoffset
|
|
11294
|
+
* * 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.`),
|
|
11295
|
+
RunCount: zod_1.z.number().describe(`
|
|
11296
|
+
* * Field Name: RunCount
|
|
11297
|
+
* * Display Name: Run Count
|
|
11298
|
+
* * SQL Data Type: int
|
|
11299
|
+
* * Default Value: 0
|
|
11300
|
+
* * Description: Total number of times this schedule has been executed, including both successful and failed runs.`),
|
|
11301
|
+
SuccessCount: zod_1.z.number().describe(`
|
|
11302
|
+
* * Field Name: SuccessCount
|
|
11303
|
+
* * Display Name: Success Count
|
|
11304
|
+
* * SQL Data Type: int
|
|
11305
|
+
* * Default Value: 0
|
|
11306
|
+
* * Description: Number of times this schedule has executed successfully (Success = true in ScheduledJobRun).`),
|
|
11307
|
+
FailureCount: zod_1.z.number().describe(`
|
|
11308
|
+
* * Field Name: FailureCount
|
|
11309
|
+
* * Display Name: Failure Count
|
|
11310
|
+
* * SQL Data Type: int
|
|
11311
|
+
* * Default Value: 0
|
|
11312
|
+
* * Description: Number of times this schedule has executed but failed (Success = false in ScheduledJobRun).`),
|
|
11313
|
+
NotifyOnSuccess: zod_1.z.boolean().describe(`
|
|
11314
|
+
* * Field Name: NotifyOnSuccess
|
|
11315
|
+
* * Display Name: Notify On Success
|
|
11316
|
+
* * SQL Data Type: bit
|
|
11317
|
+
* * Default Value: 0
|
|
11318
|
+
* * Description: Whether to send notifications when the job completes successfully.`),
|
|
11319
|
+
NotifyOnFailure: zod_1.z.boolean().describe(`
|
|
11320
|
+
* * Field Name: NotifyOnFailure
|
|
11321
|
+
* * Display Name: Notify On Failure
|
|
11322
|
+
* * SQL Data Type: bit
|
|
11323
|
+
* * Default Value: 1
|
|
11324
|
+
* * Description: Whether to send notifications when the job fails. Defaults to true for alerting on failures.`),
|
|
11325
|
+
NotifyUserID: zod_1.z.string().nullable().describe(`
|
|
11326
|
+
* * Field Name: NotifyUserID
|
|
11327
|
+
* * Display Name: Notify User ID
|
|
11328
|
+
* * SQL Data Type: uniqueidentifier
|
|
11329
|
+
* * Related Entity/Foreign Key: Users (vwUsers.ID)
|
|
11330
|
+
* * Description: User to notify about job execution results. If NULL and notifications are enabled, falls back to OwnerUserID.`),
|
|
11331
|
+
NotifyViaEmail: zod_1.z.boolean().describe(`
|
|
11332
|
+
* * Field Name: NotifyViaEmail
|
|
11333
|
+
* * Display Name: Notify Via Email
|
|
11334
|
+
* * SQL Data Type: bit
|
|
11335
|
+
* * Default Value: 0
|
|
11336
|
+
* * Description: Whether to send email notifications. Requires NotifyOnSuccess or NotifyOnFailure to also be enabled.`),
|
|
11337
|
+
NotifyViaInApp: zod_1.z.boolean().describe(`
|
|
11338
|
+
* * Field Name: NotifyViaInApp
|
|
11339
|
+
* * Display Name: Notify Via In App
|
|
11340
|
+
* * SQL Data Type: bit
|
|
11341
|
+
* * Default Value: 1
|
|
11342
|
+
* * Description: Whether to send in-app notifications. Requires NotifyOnSuccess or NotifyOnFailure to also be enabled. Defaults to true.`),
|
|
11343
|
+
LockToken: zod_1.z.string().nullable().describe(`
|
|
11344
|
+
* * Field Name: LockToken
|
|
11345
|
+
* * Display Name: Lock Token
|
|
11346
|
+
* * SQL Data Type: uniqueidentifier
|
|
11347
|
+
* * 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.`),
|
|
11348
|
+
LockedAt: zod_1.z.date().nullable().describe(`
|
|
11349
|
+
* * Field Name: LockedAt
|
|
11350
|
+
* * Display Name: Locked At
|
|
11351
|
+
* * SQL Data Type: datetimeoffset
|
|
11352
|
+
* * Description: Timestamp when the lock was acquired. Used with ExpectedCompletionAt to detect stale locks from crashed server instances.`),
|
|
11353
|
+
LockedByInstance: zod_1.z.string().nullable().describe(`
|
|
11354
|
+
* * Field Name: LockedByInstance
|
|
11355
|
+
* * Display Name: Locked By Instance
|
|
11356
|
+
* * SQL Data Type: nvarchar(255)
|
|
11357
|
+
* * 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.`),
|
|
11358
|
+
ExpectedCompletionAt: zod_1.z.date().nullable().describe(`
|
|
11359
|
+
* * Field Name: ExpectedCompletionAt
|
|
11360
|
+
* * Display Name: Expected Completion At
|
|
11361
|
+
* * SQL Data Type: datetimeoffset
|
|
11362
|
+
* * 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.`),
|
|
11363
|
+
ConcurrencyMode: zod_1.z.union([zod_1.z.literal('Concurrent'), zod_1.z.literal('Queue'), zod_1.z.literal('Skip')]).describe(`
|
|
11364
|
+
* * Field Name: ConcurrencyMode
|
|
11365
|
+
* * Display Name: Concurrency Mode
|
|
11366
|
+
* * SQL Data Type: nvarchar(20)
|
|
11367
|
+
* * Default Value: Skip
|
|
11368
|
+
* * Value List Type: List
|
|
11369
|
+
* * Possible Values
|
|
11370
|
+
* * Queue
|
|
11371
|
+
* * Concurrent
|
|
11372
|
+
* * Skip
|
|
11373
|
+
* * 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.`),
|
|
11374
|
+
__mj_CreatedAt: zod_1.z.date().describe(`
|
|
11375
|
+
* * Field Name: __mj_CreatedAt
|
|
11376
|
+
* * Display Name: Created At
|
|
11377
|
+
* * SQL Data Type: datetimeoffset
|
|
11378
|
+
* * Default Value: getutcdate()`),
|
|
11379
|
+
__mj_UpdatedAt: zod_1.z.date().describe(`
|
|
11380
|
+
* * Field Name: __mj_UpdatedAt
|
|
11381
|
+
* * Display Name: Updated At
|
|
11382
|
+
* * SQL Data Type: datetimeoffset
|
|
11383
|
+
* * Default Value: getutcdate()`),
|
|
11384
|
+
JobType: zod_1.z.string().describe(`
|
|
11385
|
+
* * Field Name: JobType
|
|
11386
|
+
* * Display Name: Job Type
|
|
11387
|
+
* * SQL Data Type: nvarchar(100)`),
|
|
11388
|
+
OwnerUser: zod_1.z.string().nullable().describe(`
|
|
11389
|
+
* * Field Name: OwnerUser
|
|
11390
|
+
* * Display Name: Owner User
|
|
11391
|
+
* * SQL Data Type: nvarchar(100)`),
|
|
11392
|
+
NotifyUser: zod_1.z.string().nullable().describe(`
|
|
11393
|
+
* * Field Name: NotifyUser
|
|
11394
|
+
* * Display Name: Notify User
|
|
11395
|
+
* * SQL Data Type: nvarchar(100)`),
|
|
11396
|
+
});
|
|
11071
11397
|
/**
|
|
11072
11398
|
* zod schema definition for the entity MJ: Task Dependencies
|
|
11073
11399
|
*/
|
|
@@ -33622,7 +33948,7 @@ let AIAgentPermissionEntity = class AIAgentPermissionEntity extends core_1.BaseE
|
|
|
33622
33948
|
const hasRole = this.RoleID !== null;
|
|
33623
33949
|
const hasUser = this.UserID !== null;
|
|
33624
33950
|
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:
|
|
33951
|
+
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
33952
|
}
|
|
33627
33953
|
}
|
|
33628
33954
|
/**
|
|
@@ -34116,6 +34442,18 @@ let AIAgentRelationshipEntity = class AIAgentRelationshipEntity extends core_1.B
|
|
|
34116
34442
|
return this.Get('__mj_UpdatedAt');
|
|
34117
34443
|
}
|
|
34118
34444
|
/**
|
|
34445
|
+
* * Field Name: SubAgentOutputMapping
|
|
34446
|
+
* * Display Name: Sub Agent Output Mapping
|
|
34447
|
+
* * SQL Data Type: nvarchar(MAX)
|
|
34448
|
+
* * 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.
|
|
34449
|
+
*/
|
|
34450
|
+
get SubAgentOutputMapping() {
|
|
34451
|
+
return this.Get('SubAgentOutputMapping');
|
|
34452
|
+
}
|
|
34453
|
+
set SubAgentOutputMapping(value) {
|
|
34454
|
+
this.Set('SubAgentOutputMapping', value);
|
|
34455
|
+
}
|
|
34456
|
+
/**
|
|
34119
34457
|
* * Field Name: Agent
|
|
34120
34458
|
* * Display Name: Agent
|
|
34121
34459
|
* * SQL Data Type: nvarchar(255)
|
|
@@ -35045,6 +35383,19 @@ each time the agent processes a prompt step.
|
|
|
35045
35383
|
this.Set('Comments', value);
|
|
35046
35384
|
}
|
|
35047
35385
|
/**
|
|
35386
|
+
* * Field Name: ScheduledJobRunID
|
|
35387
|
+
* * Display Name: Scheduled Job Run ID
|
|
35388
|
+
* * SQL Data Type: uniqueidentifier
|
|
35389
|
+
* * Related Entity/Foreign Key: MJ: Scheduled Job Runs (vwScheduledJobRuns.ID)
|
|
35390
|
+
* * 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.
|
|
35391
|
+
*/
|
|
35392
|
+
get ScheduledJobRunID() {
|
|
35393
|
+
return this.Get('ScheduledJobRunID');
|
|
35394
|
+
}
|
|
35395
|
+
set ScheduledJobRunID(value) {
|
|
35396
|
+
this.Set('ScheduledJobRunID', value);
|
|
35397
|
+
}
|
|
35398
|
+
/**
|
|
35048
35399
|
* * Field Name: Agent
|
|
35049
35400
|
* * Display Name: Agent
|
|
35050
35401
|
* * SQL Data Type: nvarchar(255)
|
|
@@ -42815,6 +43166,808 @@ exports.ReportVersionEntity = ReportVersionEntity;
|
|
|
42815
43166
|
exports.ReportVersionEntity = ReportVersionEntity = __decorate([
|
|
42816
43167
|
(0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: Report Versions')
|
|
42817
43168
|
], ReportVersionEntity);
|
|
43169
|
+
/**
|
|
43170
|
+
* MJ: Scheduled Job Runs - strongly typed entity sub-class
|
|
43171
|
+
* * Schema: __mj
|
|
43172
|
+
* * Base Table: ScheduledJobRun
|
|
43173
|
+
* * Base View: vwScheduledJobRuns
|
|
43174
|
+
* * @description Records execution history for scheduled jobs. Provides uniform tracking across all job types. Each record represents one execution attempt of a scheduled job.
|
|
43175
|
+
* * Primary Key: ID
|
|
43176
|
+
* @extends {BaseEntity}
|
|
43177
|
+
* @class
|
|
43178
|
+
* @public
|
|
43179
|
+
*/
|
|
43180
|
+
let ScheduledJobRunEntity = class ScheduledJobRunEntity extends core_1.BaseEntity {
|
|
43181
|
+
/**
|
|
43182
|
+
* Loads the MJ: Scheduled Job Runs record from the database
|
|
43183
|
+
* @param ID: string - primary key value to load the MJ: Scheduled Job Runs record.
|
|
43184
|
+
* @param EntityRelationshipsToLoad - (optional) the relationships to load
|
|
43185
|
+
* @returns {Promise<boolean>} - true if successful, false otherwise
|
|
43186
|
+
* @public
|
|
43187
|
+
* @async
|
|
43188
|
+
* @memberof ScheduledJobRunEntity
|
|
43189
|
+
* @method
|
|
43190
|
+
* @override
|
|
43191
|
+
*/
|
|
43192
|
+
async Load(ID, EntityRelationshipsToLoad) {
|
|
43193
|
+
const compositeKey = new core_1.CompositeKey();
|
|
43194
|
+
compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
|
|
43195
|
+
return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
|
|
43196
|
+
}
|
|
43197
|
+
/**
|
|
43198
|
+
* 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:
|
|
43199
|
+
* * Details: This rule ensures that if the Details field is not empty, it must contain a valid JSON value.
|
|
43200
|
+
* @public
|
|
43201
|
+
* @method
|
|
43202
|
+
* @override
|
|
43203
|
+
*/
|
|
43204
|
+
Validate() {
|
|
43205
|
+
const result = super.Validate();
|
|
43206
|
+
this.ValidateDetailsAsJson(result);
|
|
43207
|
+
result.Success = result.Success && (result.Errors.length === 0);
|
|
43208
|
+
return result;
|
|
43209
|
+
}
|
|
43210
|
+
/**
|
|
43211
|
+
* This rule ensures that if the Details field is not empty, it must contain a valid JSON value.
|
|
43212
|
+
* @param result - the ValidationResult object to add any errors or warnings to
|
|
43213
|
+
* @public
|
|
43214
|
+
* @method
|
|
43215
|
+
*/
|
|
43216
|
+
ValidateDetailsAsJson(result) {
|
|
43217
|
+
if (this.Details != null) {
|
|
43218
|
+
try {
|
|
43219
|
+
JSON.parse(this.Details);
|
|
43220
|
+
}
|
|
43221
|
+
catch (e) {
|
|
43222
|
+
result.Errors.push(new core_1.ValidationErrorInfo("Details", "Details must be a valid JSON if provided.", this.Details, core_1.ValidationErrorType.Failure));
|
|
43223
|
+
}
|
|
43224
|
+
}
|
|
43225
|
+
}
|
|
43226
|
+
/**
|
|
43227
|
+
* * Field Name: ID
|
|
43228
|
+
* * Display Name: ID
|
|
43229
|
+
* * SQL Data Type: uniqueidentifier
|
|
43230
|
+
* * Default Value: newsequentialid()
|
|
43231
|
+
*/
|
|
43232
|
+
get ID() {
|
|
43233
|
+
return this.Get('ID');
|
|
43234
|
+
}
|
|
43235
|
+
set ID(value) {
|
|
43236
|
+
this.Set('ID', value);
|
|
43237
|
+
}
|
|
43238
|
+
/**
|
|
43239
|
+
* * Field Name: ScheduledJobID
|
|
43240
|
+
* * Display Name: Scheduled Job ID
|
|
43241
|
+
* * SQL Data Type: uniqueidentifier
|
|
43242
|
+
* * Related Entity/Foreign Key: MJ: Scheduled Jobs (vwScheduledJobs.ID)
|
|
43243
|
+
*/
|
|
43244
|
+
get ScheduledJobID() {
|
|
43245
|
+
return this.Get('ScheduledJobID');
|
|
43246
|
+
}
|
|
43247
|
+
set ScheduledJobID(value) {
|
|
43248
|
+
this.Set('ScheduledJobID', value);
|
|
43249
|
+
}
|
|
43250
|
+
/**
|
|
43251
|
+
* * Field Name: StartedAt
|
|
43252
|
+
* * Display Name: Started At
|
|
43253
|
+
* * SQL Data Type: datetimeoffset
|
|
43254
|
+
* * Default Value: sysdatetimeoffset()
|
|
43255
|
+
* * Description: Timestamp when this job execution began. Set immediately before calling the job plugin's Execute method.
|
|
43256
|
+
*/
|
|
43257
|
+
get StartedAt() {
|
|
43258
|
+
return this.Get('StartedAt');
|
|
43259
|
+
}
|
|
43260
|
+
set StartedAt(value) {
|
|
43261
|
+
this.Set('StartedAt', value);
|
|
43262
|
+
}
|
|
43263
|
+
/**
|
|
43264
|
+
* * Field Name: CompletedAt
|
|
43265
|
+
* * Display Name: Completed At
|
|
43266
|
+
* * SQL Data Type: datetimeoffset
|
|
43267
|
+
* * Description: Timestamp when this job execution completed (successfully or with failure). NULL while the job is still running.
|
|
43268
|
+
*/
|
|
43269
|
+
get CompletedAt() {
|
|
43270
|
+
return this.Get('CompletedAt');
|
|
43271
|
+
}
|
|
43272
|
+
set CompletedAt(value) {
|
|
43273
|
+
this.Set('CompletedAt', value);
|
|
43274
|
+
}
|
|
43275
|
+
/**
|
|
43276
|
+
* * Field Name: Status
|
|
43277
|
+
* * Display Name: Status
|
|
43278
|
+
* * SQL Data Type: nvarchar(20)
|
|
43279
|
+
* * Default Value: Running
|
|
43280
|
+
* * Value List Type: List
|
|
43281
|
+
* * Possible Values
|
|
43282
|
+
* * Running
|
|
43283
|
+
* * Timeout
|
|
43284
|
+
* * Completed
|
|
43285
|
+
* * Cancelled
|
|
43286
|
+
* * Failed
|
|
43287
|
+
* * 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.
|
|
43288
|
+
*/
|
|
43289
|
+
get Status() {
|
|
43290
|
+
return this.Get('Status');
|
|
43291
|
+
}
|
|
43292
|
+
set Status(value) {
|
|
43293
|
+
this.Set('Status', value);
|
|
43294
|
+
}
|
|
43295
|
+
/**
|
|
43296
|
+
* * Field Name: Success
|
|
43297
|
+
* * Display Name: Success
|
|
43298
|
+
* * SQL Data Type: bit
|
|
43299
|
+
* * 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.
|
|
43300
|
+
*/
|
|
43301
|
+
get Success() {
|
|
43302
|
+
return this.Get('Success');
|
|
43303
|
+
}
|
|
43304
|
+
set Success(value) {
|
|
43305
|
+
this.Set('Success', value);
|
|
43306
|
+
}
|
|
43307
|
+
/**
|
|
43308
|
+
* * Field Name: ErrorMessage
|
|
43309
|
+
* * Display Name: Error Message
|
|
43310
|
+
* * SQL Data Type: nvarchar(MAX)
|
|
43311
|
+
* * Description: Error message if the job failed. NULL for successful runs. Contains exception messages or error details from the plugin's Execute method.
|
|
43312
|
+
*/
|
|
43313
|
+
get ErrorMessage() {
|
|
43314
|
+
return this.Get('ErrorMessage');
|
|
43315
|
+
}
|
|
43316
|
+
set ErrorMessage(value) {
|
|
43317
|
+
this.Set('ErrorMessage', value);
|
|
43318
|
+
}
|
|
43319
|
+
/**
|
|
43320
|
+
* * Field Name: Details
|
|
43321
|
+
* * Display Name: Details
|
|
43322
|
+
* * SQL Data Type: nvarchar(MAX)
|
|
43323
|
+
* * 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.
|
|
43324
|
+
*/
|
|
43325
|
+
get Details() {
|
|
43326
|
+
return this.Get('Details');
|
|
43327
|
+
}
|
|
43328
|
+
set Details(value) {
|
|
43329
|
+
this.Set('Details', value);
|
|
43330
|
+
}
|
|
43331
|
+
/**
|
|
43332
|
+
* * Field Name: ExecutedByUserID
|
|
43333
|
+
* * Display Name: Executed By User ID
|
|
43334
|
+
* * SQL Data Type: uniqueidentifier
|
|
43335
|
+
* * Related Entity/Foreign Key: Users (vwUsers.ID)
|
|
43336
|
+
* * Description: User context under which the job was executed. Typically the OwnerUserID from the schedule, but can be overridden in job-specific configuration.
|
|
43337
|
+
*/
|
|
43338
|
+
get ExecutedByUserID() {
|
|
43339
|
+
return this.Get('ExecutedByUserID');
|
|
43340
|
+
}
|
|
43341
|
+
set ExecutedByUserID(value) {
|
|
43342
|
+
this.Set('ExecutedByUserID', value);
|
|
43343
|
+
}
|
|
43344
|
+
/**
|
|
43345
|
+
* * Field Name: QueuedAt
|
|
43346
|
+
* * Display Name: Queued At
|
|
43347
|
+
* * SQL Data Type: datetimeoffset
|
|
43348
|
+
* * 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.
|
|
43349
|
+
*/
|
|
43350
|
+
get QueuedAt() {
|
|
43351
|
+
return this.Get('QueuedAt');
|
|
43352
|
+
}
|
|
43353
|
+
set QueuedAt(value) {
|
|
43354
|
+
this.Set('QueuedAt', value);
|
|
43355
|
+
}
|
|
43356
|
+
/**
|
|
43357
|
+
* * Field Name: __mj_CreatedAt
|
|
43358
|
+
* * Display Name: Created At
|
|
43359
|
+
* * SQL Data Type: datetimeoffset
|
|
43360
|
+
* * Default Value: getutcdate()
|
|
43361
|
+
*/
|
|
43362
|
+
get __mj_CreatedAt() {
|
|
43363
|
+
return this.Get('__mj_CreatedAt');
|
|
43364
|
+
}
|
|
43365
|
+
/**
|
|
43366
|
+
* * Field Name: __mj_UpdatedAt
|
|
43367
|
+
* * Display Name: Updated At
|
|
43368
|
+
* * SQL Data Type: datetimeoffset
|
|
43369
|
+
* * Default Value: getutcdate()
|
|
43370
|
+
*/
|
|
43371
|
+
get __mj_UpdatedAt() {
|
|
43372
|
+
return this.Get('__mj_UpdatedAt');
|
|
43373
|
+
}
|
|
43374
|
+
/**
|
|
43375
|
+
* * Field Name: ScheduledJob
|
|
43376
|
+
* * Display Name: Scheduled Job
|
|
43377
|
+
* * SQL Data Type: nvarchar(200)
|
|
43378
|
+
*/
|
|
43379
|
+
get ScheduledJob() {
|
|
43380
|
+
return this.Get('ScheduledJob');
|
|
43381
|
+
}
|
|
43382
|
+
/**
|
|
43383
|
+
* * Field Name: ExecutedByUser
|
|
43384
|
+
* * Display Name: Executed By User
|
|
43385
|
+
* * SQL Data Type: nvarchar(100)
|
|
43386
|
+
*/
|
|
43387
|
+
get ExecutedByUser() {
|
|
43388
|
+
return this.Get('ExecutedByUser');
|
|
43389
|
+
}
|
|
43390
|
+
};
|
|
43391
|
+
exports.ScheduledJobRunEntity = ScheduledJobRunEntity;
|
|
43392
|
+
exports.ScheduledJobRunEntity = ScheduledJobRunEntity = __decorate([
|
|
43393
|
+
(0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: Scheduled Job Runs')
|
|
43394
|
+
], ScheduledJobRunEntity);
|
|
43395
|
+
/**
|
|
43396
|
+
* MJ: Scheduled Job Types - strongly typed entity sub-class
|
|
43397
|
+
* * Schema: __mj
|
|
43398
|
+
* * Base Table: ScheduledJobType
|
|
43399
|
+
* * Base View: vwScheduledJobTypes
|
|
43400
|
+
* * @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).
|
|
43401
|
+
* * Primary Key: ID
|
|
43402
|
+
* @extends {BaseEntity}
|
|
43403
|
+
* @class
|
|
43404
|
+
* @public
|
|
43405
|
+
*/
|
|
43406
|
+
let ScheduledJobTypeEntity = class ScheduledJobTypeEntity extends core_1.BaseEntity {
|
|
43407
|
+
/**
|
|
43408
|
+
* Loads the MJ: Scheduled Job Types record from the database
|
|
43409
|
+
* @param ID: string - primary key value to load the MJ: Scheduled Job Types record.
|
|
43410
|
+
* @param EntityRelationshipsToLoad - (optional) the relationships to load
|
|
43411
|
+
* @returns {Promise<boolean>} - true if successful, false otherwise
|
|
43412
|
+
* @public
|
|
43413
|
+
* @async
|
|
43414
|
+
* @memberof ScheduledJobTypeEntity
|
|
43415
|
+
* @method
|
|
43416
|
+
* @override
|
|
43417
|
+
*/
|
|
43418
|
+
async Load(ID, EntityRelationshipsToLoad) {
|
|
43419
|
+
const compositeKey = new core_1.CompositeKey();
|
|
43420
|
+
compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
|
|
43421
|
+
return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
|
|
43422
|
+
}
|
|
43423
|
+
/**
|
|
43424
|
+
* * Field Name: ID
|
|
43425
|
+
* * Display Name: ID
|
|
43426
|
+
* * SQL Data Type: uniqueidentifier
|
|
43427
|
+
* * Default Value: newsequentialid()
|
|
43428
|
+
*/
|
|
43429
|
+
get ID() {
|
|
43430
|
+
return this.Get('ID');
|
|
43431
|
+
}
|
|
43432
|
+
set ID(value) {
|
|
43433
|
+
this.Set('ID', value);
|
|
43434
|
+
}
|
|
43435
|
+
/**
|
|
43436
|
+
* * Field Name: Name
|
|
43437
|
+
* * Display Name: Name
|
|
43438
|
+
* * SQL Data Type: nvarchar(100)
|
|
43439
|
+
* * Description: Unique name identifying this job type (e.g., Agent, Action, Report).
|
|
43440
|
+
*/
|
|
43441
|
+
get Name() {
|
|
43442
|
+
return this.Get('Name');
|
|
43443
|
+
}
|
|
43444
|
+
set Name(value) {
|
|
43445
|
+
this.Set('Name', value);
|
|
43446
|
+
}
|
|
43447
|
+
/**
|
|
43448
|
+
* * Field Name: Description
|
|
43449
|
+
* * Display Name: Description
|
|
43450
|
+
* * SQL Data Type: nvarchar(MAX)
|
|
43451
|
+
* * Description: Human-readable description of what this job type does and when it should be used.
|
|
43452
|
+
*/
|
|
43453
|
+
get Description() {
|
|
43454
|
+
return this.Get('Description');
|
|
43455
|
+
}
|
|
43456
|
+
set Description(value) {
|
|
43457
|
+
this.Set('Description', value);
|
|
43458
|
+
}
|
|
43459
|
+
/**
|
|
43460
|
+
* * Field Name: DriverClass
|
|
43461
|
+
* * Display Name: Driver Class
|
|
43462
|
+
* * SQL Data Type: nvarchar(255)
|
|
43463
|
+
* * Description: TypeScript class name that implements BaseScheduledJob for this job type. Used by ClassFactory to instantiate the correct plugin at runtime.
|
|
43464
|
+
*/
|
|
43465
|
+
get DriverClass() {
|
|
43466
|
+
return this.Get('DriverClass');
|
|
43467
|
+
}
|
|
43468
|
+
set DriverClass(value) {
|
|
43469
|
+
this.Set('DriverClass', value);
|
|
43470
|
+
}
|
|
43471
|
+
/**
|
|
43472
|
+
* * Field Name: DomainRunEntity
|
|
43473
|
+
* * Display Name: Domain Run Entity
|
|
43474
|
+
* * SQL Data Type: nvarchar(255)
|
|
43475
|
+
* * 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.
|
|
43476
|
+
*/
|
|
43477
|
+
get DomainRunEntity() {
|
|
43478
|
+
return this.Get('DomainRunEntity');
|
|
43479
|
+
}
|
|
43480
|
+
set DomainRunEntity(value) {
|
|
43481
|
+
this.Set('DomainRunEntity', value);
|
|
43482
|
+
}
|
|
43483
|
+
/**
|
|
43484
|
+
* * Field Name: DomainRunEntityFKey
|
|
43485
|
+
* * Display Name: Domain Run Entity F Key
|
|
43486
|
+
* * SQL Data Type: nvarchar(100)
|
|
43487
|
+
* * 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.
|
|
43488
|
+
*/
|
|
43489
|
+
get DomainRunEntityFKey() {
|
|
43490
|
+
return this.Get('DomainRunEntityFKey');
|
|
43491
|
+
}
|
|
43492
|
+
set DomainRunEntityFKey(value) {
|
|
43493
|
+
this.Set('DomainRunEntityFKey', value);
|
|
43494
|
+
}
|
|
43495
|
+
/**
|
|
43496
|
+
* * Field Name: NotificationsAvailable
|
|
43497
|
+
* * Display Name: Notifications Available
|
|
43498
|
+
* * SQL Data Type: bit
|
|
43499
|
+
* * Default Value: 1
|
|
43500
|
+
* * Description: Indicates whether this job type supports sending notifications on completion or failure.
|
|
43501
|
+
*/
|
|
43502
|
+
get NotificationsAvailable() {
|
|
43503
|
+
return this.Get('NotificationsAvailable');
|
|
43504
|
+
}
|
|
43505
|
+
set NotificationsAvailable(value) {
|
|
43506
|
+
this.Set('NotificationsAvailable', value);
|
|
43507
|
+
}
|
|
43508
|
+
/**
|
|
43509
|
+
* * Field Name: __mj_CreatedAt
|
|
43510
|
+
* * Display Name: Created At
|
|
43511
|
+
* * SQL Data Type: datetimeoffset
|
|
43512
|
+
* * Default Value: getutcdate()
|
|
43513
|
+
*/
|
|
43514
|
+
get __mj_CreatedAt() {
|
|
43515
|
+
return this.Get('__mj_CreatedAt');
|
|
43516
|
+
}
|
|
43517
|
+
/**
|
|
43518
|
+
* * Field Name: __mj_UpdatedAt
|
|
43519
|
+
* * Display Name: Updated At
|
|
43520
|
+
* * SQL Data Type: datetimeoffset
|
|
43521
|
+
* * Default Value: getutcdate()
|
|
43522
|
+
*/
|
|
43523
|
+
get __mj_UpdatedAt() {
|
|
43524
|
+
return this.Get('__mj_UpdatedAt');
|
|
43525
|
+
}
|
|
43526
|
+
};
|
|
43527
|
+
exports.ScheduledJobTypeEntity = ScheduledJobTypeEntity;
|
|
43528
|
+
exports.ScheduledJobTypeEntity = ScheduledJobTypeEntity = __decorate([
|
|
43529
|
+
(0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: Scheduled Job Types')
|
|
43530
|
+
], ScheduledJobTypeEntity);
|
|
43531
|
+
/**
|
|
43532
|
+
* MJ: Scheduled Jobs - strongly typed entity sub-class
|
|
43533
|
+
* * Schema: __mj
|
|
43534
|
+
* * Base Table: ScheduledJob
|
|
43535
|
+
* * Base View: vwScheduledJobs
|
|
43536
|
+
* * @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.
|
|
43537
|
+
* * Primary Key: ID
|
|
43538
|
+
* @extends {BaseEntity}
|
|
43539
|
+
* @class
|
|
43540
|
+
* @public
|
|
43541
|
+
*/
|
|
43542
|
+
let ScheduledJobEntity = class ScheduledJobEntity extends core_1.BaseEntity {
|
|
43543
|
+
/**
|
|
43544
|
+
* Loads the MJ: Scheduled Jobs record from the database
|
|
43545
|
+
* @param ID: string - primary key value to load the MJ: Scheduled Jobs record.
|
|
43546
|
+
* @param EntityRelationshipsToLoad - (optional) the relationships to load
|
|
43547
|
+
* @returns {Promise<boolean>} - true if successful, false otherwise
|
|
43548
|
+
* @public
|
|
43549
|
+
* @async
|
|
43550
|
+
* @memberof ScheduledJobEntity
|
|
43551
|
+
* @method
|
|
43552
|
+
* @override
|
|
43553
|
+
*/
|
|
43554
|
+
async Load(ID, EntityRelationshipsToLoad) {
|
|
43555
|
+
const compositeKey = new core_1.CompositeKey();
|
|
43556
|
+
compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
|
|
43557
|
+
return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
|
|
43558
|
+
}
|
|
43559
|
+
/**
|
|
43560
|
+
* 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:
|
|
43561
|
+
* * 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.
|
|
43562
|
+
* @public
|
|
43563
|
+
* @method
|
|
43564
|
+
* @override
|
|
43565
|
+
*/
|
|
43566
|
+
Validate() {
|
|
43567
|
+
const result = super.Validate();
|
|
43568
|
+
this.ValidateConfigurationIsJson(result);
|
|
43569
|
+
result.Success = result.Success && (result.Errors.length === 0);
|
|
43570
|
+
return result;
|
|
43571
|
+
}
|
|
43572
|
+
/**
|
|
43573
|
+
* 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.
|
|
43574
|
+
* @param result - the ValidationResult object to add any errors or warnings to
|
|
43575
|
+
* @public
|
|
43576
|
+
* @method
|
|
43577
|
+
*/
|
|
43578
|
+
ValidateConfigurationIsJson(result) {
|
|
43579
|
+
if (this.Configuration != null) {
|
|
43580
|
+
try {
|
|
43581
|
+
JSON.parse(this.Configuration);
|
|
43582
|
+
}
|
|
43583
|
+
catch (e) {
|
|
43584
|
+
result.Errors.push(new core_1.ValidationErrorInfo("Configuration", "If specified, Configuration must be valid JSON.", this.Configuration, core_1.ValidationErrorType.Failure));
|
|
43585
|
+
}
|
|
43586
|
+
}
|
|
43587
|
+
}
|
|
43588
|
+
/**
|
|
43589
|
+
* * Field Name: ID
|
|
43590
|
+
* * Display Name: ID
|
|
43591
|
+
* * SQL Data Type: uniqueidentifier
|
|
43592
|
+
* * Default Value: newsequentialid()
|
|
43593
|
+
*/
|
|
43594
|
+
get ID() {
|
|
43595
|
+
return this.Get('ID');
|
|
43596
|
+
}
|
|
43597
|
+
set ID(value) {
|
|
43598
|
+
this.Set('ID', value);
|
|
43599
|
+
}
|
|
43600
|
+
/**
|
|
43601
|
+
* * Field Name: JobTypeID
|
|
43602
|
+
* * Display Name: Job Type ID
|
|
43603
|
+
* * SQL Data Type: uniqueidentifier
|
|
43604
|
+
* * Related Entity/Foreign Key: MJ: Scheduled Job Types (vwScheduledJobTypes.ID)
|
|
43605
|
+
*/
|
|
43606
|
+
get JobTypeID() {
|
|
43607
|
+
return this.Get('JobTypeID');
|
|
43608
|
+
}
|
|
43609
|
+
set JobTypeID(value) {
|
|
43610
|
+
this.Set('JobTypeID', value);
|
|
43611
|
+
}
|
|
43612
|
+
/**
|
|
43613
|
+
* * Field Name: Name
|
|
43614
|
+
* * Display Name: Name
|
|
43615
|
+
* * SQL Data Type: nvarchar(200)
|
|
43616
|
+
* * Description: Human-readable name for this scheduled job. Should clearly identify what the job does.
|
|
43617
|
+
*/
|
|
43618
|
+
get Name() {
|
|
43619
|
+
return this.Get('Name');
|
|
43620
|
+
}
|
|
43621
|
+
set Name(value) {
|
|
43622
|
+
this.Set('Name', value);
|
|
43623
|
+
}
|
|
43624
|
+
/**
|
|
43625
|
+
* * Field Name: Description
|
|
43626
|
+
* * Display Name: Description
|
|
43627
|
+
* * SQL Data Type: nvarchar(MAX)
|
|
43628
|
+
* * Description: Detailed description of the job's purpose, what it does, and any important notes about its execution.
|
|
43629
|
+
*/
|
|
43630
|
+
get Description() {
|
|
43631
|
+
return this.Get('Description');
|
|
43632
|
+
}
|
|
43633
|
+
set Description(value) {
|
|
43634
|
+
this.Set('Description', value);
|
|
43635
|
+
}
|
|
43636
|
+
/**
|
|
43637
|
+
* * Field Name: CronExpression
|
|
43638
|
+
* * Display Name: Cron Expression
|
|
43639
|
+
* * SQL Data Type: nvarchar(120)
|
|
43640
|
+
* * 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.
|
|
43641
|
+
*/
|
|
43642
|
+
get CronExpression() {
|
|
43643
|
+
return this.Get('CronExpression');
|
|
43644
|
+
}
|
|
43645
|
+
set CronExpression(value) {
|
|
43646
|
+
this.Set('CronExpression', value);
|
|
43647
|
+
}
|
|
43648
|
+
/**
|
|
43649
|
+
* * Field Name: Timezone
|
|
43650
|
+
* * Display Name: Timezone
|
|
43651
|
+
* * SQL Data Type: nvarchar(64)
|
|
43652
|
+
* * Default Value: UTC
|
|
43653
|
+
* * Description: IANA timezone identifier for interpreting the cron expression (e.g., "America/Chicago", "UTC"). Ensures consistent scheduling across different server locations.
|
|
43654
|
+
*/
|
|
43655
|
+
get Timezone() {
|
|
43656
|
+
return this.Get('Timezone');
|
|
43657
|
+
}
|
|
43658
|
+
set Timezone(value) {
|
|
43659
|
+
this.Set('Timezone', value);
|
|
43660
|
+
}
|
|
43661
|
+
/**
|
|
43662
|
+
* * Field Name: StartAt
|
|
43663
|
+
* * Display Name: Start At
|
|
43664
|
+
* * SQL Data Type: datetimeoffset
|
|
43665
|
+
* * Description: Optional start date/time for when this schedule becomes active. Job will not execute before this time. NULL means active immediately upon creation.
|
|
43666
|
+
*/
|
|
43667
|
+
get StartAt() {
|
|
43668
|
+
return this.Get('StartAt');
|
|
43669
|
+
}
|
|
43670
|
+
set StartAt(value) {
|
|
43671
|
+
this.Set('StartAt', value);
|
|
43672
|
+
}
|
|
43673
|
+
/**
|
|
43674
|
+
* * Field Name: EndAt
|
|
43675
|
+
* * Display Name: End At
|
|
43676
|
+
* * SQL Data Type: datetimeoffset
|
|
43677
|
+
* * Description: Optional end date/time for when this schedule expires. Job will not execute after this time. NULL means no expiration.
|
|
43678
|
+
*/
|
|
43679
|
+
get EndAt() {
|
|
43680
|
+
return this.Get('EndAt');
|
|
43681
|
+
}
|
|
43682
|
+
set EndAt(value) {
|
|
43683
|
+
this.Set('EndAt', value);
|
|
43684
|
+
}
|
|
43685
|
+
/**
|
|
43686
|
+
* * Field Name: Status
|
|
43687
|
+
* * Display Name: Status
|
|
43688
|
+
* * SQL Data Type: nvarchar(20)
|
|
43689
|
+
* * Default Value: Pending
|
|
43690
|
+
* * Value List Type: List
|
|
43691
|
+
* * Possible Values
|
|
43692
|
+
* * Paused
|
|
43693
|
+
* * Disabled
|
|
43694
|
+
* * Expired
|
|
43695
|
+
* * Pending
|
|
43696
|
+
* * Active
|
|
43697
|
+
* * 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.
|
|
43698
|
+
*/
|
|
43699
|
+
get Status() {
|
|
43700
|
+
return this.Get('Status');
|
|
43701
|
+
}
|
|
43702
|
+
set Status(value) {
|
|
43703
|
+
this.Set('Status', value);
|
|
43704
|
+
}
|
|
43705
|
+
/**
|
|
43706
|
+
* * Field Name: Configuration
|
|
43707
|
+
* * Display Name: Configuration
|
|
43708
|
+
* * SQL Data Type: nvarchar(MAX)
|
|
43709
|
+
* * 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.
|
|
43710
|
+
*/
|
|
43711
|
+
get Configuration() {
|
|
43712
|
+
return this.Get('Configuration');
|
|
43713
|
+
}
|
|
43714
|
+
set Configuration(value) {
|
|
43715
|
+
this.Set('Configuration', value);
|
|
43716
|
+
}
|
|
43717
|
+
/**
|
|
43718
|
+
* * Field Name: OwnerUserID
|
|
43719
|
+
* * Display Name: Owner User ID
|
|
43720
|
+
* * SQL Data Type: uniqueidentifier
|
|
43721
|
+
* * Related Entity/Foreign Key: Users (vwUsers.ID)
|
|
43722
|
+
* * Description: User who owns this schedule. Used as the execution context if no specific user is configured in the job-specific configuration.
|
|
43723
|
+
*/
|
|
43724
|
+
get OwnerUserID() {
|
|
43725
|
+
return this.Get('OwnerUserID');
|
|
43726
|
+
}
|
|
43727
|
+
set OwnerUserID(value) {
|
|
43728
|
+
this.Set('OwnerUserID', value);
|
|
43729
|
+
}
|
|
43730
|
+
/**
|
|
43731
|
+
* * Field Name: LastRunAt
|
|
43732
|
+
* * Display Name: Last Run At
|
|
43733
|
+
* * SQL Data Type: datetimeoffset
|
|
43734
|
+
* * Description: Timestamp of the most recent execution. Updated after each run. Used for monitoring and dashboard displays.
|
|
43735
|
+
*/
|
|
43736
|
+
get LastRunAt() {
|
|
43737
|
+
return this.Get('LastRunAt');
|
|
43738
|
+
}
|
|
43739
|
+
set LastRunAt(value) {
|
|
43740
|
+
this.Set('LastRunAt', value);
|
|
43741
|
+
}
|
|
43742
|
+
/**
|
|
43743
|
+
* * Field Name: NextRunAt
|
|
43744
|
+
* * Display Name: Next Run At
|
|
43745
|
+
* * SQL Data Type: datetimeoffset
|
|
43746
|
+
* * 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.
|
|
43747
|
+
*/
|
|
43748
|
+
get NextRunAt() {
|
|
43749
|
+
return this.Get('NextRunAt');
|
|
43750
|
+
}
|
|
43751
|
+
set NextRunAt(value) {
|
|
43752
|
+
this.Set('NextRunAt', value);
|
|
43753
|
+
}
|
|
43754
|
+
/**
|
|
43755
|
+
* * Field Name: RunCount
|
|
43756
|
+
* * Display Name: Run Count
|
|
43757
|
+
* * SQL Data Type: int
|
|
43758
|
+
* * Default Value: 0
|
|
43759
|
+
* * Description: Total number of times this schedule has been executed, including both successful and failed runs.
|
|
43760
|
+
*/
|
|
43761
|
+
get RunCount() {
|
|
43762
|
+
return this.Get('RunCount');
|
|
43763
|
+
}
|
|
43764
|
+
set RunCount(value) {
|
|
43765
|
+
this.Set('RunCount', value);
|
|
43766
|
+
}
|
|
43767
|
+
/**
|
|
43768
|
+
* * Field Name: SuccessCount
|
|
43769
|
+
* * Display Name: Success Count
|
|
43770
|
+
* * SQL Data Type: int
|
|
43771
|
+
* * Default Value: 0
|
|
43772
|
+
* * Description: Number of times this schedule has executed successfully (Success = true in ScheduledJobRun).
|
|
43773
|
+
*/
|
|
43774
|
+
get SuccessCount() {
|
|
43775
|
+
return this.Get('SuccessCount');
|
|
43776
|
+
}
|
|
43777
|
+
set SuccessCount(value) {
|
|
43778
|
+
this.Set('SuccessCount', value);
|
|
43779
|
+
}
|
|
43780
|
+
/**
|
|
43781
|
+
* * Field Name: FailureCount
|
|
43782
|
+
* * Display Name: Failure Count
|
|
43783
|
+
* * SQL Data Type: int
|
|
43784
|
+
* * Default Value: 0
|
|
43785
|
+
* * Description: Number of times this schedule has executed but failed (Success = false in ScheduledJobRun).
|
|
43786
|
+
*/
|
|
43787
|
+
get FailureCount() {
|
|
43788
|
+
return this.Get('FailureCount');
|
|
43789
|
+
}
|
|
43790
|
+
set FailureCount(value) {
|
|
43791
|
+
this.Set('FailureCount', value);
|
|
43792
|
+
}
|
|
43793
|
+
/**
|
|
43794
|
+
* * Field Name: NotifyOnSuccess
|
|
43795
|
+
* * Display Name: Notify On Success
|
|
43796
|
+
* * SQL Data Type: bit
|
|
43797
|
+
* * Default Value: 0
|
|
43798
|
+
* * Description: Whether to send notifications when the job completes successfully.
|
|
43799
|
+
*/
|
|
43800
|
+
get NotifyOnSuccess() {
|
|
43801
|
+
return this.Get('NotifyOnSuccess');
|
|
43802
|
+
}
|
|
43803
|
+
set NotifyOnSuccess(value) {
|
|
43804
|
+
this.Set('NotifyOnSuccess', value);
|
|
43805
|
+
}
|
|
43806
|
+
/**
|
|
43807
|
+
* * Field Name: NotifyOnFailure
|
|
43808
|
+
* * Display Name: Notify On Failure
|
|
43809
|
+
* * SQL Data Type: bit
|
|
43810
|
+
* * Default Value: 1
|
|
43811
|
+
* * Description: Whether to send notifications when the job fails. Defaults to true for alerting on failures.
|
|
43812
|
+
*/
|
|
43813
|
+
get NotifyOnFailure() {
|
|
43814
|
+
return this.Get('NotifyOnFailure');
|
|
43815
|
+
}
|
|
43816
|
+
set NotifyOnFailure(value) {
|
|
43817
|
+
this.Set('NotifyOnFailure', value);
|
|
43818
|
+
}
|
|
43819
|
+
/**
|
|
43820
|
+
* * Field Name: NotifyUserID
|
|
43821
|
+
* * Display Name: Notify User ID
|
|
43822
|
+
* * SQL Data Type: uniqueidentifier
|
|
43823
|
+
* * Related Entity/Foreign Key: Users (vwUsers.ID)
|
|
43824
|
+
* * Description: User to notify about job execution results. If NULL and notifications are enabled, falls back to OwnerUserID.
|
|
43825
|
+
*/
|
|
43826
|
+
get NotifyUserID() {
|
|
43827
|
+
return this.Get('NotifyUserID');
|
|
43828
|
+
}
|
|
43829
|
+
set NotifyUserID(value) {
|
|
43830
|
+
this.Set('NotifyUserID', value);
|
|
43831
|
+
}
|
|
43832
|
+
/**
|
|
43833
|
+
* * Field Name: NotifyViaEmail
|
|
43834
|
+
* * Display Name: Notify Via Email
|
|
43835
|
+
* * SQL Data Type: bit
|
|
43836
|
+
* * Default Value: 0
|
|
43837
|
+
* * Description: Whether to send email notifications. Requires NotifyOnSuccess or NotifyOnFailure to also be enabled.
|
|
43838
|
+
*/
|
|
43839
|
+
get NotifyViaEmail() {
|
|
43840
|
+
return this.Get('NotifyViaEmail');
|
|
43841
|
+
}
|
|
43842
|
+
set NotifyViaEmail(value) {
|
|
43843
|
+
this.Set('NotifyViaEmail', value);
|
|
43844
|
+
}
|
|
43845
|
+
/**
|
|
43846
|
+
* * Field Name: NotifyViaInApp
|
|
43847
|
+
* * Display Name: Notify Via In App
|
|
43848
|
+
* * SQL Data Type: bit
|
|
43849
|
+
* * Default Value: 1
|
|
43850
|
+
* * Description: Whether to send in-app notifications. Requires NotifyOnSuccess or NotifyOnFailure to also be enabled. Defaults to true.
|
|
43851
|
+
*/
|
|
43852
|
+
get NotifyViaInApp() {
|
|
43853
|
+
return this.Get('NotifyViaInApp');
|
|
43854
|
+
}
|
|
43855
|
+
set NotifyViaInApp(value) {
|
|
43856
|
+
this.Set('NotifyViaInApp', value);
|
|
43857
|
+
}
|
|
43858
|
+
/**
|
|
43859
|
+
* * Field Name: LockToken
|
|
43860
|
+
* * Display Name: Lock Token
|
|
43861
|
+
* * SQL Data Type: uniqueidentifier
|
|
43862
|
+
* * 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.
|
|
43863
|
+
*/
|
|
43864
|
+
get LockToken() {
|
|
43865
|
+
return this.Get('LockToken');
|
|
43866
|
+
}
|
|
43867
|
+
set LockToken(value) {
|
|
43868
|
+
this.Set('LockToken', value);
|
|
43869
|
+
}
|
|
43870
|
+
/**
|
|
43871
|
+
* * Field Name: LockedAt
|
|
43872
|
+
* * Display Name: Locked At
|
|
43873
|
+
* * SQL Data Type: datetimeoffset
|
|
43874
|
+
* * Description: Timestamp when the lock was acquired. Used with ExpectedCompletionAt to detect stale locks from crashed server instances.
|
|
43875
|
+
*/
|
|
43876
|
+
get LockedAt() {
|
|
43877
|
+
return this.Get('LockedAt');
|
|
43878
|
+
}
|
|
43879
|
+
set LockedAt(value) {
|
|
43880
|
+
this.Set('LockedAt', value);
|
|
43881
|
+
}
|
|
43882
|
+
/**
|
|
43883
|
+
* * Field Name: LockedByInstance
|
|
43884
|
+
* * Display Name: Locked By Instance
|
|
43885
|
+
* * SQL Data Type: nvarchar(255)
|
|
43886
|
+
* * 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.
|
|
43887
|
+
*/
|
|
43888
|
+
get LockedByInstance() {
|
|
43889
|
+
return this.Get('LockedByInstance');
|
|
43890
|
+
}
|
|
43891
|
+
set LockedByInstance(value) {
|
|
43892
|
+
this.Set('LockedByInstance', value);
|
|
43893
|
+
}
|
|
43894
|
+
/**
|
|
43895
|
+
* * Field Name: ExpectedCompletionAt
|
|
43896
|
+
* * Display Name: Expected Completion At
|
|
43897
|
+
* * SQL Data Type: datetimeoffset
|
|
43898
|
+
* * 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.
|
|
43899
|
+
*/
|
|
43900
|
+
get ExpectedCompletionAt() {
|
|
43901
|
+
return this.Get('ExpectedCompletionAt');
|
|
43902
|
+
}
|
|
43903
|
+
set ExpectedCompletionAt(value) {
|
|
43904
|
+
this.Set('ExpectedCompletionAt', value);
|
|
43905
|
+
}
|
|
43906
|
+
/**
|
|
43907
|
+
* * Field Name: ConcurrencyMode
|
|
43908
|
+
* * Display Name: Concurrency Mode
|
|
43909
|
+
* * SQL Data Type: nvarchar(20)
|
|
43910
|
+
* * Default Value: Skip
|
|
43911
|
+
* * Value List Type: List
|
|
43912
|
+
* * Possible Values
|
|
43913
|
+
* * Queue
|
|
43914
|
+
* * Concurrent
|
|
43915
|
+
* * Skip
|
|
43916
|
+
* * 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.
|
|
43917
|
+
*/
|
|
43918
|
+
get ConcurrencyMode() {
|
|
43919
|
+
return this.Get('ConcurrencyMode');
|
|
43920
|
+
}
|
|
43921
|
+
set ConcurrencyMode(value) {
|
|
43922
|
+
this.Set('ConcurrencyMode', value);
|
|
43923
|
+
}
|
|
43924
|
+
/**
|
|
43925
|
+
* * Field Name: __mj_CreatedAt
|
|
43926
|
+
* * Display Name: Created At
|
|
43927
|
+
* * SQL Data Type: datetimeoffset
|
|
43928
|
+
* * Default Value: getutcdate()
|
|
43929
|
+
*/
|
|
43930
|
+
get __mj_CreatedAt() {
|
|
43931
|
+
return this.Get('__mj_CreatedAt');
|
|
43932
|
+
}
|
|
43933
|
+
/**
|
|
43934
|
+
* * Field Name: __mj_UpdatedAt
|
|
43935
|
+
* * Display Name: Updated At
|
|
43936
|
+
* * SQL Data Type: datetimeoffset
|
|
43937
|
+
* * Default Value: getutcdate()
|
|
43938
|
+
*/
|
|
43939
|
+
get __mj_UpdatedAt() {
|
|
43940
|
+
return this.Get('__mj_UpdatedAt');
|
|
43941
|
+
}
|
|
43942
|
+
/**
|
|
43943
|
+
* * Field Name: JobType
|
|
43944
|
+
* * Display Name: Job Type
|
|
43945
|
+
* * SQL Data Type: nvarchar(100)
|
|
43946
|
+
*/
|
|
43947
|
+
get JobType() {
|
|
43948
|
+
return this.Get('JobType');
|
|
43949
|
+
}
|
|
43950
|
+
/**
|
|
43951
|
+
* * Field Name: OwnerUser
|
|
43952
|
+
* * Display Name: Owner User
|
|
43953
|
+
* * SQL Data Type: nvarchar(100)
|
|
43954
|
+
*/
|
|
43955
|
+
get OwnerUser() {
|
|
43956
|
+
return this.Get('OwnerUser');
|
|
43957
|
+
}
|
|
43958
|
+
/**
|
|
43959
|
+
* * Field Name: NotifyUser
|
|
43960
|
+
* * Display Name: Notify User
|
|
43961
|
+
* * SQL Data Type: nvarchar(100)
|
|
43962
|
+
*/
|
|
43963
|
+
get NotifyUser() {
|
|
43964
|
+
return this.Get('NotifyUser');
|
|
43965
|
+
}
|
|
43966
|
+
};
|
|
43967
|
+
exports.ScheduledJobEntity = ScheduledJobEntity;
|
|
43968
|
+
exports.ScheduledJobEntity = ScheduledJobEntity = __decorate([
|
|
43969
|
+
(0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: Scheduled Jobs')
|
|
43970
|
+
], ScheduledJobEntity);
|
|
42818
43971
|
/**
|
|
42819
43972
|
* MJ: Task Dependencies - strongly typed entity sub-class
|
|
42820
43973
|
* * Schema: __mj
|