@memberjunction/core-entities 5.44.0 → 5.45.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.
@@ -1645,6 +1645,7 @@ export declare const MJAIAgentRunStepSchema: z.ZodObject<{
1645
1645
  FinalPayloadValidationMessages: z.ZodNullable<z.ZodString>;
1646
1646
  ParentID: z.ZodNullable<z.ZodString>;
1647
1647
  Comments: z.ZodNullable<z.ZodString>;
1648
+ Skills: z.ZodNullable<z.ZodAny>;
1648
1649
  AgentRun: z.ZodNullable<z.ZodString>;
1649
1650
  Parent: z.ZodNullable<z.ZodString>;
1650
1651
  RootParentID: z.ZodNullable<z.ZodString>;
@@ -1674,6 +1675,7 @@ export declare const MJAIAgentRunStepSchema: z.ZodObject<{
1674
1675
  PayloadAtEnd?: string;
1675
1676
  FinalPayloadValidationResult?: "Fail" | "Pass" | "Retry" | "Warn";
1676
1677
  FinalPayloadValidationMessages?: string;
1678
+ Skills?: any;
1677
1679
  }, {
1678
1680
  ID?: string;
1679
1681
  __mj_CreatedAt?: Date;
@@ -1700,6 +1702,7 @@ export declare const MJAIAgentRunStepSchema: z.ZodObject<{
1700
1702
  PayloadAtEnd?: string;
1701
1703
  FinalPayloadValidationResult?: "Fail" | "Pass" | "Retry" | "Warn";
1702
1704
  FinalPayloadValidationMessages?: string;
1705
+ Skills?: any;
1703
1706
  }>;
1704
1707
  export type MJAIAgentRunStepEntityType = z.infer<typeof MJAIAgentRunStepSchema>;
1705
1708
  /**
@@ -1756,6 +1759,7 @@ export declare const MJAIAgentRunSchema: z.ZodObject<{
1756
1759
  TotalCacheWriteTokensUsed: z.ZodNullable<z.ZodNumber>;
1757
1760
  LastHeartbeatAt: z.ZodNullable<z.ZodDate>;
1758
1761
  AgentSessionID: z.ZodNullable<z.ZodString>;
1762
+ PlanMode: z.ZodBoolean;
1759
1763
  Agent: z.ZodNullable<z.ZodString>;
1760
1764
  ParentRun: z.ZodNullable<z.ZodString>;
1761
1765
  Conversation: z.ZodNullable<z.ZodString>;
@@ -1826,6 +1830,7 @@ export declare const MJAIAgentRunSchema: z.ZodObject<{
1826
1830
  TotalCacheWriteTokensUsed?: number;
1827
1831
  LastHeartbeatAt?: Date;
1828
1832
  AgentSessionID?: string;
1833
+ PlanMode?: boolean;
1829
1834
  ParentRun?: string;
1830
1835
  ConversationDetail?: string;
1831
1836
  LastRun?: string;
@@ -1891,6 +1896,7 @@ export declare const MJAIAgentRunSchema: z.ZodObject<{
1891
1896
  TotalCacheWriteTokensUsed?: number;
1892
1897
  LastHeartbeatAt?: Date;
1893
1898
  AgentSessionID?: string;
1899
+ PlanMode?: boolean;
1894
1900
  ParentRun?: string;
1895
1901
  ConversationDetail?: string;
1896
1902
  LastRun?: string;
@@ -2137,10 +2143,13 @@ export declare const MJAIAgentSessionSchema: z.ZodObject<{
2137
2143
  RecordingMedia: z.ZodNullable<z.ZodUnion<[z.ZodLiteral<"Audio">, z.ZodLiteral<"AudioVideo">, z.ZodLiteral<"None">]>>;
2138
2144
  RecordingStartedAt: z.ZodNullable<z.ZodDate>;
2139
2145
  RecordingFileID: z.ZodNullable<z.ZodString>;
2146
+ LinkedEntityID: z.ZodNullable<z.ZodString>;
2147
+ LinkedRecordID: z.ZodNullable<z.ZodString>;
2140
2148
  Agent: z.ZodNullable<z.ZodString>;
2141
2149
  User: z.ZodString;
2142
2150
  Conversation: z.ZodNullable<z.ZodString>;
2143
2151
  RecordingFile: z.ZodNullable<z.ZodString>;
2152
+ LinkedEntity: z.ZodNullable<z.ZodString>;
2144
2153
  RootLastSessionID: z.ZodNullable<z.ZodString>;
2145
2154
  }, "strip", z.ZodTypeAny, {
2146
2155
  ID?: string;
@@ -2162,7 +2171,10 @@ export declare const MJAIAgentSessionSchema: z.ZodObject<{
2162
2171
  RecordingMedia?: "Audio" | "None" | "AudioVideo";
2163
2172
  RecordingStartedAt?: Date;
2164
2173
  RecordingFileID?: string;
2174
+ LinkedEntityID?: string;
2175
+ LinkedRecordID?: string;
2165
2176
  RecordingFile?: string;
2177
+ LinkedEntity?: string;
2166
2178
  RootLastSessionID?: string;
2167
2179
  }, {
2168
2180
  ID?: string;
@@ -2184,7 +2196,10 @@ export declare const MJAIAgentSessionSchema: z.ZodObject<{
2184
2196
  RecordingMedia?: "Audio" | "None" | "AudioVideo";
2185
2197
  RecordingStartedAt?: Date;
2186
2198
  RecordingFileID?: string;
2199
+ LinkedEntityID?: string;
2200
+ LinkedRecordID?: string;
2187
2201
  RecordingFile?: string;
2202
+ LinkedEntity?: string;
2188
2203
  RootLastSessionID?: string;
2189
2204
  }>;
2190
2205
  export type MJAIAgentSessionEntityType = z.infer<typeof MJAIAgentSessionSchema>;
@@ -2493,6 +2508,8 @@ export declare const MJAIAgentSchema: z.ZodObject<{
2493
2508
  DefaultMediaCollectionID: z.ZodNullable<z.ZodString>;
2494
2509
  SupportsPlanMode: z.ZodBoolean;
2495
2510
  AcceptsSkills: z.ZodUnion<[z.ZodLiteral<"All">, z.ZodLiteral<"Limited">, z.ZodLiteral<"None">]>;
2511
+ SkillActivationMode: z.ZodUnion<[z.ZodLiteral<"Auto">, z.ZodLiteral<"RequestedOnly">]>;
2512
+ RequirePlanMode: z.ZodBoolean;
2496
2513
  Parent: z.ZodNullable<z.ZodString>;
2497
2514
  ContextCompressionPrompt: z.ZodNullable<z.ZodString>;
2498
2515
  Type: z.ZodNullable<z.ZodString>;
@@ -2586,6 +2603,8 @@ export declare const MJAIAgentSchema: z.ZodObject<{
2586
2603
  DefaultMediaCollectionID?: string;
2587
2604
  SupportsPlanMode?: boolean;
2588
2605
  AcceptsSkills?: "None" | "All" | "Limited";
2606
+ SkillActivationMode?: "Auto" | "RequestedOnly";
2607
+ RequirePlanMode?: boolean;
2589
2608
  ContextCompressionPrompt?: string;
2590
2609
  DefaultArtifactType?: string;
2591
2610
  OwnerUser?: string;
@@ -2674,6 +2693,8 @@ export declare const MJAIAgentSchema: z.ZodObject<{
2674
2693
  DefaultMediaCollectionID?: string;
2675
2694
  SupportsPlanMode?: boolean;
2676
2695
  AcceptsSkills?: "None" | "All" | "Limited";
2696
+ SkillActivationMode?: "Auto" | "RequestedOnly";
2697
+ RequirePlanMode?: boolean;
2677
2698
  ContextCompressionPrompt?: string;
2678
2699
  DefaultArtifactType?: string;
2679
2700
  OwnerUser?: string;
@@ -4437,6 +4458,7 @@ export declare const MJAISkillSchema: z.ZodObject<{
4437
4458
  CreatedByUserID: z.ZodString;
4438
4459
  __mj_CreatedAt: z.ZodDate;
4439
4460
  __mj_UpdatedAt: z.ZodDate;
4461
+ ActivationMode: z.ZodUnion<[z.ZodLiteral<"Auto">, z.ZodLiteral<"RequestedOnly">]>;
4440
4462
  CreatedByUser: z.ZodString;
4441
4463
  }, "strip", z.ZodTypeAny, {
4442
4464
  ID?: string;
@@ -4450,6 +4472,7 @@ export declare const MJAISkillSchema: z.ZodObject<{
4450
4472
  Instructions?: string;
4451
4473
  Color?: string;
4452
4474
  CreatedByUserID?: string;
4475
+ ActivationMode?: "Auto" | "RequestedOnly";
4453
4476
  CreatedByUser?: string;
4454
4477
  }, {
4455
4478
  ID?: string;
@@ -4463,6 +4486,7 @@ export declare const MJAISkillSchema: z.ZodObject<{
4463
4486
  Instructions?: string;
4464
4487
  Color?: string;
4465
4488
  CreatedByUserID?: string;
4489
+ ActivationMode?: "Auto" | "RequestedOnly";
4466
4490
  CreatedByUser?: string;
4467
4491
  }>;
4468
4492
  export type MJAISkillEntityType = z.infer<typeof MJAISkillSchema>;
@@ -7870,6 +7894,80 @@ export declare const MJConversationDetailSchema: z.ZodObject<{
7870
7894
  MediaType?: "Audio" | "Video" | "Text";
7871
7895
  }>;
7872
7896
  export type MJConversationDetailEntityType = z.infer<typeof MJConversationDetailSchema>;
7897
+ /**
7898
+ * zod schema definition for the entity MJ: Conversation Widget Instances
7899
+ */
7900
+ export declare const MJConversationWidgetInstanceSchema: z.ZodObject<{
7901
+ ID: z.ZodString;
7902
+ Name: z.ZodString;
7903
+ PublicKey: z.ZodString;
7904
+ ApplicationID: z.ZodString;
7905
+ PinnedAgentID: z.ZodString;
7906
+ GuestRoleID: z.ZodString;
7907
+ AllowedOrigins: z.ZodNullable<z.ZodString>;
7908
+ Modality: z.ZodUnion<[z.ZodLiteral<"Both">, z.ZodLiteral<"Text">, z.ZodLiteral<"Voice">]>;
7909
+ AuthStrategy: z.ZodUnion<[z.ZodLiteral<"Anonymous">, z.ZodLiteral<"HostIdentity">, z.ZodLiteral<"MagicLinkUpgrade">]>;
7910
+ Status: z.ZodUnion<[z.ZodLiteral<"Active">, z.ZodLiteral<"Disabled">]>;
7911
+ SessionTTLMinutes: z.ZodNumber;
7912
+ RateLimitPerMinute: z.ZodNumber;
7913
+ VoiceMaxSessionMinutes: z.ZodNullable<z.ZodNumber>;
7914
+ EnabledChannels: z.ZodNullable<z.ZodString>;
7915
+ HostPublicKey: z.ZodNullable<z.ZodString>;
7916
+ RememberReturningVisitors: z.ZodBoolean;
7917
+ VisitorMemoryRetentionDays: z.ZodNullable<z.ZodNumber>;
7918
+ __mj_CreatedAt: z.ZodDate;
7919
+ __mj_UpdatedAt: z.ZodDate;
7920
+ Application: z.ZodString;
7921
+ PinnedAgent: z.ZodNullable<z.ZodString>;
7922
+ GuestRole: z.ZodString;
7923
+ }, "strip", z.ZodTypeAny, {
7924
+ ID?: string;
7925
+ __mj_CreatedAt?: Date;
7926
+ __mj_UpdatedAt?: Date;
7927
+ Name?: string;
7928
+ Status?: "Active" | "Disabled";
7929
+ Modality?: "Both" | "Text" | "Voice";
7930
+ ApplicationID?: string;
7931
+ Application?: string;
7932
+ PublicKey?: string;
7933
+ PinnedAgentID?: string;
7934
+ GuestRoleID?: string;
7935
+ AllowedOrigins?: string;
7936
+ AuthStrategy?: "Anonymous" | "HostIdentity" | "MagicLinkUpgrade";
7937
+ SessionTTLMinutes?: number;
7938
+ RateLimitPerMinute?: number;
7939
+ VoiceMaxSessionMinutes?: number;
7940
+ EnabledChannels?: string;
7941
+ HostPublicKey?: string;
7942
+ RememberReturningVisitors?: boolean;
7943
+ VisitorMemoryRetentionDays?: number;
7944
+ PinnedAgent?: string;
7945
+ GuestRole?: string;
7946
+ }, {
7947
+ ID?: string;
7948
+ __mj_CreatedAt?: Date;
7949
+ __mj_UpdatedAt?: Date;
7950
+ Name?: string;
7951
+ Status?: "Active" | "Disabled";
7952
+ Modality?: "Both" | "Text" | "Voice";
7953
+ ApplicationID?: string;
7954
+ Application?: string;
7955
+ PublicKey?: string;
7956
+ PinnedAgentID?: string;
7957
+ GuestRoleID?: string;
7958
+ AllowedOrigins?: string;
7959
+ AuthStrategy?: "Anonymous" | "HostIdentity" | "MagicLinkUpgrade";
7960
+ SessionTTLMinutes?: number;
7961
+ RateLimitPerMinute?: number;
7962
+ VoiceMaxSessionMinutes?: number;
7963
+ EnabledChannels?: string;
7964
+ HostPublicKey?: string;
7965
+ RememberReturningVisitors?: boolean;
7966
+ VisitorMemoryRetentionDays?: number;
7967
+ PinnedAgent?: string;
7968
+ GuestRole?: string;
7969
+ }>;
7970
+ export type MJConversationWidgetInstanceEntityType = z.infer<typeof MJConversationWidgetInstanceSchema>;
7873
7971
  /**
7874
7972
  * zod schema definition for the entity MJ: Conversations
7875
7973
  */
@@ -7897,6 +7995,8 @@ export declare const MJConversationSchema: z.ZodObject<{
7897
7995
  AdditionalData: z.ZodNullable<z.ZodString>;
7898
7996
  RecordingFileID: z.ZodNullable<z.ZodString>;
7899
7997
  EgressID: z.ZodNullable<z.ZodString>;
7998
+ VisitorKey: z.ZodNullable<z.ZodString>;
7999
+ LastConversationID: z.ZodNullable<z.ZodString>;
7900
8000
  User: z.ZodString;
7901
8001
  LinkedEntity: z.ZodNullable<z.ZodString>;
7902
8002
  DataContext: z.ZodNullable<z.ZodString>;
@@ -7906,6 +8006,8 @@ export declare const MJConversationSchema: z.ZodObject<{
7906
8006
  Application: z.ZodNullable<z.ZodString>;
7907
8007
  DefaultAgent: z.ZodNullable<z.ZodString>;
7908
8008
  RecordingFile: z.ZodNullable<z.ZodString>;
8009
+ LastConversation: z.ZodNullable<z.ZodString>;
8010
+ RootLastConversationID: z.ZodNullable<z.ZodString>;
7909
8011
  }, "strip", z.ZodTypeAny, {
7910
8012
  ID?: string;
7911
8013
  User?: string;
@@ -7919,7 +8021,10 @@ export declare const MJConversationSchema: z.ZodObject<{
7919
8021
  TestRunID?: string;
7920
8022
  TestRun?: string;
7921
8023
  RecordingFileID?: string;
8024
+ LinkedEntityID?: string;
8025
+ LinkedRecordID?: string;
7922
8026
  RecordingFile?: string;
8027
+ LinkedEntity?: string;
7923
8028
  ApplicationID?: string;
7924
8029
  Application?: string;
7925
8030
  EnvironmentID?: string;
@@ -7927,18 +8032,19 @@ export declare const MJConversationSchema: z.ZodObject<{
7927
8032
  ExternalID?: string;
7928
8033
  IsPinned?: boolean;
7929
8034
  IsArchived?: boolean;
7930
- LinkedEntityID?: string;
7931
- LinkedRecordID?: string;
7932
8035
  DataContextID?: string;
7933
8036
  ProjectID?: string;
7934
8037
  ApplicationScope?: "Both" | "Application" | "Global";
7935
8038
  DefaultAgentID?: string;
7936
8039
  AdditionalData?: string;
7937
8040
  EgressID?: string;
7938
- LinkedEntity?: string;
8041
+ VisitorKey?: string;
8042
+ LastConversationID?: string;
7939
8043
  DataContext?: string;
7940
8044
  Project?: string;
7941
8045
  DefaultAgent?: string;
8046
+ LastConversation?: string;
8047
+ RootLastConversationID?: string;
7942
8048
  }, {
7943
8049
  ID?: string;
7944
8050
  User?: string;
@@ -7952,7 +8058,10 @@ export declare const MJConversationSchema: z.ZodObject<{
7952
8058
  TestRunID?: string;
7953
8059
  TestRun?: string;
7954
8060
  RecordingFileID?: string;
8061
+ LinkedEntityID?: string;
8062
+ LinkedRecordID?: string;
7955
8063
  RecordingFile?: string;
8064
+ LinkedEntity?: string;
7956
8065
  ApplicationID?: string;
7957
8066
  Application?: string;
7958
8067
  EnvironmentID?: string;
@@ -7960,18 +8069,19 @@ export declare const MJConversationSchema: z.ZodObject<{
7960
8069
  ExternalID?: string;
7961
8070
  IsPinned?: boolean;
7962
8071
  IsArchived?: boolean;
7963
- LinkedEntityID?: string;
7964
- LinkedRecordID?: string;
7965
8072
  DataContextID?: string;
7966
8073
  ProjectID?: string;
7967
8074
  ApplicationScope?: "Both" | "Application" | "Global";
7968
8075
  DefaultAgentID?: string;
7969
8076
  AdditionalData?: string;
7970
8077
  EgressID?: string;
7971
- LinkedEntity?: string;
8078
+ VisitorKey?: string;
8079
+ LastConversationID?: string;
7972
8080
  DataContext?: string;
7973
8081
  Project?: string;
7974
8082
  DefaultAgent?: string;
8083
+ LastConversation?: string;
8084
+ RootLastConversationID?: string;
7975
8085
  }>;
7976
8086
  export type MJConversationEntityType = z.infer<typeof MJConversationSchema>;
7977
8087
  /**
@@ -9217,6 +9327,8 @@ export declare const MJEntitySchema: z.ZodObject<{
9217
9327
  AutoUpdateSupportsGeoCoding: z.ZodBoolean;
9218
9328
  AllowCaching: z.ZodBoolean;
9219
9329
  DetectExternalChanges: z.ZodBoolean;
9330
+ ExternalDataSourceID: z.ZodNullable<z.ZodString>;
9331
+ ExternalObjectName: z.ZodNullable<z.ZodString>;
9220
9332
  CodeName: z.ZodNullable<z.ZodString>;
9221
9333
  ClassName: z.ZodNullable<z.ZodString>;
9222
9334
  BaseTableCodeName: z.ZodNullable<z.ZodString>;
@@ -9235,6 +9347,7 @@ export declare const MJEntitySchema: z.ZodObject<{
9235
9347
  DisplayName?: string;
9236
9348
  Icon?: string;
9237
9349
  ClassName?: string;
9350
+ ExternalObjectName?: string;
9238
9351
  CodeName?: string;
9239
9352
  NameSuffix?: string;
9240
9353
  AutoUpdateDescription?: boolean;
@@ -9292,6 +9405,7 @@ export declare const MJEntitySchema: z.ZodObject<{
9292
9405
  AutoUpdateSupportsGeoCoding?: boolean;
9293
9406
  AllowCaching?: boolean;
9294
9407
  DetectExternalChanges?: boolean;
9408
+ ExternalDataSourceID?: string;
9295
9409
  BaseTableCodeName?: string;
9296
9410
  ParentEntity?: string;
9297
9411
  ParentBaseTable?: string;
@@ -9308,6 +9422,7 @@ export declare const MJEntitySchema: z.ZodObject<{
9308
9422
  DisplayName?: string;
9309
9423
  Icon?: string;
9310
9424
  ClassName?: string;
9425
+ ExternalObjectName?: string;
9311
9426
  CodeName?: string;
9312
9427
  NameSuffix?: string;
9313
9428
  AutoUpdateDescription?: boolean;
@@ -9365,6 +9480,7 @@ export declare const MJEntitySchema: z.ZodObject<{
9365
9480
  AutoUpdateSupportsGeoCoding?: boolean;
9366
9481
  AllowCaching?: boolean;
9367
9482
  DetectExternalChanges?: boolean;
9483
+ ExternalDataSourceID?: string;
9368
9484
  BaseTableCodeName?: string;
9369
9485
  ParentEntity?: string;
9370
9486
  ParentBaseTable?: string;
@@ -10835,6 +10951,115 @@ export declare const MJExplorerNavigationItemSchema: z.ZodObject<{
10835
10951
  IconCSSClass?: string;
10836
10952
  }>;
10837
10953
  export type MJExplorerNavigationItemEntityType = z.infer<typeof MJExplorerNavigationItemSchema>;
10954
+ /**
10955
+ * zod schema definition for the entity MJ: External Data Source Types
10956
+ */
10957
+ export declare const MJExternalDataSourceTypeSchema: z.ZodObject<{
10958
+ ID: z.ZodString;
10959
+ Name: z.ZodString;
10960
+ Description: z.ZodNullable<z.ZodString>;
10961
+ DriverClass: z.ZodString;
10962
+ RequiredCredentialTypeID: z.ZodNullable<z.ZodString>;
10963
+ MetadataIntrospectionStrategy: z.ZodUnion<[z.ZodLiteral<"InformationSchema">, z.ZodLiteral<"Manual">, z.ZodLiteral<"NativeCatalog">, z.ZodLiteral<"SampledDocuments">]>;
10964
+ FilterDialect: z.ZodUnion<[z.ZodLiteral<"ansi">, z.ZodLiteral<"mongo-ast">, z.ZodLiteral<"mysql">, z.ZodLiteral<"oracle">, z.ZodLiteral<"pgsql">, z.ZodLiteral<"tsql">]>;
10965
+ PagingStrategy: z.ZodUnion<[z.ZodLiteral<"Cursor">, z.ZodLiteral<"LimitOffset">, z.ZodLiteral<"OffsetFetch">, z.ZodLiteral<"TopSkip">]>;
10966
+ SupportsSchemaIntrospection: z.ZodBoolean;
10967
+ SupportsNativeQueries: z.ZodBoolean;
10968
+ SupportsReadWrite: z.ZodBoolean;
10969
+ Status: z.ZodUnion<[z.ZodLiteral<"Active">, z.ZodLiteral<"Deprecated">]>;
10970
+ __mj_CreatedAt: z.ZodDate;
10971
+ __mj_UpdatedAt: z.ZodDate;
10972
+ RequiredCredentialType: z.ZodNullable<z.ZodString>;
10973
+ }, "strip", z.ZodTypeAny, {
10974
+ ID?: string;
10975
+ __mj_CreatedAt?: Date;
10976
+ __mj_UpdatedAt?: Date;
10977
+ Name?: string;
10978
+ Description?: string;
10979
+ Status?: "Active" | "Deprecated";
10980
+ DriverClass?: string;
10981
+ RequiredCredentialTypeID?: string;
10982
+ MetadataIntrospectionStrategy?: "Manual" | "InformationSchema" | "NativeCatalog" | "SampledDocuments";
10983
+ FilterDialect?: "ansi" | "mongo-ast" | "mysql" | "oracle" | "pgsql" | "tsql";
10984
+ PagingStrategy?: "Cursor" | "LimitOffset" | "OffsetFetch" | "TopSkip";
10985
+ SupportsSchemaIntrospection?: boolean;
10986
+ SupportsNativeQueries?: boolean;
10987
+ SupportsReadWrite?: boolean;
10988
+ RequiredCredentialType?: string;
10989
+ }, {
10990
+ ID?: string;
10991
+ __mj_CreatedAt?: Date;
10992
+ __mj_UpdatedAt?: Date;
10993
+ Name?: string;
10994
+ Description?: string;
10995
+ Status?: "Active" | "Deprecated";
10996
+ DriverClass?: string;
10997
+ RequiredCredentialTypeID?: string;
10998
+ MetadataIntrospectionStrategy?: "Manual" | "InformationSchema" | "NativeCatalog" | "SampledDocuments";
10999
+ FilterDialect?: "ansi" | "mongo-ast" | "mysql" | "oracle" | "pgsql" | "tsql";
11000
+ PagingStrategy?: "Cursor" | "LimitOffset" | "OffsetFetch" | "TopSkip";
11001
+ SupportsSchemaIntrospection?: boolean;
11002
+ SupportsNativeQueries?: boolean;
11003
+ SupportsReadWrite?: boolean;
11004
+ RequiredCredentialType?: string;
11005
+ }>;
11006
+ export type MJExternalDataSourceTypeEntityType = z.infer<typeof MJExternalDataSourceTypeSchema>;
11007
+ /**
11008
+ * zod schema definition for the entity MJ: External Data Sources
11009
+ */
11010
+ export declare const MJExternalDataSourceSchema: z.ZodObject<{
11011
+ ID: z.ZodString;
11012
+ Name: z.ZodString;
11013
+ Description: z.ZodNullable<z.ZodString>;
11014
+ TypeID: z.ZodString;
11015
+ CredentialID: z.ZodNullable<z.ZodString>;
11016
+ DefaultSchema: z.ZodNullable<z.ZodString>;
11017
+ DefaultDatabase: z.ZodNullable<z.ZodString>;
11018
+ ConnectionConfig: z.ZodNullable<z.ZodString>;
11019
+ DefaultCacheTTLSeconds: z.ZodNumber;
11020
+ Status: z.ZodUnion<[z.ZodLiteral<"Active">, z.ZodLiteral<"Disabled">, z.ZodLiteral<"TestFailed">]>;
11021
+ LastConnectionTestAt: z.ZodNullable<z.ZodDate>;
11022
+ LastConnectionTestResult: z.ZodNullable<z.ZodString>;
11023
+ __mj_CreatedAt: z.ZodDate;
11024
+ __mj_UpdatedAt: z.ZodDate;
11025
+ Type: z.ZodString;
11026
+ Credential: z.ZodNullable<z.ZodString>;
11027
+ }, "strip", z.ZodTypeAny, {
11028
+ ID?: string;
11029
+ __mj_CreatedAt?: Date;
11030
+ __mj_UpdatedAt?: Date;
11031
+ Name?: string;
11032
+ Description?: string;
11033
+ Status?: "Active" | "Disabled" | "TestFailed";
11034
+ Type?: string;
11035
+ TypeID?: string;
11036
+ CredentialID?: string;
11037
+ Credential?: string;
11038
+ DefaultSchema?: string;
11039
+ DefaultDatabase?: string;
11040
+ ConnectionConfig?: string;
11041
+ DefaultCacheTTLSeconds?: number;
11042
+ LastConnectionTestAt?: Date;
11043
+ LastConnectionTestResult?: string;
11044
+ }, {
11045
+ ID?: string;
11046
+ __mj_CreatedAt?: Date;
11047
+ __mj_UpdatedAt?: Date;
11048
+ Name?: string;
11049
+ Description?: string;
11050
+ Status?: "Active" | "Disabled" | "TestFailed";
11051
+ Type?: string;
11052
+ TypeID?: string;
11053
+ CredentialID?: string;
11054
+ Credential?: string;
11055
+ DefaultSchema?: string;
11056
+ DefaultDatabase?: string;
11057
+ ConnectionConfig?: string;
11058
+ DefaultCacheTTLSeconds?: number;
11059
+ LastConnectionTestAt?: Date;
11060
+ LastConnectionTestResult?: string;
11061
+ }>;
11062
+ export type MJExternalDataSourceEntityType = z.infer<typeof MJExternalDataSourceSchema>;
10838
11063
  /**
10839
11064
  * zod schema definition for the entity MJ: File Categories
10840
11065
  */
@@ -11132,9 +11357,9 @@ export declare const MJGeneratedCodeSchema: z.ZodObject<{
11132
11357
  Code?: string;
11133
11358
  CategoryID?: string;
11134
11359
  Category?: string;
11135
- Source?: string;
11136
11360
  LinkedEntityID?: string;
11137
11361
  LinkedEntity?: string;
11362
+ Source?: string;
11138
11363
  GeneratedAt?: Date;
11139
11364
  GeneratedByModelID?: string;
11140
11365
  LinkedRecordPrimaryKey?: string;
@@ -11150,9 +11375,9 @@ export declare const MJGeneratedCodeSchema: z.ZodObject<{
11150
11375
  Code?: string;
11151
11376
  CategoryID?: string;
11152
11377
  Category?: string;
11153
- Source?: string;
11154
11378
  LinkedEntityID?: string;
11155
11379
  LinkedEntity?: string;
11380
+ Source?: string;
11156
11381
  GeneratedAt?: Date;
11157
11382
  GeneratedByModelID?: string;
11158
11383
  LinkedRecordPrimaryKey?: string;
@@ -12345,11 +12570,11 @@ export declare const MJMCPServerSchema: z.ZodObject<{
12345
12570
  CredentialTypeID?: string;
12346
12571
  CredentialType?: string;
12347
12572
  LastSyncAt?: Date;
12573
+ RateLimitPerMinute?: number;
12348
12574
  ServerURL?: string;
12349
12575
  Command?: string;
12350
12576
  CommandArgs?: string;
12351
12577
  DefaultAuthType?: string;
12352
- RateLimitPerMinute?: number;
12353
12578
  RateLimitPerHour?: number;
12354
12579
  ConnectionTimeoutMs?: number;
12355
12580
  RequestTimeoutMs?: number;
@@ -12372,11 +12597,11 @@ export declare const MJMCPServerSchema: z.ZodObject<{
12372
12597
  CredentialTypeID?: string;
12373
12598
  CredentialType?: string;
12374
12599
  LastSyncAt?: Date;
12600
+ RateLimitPerMinute?: number;
12375
12601
  ServerURL?: string;
12376
12602
  Command?: string;
12377
12603
  CommandArgs?: string;
12378
12604
  DefaultAuthType?: string;
12379
- RateLimitPerMinute?: number;
12380
12605
  RateLimitPerHour?: number;
12381
12606
  ConnectionTimeoutMs?: number;
12382
12607
  RequestTimeoutMs?: number;
@@ -13665,9 +13890,11 @@ export declare const MJQuerySchema: z.ZodObject<{
13665
13890
  CacheValidationSQL: z.ZodNullable<z.ZodString>;
13666
13891
  SQLDialectID: z.ZodString;
13667
13892
  Reusable: z.ZodBoolean;
13893
+ ExternalDataSourceID: z.ZodNullable<z.ZodString>;
13668
13894
  Category: z.ZodNullable<z.ZodString>;
13669
13895
  EmbeddingModel: z.ZodNullable<z.ZodString>;
13670
13896
  SQLDialect: z.ZodString;
13897
+ ExternalDataSource: z.ZodNullable<z.ZodString>;
13671
13898
  }, "strip", z.ZodTypeAny, {
13672
13899
  ID?: string;
13673
13900
  __mj_CreatedAt?: Date;
@@ -13681,6 +13908,7 @@ export declare const MJQuerySchema: z.ZodObject<{
13681
13908
  EmbeddingModelID?: string;
13682
13909
  EmbeddingModel?: string;
13683
13910
  SQL?: string;
13911
+ ExternalDataSourceID?: string;
13684
13912
  UserQuestion?: string;
13685
13913
  TechnicalDescription?: string;
13686
13914
  OriginalSQL?: string;
@@ -13696,6 +13924,7 @@ export declare const MJQuerySchema: z.ZodObject<{
13696
13924
  SQLDialectID?: string;
13697
13925
  Reusable?: boolean;
13698
13926
  SQLDialect?: string;
13927
+ ExternalDataSource?: string;
13699
13928
  }, {
13700
13929
  ID?: string;
13701
13930
  __mj_CreatedAt?: Date;
@@ -13709,6 +13938,7 @@ export declare const MJQuerySchema: z.ZodObject<{
13709
13938
  EmbeddingModelID?: string;
13710
13939
  EmbeddingModel?: string;
13711
13940
  SQL?: string;
13941
+ ExternalDataSourceID?: string;
13712
13942
  UserQuestion?: string;
13713
13943
  TechnicalDescription?: string;
13714
13944
  OriginalSQL?: string;
@@ -13724,6 +13954,7 @@ export declare const MJQuerySchema: z.ZodObject<{
13724
13954
  SQLDialectID?: string;
13725
13955
  Reusable?: boolean;
13726
13956
  SQLDialect?: string;
13957
+ ExternalDataSource?: string;
13727
13958
  }>;
13728
13959
  export type MJQueryEntityType = z.infer<typeof MJQuerySchema>;
13729
13960
  /**
@@ -13795,7 +14026,7 @@ export declare const MJQueryDependencySchema: z.ZodObject<{
13795
14026
  ID?: string;
13796
14027
  __mj_CreatedAt?: Date;
13797
14028
  __mj_UpdatedAt?: Date;
13798
- DetectionMethod?: "Manual" | "Auto";
14029
+ DetectionMethod?: "Auto" | "Manual";
13799
14030
  QueryID?: string;
13800
14031
  Query?: string;
13801
14032
  DependsOnQueryID?: string;
@@ -13807,7 +14038,7 @@ export declare const MJQueryDependencySchema: z.ZodObject<{
13807
14038
  ID?: string;
13808
14039
  __mj_CreatedAt?: Date;
13809
14040
  __mj_UpdatedAt?: Date;
13810
- DetectionMethod?: "Manual" | "Auto";
14041
+ DetectionMethod?: "Auto" | "Manual";
13811
14042
  QueryID?: string;
13812
14043
  Query?: string;
13813
14044
  DependsOnQueryID?: string;
@@ -18136,6 +18367,207 @@ export declare const MJUserRoleSchema: z.ZodObject<{
18136
18367
  RoleID?: string;
18137
18368
  }>;
18138
18369
  export type MJUserRoleEntityType = z.infer<typeof MJUserRoleSchema>;
18370
+ /**
18371
+ * zod schema definition for the entity MJ: User Routine Recipients
18372
+ */
18373
+ export declare const MJUserRoutineRecipientSchema: z.ZodObject<{
18374
+ ID: z.ZodString;
18375
+ RoutineID: z.ZodString;
18376
+ UserID: z.ZodNullable<z.ZodString>;
18377
+ Email: z.ZodNullable<z.ZodString>;
18378
+ Channel: z.ZodUnion<[z.ZodLiteral<"Email">, z.ZodLiteral<"InApp">]>;
18379
+ Sequence: z.ZodNumber;
18380
+ __mj_CreatedAt: z.ZodDate;
18381
+ __mj_UpdatedAt: z.ZodDate;
18382
+ Routine: z.ZodString;
18383
+ User: z.ZodNullable<z.ZodString>;
18384
+ }, "strip", z.ZodTypeAny, {
18385
+ ID?: string;
18386
+ User?: string;
18387
+ __mj_CreatedAt?: Date;
18388
+ __mj_UpdatedAt?: Date;
18389
+ UserID?: string;
18390
+ Sequence?: number;
18391
+ Channel?: "Email" | "InApp";
18392
+ Email?: string;
18393
+ RoutineID?: string;
18394
+ Routine?: string;
18395
+ }, {
18396
+ ID?: string;
18397
+ User?: string;
18398
+ __mj_CreatedAt?: Date;
18399
+ __mj_UpdatedAt?: Date;
18400
+ UserID?: string;
18401
+ Sequence?: number;
18402
+ Channel?: "Email" | "InApp";
18403
+ Email?: string;
18404
+ RoutineID?: string;
18405
+ Routine?: string;
18406
+ }>;
18407
+ export type MJUserRoutineRecipientEntityType = z.infer<typeof MJUserRoutineRecipientSchema>;
18408
+ /**
18409
+ * zod schema definition for the entity MJ: User Routine Runs
18410
+ */
18411
+ export declare const MJUserRoutineRunSchema: z.ZodObject<{
18412
+ ID: z.ZodString;
18413
+ RoutineID: z.ZodString;
18414
+ StartedAt: z.ZodDate;
18415
+ CompletedAt: z.ZodNullable<z.ZodDate>;
18416
+ Status: z.ZodUnion<[z.ZodLiteral<"Failed">, z.ZodLiteral<"Running">, z.ZodLiteral<"Skipped">, z.ZodLiteral<"Success">]>;
18417
+ AgentRunID: z.ZodNullable<z.ZodString>;
18418
+ PromptRunID: z.ZodNullable<z.ZodString>;
18419
+ ActionExecutionLogID: z.ZodNullable<z.ZodString>;
18420
+ ResultSummary: z.ZodNullable<z.ZodString>;
18421
+ ResultHash: z.ZodNullable<z.ZodString>;
18422
+ NotificationSent: z.ZodBoolean;
18423
+ ErrorMessage: z.ZodNullable<z.ZodString>;
18424
+ __mj_CreatedAt: z.ZodDate;
18425
+ __mj_UpdatedAt: z.ZodDate;
18426
+ Routine: z.ZodString;
18427
+ AgentRun: z.ZodNullable<z.ZodString>;
18428
+ PromptRun: z.ZodNullable<z.ZodString>;
18429
+ ActionExecutionLog: z.ZodNullable<z.ZodString>;
18430
+ }, "strip", z.ZodTypeAny, {
18431
+ ID?: string;
18432
+ __mj_CreatedAt?: Date;
18433
+ __mj_UpdatedAt?: Date;
18434
+ Status?: "Failed" | "Running" | "Success" | "Skipped";
18435
+ StartedAt?: Date;
18436
+ AgentRunID?: string;
18437
+ AgentRun?: string;
18438
+ CompletedAt?: Date;
18439
+ ErrorMessage?: string;
18440
+ PromptRunID?: string;
18441
+ PromptRun?: string;
18442
+ ActionExecutionLogID?: string;
18443
+ ActionExecutionLog?: string;
18444
+ ResultSummary?: string;
18445
+ RoutineID?: string;
18446
+ Routine?: string;
18447
+ ResultHash?: string;
18448
+ NotificationSent?: boolean;
18449
+ }, {
18450
+ ID?: string;
18451
+ __mj_CreatedAt?: Date;
18452
+ __mj_UpdatedAt?: Date;
18453
+ Status?: "Failed" | "Running" | "Success" | "Skipped";
18454
+ StartedAt?: Date;
18455
+ AgentRunID?: string;
18456
+ AgentRun?: string;
18457
+ CompletedAt?: Date;
18458
+ ErrorMessage?: string;
18459
+ PromptRunID?: string;
18460
+ PromptRun?: string;
18461
+ ActionExecutionLogID?: string;
18462
+ ActionExecutionLog?: string;
18463
+ ResultSummary?: string;
18464
+ RoutineID?: string;
18465
+ Routine?: string;
18466
+ ResultHash?: string;
18467
+ NotificationSent?: boolean;
18468
+ }>;
18469
+ export type MJUserRoutineRunEntityType = z.infer<typeof MJUserRoutineRunSchema>;
18470
+ /**
18471
+ * zod schema definition for the entity MJ: User Routines
18472
+ */
18473
+ export declare const MJUserRoutineSchema: z.ZodObject<{
18474
+ ID: z.ZodString;
18475
+ UserID: z.ZodString;
18476
+ EnvironmentID: z.ZodNullable<z.ZodString>;
18477
+ Name: z.ZodString;
18478
+ Description: z.ZodNullable<z.ZodString>;
18479
+ Status: z.ZodUnion<[z.ZodLiteral<"Active">, z.ZodLiteral<"Disabled">, z.ZodLiteral<"Paused">]>;
18480
+ RoutineType: z.ZodUnion<[z.ZodLiteral<"Monitoring">, z.ZodLiteral<"Scheduled">]>;
18481
+ TargetType: z.ZodUnion<[z.ZodLiteral<"Action">, z.ZodLiteral<"Agent">, z.ZodLiteral<"Prompt">]>;
18482
+ TargetID: z.ZodString;
18483
+ InitialMessage: z.ZodNullable<z.ZodString>;
18484
+ StartingPayload: z.ZodNullable<z.ZodString>;
18485
+ RequestedSkillIDs: z.ZodNullable<z.ZodString>;
18486
+ CronExpression: z.ZodString;
18487
+ StartAt: z.ZodNullable<z.ZodDate>;
18488
+ EndAt: z.ZodNullable<z.ZodDate>;
18489
+ NotificationTemplateID: z.ZodNullable<z.ZodString>;
18490
+ Timezone: z.ZodString;
18491
+ NextRunAt: z.ZodNullable<z.ZodDate>;
18492
+ LastRunAt: z.ZodNullable<z.ZodDate>;
18493
+ LastRunStatus: z.ZodNullable<z.ZodUnion<[z.ZodLiteral<"Failed">, z.ZodLiteral<"Running">, z.ZodLiteral<"Skipped">, z.ZodLiteral<"Success">]>>;
18494
+ LastResultHash: z.ZodNullable<z.ZodString>;
18495
+ NotifyCondition: z.ZodUnion<[z.ZodLiteral<"Always">, z.ZodLiteral<"OnChange">, z.ZodLiteral<"OnFailure">, z.ZodLiteral<"OnSuccess">]>;
18496
+ NotifyViaInApp: z.ZodBoolean;
18497
+ NotifyViaEmail: z.ZodBoolean;
18498
+ __mj_CreatedAt: z.ZodDate;
18499
+ __mj_UpdatedAt: z.ZodDate;
18500
+ ConversationID: z.ZodNullable<z.ZodString>;
18501
+ User: z.ZodString;
18502
+ Environment: z.ZodNullable<z.ZodString>;
18503
+ NotificationTemplate: z.ZodNullable<z.ZodString>;
18504
+ Conversation: z.ZodNullable<z.ZodString>;
18505
+ }, "strip", z.ZodTypeAny, {
18506
+ ID?: string;
18507
+ User?: string;
18508
+ __mj_CreatedAt?: Date;
18509
+ __mj_UpdatedAt?: Date;
18510
+ Name?: string;
18511
+ Description?: string;
18512
+ Status?: "Active" | "Disabled" | "Paused";
18513
+ UserID?: string;
18514
+ Conversation?: string;
18515
+ TargetID?: string;
18516
+ ConversationID?: string;
18517
+ StartingPayload?: string;
18518
+ StartAt?: Date;
18519
+ EndAt?: Date;
18520
+ EnvironmentID?: string;
18521
+ Environment?: string;
18522
+ CronExpression?: string;
18523
+ Timezone?: string;
18524
+ LastRunAt?: Date;
18525
+ NextRunAt?: Date;
18526
+ NotifyViaEmail?: boolean;
18527
+ NotifyViaInApp?: boolean;
18528
+ TargetType?: "Action" | "Agent" | "Prompt";
18529
+ RoutineType?: "Scheduled" | "Monitoring";
18530
+ InitialMessage?: string;
18531
+ RequestedSkillIDs?: string;
18532
+ NotificationTemplateID?: string;
18533
+ LastRunStatus?: "Failed" | "Running" | "Success" | "Skipped";
18534
+ LastResultHash?: string;
18535
+ NotifyCondition?: "Always" | "OnChange" | "OnFailure" | "OnSuccess";
18536
+ NotificationTemplate?: string;
18537
+ }, {
18538
+ ID?: string;
18539
+ User?: string;
18540
+ __mj_CreatedAt?: Date;
18541
+ __mj_UpdatedAt?: Date;
18542
+ Name?: string;
18543
+ Description?: string;
18544
+ Status?: "Active" | "Disabled" | "Paused";
18545
+ UserID?: string;
18546
+ Conversation?: string;
18547
+ TargetID?: string;
18548
+ ConversationID?: string;
18549
+ StartingPayload?: string;
18550
+ StartAt?: Date;
18551
+ EndAt?: Date;
18552
+ EnvironmentID?: string;
18553
+ Environment?: string;
18554
+ CronExpression?: string;
18555
+ Timezone?: string;
18556
+ LastRunAt?: Date;
18557
+ NextRunAt?: Date;
18558
+ NotifyViaEmail?: boolean;
18559
+ NotifyViaInApp?: boolean;
18560
+ TargetType?: "Action" | "Agent" | "Prompt";
18561
+ RoutineType?: "Scheduled" | "Monitoring";
18562
+ InitialMessage?: string;
18563
+ RequestedSkillIDs?: string;
18564
+ NotificationTemplateID?: string;
18565
+ LastRunStatus?: "Failed" | "Running" | "Success" | "Skipped";
18566
+ LastResultHash?: string;
18567
+ NotifyCondition?: "Always" | "OnChange" | "OnFailure" | "OnSuccess";
18568
+ NotificationTemplate?: string;
18569
+ }>;
18570
+ export type MJUserRoutineEntityType = z.infer<typeof MJUserRoutineSchema>;
18139
18571
  /**
18140
18572
  * zod schema definition for the entity MJ: User Settings
18141
18573
  */
@@ -18401,9 +18833,9 @@ export declare const MJUserSchema: z.ZodObject<{
18401
18833
  Name?: string;
18402
18834
  Type?: "User" | "Owner";
18403
18835
  IsActive?: boolean;
18836
+ LinkedEntityID?: string;
18404
18837
  Email?: string;
18405
18838
  Title?: string;
18406
- LinkedEntityID?: string;
18407
18839
  EmployeeID?: string;
18408
18840
  FirstName?: string;
18409
18841
  LastName?: string;
@@ -18424,9 +18856,9 @@ export declare const MJUserSchema: z.ZodObject<{
18424
18856
  Name?: string;
18425
18857
  Type?: "User" | "Owner";
18426
18858
  IsActive?: boolean;
18859
+ LinkedEntityID?: string;
18427
18860
  Email?: string;
18428
18861
  Title?: string;
18429
- LinkedEntityID?: string;
18430
18862
  EmployeeID?: string;
18431
18863
  FirstName?: string;
18432
18864
  LastName?: string;
@@ -21102,6 +21534,7 @@ export declare class MJAIAgentChannelEntity extends BaseEntity<MJAIAgentChannelE
21102
21534
  * * Field Name: UIConfig
21103
21535
  * * Display Name: UI Configuration
21104
21536
  * * SQL Data Type: nvarchar(MAX)
21537
+ * * JSON Type: MJAIAgentChannelEntity_IChannelUIConfig
21105
21538
  * * Description: Channel-definition-level presentation/chrome config JSON (shape = IChannelUIConfig): tab DisplayName, GroupName, Color (prefer a design-token name), Icon, SortOrder. Distinct from ConfigSchema, which validates per-session AIAgentSessionChannel.Config state-of-record. Null = host defaults.
21106
21539
  */
21107
21540
  get UIConfig(): string | null;
@@ -23899,6 +24332,46 @@ export declare class MJAIAgentRunMediaEntity extends BaseEntity<MJAIAgentRunMedi
23899
24332
  */
23900
24333
  get File(): string | null;
23901
24334
  }
24335
+ /**
24336
+ * One skill's involvement in an agent run step — the observability contract for skills.
24337
+ * `AIAgentRunStep.Skills` holds a JSON array of these (or NULL when no skills are in play),
24338
+ * so every step touched by a skill records WHICH skill, HOW it entered the run, and the
24339
+ * PROVENANCE OF AUTHORITY that admitted it.
24340
+ *
24341
+ * Population rules (implemented in BaseAgent):
24342
+ * - Skill steps record the activation(s) they performed (with Reason when agent-initiated).
24343
+ * - Prompt steps record the full set of skills in effect for that turn.
24344
+ * - Actions / Sub-Agent steps record the skill(s) through which the executed tool became
24345
+ * available; NULL means the tool was a native agent grant.
24346
+ *
24347
+ * Runtime twin: `MJAIAgentRunStepEntity_AgentSkillInvocation` in @memberjunction/ai-core-plus (agent-types.ts) —
24348
+ * keep the two in sync.
24349
+ */
24350
+ export interface MJAIAgentRunStepEntity_AgentSkillInvocation {
24351
+ /** ID of the activated skill (MJ: AI Skills.ID). */
24352
+ SkillID: string;
24353
+ /** Name of the activated skill at activation time. */
24354
+ SkillName: string;
24355
+ /** How the skill entered the run: explicit user request (/skill mention) or agent self-activation. */
24356
+ ActivationType: 'requested' | 'auto';
24357
+ /** The gate values that admitted this skill — recorded so auditors see the configuration that allowed it. */
24358
+ Provenance: MJAIAgentRunStepEntity_AgentSkillInvocationProvenance;
24359
+ /** Agent-stated rationale (only for ActivationType='auto'). */
24360
+ Reason?: string;
24361
+ }
24362
+ /**
24363
+ * The gate values in effect when a skill was admitted to a run.
24364
+ */
24365
+ export interface MJAIAgentRunStepEntity_AgentSkillInvocationProvenance {
24366
+ /** The agent's AcceptsSkills value at activation ('All' or 'Limited' — 'None' can never activate). */
24367
+ AgentAcceptsSkills: string;
24368
+ /** The skill's ActivationMode at activation ('Auto' | 'RequestedOnly'). */
24369
+ SkillActivationMode: string;
24370
+ /** The agent's SkillActivationMode at activation ('Auto' | 'RequestedOnly'). */
24371
+ AgentSkillActivationMode: string;
24372
+ /** Who pulled the trigger: the user's /skill request or the agent's own decision. */
24373
+ RequestedBy: 'user-request' | 'agent-decision';
24374
+ }
23902
24375
  /**
23903
24376
  * MJ: AI Agent Run Steps - strongly typed entity sub-class
23904
24377
  * * Schema: __mj
@@ -24169,20 +24642,37 @@ detailed information about what validation rules failed.
24169
24642
  get Comments(): string | null;
24170
24643
  set Comments(value: string | null);
24171
24644
  /**
24645
+ * * Field Name: Skills
24646
+ * * Display Name: Skills Used
24647
+ * * SQL Data Type: nvarchar(MAX)
24648
+ * * JSON Type: Array<MJAIAgentRunStepEntity_AgentSkillInvocation>
24649
+ * * Description: JSON array of skill-invocation records (AgentSkillInvocation[]) associating this step with the skills involved in it, or NULL when no skills are in play. Each record carries SkillID, SkillName, ActivationType (requested = user /skill mention; auto = agent self-activation), Provenance of authority (the gate values that admitted the skill: AcceptsSkills, both ActivationMode dials, and who requested it), and an optional agent-stated Reason when self-activated. Population: Skill steps record the activation(s) they performed; Prompt steps record the full set of skills in effect for that turn; Actions and Sub-Agent steps record the skill(s) through which the executed tool became available (NULL means the tool was a native grant).
24650
+ */
24651
+ get Skills(): string | null;
24652
+ set Skills(value: string | null);
24653
+ private _SkillsObject_cached;
24654
+ private _SkillsObject_lastRaw;
24655
+ /**
24656
+ * Typed accessor for Skills — returns parsed JSON as Array<MJAIAgentRunStepEntity_AgentSkillInvocation>.
24657
+ * Uses lazy parsing with cache invalidation when the underlying raw value changes.
24658
+ */
24659
+ get SkillsObject(): Array<MJAIAgentRunStepEntity_AgentSkillInvocation> | null;
24660
+ set SkillsObject(value: Array<MJAIAgentRunStepEntity_AgentSkillInvocation> | null);
24661
+ /**
24172
24662
  * * Field Name: AgentRun
24173
- * * Display Name: Agent Run
24663
+ * * Display Name: Agent Run Context
24174
24664
  * * SQL Data Type: nvarchar(255)
24175
24665
  */
24176
24666
  get AgentRun(): string | null;
24177
24667
  /**
24178
24668
  * * Field Name: Parent
24179
- * * Display Name: Parent Step
24669
+ * * Display Name: Parent Step Context
24180
24670
  * * SQL Data Type: nvarchar(255)
24181
24671
  */
24182
24672
  get Parent(): string | null;
24183
24673
  /**
24184
24674
  * * Field Name: RootParentID
24185
- * * Display Name: Root Parent Step
24675
+ * * Display Name: Root Parent
24186
24676
  * * SQL Data Type: uniqueidentifier
24187
24677
  */
24188
24678
  get RootParentID(): string | null;
@@ -24281,7 +24771,7 @@ export declare class MJAIAgentRunEntity extends BaseEntity<MJAIAgentRunEntityTyp
24281
24771
  ValidateFinalStepAllowedValues(result: ValidationResult): void;
24282
24772
  /**
24283
24773
  * * Field Name: ID
24284
- * * Display Name: Run ID
24774
+ * * Display Name: ID
24285
24775
  * * SQL Data Type: uniqueidentifier
24286
24776
  * * Default Value: newsequentialid()
24287
24777
  * * Description: Unique identifier for this agent run
@@ -24425,7 +24915,7 @@ export declare class MJAIAgentRunEntity extends BaseEntity<MJAIAgentRunEntityTyp
24425
24915
  get __mj_UpdatedAt(): Date;
24426
24916
  /**
24427
24917
  * * Field Name: TotalPromptTokensUsed
24428
- * * Display Name: Prompt Tokens
24918
+ * * Display Name: Total Prompt Tokens
24429
24919
  * * SQL Data Type: int
24430
24920
  * * Description: Total number of prompt/input tokens used across all AIPromptRun executions during this agent run. This provides a breakdown of the TotalTokensUsed field to help analyze the ratio of input vs output tokens consumed by the agent.
24431
24921
  */
@@ -24433,7 +24923,7 @@ export declare class MJAIAgentRunEntity extends BaseEntity<MJAIAgentRunEntityTyp
24433
24923
  set TotalPromptTokensUsed(value: number | null);
24434
24924
  /**
24435
24925
  * * Field Name: TotalCompletionTokensUsed
24436
- * * Display Name: Completion Tokens
24926
+ * * Display Name: Total Completion Tokens
24437
24927
  * * SQL Data Type: int
24438
24928
  * * Description: Total number of completion/output tokens generated across all AIPromptRun executions during this agent run. This provides a breakdown of the TotalTokensUsed field to help analyze the ratio of input vs output tokens consumed by the agent.
24439
24929
  */
@@ -24449,7 +24939,7 @@ export declare class MJAIAgentRunEntity extends BaseEntity<MJAIAgentRunEntityTyp
24449
24939
  set TotalTokensUsedRollup(value: number | null);
24450
24940
  /**
24451
24941
  * * Field Name: TotalPromptTokensUsedRollup
24452
- * * Display Name: Prompt Tokens (Rollup)
24942
+ * * Display Name: Total Prompt Tokens (Rollup)
24453
24943
  * * SQL Data Type: int
24454
24944
  * * Description: Total prompt/input tokens including this agent run and all sub-agent runs. For leaf agents (no sub-agents), this equals TotalPromptTokensUsed. For parent agents, this includes the sum of all descendant agent prompt tokens.
24455
24945
  */
@@ -24457,7 +24947,7 @@ export declare class MJAIAgentRunEntity extends BaseEntity<MJAIAgentRunEntityTyp
24457
24947
  set TotalPromptTokensUsedRollup(value: number | null);
24458
24948
  /**
24459
24949
  * * Field Name: TotalCompletionTokensUsedRollup
24460
- * * Display Name: Completion Tokens (Rollup)
24950
+ * * Display Name: Total Completion Tokens (Rollup)
24461
24951
  * * SQL Data Type: int
24462
24952
  * * Description: Total completion/output tokens including this agent run and all sub-agent runs. For leaf agents (no sub-agents), this equals TotalCompletionTokensUsed. For parent agents, this includes the sum of all descendant agent completion tokens.
24463
24953
  */
@@ -24482,7 +24972,7 @@ export declare class MJAIAgentRunEntity extends BaseEntity<MJAIAgentRunEntityTyp
24482
24972
  set ConversationDetailID(value: string | null);
24483
24973
  /**
24484
24974
  * * Field Name: ConversationDetailSequence
24485
- * * Display Name: Detail Sequence
24975
+ * * Display Name: Conversation Detail Sequence
24486
24976
  * * SQL Data Type: int
24487
24977
  * * Description: If a conversation detail spawned multiple agent runs, tracks the order of their spawn/execution
24488
24978
  */
@@ -24529,7 +25019,7 @@ export declare class MJAIAgentRunEntity extends BaseEntity<MJAIAgentRunEntityTyp
24529
25019
  set FinalPayload(value: string | null);
24530
25020
  /**
24531
25021
  * * Field Name: Message
24532
- * * Display Name: Final Message
25022
+ * * Display Name: Message
24533
25023
  * * SQL Data Type: nvarchar(MAX)
24534
25024
  * * Description: Final message from the agent to the end user at the end of a run
24535
25025
  */
@@ -24591,7 +25081,7 @@ each time the agent processes a prompt step.
24591
25081
  set OverrideVendorID(value: string | null);
24592
25082
  /**
24593
25083
  * * Field Name: Data
24594
- * * Display Name: Input Data
25084
+ * * Display Name: Data
24595
25085
  * * SQL Data Type: nvarchar(MAX)
24596
25086
  * * Description: JSON serialized data that was passed for template rendering and prompt execution. This data was passed to the agent's prompt as well as all sub-agents.
24597
25087
  */
@@ -24599,7 +25089,7 @@ each time the agent processes a prompt step.
24599
25089
  set Data(value: string | null);
24600
25090
  /**
24601
25091
  * * Field Name: Verbose
24602
- * * Display Name: Verbose Logging
25092
+ * * Display Name: Verbose
24603
25093
  * * SQL Data Type: bit
24604
25094
  * * Default Value: 0
24605
25095
  * * Description: Indicates whether verbose logging was enabled during this agent execution. When true, detailed decision-making and execution flow was logged.
@@ -24700,7 +25190,7 @@ each time the agent processes a prompt step.
24700
25190
  set CompanyID(value: string | null);
24701
25191
  /**
24702
25192
  * * Field Name: TotalCacheReadTokensUsed
24703
- * * Display Name: Cache Read Tokens
25193
+ * * Display Name: Total Cache Read Tokens
24704
25194
  * * SQL Data Type: int
24705
25195
  * * Description: Total input tokens served from the AI provider's prompt cache (cache reads / hits) across this agent run, summed from child prompt runs' TokensCacheReadRollup and sub-agent runs' TotalCacheReadTokensUsed. Counts only; the cost impact (cache reads are billed at a steep discount) is reflected in TotalCost. The cache counterpart of TotalPromptTokensUsed.
24706
25196
  */
@@ -24708,7 +25198,7 @@ each time the agent processes a prompt step.
24708
25198
  set TotalCacheReadTokensUsed(value: number | null);
24709
25199
  /**
24710
25200
  * * Field Name: TotalCacheWriteTokensUsed
24711
- * * Display Name: Cache Write Tokens
25201
+ * * Display Name: Total Cache Write Tokens
24712
25202
  * * SQL Data Type: int
24713
25203
  * * Description: Total input tokens written to the AI provider's prompt cache (cache writes / creation) across this agent run, summed from child prompt runs' TokensCacheWriteRollup and sub-agent runs' TotalCacheWriteTokensUsed. Populated for providers that bill cache creation (e.g. Anthropic); 0 or NULL otherwise. The cache counterpart of TotalCompletionTokensUsed.
24714
25204
  */
@@ -24732,74 +25222,83 @@ each time the agent processes a prompt step.
24732
25222
  get AgentSessionID(): string | null;
24733
25223
  set AgentSessionID(value: string | null);
24734
25224
  /**
25225
+ * * Field Name: PlanMode
25226
+ * * Display Name: Plan Mode
25227
+ * * SQL Data Type: bit
25228
+ * * Default Value: 0
25229
+ * * Description: 1 when this run executed under plan mode (whether via the per-request planMode flag or the agent's RequirePlanMode setting). Drives plan-mode indicators in the run UX and supports plan-drift auditing (comparing the approved plan against the steps that actually executed).
25230
+ */
25231
+ get PlanMode(): boolean;
25232
+ set PlanMode(value: boolean);
25233
+ /**
24735
25234
  * * Field Name: Agent
24736
- * * Display Name: Agent Info
25235
+ * * Display Name: Agent Name
24737
25236
  * * SQL Data Type: nvarchar(255)
24738
25237
  */
24739
25238
  get Agent(): string | null;
24740
25239
  /**
24741
25240
  * * Field Name: ParentRun
24742
- * * Display Name: Parent Run Info
25241
+ * * Display Name: Parent Run Name
24743
25242
  * * SQL Data Type: nvarchar(255)
24744
25243
  */
24745
25244
  get ParentRun(): string | null;
24746
25245
  /**
24747
25246
  * * Field Name: Conversation
24748
- * * Display Name: Conversation Info
25247
+ * * Display Name: Conversation Name
24749
25248
  * * SQL Data Type: nvarchar(255)
24750
25249
  */
24751
25250
  get Conversation(): string | null;
24752
25251
  /**
24753
25252
  * * Field Name: User
24754
- * * Display Name: User Info
25253
+ * * Display Name: User Name
24755
25254
  * * SQL Data Type: nvarchar(100)
24756
25255
  */
24757
25256
  get User(): string | null;
24758
25257
  /**
24759
25258
  * * Field Name: ConversationDetail
24760
- * * Display Name: Conversation Detail Info
25259
+ * * Display Name: Conversation Detail Name
24761
25260
  * * SQL Data Type: nvarchar(100)
24762
25261
  */
24763
25262
  get ConversationDetail(): string | null;
24764
25263
  /**
24765
25264
  * * Field Name: LastRun
24766
- * * Display Name: Last Run Info
25265
+ * * Display Name: Last Run Name
24767
25266
  * * SQL Data Type: nvarchar(255)
24768
25267
  */
24769
25268
  get LastRun(): string | null;
24770
25269
  /**
24771
25270
  * * Field Name: Configuration
24772
- * * Display Name: Configuration Info
25271
+ * * Display Name: Configuration Name
24773
25272
  * * SQL Data Type: nvarchar(100)
24774
25273
  */
24775
25274
  get Configuration(): string | null;
24776
25275
  /**
24777
25276
  * * Field Name: OverrideModel
24778
- * * Display Name: Override Model Info
25277
+ * * Display Name: Override Model Name
24779
25278
  * * SQL Data Type: nvarchar(50)
24780
25279
  */
24781
25280
  get OverrideModel(): string | null;
24782
25281
  /**
24783
25282
  * * Field Name: OverrideVendor
24784
- * * Display Name: Override Vendor Info
25283
+ * * Display Name: Override Vendor Name
24785
25284
  * * SQL Data Type: nvarchar(50)
24786
25285
  */
24787
25286
  get OverrideVendor(): string | null;
24788
25287
  /**
24789
25288
  * * Field Name: ScheduledJobRun
24790
- * * Display Name: Scheduled Job Run Info
25289
+ * * Display Name: Scheduled Job Run Name
24791
25290
  * * SQL Data Type: nvarchar(200)
24792
25291
  */
24793
25292
  get ScheduledJobRun(): string | null;
24794
25293
  /**
24795
25294
  * * Field Name: TestRun
24796
- * * Display Name: Test Run Info
25295
+ * * Display Name: Test Run Name
24797
25296
  * * SQL Data Type: nvarchar(255)
24798
25297
  */
24799
25298
  get TestRun(): string | null;
24800
25299
  /**
24801
25300
  * * Field Name: PrimaryScopeEntity
24802
- * * Display Name: Primary Scope Entity Info
25301
+ * * Display Name: Primary Scope Entity Name
24803
25302
  * * SQL Data Type: nvarchar(255)
24804
25303
  */
24805
25304
  get PrimaryScopeEntity(): string | null;
@@ -25473,6 +25972,21 @@ export declare class MJAIAgentSessionEntity extends BaseEntity<MJAIAgentSessionE
25473
25972
  */
25474
25973
  Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
25475
25974
  /**
25975
+ * Validate() method override for MJ: AI Agent Sessions entity. This is an auto-generated method that invokes the generated validators for this entity for the following fields:
25976
+ * * Table-Level: Both Linked Entity ID and Linked Record ID must either be provided together or both left empty. This ensures that a link to an external record is always complete with both its entity type and record identifier.
25977
+ * @public
25978
+ * @method
25979
+ * @override
25980
+ */
25981
+ Validate(): ValidationResult;
25982
+ /**
25983
+ * Both Linked Entity ID and Linked Record ID must either be provided together or both left empty. This ensures that a link to an external record is always complete with both its entity type and record identifier.
25984
+ * @param result - the ValidationResult object to add any errors or warnings to
25985
+ * @public
25986
+ * @method
25987
+ */
25988
+ ValidateLinkedEntityAndRecordCoexistence(result: ValidationResult): void;
25989
+ /**
25476
25990
  * * Field Name: ID
25477
25991
  * * Display Name: ID
25478
25992
  * * SQL Data Type: uniqueidentifier
@@ -25618,6 +26132,23 @@ export declare class MJAIAgentSessionEntity extends BaseEntity<MJAIAgentSessionE
25618
26132
  get RecordingFileID(): string | null;
25619
26133
  set RecordingFileID(value: string | null);
25620
26134
  /**
26135
+ * * Field Name: LinkedEntityID
26136
+ * * Display Name: Linked Entity ID
26137
+ * * SQL Data Type: uniqueidentifier
26138
+ * * Related Entity/Foreign Key: MJ: Entities (vwEntities.ID)
26139
+ * * Description: Polymorphic counterparty-identity entity. Foreign key to Entity — identifies WHICH entity this realtime session's counterparty resolved to (e.g. User, a member/contact record, BizAppsCommon Person). Paired with LinkedRecordID via the CK_AIAgentSession_LinkBinding both-or-neither check, mirroring Conversation's linked pair. NULL while the session's counterparty is anonymous/unresolved.
26140
+ */
26141
+ get LinkedEntityID(): string | null;
26142
+ set LinkedEntityID(value: string | null);
26143
+ /**
26144
+ * * Field Name: LinkedRecordID
26145
+ * * Display Name: Linked Record ID
26146
+ * * SQL Data Type: nvarchar(500)
26147
+ * * Description: Polymorphic counterparty-identity record key. The primary-key value of the record (within LinkedEntityID's entity) this session resolved to, serialized as a string so any entity type can be referenced regardless of PK shape (UUID, int, composite). NVARCHAR(500), intentionally NOT FK-constrained. Used together with LinkedEntityID — see CK_AIAgentSession_LinkBinding. NULL while the session's counterparty is anonymous/unresolved.
26148
+ */
26149
+ get LinkedRecordID(): string | null;
26150
+ set LinkedRecordID(value: string | null);
26151
+ /**
25621
26152
  * * Field Name: Agent
25622
26153
  * * Display Name: Agent
25623
26154
  * * SQL Data Type: nvarchar(255)
@@ -25642,6 +26173,12 @@ export declare class MJAIAgentSessionEntity extends BaseEntity<MJAIAgentSessionE
25642
26173
  */
25643
26174
  get RecordingFile(): string | null;
25644
26175
  /**
26176
+ * * Field Name: LinkedEntity
26177
+ * * Display Name: Linked Entity
26178
+ * * SQL Data Type: nvarchar(255)
26179
+ */
26180
+ get LinkedEntity(): string | null;
26181
+ /**
25645
26182
  * * Field Name: RootLastSessionID
25646
26183
  * * Display Name: Root Last Session ID
25647
26184
  * * SQL Data Type: uniqueidentifier
@@ -26516,7 +27053,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
26516
27053
  set EnableContextCompression(value: boolean);
26517
27054
  /**
26518
27055
  * * Field Name: ContextCompressionMessageThreshold
26519
- * * Display Name: Context Compression Message Threshold
27056
+ * * Display Name: Compression Message Threshold
26520
27057
  * * SQL Data Type: int
26521
27058
  * * Description: Number of messages that triggers context compression when EnableContextCompression is true.
26522
27059
  */
@@ -26524,7 +27061,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
26524
27061
  set ContextCompressionMessageThreshold(value: number | null);
26525
27062
  /**
26526
27063
  * * Field Name: ContextCompressionPromptID
26527
- * * Display Name: Context Compression Prompt
27064
+ * * Display Name: Compression Prompt
26528
27065
  * * SQL Data Type: uniqueidentifier
26529
27066
  * * Related Entity/Foreign Key: MJ: AI Prompts (vwAIPrompts.ID)
26530
27067
  */
@@ -26532,7 +27069,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
26532
27069
  set ContextCompressionPromptID(value: string | null);
26533
27070
  /**
26534
27071
  * * Field Name: ContextCompressionMessageRetentionCount
26535
- * * Display Name: Context Compression Message Retention Count
27072
+ * * Display Name: Compression Retention Count
26536
27073
  * * SQL Data Type: int
26537
27074
  * * Description: Number of recent messages to keep uncompressed when context compression is applied.
26538
27075
  */
@@ -26540,7 +27077,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
26540
27077
  set ContextCompressionMessageRetentionCount(value: number | null);
26541
27078
  /**
26542
27079
  * * Field Name: TypeID
26543
- * * Display Name: Type
27080
+ * * Display Name: Agent Type
26544
27081
  * * SQL Data Type: uniqueidentifier
26545
27082
  * * Related Entity/Foreign Key: MJ: AI Agent Types (vwAIAgentTypes.ID)
26546
27083
  * * Description: Reference to the AIAgentType that defines the category and system-level behavior for this agent. Cannot be null.
@@ -26592,7 +27129,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
26592
27129
  set ModelSelectionMode(value: 'Agent' | 'Agent Type');
26593
27130
  /**
26594
27131
  * * Field Name: PayloadDownstreamPaths
26595
- * * Display Name: Payload Downstream Paths
27132
+ * * Display Name: Downstream Payload Paths
26596
27133
  * * SQL Data Type: nvarchar(MAX)
26597
27134
  * * Default Value: ["*"]
26598
27135
  * * Description: JSON array of paths that define which parts of the payload should be sent downstream to sub-agents. Use ["*"] to send entire payload, or specify paths like ["customer.id", "campaign.*", "analysis.sentiment"]
@@ -26601,7 +27138,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
26601
27138
  set PayloadDownstreamPaths(value: string);
26602
27139
  /**
26603
27140
  * * Field Name: PayloadUpstreamPaths
26604
- * * Display Name: Payload Upstream Paths
27141
+ * * Display Name: Upstream Payload Paths
26605
27142
  * * SQL Data Type: nvarchar(MAX)
26606
27143
  * * Default Value: ["*"]
26607
27144
  * * Description: JSON array of paths that define which parts of the payload sub-agents are allowed to write back upstream. Use ["*"] to allow all writes, or specify paths like ["analysis.results", "recommendations.*"]
@@ -26610,7 +27147,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
26610
27147
  set PayloadUpstreamPaths(value: string);
26611
27148
  /**
26612
27149
  * * Field Name: PayloadSelfReadPaths
26613
- * * Display Name: Payload Self Read Paths
27150
+ * * Display Name: Self-Read Payload Paths
26614
27151
  * * SQL Data Type: nvarchar(MAX)
26615
27152
  * * Description: JSON array of paths that specify what parts of the payload the agent's own prompt can read. Controls downstream data
26616
27153
  flow when the agent executes its own prompt step.
@@ -26619,7 +27156,7 @@ flow when the agent executes its own prompt step.
26619
27156
  set PayloadSelfReadPaths(value: string | null);
26620
27157
  /**
26621
27158
  * * Field Name: PayloadSelfWritePaths
26622
- * * Display Name: Payload Self Write Paths
27159
+ * * Display Name: Self-Write Payload Paths
26623
27160
  * * SQL Data Type: nvarchar(MAX)
26624
27161
  * * Description: JSON array of paths that specify what parts of the payload the agent's own prompt can write back. Controls upstream
26625
27162
  data flow when the agent executes its own prompt step.
@@ -26636,7 +27173,7 @@ data flow when the agent executes its own prompt step.
26636
27173
  set PayloadScope(value: string | null);
26637
27174
  /**
26638
27175
  * * Field Name: FinalPayloadValidation
26639
- * * Display Name: Final Payload Validation Schema
27176
+ * * Display Name: Final Payload Validation
26640
27177
  * * SQL Data Type: nvarchar(MAX)
26641
27178
  * * Description: Optional JSON schema or requirements that define the expected structure and content of the agent's final payload. Used to validate the output when the agent declares success. Similar to OutputExample in AI Prompts.
26642
27179
  */
@@ -26644,7 +27181,7 @@ data flow when the agent executes its own prompt step.
26644
27181
  set FinalPayloadValidation(value: string | null);
26645
27182
  /**
26646
27183
  * * Field Name: FinalPayloadValidationMode
26647
- * * Display Name: Final Payload Validation Mode
27184
+ * * Display Name: Final Validation Mode
26648
27185
  * * SQL Data Type: nvarchar(25)
26649
27186
  * * Default Value: Retry
26650
27187
  * * Value List Type: List
@@ -26658,7 +27195,7 @@ data flow when the agent executes its own prompt step.
26658
27195
  set FinalPayloadValidationMode(value: 'Fail' | 'Retry' | 'Warn');
26659
27196
  /**
26660
27197
  * * Field Name: FinalPayloadValidationMaxRetries
26661
- * * Display Name: Final Payload Validation Max Retries
27198
+ * * Display Name: Final Validation Max Retries
26662
27199
  * * SQL Data Type: int
26663
27200
  * * Default Value: 3
26664
27201
  * * Description: Maximum number of retry attempts allowed when FinalPayloadValidation fails with
@@ -26720,7 +27257,7 @@ if this limit is exceeded.
26720
27257
  set MaxExecutionsPerRun(value: number | null);
26721
27258
  /**
26722
27259
  * * Field Name: StartingPayloadValidation
26723
- * * Display Name: Starting Payload Validation Schema
27260
+ * * Display Name: Starting Payload Validation
26724
27261
  * * SQL Data Type: nvarchar(MAX)
26725
27262
  * * Description: Optional JSON schema validation to apply to the input payload before agent execution begins. Uses the same JSONValidator format as FinalPayloadValidation.
26726
27263
  */
@@ -26728,7 +27265,7 @@ if this limit is exceeded.
26728
27265
  set StartingPayloadValidation(value: string | null);
26729
27266
  /**
26730
27267
  * * Field Name: StartingPayloadValidationMode
26731
- * * Display Name: Starting Payload Validation Mode
27268
+ * * Display Name: Starting Validation Mode
26732
27269
  * * SQL Data Type: nvarchar(25)
26733
27270
  * * Default Value: Fail
26734
27271
  * * Value List Type: List
@@ -26741,7 +27278,7 @@ if this limit is exceeded.
26741
27278
  set StartingPayloadValidationMode(value: 'Fail' | 'Warn');
26742
27279
  /**
26743
27280
  * * Field Name: DefaultPromptEffortLevel
26744
- * * Display Name: Default Prompt Effort Level
27281
+ * * Display Name: Default Effort Level
26745
27282
  * * SQL Data Type: int
26746
27283
  * * Description: Default effort level for all prompts executed by this agent (1-100, where 1=minimal effort, 100=maximum effort). Takes precedence over individual prompt EffortLevel settings but can be overridden by runtime parameters. Inherited by sub-agents unless explicitly overridden.
26747
27284
  */
@@ -26771,7 +27308,7 @@ if this limit is exceeded.
26771
27308
  set DefaultArtifactTypeID(value: string | null);
26772
27309
  /**
26773
27310
  * * Field Name: OwnerUserID
26774
- * * Display Name: Owner User
27311
+ * * Display Name: Owner
26775
27312
  * * SQL Data Type: uniqueidentifier
26776
27313
  * * Related Entity/Foreign Key: MJ: Users (vwUsers.ID)
26777
27314
  * * Default Value: ECAFCCEC-6A37-EF11-86D4-000D3A4E707E
@@ -26946,7 +27483,7 @@ if this limit is exceeded.
26946
27483
  set InlineStorageThresholdBytes(value: number | null);
26947
27484
  /**
26948
27485
  * * Field Name: AgentTypePromptParams
26949
- * * Display Name: Agent Type Prompt Params
27486
+ * * Display Name: Prompt Parameters
26950
27487
  * * SQL Data Type: nvarchar(MAX)
26951
27488
  * * Description: JSON object containing parameter values that customize how this agent's type-level system prompt is rendered. The schema is defined by the agent type's PromptParamsSchema field. Allows per-agent control over which prompt sections are included, enabling token savings by excluding unused documentation.
26952
27489
  */
@@ -27126,20 +27663,42 @@ if this limit is exceeded.
27126
27663
  get AcceptsSkills(): 'All' | 'Limited' | 'None';
27127
27664
  set AcceptsSkills(value: 'All' | 'Limited' | 'None');
27128
27665
  /**
27666
+ * * Field Name: SkillActivationMode
27667
+ * * Display Name: Skill Activation Mode
27668
+ * * SQL Data Type: nvarchar(20)
27669
+ * * Default Value: RequestedOnly
27670
+ * * Value List Type: List
27671
+ * * Possible Values
27672
+ * * Auto
27673
+ * * RequestedOnly
27674
+ * * Description: Controls whether this agent may ever self-activate skills from its prompt catalog. Auto: the agent sees its allowed skills whose own ActivationMode is Auto (double gate) and may activate them mid-run on its own judgment. RequestedOnly (default): the agent's prompt catalog is empty and skills only enter a run via an explicit user request (/skill mention). Orthogonal to AcceptsSkills, which governs which skills are available at all; this governs who may pull the activation trigger.
27675
+ */
27676
+ get SkillActivationMode(): 'Auto' | 'RequestedOnly';
27677
+ set SkillActivationMode(value: 'Auto' | 'RequestedOnly');
27678
+ /**
27679
+ * * Field Name: RequirePlanMode
27680
+ * * Display Name: Require Plan Mode
27681
+ * * SQL Data Type: bit
27682
+ * * Default Value: 0
27683
+ * * Description: When 1, every root-level run of this agent executes in plan mode regardless of the per-request planMode flag — the agent must present a plan and receive human approval before any Actions or Sub-Agent steps execute. SupportsPlanMode is irrelevant when this is set. Use for high-consequence agents (e.g. ones with outbound-communication capabilities) where human-in-the-loop review is mandatory.
27684
+ */
27685
+ get RequirePlanMode(): boolean;
27686
+ set RequirePlanMode(value: boolean);
27687
+ /**
27129
27688
  * * Field Name: Parent
27130
- * * Display Name: Parent
27689
+ * * Display Name: Parent Agent Name
27131
27690
  * * SQL Data Type: nvarchar(255)
27132
27691
  */
27133
27692
  get Parent(): string | null;
27134
27693
  /**
27135
27694
  * * Field Name: ContextCompressionPrompt
27136
- * * Display Name: Context Compression Prompt Name
27695
+ * * Display Name: Compression Prompt Name
27137
27696
  * * SQL Data Type: nvarchar(255)
27138
27697
  */
27139
27698
  get ContextCompressionPrompt(): string | null;
27140
27699
  /**
27141
27700
  * * Field Name: Type
27142
- * * Display Name: Type Name
27701
+ * * Display Name: Type
27143
27702
  * * SQL Data Type: nvarchar(100)
27144
27703
  */
27145
27704
  get Type(): string | null;
@@ -27151,7 +27710,7 @@ if this limit is exceeded.
27151
27710
  get DefaultArtifactType(): string | null;
27152
27711
  /**
27153
27712
  * * Field Name: OwnerUser
27154
- * * Display Name: Owner User Name
27713
+ * * Display Name: Owner Name
27155
27714
  * * SQL Data Type: nvarchar(100)
27156
27715
  */
27157
27716
  get OwnerUser(): string;
@@ -27193,13 +27752,13 @@ if this limit is exceeded.
27193
27752
  get DefaultMediaCollection(): string | null;
27194
27753
  /**
27195
27754
  * * Field Name: RootParentID
27196
- * * Display Name: Root Parent ID
27755
+ * * Display Name: Root Parent
27197
27756
  * * SQL Data Type: uniqueidentifier
27198
27757
  */
27199
27758
  get RootParentID(): string | null;
27200
27759
  /**
27201
27760
  * * Field Name: RootDefaultCoAgentID
27202
- * * Display Name: Root Default Co-Agent ID
27761
+ * * Display Name: Root Default Co-Agent
27203
27762
  * * SQL Data Type: uniqueidentifier
27204
27763
  */
27205
27764
  get RootDefaultCoAgentID(): string | null;
@@ -32650,6 +33209,19 @@ export declare class MJAISkillEntity extends BaseEntity<MJAISkillEntityType> {
32650
33209
  */
32651
33210
  get __mj_UpdatedAt(): Date;
32652
33211
  /**
33212
+ * * Field Name: ActivationMode
33213
+ * * Display Name: Activation Mode
33214
+ * * SQL Data Type: nvarchar(20)
33215
+ * * Default Value: RequestedOnly
33216
+ * * Value List Type: List
33217
+ * * Possible Values
33218
+ * * Auto
33219
+ * * RequestedOnly
33220
+ * * Description: Controls whether this skill may ever be self-activated by an agent. Auto: the skill may appear in accepting agents' prompt catalogs and be activated mid-run on agent judgment — but only for agents whose own SkillActivationMode is also Auto (double gate). RequestedOnly (default): the skill is excluded from prompt catalogs entirely and can only be activated when the user explicitly requests it for the run (a /skill mention flowing through ExecuteAgentParams.requestedSkillIDs). All other activation gates (AcceptsSkills, skill Status, per-agent assignment, user Run permission) apply unchanged in both modes.
33221
+ */
33222
+ get ActivationMode(): 'Auto' | 'RequestedOnly';
33223
+ set ActivationMode(value: 'Auto' | 'RequestedOnly');
33224
+ /**
32653
33225
  * * Field Name: CreatedByUser
32654
33226
  * * Display Name: Created By User
32655
33227
  * * SQL Data Type: nvarchar(100)
@@ -34307,6 +34879,7 @@ export declare class MJApplicationEntity extends BaseEntity<MJApplicationEntityT
34307
34879
  * * Field Name: AgentSettings
34308
34880
  * * Display Name: Agent Settings
34309
34881
  * * SQL Data Type: nvarchar(MAX)
34882
+ * * JSON Type: MJApplicationEntity_IAgentSettings
34310
34883
  * * Description: App-scoped agent configuration JSON (shape = IAgentSettings). Declares the default/lead agent, relevant agents available to conversational and realtime co-agents, app-scoped client tool references, and realtime persona/disclosure overrides that layer into the agent config cascade. Null = no app-level agent config.
34311
34884
  */
34312
34885
  get AgentSettings(): string | null;
@@ -42553,6 +43126,253 @@ export declare class MJConversationDetailEntity extends BaseEntity<MJConversatio
42553
43126
  */
42554
43127
  get RootParentID(): string | null;
42555
43128
  }
43129
+ /**
43130
+ * MJ: Conversation Widget Instances - strongly typed entity sub-class
43131
+ * * Schema: __mj
43132
+ * * Base Table: ConversationWidgetInstance
43133
+ * * Base View: vwConversationWidgetInstances
43134
+ * * @description Durable per-deployment configuration for one embeddable public support widget (text and/or voice). One row per site/embed. Resolves a public widget key to its application scope, pinned support agent, restricted guest role, allowed origins, modality, auth strategy, and abuse ceilings. Reuses the magic-link anonymous-embed minting path at session time; this entity holds only the configuration.
43135
+ * * Primary Key: ID
43136
+ * @extends {BaseEntity}
43137
+ * @class
43138
+ * @public
43139
+ */
43140
+ export declare class MJConversationWidgetInstanceEntity extends BaseEntity<MJConversationWidgetInstanceEntityType> {
43141
+ /**
43142
+ * Loads the MJ: Conversation Widget Instances record from the database
43143
+ * @param ID: string - primary key value to load the MJ: Conversation Widget Instances record.
43144
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
43145
+ * @returns {Promise<boolean>} - true if successful, false otherwise
43146
+ * @public
43147
+ * @async
43148
+ * @memberof MJConversationWidgetInstanceEntity
43149
+ * @method
43150
+ * @override
43151
+ */
43152
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
43153
+ /**
43154
+ * Validate() method override for MJ: Conversation Widget Instances entity. This is an auto-generated method that invokes the generated validators for this entity for the following fields:
43155
+ * * RateLimitPerMinute: The rate limit per minute must be a positive number greater than zero to ensure the application can process requests.
43156
+ * * SessionTTLMinutes: The session time-to-live (TTL) must be greater than 0 minutes and cannot exceed 1440 minutes (24 hours).
43157
+ * * VisitorMemoryRetentionDays: The visitor memory retention period, if specified, must be a positive number of days greater than zero.
43158
+ * @public
43159
+ * @method
43160
+ * @override
43161
+ */
43162
+ Validate(): ValidationResult;
43163
+ /**
43164
+ * The rate limit per minute must be a positive number greater than zero to ensure the application can process requests.
43165
+ * @param result - the ValidationResult object to add any errors or warnings to
43166
+ * @public
43167
+ * @method
43168
+ */
43169
+ ValidateRateLimitPerMinuteGreaterThanZero(result: ValidationResult): void;
43170
+ /**
43171
+ * The session time-to-live (TTL) must be greater than 0 minutes and cannot exceed 1440 minutes (24 hours).
43172
+ * @param result - the ValidationResult object to add any errors or warnings to
43173
+ * @public
43174
+ * @method
43175
+ */
43176
+ ValidateSessionTTLMinutesRange(result: ValidationResult): void;
43177
+ /**
43178
+ * The visitor memory retention period, if specified, must be a positive number of days greater than zero.
43179
+ * @param result - the ValidationResult object to add any errors or warnings to
43180
+ * @public
43181
+ * @method
43182
+ */
43183
+ ValidateVisitorMemoryRetentionDaysGreaterThanZero(result: ValidationResult): void;
43184
+ /**
43185
+ * * Field Name: ID
43186
+ * * Display Name: ID
43187
+ * * SQL Data Type: uniqueidentifier
43188
+ * * Default Value: newsequentialid()
43189
+ */
43190
+ get ID(): string;
43191
+ set ID(value: string);
43192
+ /**
43193
+ * * Field Name: Name
43194
+ * * Display Name: Name
43195
+ * * SQL Data Type: nvarchar(255)
43196
+ * * Description: Human-readable name for this widget deployment (e.g. "Acme Marketing Site Support").
43197
+ */
43198
+ get Name(): string;
43199
+ set Name(value: string);
43200
+ /**
43201
+ * * Field Name: PublicKey
43202
+ * * Display Name: Public Key
43203
+ * * SQL Data Type: nvarchar(100)
43204
+ * * Description: Public, non-secret embed key (e.g. "pk_live_…") placed in the host page's data-widget-key attribute. Used to resolve this configuration at POST /widget/session. Unique. Not a credential — security comes from the origin allowlist, rate limits, the restricted guest role, and short-lived minted tokens.
43205
+ */
43206
+ get PublicKey(): string;
43207
+ set PublicKey(value: string);
43208
+ /**
43209
+ * * Field Name: ApplicationID
43210
+ * * Display Name: Application ID
43211
+ * * SQL Data Type: uniqueidentifier
43212
+ * * Related Entity/Foreign Key: MJ: Applications (vwApplications.ID)
43213
+ * * Description: Foreign key to Application — the single app a guest session is scoped to. Mirrors the magic-link single-application model.
43214
+ */
43215
+ get ApplicationID(): string;
43216
+ set ApplicationID(value: string);
43217
+ /**
43218
+ * * Field Name: PinnedAgentID
43219
+ * * Display Name: Pinned Agent ID
43220
+ * * SQL Data Type: uniqueidentifier
43221
+ * * Related Entity/Foreign Key: MJ: AI Agents (vwAIAgents.ID)
43222
+ * * Description: Foreign key to AIAgent — the support agent that is PINNED for every turn (passed as explicitAgentId). D5: pinning fixes which agent runs; combined with the restricted guest role it prevents a public visitor from reaching arbitrary agents/data. The pinned agent's own tool/handoff surface should be support-scoped.
43223
+ */
43224
+ get PinnedAgentID(): string;
43225
+ set PinnedAgentID(value: string);
43226
+ /**
43227
+ * * Field Name: GuestRoleID
43228
+ * * Display Name: Guest Role ID
43229
+ * * SQL Data Type: uniqueidentifier
43230
+ * * Related Entity/Foreign Key: MJ: Roles (vwRoles.ID)
43231
+ * * Description: Foreign key to Role — the restricted guest role assigned to the synthesized guest principal. This role's entity permissions are the real authorization boundary (read/write only the visitor's own Conversation + Conversation Details). Roles ride per-session JWT claims, not DB rows on the shared Anonymous principal.
43232
+ */
43233
+ get GuestRoleID(): string;
43234
+ set GuestRoleID(value: string);
43235
+ /**
43236
+ * * Field Name: AllowedOrigins
43237
+ * * Display Name: Allowed Origins
43238
+ * * SQL Data Type: nvarchar(MAX)
43239
+ * * Description: Allowed embedding origins for this widget, as a JSON array of origin strings (e.g. ["https://www.acme.com","https://acme.com"]). Enforced both at mint (POST /widget/session rejects unlisted Origin) and via CORS. NULL or empty means no origin is allowed (fail-closed).
43240
+ */
43241
+ get AllowedOrigins(): string | null;
43242
+ set AllowedOrigins(value: string | null);
43243
+ /**
43244
+ * * Field Name: Modality
43245
+ * * Display Name: Modality
43246
+ * * SQL Data Type: nvarchar(10)
43247
+ * * Default Value: Text
43248
+ * * Value List Type: List
43249
+ * * Possible Values
43250
+ * * Both
43251
+ * * Text
43252
+ * * Voice
43253
+ * * Description: Which modalities this widget exposes: Text (chat only), Voice (client-direct realtime only), or Both. Gates whether the realtime-mint path is offered to the guest.
43254
+ */
43255
+ get Modality(): 'Both' | 'Text' | 'Voice';
43256
+ set Modality(value: 'Both' | 'Text' | 'Voice');
43257
+ /**
43258
+ * * Field Name: AuthStrategy
43259
+ * * Display Name: Auth Strategy
43260
+ * * SQL Data Type: nvarchar(20)
43261
+ * * Default Value: Anonymous
43262
+ * * Value List Type: List
43263
+ * * Possible Values
43264
+ * * Anonymous
43265
+ * * HostIdentity
43266
+ * * MagicLinkUpgrade
43267
+ * * Description: Pluggable public-auth strategy (D1): Anonymous (guest-first, default), MagicLinkUpgrade (guest may escalate to an email-verified session), or HostIdentity (an authenticated host portal posts a signed identity assertion exchanged for an MJ guest JWT). All three converge on AuthProviderFactory + buildMagicLinkSessionUser.
43268
+ */
43269
+ get AuthStrategy(): 'Anonymous' | 'HostIdentity' | 'MagicLinkUpgrade';
43270
+ set AuthStrategy(value: 'Anonymous' | 'HostIdentity' | 'MagicLinkUpgrade');
43271
+ /**
43272
+ * * Field Name: Status
43273
+ * * Display Name: Status
43274
+ * * SQL Data Type: nvarchar(20)
43275
+ * * Default Value: Active
43276
+ * * Value List Type: List
43277
+ * * Possible Values
43278
+ * * Active
43279
+ * * Disabled
43280
+ * * Description: Lifecycle status. Active widgets mint sessions; Disabled widgets reject all mints (used to turn off a deployment without deleting its config).
43281
+ */
43282
+ get Status(): 'Active' | 'Disabled';
43283
+ set Status(value: 'Active' | 'Disabled');
43284
+ /**
43285
+ * * Field Name: SessionTTLMinutes
43286
+ * * Display Name: Session TTL Minutes
43287
+ * * SQL Data Type: int
43288
+ * * Default Value: 15
43289
+ * * Description: Time-to-live in minutes for a minted guest session JWT. Short by design (default 15) to limit replay/theft; the widget refreshes before expiry. Capped at 1440 (24h).
43290
+ */
43291
+ get SessionTTLMinutes(): number;
43292
+ set SessionTTLMinutes(value: number);
43293
+ /**
43294
+ * * Field Name: RateLimitPerMinute
43295
+ * * Display Name: Rate Limit Per Minute
43296
+ * * SQL Data Type: int
43297
+ * * Default Value: 30
43298
+ * * Description: Maximum number of guest-session mints allowed per minute per source IP/origin for this widget. Reuses the magic-link rate-limit pattern.
43299
+ */
43300
+ get RateLimitPerMinute(): number;
43301
+ set RateLimitPerMinute(value: number);
43302
+ /**
43303
+ * * Field Name: VoiceMaxSessionMinutes
43304
+ * * Display Name: Voice Max Session Minutes
43305
+ * * SQL Data Type: int
43306
+ * * Description: Optional hard ceiling (minutes) on a single voice session's duration for this widget. NULL means fall back to the server-wide default. Voice is the biggest cost/abuse surface; the SessionJanitor enforces this server-side (W4).
43307
+ */
43308
+ get VoiceMaxSessionMinutes(): number | null;
43309
+ set VoiceMaxSessionMinutes(value: number | null);
43310
+ /**
43311
+ * * Field Name: EnabledChannels
43312
+ * * Display Name: Enabled Channels
43313
+ * * SQL Data Type: nvarchar(MAX)
43314
+ * * Description: Which MJ interactive channels this widget may attach when a voice session is active, as a JSON array of channel names (e.g. ["Whiteboard"]). Resolved client-side through MJGlobal.ClassFactory the same way the realtime client driver is resolved; each named channel is scoped by the existing Widget Guest RLS on AI Agent Session Channels. NULL or empty array = no channels (the backwards-compatible default). Remote Browser, given its control surface, should only be listed when a deployment explicitly opts in.
43315
+ */
43316
+ get EnabledChannels(): string | null;
43317
+ set EnabledChannels(value: string | null);
43318
+ /**
43319
+ * * Field Name: HostPublicKey
43320
+ * * Display Name: Host Public Key
43321
+ * * SQL Data Type: nvarchar(MAX)
43322
+ * * Description: PEM-encoded RS256 public key for the host-identity auth strategy (D1). When AuthStrategy is HostIdentity, the host signs a short-lived identity assertion with its private key; the HostIdentityProvider verifies it against this per-instance key. Supersedes the interim config map (mj.config.cjs hostPublicKeys keyed by PublicKey). NULL when the widget does not use host identity; a HostIdentity widget with no key fails closed at mint.
43323
+ */
43324
+ get HostPublicKey(): string | null;
43325
+ set HostPublicKey(value: string | null);
43326
+ /**
43327
+ * * Field Name: RememberReturningVisitors
43328
+ * * Display Name: Remember Returning Visitors
43329
+ * * SQL Data Type: bit
43330
+ * * Default Value: 0
43331
+ * * Description: Returning-visitor memory opt-in (R6). When 0 (default) this widget sets no durable visitor cookie and writes no cross-session recap — fully off. When 1, the widget mints a durable VisitorKey cookie, links each new Conversation to the visitor's prior one, and writes a recap memory note on close so a returning visitor's agent opens with prior context.
43332
+ */
43333
+ get RememberReturningVisitors(): boolean;
43334
+ set RememberReturningVisitors(value: boolean);
43335
+ /**
43336
+ * * Field Name: VisitorMemoryRetentionDays
43337
+ * * Display Name: Visitor Memory Retention Days
43338
+ * * SQL Data Type: int
43339
+ * * Description: Retention window (days) for returning-visitor recap memory notes generated by this widget. NULL means use the system default. Past this window the visitor's auto-generated recap notes decay/archive via the Memory Manager. Ignored when RememberReturningVisitors = 0.
43340
+ */
43341
+ get VisitorMemoryRetentionDays(): number | null;
43342
+ set VisitorMemoryRetentionDays(value: number | null);
43343
+ /**
43344
+ * * Field Name: __mj_CreatedAt
43345
+ * * Display Name: Created At
43346
+ * * SQL Data Type: datetimeoffset
43347
+ * * Default Value: getutcdate()
43348
+ */
43349
+ get __mj_CreatedAt(): Date;
43350
+ /**
43351
+ * * Field Name: __mj_UpdatedAt
43352
+ * * Display Name: Updated At
43353
+ * * SQL Data Type: datetimeoffset
43354
+ * * Default Value: getutcdate()
43355
+ */
43356
+ get __mj_UpdatedAt(): Date;
43357
+ /**
43358
+ * * Field Name: Application
43359
+ * * Display Name: Application
43360
+ * * SQL Data Type: nvarchar(100)
43361
+ */
43362
+ get Application(): string;
43363
+ /**
43364
+ * * Field Name: PinnedAgent
43365
+ * * Display Name: Pinned Agent
43366
+ * * SQL Data Type: nvarchar(255)
43367
+ */
43368
+ get PinnedAgent(): string | null;
43369
+ /**
43370
+ * * Field Name: GuestRole
43371
+ * * Display Name: Guest Role
43372
+ * * SQL Data Type: nvarchar(50)
43373
+ */
43374
+ get GuestRole(): string;
43375
+ }
42556
43376
  /**
42557
43377
  * MJ: Conversations - strongly typed entity sub-class
42558
43378
  * * Schema: __mj
@@ -42811,6 +43631,23 @@ export declare class MJConversationEntity extends BaseEntity<MJConversationEntit
42811
43631
  get EgressID(): string | null;
42812
43632
  set EgressID(value: string | null);
42813
43633
  /**
43634
+ * * Field Name: VisitorKey
43635
+ * * Display Name: Visitor Key
43636
+ * * SQL Data Type: nvarchar(255)
43637
+ * * Description: Durable, opaque returning-visitor anchor (R3). Holds the value of a long-lived first-party cookie minted by the widget on first visit, used to find this visitor's prior conversations while they are still anonymous. Distinct from ExternalID (which stays per-session for RLS isolation). NULL for conversations that are not widget returning-visitor sessions.
43638
+ */
43639
+ get VisitorKey(): string | null;
43640
+ set VisitorKey(value: string | null);
43641
+ /**
43642
+ * * Field Name: LastConversationID
43643
+ * * Display Name: Last Conversation ID
43644
+ * * SQL Data Type: uniqueidentifier
43645
+ * * Related Entity/Foreign Key: MJ: Conversations (vwConversations.ID)
43646
+ * * Description: Conversation-altitude returning-visitor chain (R2). Self-foreign-key to the visitor's immediately prior Conversation (found by VisitorKey or the resolved LinkedEntityID/LinkedRecordID pair at mint time). History and memory are conversation-scoped, so the chain lives here — NOT on AIAgentSession.LastSessionID, which owns reconnect/resume semantics and is walked by the replay viewer. Named to mirror AIAgentSession.LastSessionID. NULL for a brand-new visitor's first conversation.
43647
+ */
43648
+ get LastConversationID(): string | null;
43649
+ set LastConversationID(value: string | null);
43650
+ /**
42814
43651
  * * Field Name: User
42815
43652
  * * Display Name: User
42816
43653
  * * SQL Data Type: nvarchar(100)
@@ -42864,6 +43701,18 @@ export declare class MJConversationEntity extends BaseEntity<MJConversationEntit
42864
43701
  * * SQL Data Type: nvarchar(500)
42865
43702
  */
42866
43703
  get RecordingFile(): string | null;
43704
+ /**
43705
+ * * Field Name: LastConversation
43706
+ * * Display Name: Last Conversation
43707
+ * * SQL Data Type: nvarchar(255)
43708
+ */
43709
+ get LastConversation(): string | null;
43710
+ /**
43711
+ * * Field Name: RootLastConversationID
43712
+ * * Display Name: Root Last Conversation ID
43713
+ * * SQL Data Type: uniqueidentifier
43714
+ */
43715
+ get RootLastConversationID(): string | null;
42867
43716
  }
42868
43717
  /**
42869
43718
  * MJ: Countries - strongly typed entity sub-class
@@ -46701,6 +47550,22 @@ export declare class MJEntityEntity extends BaseEntity<MJEntityEntityType> {
46701
47550
  get DetectExternalChanges(): boolean;
46702
47551
  set DetectExternalChanges(value: boolean);
46703
47552
  /**
47553
+ * * Field Name: ExternalDataSourceID
47554
+ * * Display Name: External Data Source ID
47555
+ * * SQL Data Type: uniqueidentifier
47556
+ * * Related Entity/Foreign Key: MJ: External Data Sources (vwExternalDataSources.ID)
47557
+ */
47558
+ get ExternalDataSourceID(): string | null;
47559
+ set ExternalDataSourceID(value: string | null);
47560
+ /**
47561
+ * * Field Name: ExternalObjectName
47562
+ * * Display Name: External Object Name
47563
+ * * SQL Data Type: nvarchar(255)
47564
+ * * Description: Remote object name (table / view / collection) on the external system that backs this entity. Resolved against the data source DefaultSchema/DefaultDatabase when unqualified. Only meaningful when ExternalDataSourceID is set.
47565
+ */
47566
+ get ExternalObjectName(): string | null;
47567
+ set ExternalObjectName(value: string | null);
47568
+ /**
46704
47569
  * * Field Name: CodeName
46705
47570
  * * Display Name: Code Name
46706
47571
  * * SQL Data Type: nvarchar(MAX)
@@ -50852,6 +51717,330 @@ export declare class MJExplorerNavigationItemEntity extends BaseEntity<MJExplore
50852
51717
  */
50853
51718
  get __mj_UpdatedAt(): Date;
50854
51719
  }
51720
+ /**
51721
+ * MJ: External Data Source Types - strongly typed entity sub-class
51722
+ * * Schema: __mj
51723
+ * * Base Table: ExternalDataSourceType
51724
+ * * Base View: vwExternalDataSourceTypes
51725
+ * * Primary Key: ID
51726
+ * @extends {BaseEntity}
51727
+ * @class
51728
+ * @public
51729
+ */
51730
+ export declare class MJExternalDataSourceTypeEntity extends BaseEntity<MJExternalDataSourceTypeEntityType> {
51731
+ /**
51732
+ * Loads the MJ: External Data Source Types record from the database
51733
+ * @param ID: string - primary key value to load the MJ: External Data Source Types record.
51734
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
51735
+ * @returns {Promise<boolean>} - true if successful, false otherwise
51736
+ * @public
51737
+ * @async
51738
+ * @memberof MJExternalDataSourceTypeEntity
51739
+ * @method
51740
+ * @override
51741
+ */
51742
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
51743
+ /**
51744
+ * * Field Name: ID
51745
+ * * Display Name: ID
51746
+ * * SQL Data Type: uniqueidentifier
51747
+ * * Default Value: newsequentialid()
51748
+ */
51749
+ get ID(): string;
51750
+ set ID(value: string);
51751
+ /**
51752
+ * * Field Name: Name
51753
+ * * Display Name: Name
51754
+ * * SQL Data Type: nvarchar(100)
51755
+ * * Description: Display name of the external data source driver type (e.g. Snowflake, Oracle, MongoDB, PostgreSQL).
51756
+ */
51757
+ get Name(): string;
51758
+ set Name(value: string);
51759
+ /**
51760
+ * * Field Name: Description
51761
+ * * Display Name: Description
51762
+ * * SQL Data Type: nvarchar(MAX)
51763
+ * * Description: Human-readable description of the driver type and what remote systems it targets.
51764
+ */
51765
+ get Description(): string | null;
51766
+ set Description(value: string | null);
51767
+ /**
51768
+ * * Field Name: DriverClass
51769
+ * * Display Name: Driver Class
51770
+ * * SQL Data Type: nvarchar(255)
51771
+ * * Description: Driver class resolved at runtime via MJGlobal.ClassFactory.CreateInstance(BaseExternalDataSourceDriver, DriverClass). MUST match the @RegisterClass key on the concrete driver (e.g. 'SnowflakeExternalDriver').
51772
+ */
51773
+ get DriverClass(): string;
51774
+ set DriverClass(value: string);
51775
+ /**
51776
+ * * Field Name: RequiredCredentialTypeID
51777
+ * * Display Name: Required Credential Type ID
51778
+ * * SQL Data Type: uniqueidentifier
51779
+ * * Related Entity/Foreign Key: MJ: Credential Types (vwCredentialTypes.ID)
51780
+ */
51781
+ get RequiredCredentialTypeID(): string | null;
51782
+ set RequiredCredentialTypeID(value: string | null);
51783
+ /**
51784
+ * * Field Name: MetadataIntrospectionStrategy
51785
+ * * Display Name: Metadata Introspection Strategy
51786
+ * * SQL Data Type: nvarchar(17)
51787
+ * * Default Value: Manual
51788
+ * * Value List Type: List
51789
+ * * Possible Values
51790
+ * * InformationSchema
51791
+ * * Manual
51792
+ * * NativeCatalog
51793
+ * * SampledDocuments
51794
+ * * Description: How the metadata-introspection command hydrates Entity/EntityField rows from this driver family: InformationSchema (ANSI INFORMATION_SCHEMA), NativeCatalog (vendor catalog views), SampledDocuments (infer shape from sampled documents, e.g. MongoDB), or Manual (no automated introspection).
51795
+ */
51796
+ get MetadataIntrospectionStrategy(): 'InformationSchema' | 'Manual' | 'NativeCatalog' | 'SampledDocuments';
51797
+ set MetadataIntrospectionStrategy(value: 'InformationSchema' | 'Manual' | 'NativeCatalog' | 'SampledDocuments');
51798
+ /**
51799
+ * * Field Name: FilterDialect
51800
+ * * Display Name: Filter Dialect
51801
+ * * SQL Data Type: nvarchar(9)
51802
+ * * Default Value: ansi
51803
+ * * Value List Type: List
51804
+ * * Possible Values
51805
+ * * ansi
51806
+ * * mongo-ast
51807
+ * * mysql
51808
+ * * oracle
51809
+ * * pgsql
51810
+ * * tsql
51811
+ * * Description: Dialect the driver expects for RunView filter pass-through: tsql, ansi, pgsql, mysql, oracle, or mongo-ast (MongoDB filter AST translated within the driver).
51812
+ */
51813
+ get FilterDialect(): 'ansi' | 'mongo-ast' | 'mysql' | 'oracle' | 'pgsql' | 'tsql';
51814
+ set FilterDialect(value: 'ansi' | 'mongo-ast' | 'mysql' | 'oracle' | 'pgsql' | 'tsql');
51815
+ /**
51816
+ * * Field Name: PagingStrategy
51817
+ * * Display Name: Paging Strategy
51818
+ * * SQL Data Type: nvarchar(11)
51819
+ * * Default Value: LimitOffset
51820
+ * * Value List Type: List
51821
+ * * Possible Values
51822
+ * * Cursor
51823
+ * * LimitOffset
51824
+ * * OffsetFetch
51825
+ * * TopSkip
51826
+ * * Description: Pagination mechanism the driver uses: OffsetFetch (SQL Server OFFSET/FETCH), LimitOffset (Postgres/MySQL LIMIT/OFFSET), TopSkip, or Cursor.
51827
+ */
51828
+ get PagingStrategy(): 'Cursor' | 'LimitOffset' | 'OffsetFetch' | 'TopSkip';
51829
+ set PagingStrategy(value: 'Cursor' | 'LimitOffset' | 'OffsetFetch' | 'TopSkip');
51830
+ /**
51831
+ * * Field Name: SupportsSchemaIntrospection
51832
+ * * Display Name: Supports Schema Introspection
51833
+ * * SQL Data Type: bit
51834
+ * * Default Value: 1
51835
+ * * Description: Whether the driver can introspect remote schema metadata to assist Entity/EntityField generation.
51836
+ */
51837
+ get SupportsSchemaIntrospection(): boolean;
51838
+ set SupportsSchemaIntrospection(value: boolean);
51839
+ /**
51840
+ * * Field Name: SupportsNativeQueries
51841
+ * * Display Name: Supports Native Queries
51842
+ * * SQL Data Type: bit
51843
+ * * Default Value: 1
51844
+ * * Description: Whether the driver supports native-dialect query execution for MJ Queries that set ExternalDataSourceID.
51845
+ */
51846
+ get SupportsNativeQueries(): boolean;
51847
+ set SupportsNativeQueries(value: boolean);
51848
+ /**
51849
+ * * Field Name: SupportsReadWrite
51850
+ * * Display Name: Supports Read Write
51851
+ * * SQL Data Type: bit
51852
+ * * Default Value: 0
51853
+ * * Description: Reserved for a future write-capable phase. Always 0 in the current read-only design; external entities are read-only.
51854
+ */
51855
+ get SupportsReadWrite(): boolean;
51856
+ set SupportsReadWrite(value: boolean);
51857
+ /**
51858
+ * * Field Name: Status
51859
+ * * Display Name: Status
51860
+ * * SQL Data Type: nvarchar(10)
51861
+ * * Default Value: Active
51862
+ * * Value List Type: List
51863
+ * * Possible Values
51864
+ * * Active
51865
+ * * Deprecated
51866
+ * * Description: Lifecycle status of the driver-type catalog entry: Active or Deprecated.
51867
+ */
51868
+ get Status(): 'Active' | 'Deprecated';
51869
+ set Status(value: 'Active' | 'Deprecated');
51870
+ /**
51871
+ * * Field Name: __mj_CreatedAt
51872
+ * * Display Name: Created At
51873
+ * * SQL Data Type: datetimeoffset
51874
+ * * Default Value: getutcdate()
51875
+ */
51876
+ get __mj_CreatedAt(): Date;
51877
+ /**
51878
+ * * Field Name: __mj_UpdatedAt
51879
+ * * Display Name: Updated At
51880
+ * * SQL Data Type: datetimeoffset
51881
+ * * Default Value: getutcdate()
51882
+ */
51883
+ get __mj_UpdatedAt(): Date;
51884
+ /**
51885
+ * * Field Name: RequiredCredentialType
51886
+ * * Display Name: Required Credential Type
51887
+ * * SQL Data Type: nvarchar(100)
51888
+ */
51889
+ get RequiredCredentialType(): string | null;
51890
+ }
51891
+ /**
51892
+ * MJ: External Data Sources - strongly typed entity sub-class
51893
+ * * Schema: __mj
51894
+ * * Base Table: ExternalDataSource
51895
+ * * Base View: vwExternalDataSources
51896
+ * * Primary Key: ID
51897
+ * @extends {BaseEntity}
51898
+ * @class
51899
+ * @public
51900
+ */
51901
+ export declare class MJExternalDataSourceEntity extends BaseEntity<MJExternalDataSourceEntityType> {
51902
+ /**
51903
+ * Loads the MJ: External Data Sources record from the database
51904
+ * @param ID: string - primary key value to load the MJ: External Data Sources record.
51905
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
51906
+ * @returns {Promise<boolean>} - true if successful, false otherwise
51907
+ * @public
51908
+ * @async
51909
+ * @memberof MJExternalDataSourceEntity
51910
+ * @method
51911
+ * @override
51912
+ */
51913
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
51914
+ /**
51915
+ * * Field Name: ID
51916
+ * * Display Name: ID
51917
+ * * SQL Data Type: uniqueidentifier
51918
+ * * Default Value: newsequentialid()
51919
+ */
51920
+ get ID(): string;
51921
+ set ID(value: string);
51922
+ /**
51923
+ * * Field Name: Name
51924
+ * * Display Name: Name
51925
+ * * SQL Data Type: nvarchar(100)
51926
+ * * Description: Display name of this configured external data source instance.
51927
+ */
51928
+ get Name(): string;
51929
+ set Name(value: string);
51930
+ /**
51931
+ * * Field Name: Description
51932
+ * * Display Name: Description
51933
+ * * SQL Data Type: nvarchar(MAX)
51934
+ * * Description: Human-readable description of what this data source connects to and what it is used for.
51935
+ */
51936
+ get Description(): string | null;
51937
+ set Description(value: string | null);
51938
+ /**
51939
+ * * Field Name: TypeID
51940
+ * * Display Name: Type ID
51941
+ * * SQL Data Type: uniqueidentifier
51942
+ * * Related Entity/Foreign Key: MJ: External Data Source Types (vwExternalDataSourceTypes.ID)
51943
+ */
51944
+ get TypeID(): string;
51945
+ set TypeID(value: string);
51946
+ /**
51947
+ * * Field Name: CredentialID
51948
+ * * Display Name: Credential ID
51949
+ * * SQL Data Type: uniqueidentifier
51950
+ * * Related Entity/Foreign Key: MJ: Credentials (vwCredentials.ID)
51951
+ */
51952
+ get CredentialID(): string | null;
51953
+ set CredentialID(value: string | null);
51954
+ /**
51955
+ * * Field Name: DefaultSchema
51956
+ * * Display Name: Default Schema
51957
+ * * SQL Data Type: nvarchar(255)
51958
+ * * Description: Default schema/namespace to resolve unqualified ExternalObjectName values against on the remote system (e.g. a SQL schema, Snowflake schema).
51959
+ */
51960
+ get DefaultSchema(): string | null;
51961
+ set DefaultSchema(value: string | null);
51962
+ /**
51963
+ * * Field Name: DefaultDatabase
51964
+ * * Display Name: Default Database
51965
+ * * SQL Data Type: nvarchar(255)
51966
+ * * Description: Default database/catalog on the remote system (e.g. Snowflake database, MongoDB dbName). Nullable when the driver derives it from connection config.
51967
+ */
51968
+ get DefaultDatabase(): string | null;
51969
+ set DefaultDatabase(value: string | null);
51970
+ /**
51971
+ * * Field Name: ConnectionConfig
51972
+ * * Display Name: Connection Config
51973
+ * * SQL Data Type: nvarchar(MAX)
51974
+ * * Description: JSON blob of NON-SECRET driver configuration (host, port, region, warehouse, replica-set name, pool sizing). All secrets flow through CredentialID -> Credential -> CredentialEngine; never store secrets here.
51975
+ */
51976
+ get ConnectionConfig(): string | null;
51977
+ set ConnectionConfig(value: string | null);
51978
+ /**
51979
+ * * Field Name: DefaultCacheTTLSeconds
51980
+ * * Display Name: Default Cache TTL Seconds
51981
+ * * SQL Data Type: int
51982
+ * * Default Value: 300
51983
+ * * Description: Default server-side cache TTL (seconds) for reads against this source. External reads use time-based TTL because no event-driven invalidation is possible on remote systems. Default 300.
51984
+ */
51985
+ get DefaultCacheTTLSeconds(): number;
51986
+ set DefaultCacheTTLSeconds(value: number);
51987
+ /**
51988
+ * * Field Name: Status
51989
+ * * Display Name: Status
51990
+ * * SQL Data Type: nvarchar(10)
51991
+ * * Default Value: Active
51992
+ * * Value List Type: List
51993
+ * * Possible Values
51994
+ * * Active
51995
+ * * Disabled
51996
+ * * TestFailed
51997
+ * * Description: Operational status of this data source: Active (usable), Disabled (RunView fails fast), or TestFailed (last connection test failed).
51998
+ */
51999
+ get Status(): 'Active' | 'Disabled' | 'TestFailed';
52000
+ set Status(value: 'Active' | 'Disabled' | 'TestFailed');
52001
+ /**
52002
+ * * Field Name: LastConnectionTestAt
52003
+ * * Display Name: Last Connection Test At
52004
+ * * SQL Data Type: datetimeoffset
52005
+ * * Description: Timestamp of the most recent connection test against this source.
52006
+ */
52007
+ get LastConnectionTestAt(): Date | null;
52008
+ set LastConnectionTestAt(value: Date | null);
52009
+ /**
52010
+ * * Field Name: LastConnectionTestResult
52011
+ * * Display Name: Last Connection Test Result
52012
+ * * SQL Data Type: nvarchar(MAX)
52013
+ * * Description: Result message from the most recent connection test (success detail or error text).
52014
+ */
52015
+ get LastConnectionTestResult(): string | null;
52016
+ set LastConnectionTestResult(value: string | null);
52017
+ /**
52018
+ * * Field Name: __mj_CreatedAt
52019
+ * * Display Name: Created At
52020
+ * * SQL Data Type: datetimeoffset
52021
+ * * Default Value: getutcdate()
52022
+ */
52023
+ get __mj_CreatedAt(): Date;
52024
+ /**
52025
+ * * Field Name: __mj_UpdatedAt
52026
+ * * Display Name: Updated At
52027
+ * * SQL Data Type: datetimeoffset
52028
+ * * Default Value: getutcdate()
52029
+ */
52030
+ get __mj_UpdatedAt(): Date;
52031
+ /**
52032
+ * * Field Name: Type
52033
+ * * Display Name: Type
52034
+ * * SQL Data Type: nvarchar(100)
52035
+ */
52036
+ get Type(): string;
52037
+ /**
52038
+ * * Field Name: Credential
52039
+ * * Display Name: Credential
52040
+ * * SQL Data Type: nvarchar(200)
52041
+ */
52042
+ get Credential(): string | null;
52043
+ }
50855
52044
  /**
50856
52045
  * MJ: File Categories - strongly typed entity sub-class
50857
52046
  * * Schema: __mj
@@ -58915,6 +60104,14 @@ export declare class MJQueryEntity extends BaseEntity<MJQueryEntityType> {
58915
60104
  get Reusable(): boolean;
58916
60105
  set Reusable(value: boolean);
58917
60106
  /**
60107
+ * * Field Name: ExternalDataSourceID
60108
+ * * Display Name: External Data Source ID
60109
+ * * SQL Data Type: uniqueidentifier
60110
+ * * Related Entity/Foreign Key: MJ: External Data Sources (vwExternalDataSources.ID)
60111
+ */
60112
+ get ExternalDataSourceID(): string | null;
60113
+ set ExternalDataSourceID(value: string | null);
60114
+ /**
58918
60115
  * * Field Name: Category
58919
60116
  * * Display Name: Category Name
58920
60117
  * * SQL Data Type: nvarchar(50)
@@ -58932,6 +60129,12 @@ export declare class MJQueryEntity extends BaseEntity<MJQueryEntityType> {
58932
60129
  * * SQL Data Type: nvarchar(100)
58933
60130
  */
58934
60131
  get SQLDialect(): string;
60132
+ /**
60133
+ * * Field Name: ExternalDataSource
60134
+ * * Display Name: External Data Source
60135
+ * * SQL Data Type: nvarchar(100)
60136
+ */
60137
+ get ExternalDataSource(): string | null;
58935
60138
  }
58936
60139
  /**
58937
60140
  * MJ: Query Categories - strongly typed entity sub-class
@@ -71258,6 +72461,581 @@ export declare class MJUserRoleEntity extends BaseEntity<MJUserRoleEntityType> {
71258
72461
  */
71259
72462
  get Role(): string;
71260
72463
  }
72464
+ /**
72465
+ * MJ: User Routine Recipients - strongly typed entity sub-class
72466
+ * * Schema: __mj
72467
+ * * Base Table: UserRoutineRecipient
72468
+ * * Base View: vwUserRoutineRecipients
72469
+ * * Primary Key: ID
72470
+ * @extends {BaseEntity}
72471
+ * @class
72472
+ * @public
72473
+ */
72474
+ export declare class MJUserRoutineRecipientEntity extends BaseEntity<MJUserRoutineRecipientEntityType> {
72475
+ /**
72476
+ * Loads the MJ: User Routine Recipients record from the database
72477
+ * @param ID: string - primary key value to load the MJ: User Routine Recipients record.
72478
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
72479
+ * @returns {Promise<boolean>} - true if successful, false otherwise
72480
+ * @public
72481
+ * @async
72482
+ * @memberof MJUserRoutineRecipientEntity
72483
+ * @method
72484
+ * @override
72485
+ */
72486
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
72487
+ /**
72488
+ * * Field Name: ID
72489
+ * * Display Name: ID
72490
+ * * SQL Data Type: uniqueidentifier
72491
+ * * Default Value: newsequentialid()
72492
+ */
72493
+ get ID(): string;
72494
+ set ID(value: string);
72495
+ /**
72496
+ * * Field Name: RoutineID
72497
+ * * Display Name: Routine
72498
+ * * SQL Data Type: uniqueidentifier
72499
+ * * Related Entity/Foreign Key: MJ: User Routines (vwUserRoutines.ID)
72500
+ * * Description: Routine this recipient belongs to.
72501
+ */
72502
+ get RoutineID(): string;
72503
+ set RoutineID(value: string);
72504
+ /**
72505
+ * * Field Name: UserID
72506
+ * * Display Name: User
72507
+ * * SQL Data Type: uniqueidentifier
72508
+ * * Related Entity/Foreign Key: MJ: Users (vwUsers.ID)
72509
+ * * Description: Internal MJ user recipient (when notifying an existing user). Either UserID or Email is set.
72510
+ */
72511
+ get UserID(): string | null;
72512
+ set UserID(value: string | null);
72513
+ /**
72514
+ * * Field Name: Email
72515
+ * * Display Name: Email Address
72516
+ * * SQL Data Type: nvarchar(255)
72517
+ * * Description: External email recipient (when notifying a non-user). Either UserID or Email is set.
72518
+ */
72519
+ get Email(): string | null;
72520
+ set Email(value: string | null);
72521
+ /**
72522
+ * * Field Name: Channel
72523
+ * * Display Name: Channel
72524
+ * * SQL Data Type: nvarchar(20)
72525
+ * * Default Value: InApp
72526
+ * * Value List Type: List
72527
+ * * Possible Values
72528
+ * * Email
72529
+ * * InApp
72530
+ * * Description: Delivery channel for this recipient: InApp or Email.
72531
+ */
72532
+ get Channel(): 'Email' | 'InApp';
72533
+ set Channel(value: 'Email' | 'InApp');
72534
+ /**
72535
+ * * Field Name: Sequence
72536
+ * * Display Name: Sequence
72537
+ * * SQL Data Type: int
72538
+ * * Default Value: 0
72539
+ * * Description: Explicit display/notification ordering of recipients within a routine (ascending).
72540
+ */
72541
+ get Sequence(): number;
72542
+ set Sequence(value: number);
72543
+ /**
72544
+ * * Field Name: __mj_CreatedAt
72545
+ * * Display Name: Created At
72546
+ * * SQL Data Type: datetimeoffset
72547
+ * * Default Value: getutcdate()
72548
+ */
72549
+ get __mj_CreatedAt(): Date;
72550
+ /**
72551
+ * * Field Name: __mj_UpdatedAt
72552
+ * * Display Name: Updated At
72553
+ * * SQL Data Type: datetimeoffset
72554
+ * * Default Value: getutcdate()
72555
+ */
72556
+ get __mj_UpdatedAt(): Date;
72557
+ /**
72558
+ * * Field Name: Routine
72559
+ * * Display Name: Routine Name
72560
+ * * SQL Data Type: nvarchar(255)
72561
+ */
72562
+ get Routine(): string;
72563
+ /**
72564
+ * * Field Name: User
72565
+ * * Display Name: User Name
72566
+ * * SQL Data Type: nvarchar(100)
72567
+ */
72568
+ get User(): string | null;
72569
+ }
72570
+ /**
72571
+ * MJ: User Routine Runs - strongly typed entity sub-class
72572
+ * * Schema: __mj
72573
+ * * Base Table: UserRoutineRun
72574
+ * * Base View: vwUserRoutineRuns
72575
+ * * Primary Key: ID
72576
+ * @extends {BaseEntity}
72577
+ * @class
72578
+ * @public
72579
+ */
72580
+ export declare class MJUserRoutineRunEntity extends BaseEntity<MJUserRoutineRunEntityType> {
72581
+ /**
72582
+ * Loads the MJ: User Routine Runs record from the database
72583
+ * @param ID: string - primary key value to load the MJ: User Routine Runs record.
72584
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
72585
+ * @returns {Promise<boolean>} - true if successful, false otherwise
72586
+ * @public
72587
+ * @async
72588
+ * @memberof MJUserRoutineRunEntity
72589
+ * @method
72590
+ * @override
72591
+ */
72592
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
72593
+ /**
72594
+ * * Field Name: ID
72595
+ * * Display Name: ID
72596
+ * * SQL Data Type: uniqueidentifier
72597
+ * * Default Value: newsequentialid()
72598
+ */
72599
+ get ID(): string;
72600
+ set ID(value: string);
72601
+ /**
72602
+ * * Field Name: RoutineID
72603
+ * * Display Name: Routine
72604
+ * * SQL Data Type: uniqueidentifier
72605
+ * * Related Entity/Foreign Key: MJ: User Routines (vwUserRoutines.ID)
72606
+ * * Description: Routine this run belongs to.
72607
+ */
72608
+ get RoutineID(): string;
72609
+ set RoutineID(value: string);
72610
+ /**
72611
+ * * Field Name: StartedAt
72612
+ * * Display Name: Started At
72613
+ * * SQL Data Type: datetimeoffset
72614
+ * * Default Value: sysdatetimeoffset()
72615
+ * * Description: When the run started.
72616
+ */
72617
+ get StartedAt(): Date;
72618
+ set StartedAt(value: Date);
72619
+ /**
72620
+ * * Field Name: CompletedAt
72621
+ * * Display Name: Completed At
72622
+ * * SQL Data Type: datetimeoffset
72623
+ * * Description: When the run completed (null while running).
72624
+ */
72625
+ get CompletedAt(): Date | null;
72626
+ set CompletedAt(value: Date | null);
72627
+ /**
72628
+ * * Field Name: Status
72629
+ * * Display Name: Status
72630
+ * * SQL Data Type: nvarchar(20)
72631
+ * * Default Value: Running
72632
+ * * Value List Type: List
72633
+ * * Possible Values
72634
+ * * Failed
72635
+ * * Running
72636
+ * * Skipped
72637
+ * * Success
72638
+ * * Description: Run outcome.
72639
+ */
72640
+ get Status(): 'Failed' | 'Running' | 'Skipped' | 'Success';
72641
+ set Status(value: 'Failed' | 'Running' | 'Skipped' | 'Success');
72642
+ /**
72643
+ * * Field Name: AgentRunID
72644
+ * * Display Name: Agent Run
72645
+ * * SQL Data Type: uniqueidentifier
72646
+ * * Related Entity/Foreign Key: MJ: AI Agent Runs (vwAIAgentRuns.ID)
72647
+ * * Description: Linked AI Agent Run when the routine target is an agent.
72648
+ */
72649
+ get AgentRunID(): string | null;
72650
+ set AgentRunID(value: string | null);
72651
+ /**
72652
+ * * Field Name: PromptRunID
72653
+ * * Display Name: Prompt Run
72654
+ * * SQL Data Type: uniqueidentifier
72655
+ * * Related Entity/Foreign Key: MJ: AI Prompt Runs (vwAIPromptRuns.ID)
72656
+ * * Description: For Prompt targets, links to the MJ: AI Prompt Runs record for this execution — tokens, cost, and full telemetry live there (never duplicated here).
72657
+ */
72658
+ get PromptRunID(): string | null;
72659
+ set PromptRunID(value: string | null);
72660
+ /**
72661
+ * * Field Name: ActionExecutionLogID
72662
+ * * Display Name: Action Execution Log
72663
+ * * SQL Data Type: uniqueidentifier
72664
+ * * Related Entity/Foreign Key: MJ: Action Execution Logs (vwActionExecutionLogs.ID)
72665
+ * * Description: For Action targets, links to the MJ: Action Execution Logs record for this execution — params, results, and telemetry live there (never duplicated here).
72666
+ */
72667
+ get ActionExecutionLogID(): string | null;
72668
+ set ActionExecutionLogID(value: string | null);
72669
+ /**
72670
+ * * Field Name: ResultSummary
72671
+ * * Display Name: Result Summary
72672
+ * * SQL Data Type: nvarchar(MAX)
72673
+ * * Description: Human-readable summary of the run result.
72674
+ */
72675
+ get ResultSummary(): string | null;
72676
+ set ResultSummary(value: string | null);
72677
+ /**
72678
+ * * Field Name: ResultHash
72679
+ * * Display Name: Result Hash
72680
+ * * SQL Data Type: nvarchar(100)
72681
+ * * Description: Hash of the result, compared against the routine LastResultHash for OnChange detection.
72682
+ */
72683
+ get ResultHash(): string | null;
72684
+ set ResultHash(value: string | null);
72685
+ /**
72686
+ * * Field Name: NotificationSent
72687
+ * * Display Name: Notification Sent
72688
+ * * SQL Data Type: bit
72689
+ * * Default Value: 0
72690
+ * * Description: Whether a notification was dispatched for this run.
72691
+ */
72692
+ get NotificationSent(): boolean;
72693
+ set NotificationSent(value: boolean);
72694
+ /**
72695
+ * * Field Name: ErrorMessage
72696
+ * * Display Name: Error Message
72697
+ * * SQL Data Type: nvarchar(MAX)
72698
+ * * Description: Error detail when Status is Failed.
72699
+ */
72700
+ get ErrorMessage(): string | null;
72701
+ set ErrorMessage(value: string | null);
72702
+ /**
72703
+ * * Field Name: __mj_CreatedAt
72704
+ * * Display Name: Created At
72705
+ * * SQL Data Type: datetimeoffset
72706
+ * * Default Value: getutcdate()
72707
+ */
72708
+ get __mj_CreatedAt(): Date;
72709
+ /**
72710
+ * * Field Name: __mj_UpdatedAt
72711
+ * * Display Name: Updated At
72712
+ * * SQL Data Type: datetimeoffset
72713
+ * * Default Value: getutcdate()
72714
+ */
72715
+ get __mj_UpdatedAt(): Date;
72716
+ /**
72717
+ * * Field Name: Routine
72718
+ * * Display Name: Routine Name
72719
+ * * SQL Data Type: nvarchar(255)
72720
+ */
72721
+ get Routine(): string;
72722
+ /**
72723
+ * * Field Name: AgentRun
72724
+ * * Display Name: Agent Run Reference
72725
+ * * SQL Data Type: nvarchar(255)
72726
+ */
72727
+ get AgentRun(): string | null;
72728
+ /**
72729
+ * * Field Name: PromptRun
72730
+ * * Display Name: Prompt Run Reference
72731
+ * * SQL Data Type: nvarchar(255)
72732
+ */
72733
+ get PromptRun(): string | null;
72734
+ /**
72735
+ * * Field Name: ActionExecutionLog
72736
+ * * Display Name: Action Execution Log Reference
72737
+ * * SQL Data Type: nvarchar(425)
72738
+ */
72739
+ get ActionExecutionLog(): string | null;
72740
+ }
72741
+ /**
72742
+ * MJ: User Routines - strongly typed entity sub-class
72743
+ * * Schema: __mj
72744
+ * * Base Table: UserRoutine
72745
+ * * Base View: vwUserRoutines
72746
+ * * Primary Key: ID
72747
+ * @extends {BaseEntity}
72748
+ * @class
72749
+ * @public
72750
+ */
72751
+ export declare class MJUserRoutineEntity extends BaseEntity<MJUserRoutineEntityType> {
72752
+ /**
72753
+ * Loads the MJ: User Routines record from the database
72754
+ * @param ID: string - primary key value to load the MJ: User Routines record.
72755
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
72756
+ * @returns {Promise<boolean>} - true if successful, false otherwise
72757
+ * @public
72758
+ * @async
72759
+ * @memberof MJUserRoutineEntity
72760
+ * @method
72761
+ * @override
72762
+ */
72763
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
72764
+ /**
72765
+ * * Field Name: ID
72766
+ * * Display Name: ID
72767
+ * * SQL Data Type: uniqueidentifier
72768
+ * * Default Value: newsequentialid()
72769
+ */
72770
+ get ID(): string;
72771
+ set ID(value: string);
72772
+ /**
72773
+ * * Field Name: UserID
72774
+ * * Display Name: User
72775
+ * * SQL Data Type: uniqueidentifier
72776
+ * * Related Entity/Foreign Key: MJ: Users (vwUsers.ID)
72777
+ * * Description: Owner of the routine. Routines are private to their owner (row-level access).
72778
+ */
72779
+ get UserID(): string;
72780
+ set UserID(value: string);
72781
+ /**
72782
+ * * Field Name: EnvironmentID
72783
+ * * Display Name: Environment
72784
+ * * SQL Data Type: uniqueidentifier
72785
+ * * Related Entity/Foreign Key: MJ: Environments (vwEnvironments.ID)
72786
+ * * Description: Optional environment scope for the routine.
72787
+ */
72788
+ get EnvironmentID(): string | null;
72789
+ set EnvironmentID(value: string | null);
72790
+ /**
72791
+ * * Field Name: Name
72792
+ * * Display Name: Name
72793
+ * * SQL Data Type: nvarchar(255)
72794
+ * * Description: User-facing routine name.
72795
+ */
72796
+ get Name(): string;
72797
+ set Name(value: string);
72798
+ /**
72799
+ * * Field Name: Description
72800
+ * * Display Name: Description
72801
+ * * SQL Data Type: nvarchar(MAX)
72802
+ * * Description: Optional description of what the routine does.
72803
+ */
72804
+ get Description(): string | null;
72805
+ set Description(value: string | null);
72806
+ /**
72807
+ * * Field Name: Status
72808
+ * * Display Name: Status
72809
+ * * SQL Data Type: nvarchar(20)
72810
+ * * Default Value: Active
72811
+ * * Value List Type: List
72812
+ * * Possible Values
72813
+ * * Active
72814
+ * * Disabled
72815
+ * * Paused
72816
+ * * Description: Lifecycle status: Active (eligible to run), Paused (temporarily off), Disabled (off).
72817
+ */
72818
+ get Status(): 'Active' | 'Disabled' | 'Paused';
72819
+ set Status(value: 'Active' | 'Disabled' | 'Paused');
72820
+ /**
72821
+ * * Field Name: RoutineType
72822
+ * * Display Name: Routine Type
72823
+ * * SQL Data Type: nvarchar(20)
72824
+ * * Default Value: Scheduled
72825
+ * * Value List Type: List
72826
+ * * Possible Values
72827
+ * * Monitoring
72828
+ * * Scheduled
72829
+ * * Description: Scheduled (always notify per NotifyCondition) or Monitoring (intended for OnChange detection via result hashing).
72830
+ */
72831
+ get RoutineType(): 'Monitoring' | 'Scheduled';
72832
+ set RoutineType(value: 'Monitoring' | 'Scheduled');
72833
+ /**
72834
+ * * Field Name: TargetType
72835
+ * * Display Name: Target Type
72836
+ * * SQL Data Type: nvarchar(20)
72837
+ * * Value List Type: List
72838
+ * * Possible Values
72839
+ * * Action
72840
+ * * Agent
72841
+ * * Prompt
72842
+ * * Description: What kind of target this routine runs: Agent, Action, or Prompt. Determines how TargetID is interpreted.
72843
+ */
72844
+ get TargetType(): 'Action' | 'Agent' | 'Prompt';
72845
+ set TargetType(value: 'Action' | 'Agent' | 'Prompt');
72846
+ /**
72847
+ * * Field Name: TargetID
72848
+ * * Display Name: Target
72849
+ * * SQL Data Type: uniqueidentifier
72850
+ * * Description: Polymorphic reference resolved by TargetType (AIAgent.ID, Action.ID, or AIPrompt.ID). No FK because the target table varies.
72851
+ */
72852
+ get TargetID(): string;
72853
+ set TargetID(value: string);
72854
+ /**
72855
+ * * Field Name: InitialMessage
72856
+ * * Display Name: Initial Message
72857
+ * * SQL Data Type: nvarchar(MAX)
72858
+ * * Description: For Agent targets, the user message sent to the agent on each run.
72859
+ */
72860
+ get InitialMessage(): string | null;
72861
+ set InitialMessage(value: string | null);
72862
+ /**
72863
+ * * Field Name: StartingPayload
72864
+ * * Display Name: Starting Payload
72865
+ * * SQL Data Type: nvarchar(MAX)
72866
+ * * Description: Optional JSON starting payload passed to the target on each run.
72867
+ */
72868
+ get StartingPayload(): string | null;
72869
+ set StartingPayload(value: string | null);
72870
+ /**
72871
+ * * Field Name: RequestedSkillIDs
72872
+ * * Display Name: Requested Skills
72873
+ * * SQL Data Type: nvarchar(MAX)
72874
+ * * Description: Optional JSON array of MJ: AI Skills IDs to pre-activate when the routine target is an Agent — threaded as ExecuteAgentParams.requestedSkillIDs so the agent starts each scheduled run with the requested skills' instructions and tools in effect (subject to all availability gates; ActivationMode does not gate this explicit-request path). Ignored for Action/Prompt targets.
72875
+ */
72876
+ get RequestedSkillIDs(): string | null;
72877
+ set RequestedSkillIDs(value: string | null);
72878
+ /**
72879
+ * * Field Name: CronExpression
72880
+ * * Display Name: Cron Expression
72881
+ * * SQL Data Type: nvarchar(100)
72882
+ * * Description: Standard cron expression evaluated by the dispatcher to determine when the routine is due.
72883
+ */
72884
+ get CronExpression(): string;
72885
+ set CronExpression(value: string);
72886
+ /**
72887
+ * * Field Name: StartAt
72888
+ * * Display Name: Start At
72889
+ * * SQL Data Type: datetimeoffset
72890
+ * * Description: Optional activation window start. An Active routine does not run before this time; once current time passes StartAt the dispatcher begins scheduling it. NULL = eligible immediately.
72891
+ */
72892
+ get StartAt(): Date | null;
72893
+ set StartAt(value: Date | null);
72894
+ /**
72895
+ * * Field Name: EndAt
72896
+ * * Display Name: End At
72897
+ * * SQL Data Type: datetimeoffset
72898
+ * * Description: Optional activation window end. An Active routine stops running once current time passes EndAt — automatic sunset without changing Status. NULL = no end.
72899
+ */
72900
+ get EndAt(): Date | null;
72901
+ set EndAt(value: Date | null);
72902
+ /**
72903
+ * * Field Name: NotificationTemplateID
72904
+ * * Display Name: Notification Template
72905
+ * * SQL Data Type: uniqueidentifier
72906
+ * * Related Entity/Foreign Key: MJ: Templates (vwTemplates.ID)
72907
+ * * Description: Optional MJ Template used to render routine notifications from the runs output data (result summary, status, target info) via the standard MJ templating architecture. When NULL, the system default routine-notification template (seeded via metadata, resolvable per instance — not hardcoded) is used.
72908
+ */
72909
+ get NotificationTemplateID(): string | null;
72910
+ set NotificationTemplateID(value: string | null);
72911
+ /**
72912
+ * * Field Name: Timezone
72913
+ * * Display Name: Timezone
72914
+ * * SQL Data Type: nvarchar(100)
72915
+ * * Default Value: UTC
72916
+ * * Description: IANA timezone used when evaluating CronExpression (e.g. America/Chicago).
72917
+ */
72918
+ get Timezone(): string;
72919
+ set Timezone(value: string);
72920
+ /**
72921
+ * * Field Name: NextRunAt
72922
+ * * Display Name: Next Run At
72923
+ * * SQL Data Type: datetimeoffset
72924
+ * * Description: Next scheduled run time, computed after each run.
72925
+ */
72926
+ get NextRunAt(): Date | null;
72927
+ set NextRunAt(value: Date | null);
72928
+ /**
72929
+ * * Field Name: LastRunAt
72930
+ * * Display Name: Last Run At
72931
+ * * SQL Data Type: datetimeoffset
72932
+ * * Description: Timestamp of the most recent run.
72933
+ */
72934
+ get LastRunAt(): Date | null;
72935
+ set LastRunAt(value: Date | null);
72936
+ /**
72937
+ * * Field Name: LastRunStatus
72938
+ * * Display Name: Last Run Status
72939
+ * * SQL Data Type: nvarchar(20)
72940
+ * * Value List Type: List
72941
+ * * Possible Values
72942
+ * * Failed
72943
+ * * Running
72944
+ * * Skipped
72945
+ * * Success
72946
+ * * Description: Outcome of the most recent run.
72947
+ */
72948
+ get LastRunStatus(): 'Failed' | 'Running' | 'Skipped' | 'Success' | null;
72949
+ set LastRunStatus(value: 'Failed' | 'Running' | 'Skipped' | 'Success' | null);
72950
+ /**
72951
+ * * Field Name: LastResultHash
72952
+ * * Display Name: Last Result Hash
72953
+ * * SQL Data Type: nvarchar(100)
72954
+ * * Description: Hash of the most recent result, used by Monitoring routines to detect change for OnChange notifications.
72955
+ */
72956
+ get LastResultHash(): string | null;
72957
+ set LastResultHash(value: string | null);
72958
+ /**
72959
+ * * Field Name: NotifyCondition
72960
+ * * Display Name: Notify Condition
72961
+ * * SQL Data Type: nvarchar(20)
72962
+ * * Default Value: Always
72963
+ * * Value List Type: List
72964
+ * * Possible Values
72965
+ * * Always
72966
+ * * OnChange
72967
+ * * OnFailure
72968
+ * * OnSuccess
72969
+ * * Description: When to notify: Always, OnSuccess, OnFailure, or OnChange (result differs from prior run).
72970
+ */
72971
+ get NotifyCondition(): 'Always' | 'OnChange' | 'OnFailure' | 'OnSuccess';
72972
+ set NotifyCondition(value: 'Always' | 'OnChange' | 'OnFailure' | 'OnSuccess');
72973
+ /**
72974
+ * * Field Name: NotifyViaInApp
72975
+ * * Display Name: Notify Via In-App
72976
+ * * SQL Data Type: bit
72977
+ * * Default Value: 1
72978
+ * * Description: Deliver notifications via in-app notification.
72979
+ */
72980
+ get NotifyViaInApp(): boolean;
72981
+ set NotifyViaInApp(value: boolean);
72982
+ /**
72983
+ * * Field Name: NotifyViaEmail
72984
+ * * Display Name: Notify Via Email
72985
+ * * SQL Data Type: bit
72986
+ * * Default Value: 0
72987
+ * * Description: Deliver notifications via email.
72988
+ */
72989
+ get NotifyViaEmail(): boolean;
72990
+ set NotifyViaEmail(value: boolean);
72991
+ /**
72992
+ * * Field Name: __mj_CreatedAt
72993
+ * * Display Name: Created At
72994
+ * * SQL Data Type: datetimeoffset
72995
+ * * Default Value: getutcdate()
72996
+ */
72997
+ get __mj_CreatedAt(): Date;
72998
+ /**
72999
+ * * Field Name: __mj_UpdatedAt
73000
+ * * Display Name: Updated At
73001
+ * * SQL Data Type: datetimeoffset
73002
+ * * Default Value: getutcdate()
73003
+ */
73004
+ get __mj_UpdatedAt(): Date;
73005
+ /**
73006
+ * * Field Name: ConversationID
73007
+ * * Display Name: Conversation
73008
+ * * SQL Data Type: uniqueidentifier
73009
+ * * Related Entity/Foreign Key: MJ: Conversations (vwConversations.ID)
73010
+ * * Description: The dedicated conversation this routine's Agent runs append to (created on first conversation-mode run, Application-scoped so it stays out of the default chat list). NULL when the routine has never run in conversation mode.
73011
+ */
73012
+ get ConversationID(): string | null;
73013
+ set ConversationID(value: string | null);
73014
+ /**
73015
+ * * Field Name: User
73016
+ * * Display Name: User Name
73017
+ * * SQL Data Type: nvarchar(100)
73018
+ */
73019
+ get User(): string;
73020
+ /**
73021
+ * * Field Name: Environment
73022
+ * * Display Name: Environment Name
73023
+ * * SQL Data Type: nvarchar(255)
73024
+ */
73025
+ get Environment(): string | null;
73026
+ /**
73027
+ * * Field Name: NotificationTemplate
73028
+ * * Display Name: Notification Template Name
73029
+ * * SQL Data Type: nvarchar(255)
73030
+ */
73031
+ get NotificationTemplate(): string | null;
73032
+ /**
73033
+ * * Field Name: Conversation
73034
+ * * Display Name: Conversation Name
73035
+ * * SQL Data Type: nvarchar(255)
73036
+ */
73037
+ get Conversation(): string | null;
73038
+ }
71261
73039
  /**
71262
73040
  * MJ: User Settings - strongly typed entity sub-class
71263
73041
  * * Schema: __mj