@memberjunction/core-entities 5.48.0 → 5.50.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.
Files changed (42) hide show
  1. package/dist/custom/MJListEntityExtended.d.ts +27 -0
  2. package/dist/custom/MJListEntityExtended.d.ts.map +1 -0
  3. package/dist/custom/MJListEntityExtended.js +52 -0
  4. package/dist/custom/MJListEntityExtended.js.map +1 -0
  5. package/dist/custom/Permissions/BaseShareEntityExtended.d.ts.map +1 -1
  6. package/dist/custom/Permissions/BaseShareEntityExtended.js +6 -1
  7. package/dist/custom/Permissions/BaseShareEntityExtended.js.map +1 -1
  8. package/dist/custom/Permissions/MJArtifactPermissionEntityExtended.d.ts.map +1 -1
  9. package/dist/custom/Permissions/MJArtifactPermissionEntityExtended.js +6 -4
  10. package/dist/custom/Permissions/MJArtifactPermissionEntityExtended.js.map +1 -1
  11. package/dist/custom/Permissions/MJCollectionPermissionEntityExtended.d.ts.map +1 -1
  12. package/dist/custom/Permissions/MJCollectionPermissionEntityExtended.js +4 -2
  13. package/dist/custom/Permissions/MJCollectionPermissionEntityExtended.js.map +1 -1
  14. package/dist/engines/PermissionEngine.d.ts +14 -0
  15. package/dist/engines/PermissionEngine.d.ts.map +1 -1
  16. package/dist/engines/PermissionEngine.js +30 -34
  17. package/dist/engines/PermissionEngine.js.map +1 -1
  18. package/dist/engines/UserInfoEngine.d.ts +13 -0
  19. package/dist/engines/UserInfoEngine.d.ts.map +1 -1
  20. package/dist/engines/UserInfoEngine.js +23 -5
  21. package/dist/engines/UserInfoEngine.js.map +1 -1
  22. package/dist/engines/artifacts.d.ts +87 -12
  23. package/dist/engines/artifacts.d.ts.map +1 -1
  24. package/dist/engines/artifacts.js +140 -35
  25. package/dist/engines/artifacts.js.map +1 -1
  26. package/dist/engines/conversations.d.ts +128 -0
  27. package/dist/engines/conversations.d.ts.map +1 -1
  28. package/dist/engines/conversations.js +152 -2
  29. package/dist/engines/conversations.js.map +1 -1
  30. package/dist/engines/knowledgeHubMetadata.d.ts +26 -4
  31. package/dist/engines/knowledgeHubMetadata.d.ts.map +1 -1
  32. package/dist/engines/knowledgeHubMetadata.js +70 -16
  33. package/dist/engines/knowledgeHubMetadata.js.map +1 -1
  34. package/dist/generated/entity_subclasses.d.ts +1612 -109
  35. package/dist/generated/entity_subclasses.d.ts.map +1 -1
  36. package/dist/generated/entity_subclasses.js +2021 -174
  37. package/dist/generated/entity_subclasses.js.map +1 -1
  38. package/dist/index.d.ts +1 -0
  39. package/dist/index.d.ts.map +1 -1
  40. package/dist/index.js +1 -0
  41. package/dist/index.js.map +1 -1
  42. package/package.json +6 -6
@@ -1626,7 +1626,7 @@ export declare const MJAIAgentRunStepSchema: z.ZodObject<{
1626
1626
  ID: z.ZodString;
1627
1627
  AgentRunID: z.ZodString;
1628
1628
  StepNumber: z.ZodNumber;
1629
- StepType: z.ZodUnion<[z.ZodLiteral<"Actions">, z.ZodLiteral<"Chat">, z.ZodLiteral<"Decision">, z.ZodLiteral<"ForEach">, z.ZodLiteral<"Plan">, z.ZodLiteral<"Prompt">, z.ZodLiteral<"Skill">, z.ZodLiteral<"Sub-Agent">, z.ZodLiteral<"Tool">, z.ZodLiteral<"Validation">, z.ZodLiteral<"While">]>;
1629
+ StepType: z.ZodUnion<[z.ZodLiteral<"Actions">, z.ZodLiteral<"Chat">, z.ZodLiteral<"Compaction">, z.ZodLiteral<"Decision">, z.ZodLiteral<"ForEach">, z.ZodLiteral<"Plan">, z.ZodLiteral<"Prompt">, z.ZodLiteral<"Skill">, z.ZodLiteral<"Sub-Agent">, z.ZodLiteral<"Tool">, z.ZodLiteral<"Validation">, z.ZodLiteral<"While">]>;
1630
1630
  StepName: z.ZodString;
1631
1631
  TargetID: z.ZodNullable<z.ZodString>;
1632
1632
  Status: z.ZodUnion<[z.ZodLiteral<"Cancelled">, z.ZodLiteral<"Completed">, z.ZodLiteral<"Failed">, z.ZodLiteral<"Running">]>;
@@ -1662,7 +1662,7 @@ export declare const MJAIAgentRunStepSchema: z.ZodObject<{
1662
1662
  AgentRunID?: string;
1663
1663
  AgentRun?: string;
1664
1664
  StepNumber?: number;
1665
- StepType?: "Prompt" | "Actions" | "Chat" | "Decision" | "ForEach" | "Plan" | "Skill" | "Sub-Agent" | "Tool" | "Validation" | "While";
1665
+ StepType?: "Prompt" | "Actions" | "Chat" | "Compaction" | "Decision" | "ForEach" | "Plan" | "Skill" | "Sub-Agent" | "Tool" | "Validation" | "While";
1666
1666
  StepName?: string;
1667
1667
  TargetID?: string;
1668
1668
  CompletedAt?: Date;
@@ -1689,7 +1689,7 @@ export declare const MJAIAgentRunStepSchema: z.ZodObject<{
1689
1689
  AgentRunID?: string;
1690
1690
  AgentRun?: string;
1691
1691
  StepNumber?: number;
1692
- StepType?: "Prompt" | "Actions" | "Chat" | "Decision" | "ForEach" | "Plan" | "Skill" | "Sub-Agent" | "Tool" | "Validation" | "While";
1692
+ StepType?: "Prompt" | "Actions" | "Chat" | "Compaction" | "Decision" | "ForEach" | "Plan" | "Skill" | "Sub-Agent" | "Tool" | "Validation" | "While";
1693
1693
  StepName?: string;
1694
1694
  TargetID?: string;
1695
1695
  CompletedAt?: Date;
@@ -2386,8 +2386,17 @@ export declare const MJAIAgentTypeSchema: z.ZodObject<{
2386
2386
  DefaultStorageAccountID: z.ZodNullable<z.ZodString>;
2387
2387
  ConfigSchema: z.ZodNullable<z.ZodString>;
2388
2388
  DefaultConfiguration: z.ZodNullable<z.ZodString>;
2389
+ ContextCompressionMessageThreshold: z.ZodNullable<z.ZodNumber>;
2390
+ ContextCompressionPromptID: z.ZodNullable<z.ZodString>;
2391
+ ContextCompressionMessageRetentionCount: z.ZodNullable<z.ZodNumber>;
2392
+ ContextWindowMaxTokens: z.ZodNullable<z.ZodNumber>;
2393
+ CompactionTriggerPercent: z.ZodNumber;
2394
+ CompactionTargetPercent: z.ZodNumber;
2395
+ ConversationSummaryPromptID: z.ZodNullable<z.ZodString>;
2389
2396
  SystemPrompt: z.ZodNullable<z.ZodString>;
2390
2397
  DefaultStorageAccount: z.ZodNullable<z.ZodString>;
2398
+ ContextCompressionPrompt: z.ZodNullable<z.ZodString>;
2399
+ ConversationSummaryPrompt: z.ZodNullable<z.ZodString>;
2391
2400
  }, "strip", z.ZodTypeAny, {
2392
2401
  ID?: string;
2393
2402
  __mj_CreatedAt?: Date;
@@ -2407,7 +2416,16 @@ export declare const MJAIAgentTypeSchema: z.ZodObject<{
2407
2416
  UIFormSectionExpandedByDefault?: boolean;
2408
2417
  PromptParamsSchema?: string;
2409
2418
  DefaultConfiguration?: string;
2419
+ ContextCompressionMessageThreshold?: number;
2420
+ ContextCompressionPromptID?: string;
2421
+ ContextCompressionMessageRetentionCount?: number;
2422
+ ContextWindowMaxTokens?: number;
2423
+ CompactionTriggerPercent?: number;
2424
+ CompactionTargetPercent?: number;
2425
+ ConversationSummaryPromptID?: string;
2410
2426
  SystemPrompt?: string;
2427
+ ContextCompressionPrompt?: string;
2428
+ ConversationSummaryPrompt?: string;
2411
2429
  }, {
2412
2430
  ID?: string;
2413
2431
  __mj_CreatedAt?: Date;
@@ -2427,7 +2445,16 @@ export declare const MJAIAgentTypeSchema: z.ZodObject<{
2427
2445
  UIFormSectionExpandedByDefault?: boolean;
2428
2446
  PromptParamsSchema?: string;
2429
2447
  DefaultConfiguration?: string;
2448
+ ContextCompressionMessageThreshold?: number;
2449
+ ContextCompressionPromptID?: string;
2450
+ ContextCompressionMessageRetentionCount?: number;
2451
+ ContextWindowMaxTokens?: number;
2452
+ CompactionTriggerPercent?: number;
2453
+ CompactionTargetPercent?: number;
2454
+ ConversationSummaryPromptID?: string;
2430
2455
  SystemPrompt?: string;
2456
+ ContextCompressionPrompt?: string;
2457
+ ConversationSummaryPrompt?: string;
2431
2458
  }>;
2432
2459
  export type MJAIAgentTypeEntityType = z.infer<typeof MJAIAgentTypeSchema>;
2433
2460
  /**
@@ -2510,6 +2537,10 @@ export declare const MJAIAgentSchema: z.ZodObject<{
2510
2537
  AcceptsSkills: z.ZodUnion<[z.ZodLiteral<"All">, z.ZodLiteral<"Limited">, z.ZodLiteral<"None">]>;
2511
2538
  SkillActivationMode: z.ZodUnion<[z.ZodLiteral<"Auto">, z.ZodLiteral<"RequestedOnly">]>;
2512
2539
  RequirePlanMode: z.ZodBoolean;
2540
+ ContextWindowMaxTokens: z.ZodNullable<z.ZodNumber>;
2541
+ CompactionTriggerPercent: z.ZodNullable<z.ZodNumber>;
2542
+ CompactionTargetPercent: z.ZodNullable<z.ZodNumber>;
2543
+ ConversationSummaryPromptID: z.ZodNullable<z.ZodString>;
2513
2544
  Parent: z.ZodNullable<z.ZodString>;
2514
2545
  ContextCompressionPrompt: z.ZodNullable<z.ZodString>;
2515
2546
  Type: z.ZodNullable<z.ZodString>;
@@ -2521,6 +2552,7 @@ export declare const MJAIAgentSchema: z.ZodObject<{
2521
2552
  DefaultCoAgent: z.ZodNullable<z.ZodString>;
2522
2553
  RecordingStorageProvider: z.ZodNullable<z.ZodString>;
2523
2554
  DefaultMediaCollection: z.ZodNullable<z.ZodString>;
2555
+ ConversationSummaryPrompt: z.ZodNullable<z.ZodString>;
2524
2556
  RootParentID: z.ZodNullable<z.ZodString>;
2525
2557
  RootDefaultCoAgentID: z.ZodNullable<z.ZodString>;
2526
2558
  }, "strip", z.ZodTypeAny, {
@@ -2545,13 +2577,19 @@ export declare const MJAIAgentSchema: z.ZodObject<{
2545
2577
  ExecutionOrder?: number;
2546
2578
  MessageMode?: "None" | "All" | "Bookend" | "Latest";
2547
2579
  MaxMessages?: number;
2580
+ ContextCompressionMessageThreshold?: number;
2581
+ ContextCompressionPromptID?: string;
2582
+ ContextCompressionMessageRetentionCount?: number;
2583
+ ContextWindowMaxTokens?: number;
2584
+ CompactionTriggerPercent?: number;
2585
+ CompactionTargetPercent?: number;
2586
+ ConversationSummaryPromptID?: string;
2587
+ ContextCompressionPrompt?: string;
2588
+ ConversationSummaryPrompt?: string;
2548
2589
  LogoURL?: string;
2549
2590
  ExposeAsAction?: boolean;
2550
2591
  ExecutionMode?: "Parallel" | "Sequential";
2551
2592
  EnableContextCompression?: boolean;
2552
- ContextCompressionMessageThreshold?: number;
2553
- ContextCompressionPromptID?: string;
2554
- ContextCompressionMessageRetentionCount?: number;
2555
2593
  TypeID?: string;
2556
2594
  ModelSelectionMode?: "Agent" | "Agent Type";
2557
2595
  PayloadDownstreamPaths?: string;
@@ -2605,7 +2643,6 @@ export declare const MJAIAgentSchema: z.ZodObject<{
2605
2643
  AcceptsSkills?: "None" | "All" | "Limited";
2606
2644
  SkillActivationMode?: "Auto" | "RequestedOnly";
2607
2645
  RequirePlanMode?: boolean;
2608
- ContextCompressionPrompt?: string;
2609
2646
  DefaultArtifactType?: string;
2610
2647
  OwnerUser?: string;
2611
2648
  AttachmentStorageProvider?: string;
@@ -2635,13 +2672,19 @@ export declare const MJAIAgentSchema: z.ZodObject<{
2635
2672
  ExecutionOrder?: number;
2636
2673
  MessageMode?: "None" | "All" | "Bookend" | "Latest";
2637
2674
  MaxMessages?: number;
2675
+ ContextCompressionMessageThreshold?: number;
2676
+ ContextCompressionPromptID?: string;
2677
+ ContextCompressionMessageRetentionCount?: number;
2678
+ ContextWindowMaxTokens?: number;
2679
+ CompactionTriggerPercent?: number;
2680
+ CompactionTargetPercent?: number;
2681
+ ConversationSummaryPromptID?: string;
2682
+ ContextCompressionPrompt?: string;
2683
+ ConversationSummaryPrompt?: string;
2638
2684
  LogoURL?: string;
2639
2685
  ExposeAsAction?: boolean;
2640
2686
  ExecutionMode?: "Parallel" | "Sequential";
2641
2687
  EnableContextCompression?: boolean;
2642
- ContextCompressionMessageThreshold?: number;
2643
- ContextCompressionPromptID?: string;
2644
- ContextCompressionMessageRetentionCount?: number;
2645
2688
  TypeID?: string;
2646
2689
  ModelSelectionMode?: "Agent" | "Agent Type";
2647
2690
  PayloadDownstreamPaths?: string;
@@ -2695,7 +2738,6 @@ export declare const MJAIAgentSchema: z.ZodObject<{
2695
2738
  AcceptsSkills?: "None" | "All" | "Limited";
2696
2739
  SkillActivationMode?: "Auto" | "RequestedOnly";
2697
2740
  RequirePlanMode?: boolean;
2698
- ContextCompressionPrompt?: string;
2699
2741
  DefaultArtifactType?: string;
2700
2742
  OwnerUser?: string;
2701
2743
  AttachmentStorageProvider?: string;
@@ -3718,7 +3760,6 @@ export declare const MJAIPromptRunSchema: z.ZodObject<{
3718
3760
  ParentID: z.ZodNullable<z.ZodString>;
3719
3761
  RunType: z.ZodUnion<[z.ZodLiteral<"ParallelChild">, z.ZodLiteral<"ParallelParent">, z.ZodLiteral<"ResultSelector">, z.ZodLiteral<"Single">]>;
3720
3762
  ExecutionOrder: z.ZodNullable<z.ZodNumber>;
3721
- AgentRunID: z.ZodNullable<z.ZodString>;
3722
3763
  Cost: z.ZodNullable<z.ZodNumber>;
3723
3764
  CostCurrency: z.ZodNullable<z.ZodString>;
3724
3765
  TokensUsedRollup: z.ZodNullable<z.ZodNumber>;
@@ -3791,7 +3832,6 @@ export declare const MJAIPromptRunSchema: z.ZodObject<{
3791
3832
  Agent: z.ZodNullable<z.ZodString>;
3792
3833
  Configuration: z.ZodNullable<z.ZodString>;
3793
3834
  Parent: z.ZodNullable<z.ZodString>;
3794
- AgentRun: z.ZodNullable<z.ZodString>;
3795
3835
  OriginalModel: z.ZodNullable<z.ZodString>;
3796
3836
  RerunFromPromptRun: z.ZodNullable<z.ZodString>;
3797
3837
  Judge: z.ZodNullable<z.ZodString>;
@@ -3817,8 +3857,6 @@ export declare const MJAIPromptRunSchema: z.ZodObject<{
3817
3857
  PromptID?: string;
3818
3858
  ConfigurationID?: string;
3819
3859
  Prompt?: string;
3820
- AgentRunID?: string;
3821
- AgentRun?: string;
3822
3860
  Cancelled?: boolean;
3823
3861
  CompletedAt?: Date;
3824
3862
  Success?: boolean;
@@ -3921,8 +3959,6 @@ export declare const MJAIPromptRunSchema: z.ZodObject<{
3921
3959
  PromptID?: string;
3922
3960
  ConfigurationID?: string;
3923
3961
  Prompt?: string;
3924
- AgentRunID?: string;
3925
- AgentRun?: string;
3926
3962
  Cancelled?: boolean;
3927
3963
  CompletedAt?: Date;
3928
3964
  Success?: boolean;
@@ -4414,6 +4450,50 @@ export declare const MJAISkillPermissionSchema: z.ZodObject<{
4414
4450
  SkillID?: string;
4415
4451
  }>;
4416
4452
  export type MJAISkillPermissionEntityType = z.infer<typeof MJAISkillPermissionSchema>;
4453
+ /**
4454
+ * zod schema definition for the entity MJ: AI Skill Search Scopes
4455
+ */
4456
+ export declare const MJAISkillSearchScopeSchema: z.ZodObject<{
4457
+ ID: z.ZodString;
4458
+ SkillID: z.ZodString;
4459
+ SearchScopeID: z.ZodString;
4460
+ Status: z.ZodUnion<[z.ZodLiteral<"Active">, z.ZodLiteral<"Inactive">]>;
4461
+ StartAt: z.ZodNullable<z.ZodDate>;
4462
+ EndAt: z.ZodNullable<z.ZodDate>;
4463
+ Priority: z.ZodNullable<z.ZodNumber>;
4464
+ IsDefault: z.ZodBoolean;
4465
+ __mj_CreatedAt: z.ZodDate;
4466
+ __mj_UpdatedAt: z.ZodDate;
4467
+ Skill: z.ZodString;
4468
+ SearchScope: z.ZodString;
4469
+ }, "strip", z.ZodTypeAny, {
4470
+ ID?: string;
4471
+ __mj_CreatedAt?: Date;
4472
+ __mj_UpdatedAt?: Date;
4473
+ Status?: "Active" | "Inactive";
4474
+ Priority?: number;
4475
+ IsDefault?: boolean;
4476
+ Skill?: string;
4477
+ SearchScopeID?: string;
4478
+ StartAt?: Date;
4479
+ EndAt?: Date;
4480
+ SearchScope?: string;
4481
+ SkillID?: string;
4482
+ }, {
4483
+ ID?: string;
4484
+ __mj_CreatedAt?: Date;
4485
+ __mj_UpdatedAt?: Date;
4486
+ Status?: "Active" | "Inactive";
4487
+ Priority?: number;
4488
+ IsDefault?: boolean;
4489
+ Skill?: string;
4490
+ SearchScopeID?: string;
4491
+ StartAt?: Date;
4492
+ EndAt?: Date;
4493
+ SearchScope?: string;
4494
+ SkillID?: string;
4495
+ }>;
4496
+ export type MJAISkillSearchScopeEntityType = z.infer<typeof MJAISkillSearchScopeSchema>;
4417
4497
  /**
4418
4498
  * zod schema definition for the entity MJ: AI Skill Sub Agents
4419
4499
  */
@@ -4459,6 +4539,7 @@ export declare const MJAISkillSchema: z.ZodObject<{
4459
4539
  __mj_CreatedAt: z.ZodDate;
4460
4540
  __mj_UpdatedAt: z.ZodDate;
4461
4541
  ActivationMode: z.ZodUnion<[z.ZodLiteral<"Auto">, z.ZodLiteral<"RequestedOnly">]>;
4542
+ SearchScopeAccess: z.ZodNullable<z.ZodUnion<[z.ZodLiteral<"All">, z.ZodLiteral<"Assigned">, z.ZodLiteral<"None">]>>;
4462
4543
  CreatedByUser: z.ZodString;
4463
4544
  }, "strip", z.ZodTypeAny, {
4464
4545
  ID?: string;
@@ -4469,6 +4550,7 @@ export declare const MJAISkillSchema: z.ZodObject<{
4469
4550
  Status?: "Active" | "Pending" | "Deprecated";
4470
4551
  IconClass?: string;
4471
4552
  Category?: string;
4553
+ SearchScopeAccess?: "None" | "All" | "Assigned";
4472
4554
  Instructions?: string;
4473
4555
  Color?: string;
4474
4556
  CreatedByUserID?: string;
@@ -4483,6 +4565,7 @@ export declare const MJAISkillSchema: z.ZodObject<{
4483
4565
  Status?: "Active" | "Pending" | "Deprecated";
4484
4566
  IconClass?: string;
4485
4567
  Category?: string;
4568
+ SearchScopeAccess?: "None" | "All" | "Assigned";
4486
4569
  Instructions?: string;
4487
4570
  Color?: string;
4488
4571
  CreatedByUserID?: string;
@@ -6950,6 +7033,92 @@ export declare const MJContentItemAttributeSchema: z.ZodObject<{
6950
7033
  ContentItem?: string;
6951
7034
  }>;
6952
7035
  export type MJContentItemAttributeEntityType = z.infer<typeof MJContentItemAttributeSchema>;
7036
+ /**
7037
+ * zod schema definition for the entity MJ: Content Item Chunks
7038
+ */
7039
+ export declare const MJContentItemChunkSchema: z.ZodObject<{
7040
+ ID: z.ZodString;
7041
+ ContentItemID: z.ZodString;
7042
+ Sequence: z.ZodNumber;
7043
+ Text: z.ZodNullable<z.ZodString>;
7044
+ VectorRecordID: z.ZodNullable<z.ZodString>;
7045
+ EmbeddingStatus: z.ZodUnion<[z.ZodLiteral<"Active">, z.ZodLiteral<"Complete">, z.ZodLiteral<"Failed">, z.ZodLiteral<"Pending">, z.ZodLiteral<"Processed">, z.ZodLiteral<"Processing">, z.ZodLiteral<"Skipped">]>;
7046
+ TaggingStatus: z.ZodUnion<[z.ZodLiteral<"Active">, z.ZodLiteral<"Complete">, z.ZodLiteral<"Failed">, z.ZodLiteral<"Pending">, z.ZodLiteral<"Processed">, z.ZodLiteral<"Processing">, z.ZodLiteral<"Skipped">]>;
7047
+ DeleteStatus: z.ZodNullable<z.ZodUnion<[z.ZodLiteral<"Deleted">, z.ZodLiteral<"Pending">]>>;
7048
+ LastEmbeddedAt: z.ZodNullable<z.ZodDate>;
7049
+ LastTaggedAt: z.ZodNullable<z.ZodDate>;
7050
+ LastDeletedAt: z.ZodNullable<z.ZodDate>;
7051
+ __mj_CreatedAt: z.ZodDate;
7052
+ __mj_UpdatedAt: z.ZodDate;
7053
+ Modality: z.ZodUnion<[z.ZodLiteral<"audio">, z.ZodLiteral<"image">, z.ZodLiteral<"multimodal">, z.ZodLiteral<"text">, z.ZodLiteral<"video">]>;
7054
+ StartOffset: z.ZodNullable<z.ZodNumber>;
7055
+ EndOffset: z.ZodNullable<z.ZodNumber>;
7056
+ StartMs: z.ZodNullable<z.ZodNumber>;
7057
+ EndMs: z.ZodNullable<z.ZodNumber>;
7058
+ PageNumber: z.ZodNullable<z.ZodNumber>;
7059
+ SegmentTitle: z.ZodNullable<z.ZodString>;
7060
+ Description: z.ZodNullable<z.ZodString>;
7061
+ Transcript: z.ZodNullable<z.ZodString>;
7062
+ SegmenterKey: z.ZodNullable<z.ZodString>;
7063
+ ParentChunkID: z.ZodNullable<z.ZodString>;
7064
+ ContentItem: z.ZodNullable<z.ZodString>;
7065
+ RootParentChunkID: z.ZodNullable<z.ZodString>;
7066
+ }, "strip", z.ZodTypeAny, {
7067
+ ID?: string;
7068
+ __mj_CreatedAt?: Date;
7069
+ __mj_UpdatedAt?: Date;
7070
+ Description?: string;
7071
+ Sequence?: number;
7072
+ Modality?: "text" | "audio" | "image" | "multimodal" | "video";
7073
+ Text?: string;
7074
+ ContentItemID?: string;
7075
+ ContentItem?: string;
7076
+ VectorRecordID?: string;
7077
+ EmbeddingStatus?: "Active" | "Pending" | "Complete" | "Failed" | "Skipped" | "Processed" | "Processing";
7078
+ TaggingStatus?: "Active" | "Pending" | "Complete" | "Failed" | "Skipped" | "Processed" | "Processing";
7079
+ DeleteStatus?: "Pending" | "Deleted";
7080
+ LastEmbeddedAt?: Date;
7081
+ LastTaggedAt?: Date;
7082
+ LastDeletedAt?: Date;
7083
+ StartOffset?: number;
7084
+ EndOffset?: number;
7085
+ StartMs?: number;
7086
+ EndMs?: number;
7087
+ PageNumber?: number;
7088
+ SegmentTitle?: string;
7089
+ Transcript?: string;
7090
+ SegmenterKey?: string;
7091
+ ParentChunkID?: string;
7092
+ RootParentChunkID?: string;
7093
+ }, {
7094
+ ID?: string;
7095
+ __mj_CreatedAt?: Date;
7096
+ __mj_UpdatedAt?: Date;
7097
+ Description?: string;
7098
+ Sequence?: number;
7099
+ Modality?: "text" | "audio" | "image" | "multimodal" | "video";
7100
+ Text?: string;
7101
+ ContentItemID?: string;
7102
+ ContentItem?: string;
7103
+ VectorRecordID?: string;
7104
+ EmbeddingStatus?: "Active" | "Pending" | "Complete" | "Failed" | "Skipped" | "Processed" | "Processing";
7105
+ TaggingStatus?: "Active" | "Pending" | "Complete" | "Failed" | "Skipped" | "Processed" | "Processing";
7106
+ DeleteStatus?: "Pending" | "Deleted";
7107
+ LastEmbeddedAt?: Date;
7108
+ LastTaggedAt?: Date;
7109
+ LastDeletedAt?: Date;
7110
+ StartOffset?: number;
7111
+ EndOffset?: number;
7112
+ StartMs?: number;
7113
+ EndMs?: number;
7114
+ PageNumber?: number;
7115
+ SegmentTitle?: string;
7116
+ Transcript?: string;
7117
+ SegmenterKey?: string;
7118
+ ParentChunkID?: string;
7119
+ RootParentChunkID?: string;
7120
+ }>;
7121
+ export type MJContentItemChunkEntityType = z.infer<typeof MJContentItemChunkSchema>;
6953
7122
  /**
6954
7123
  * zod schema definition for the entity MJ: Content Item Duplicates
6955
7124
  */
@@ -7066,33 +7235,43 @@ export declare const MJContentItemSchema: z.ZodObject<{
7066
7235
  EmbeddingModelID: z.ZodNullable<z.ZodString>;
7067
7236
  TaggingStatus: z.ZodUnion<[z.ZodLiteral<"Complete">, z.ZodLiteral<"Failed">, z.ZodLiteral<"Pending">, z.ZodLiteral<"Processing">, z.ZodLiteral<"Skipped">]>;
7068
7237
  LastTaggedAt: z.ZodNullable<z.ZodDate>;
7238
+ VectorRecordID: z.ZodNullable<z.ZodString>;
7239
+ ParentID: z.ZodNullable<z.ZodString>;
7240
+ DisplayLink: z.ZodNullable<z.ZodString>;
7069
7241
  ContentSource: z.ZodNullable<z.ZodString>;
7070
7242
  ContentType: z.ZodString;
7071
7243
  ContentSourceType: z.ZodString;
7072
7244
  ContentFileType: z.ZodString;
7073
7245
  EntityRecordDocument: z.ZodNullable<z.ZodString>;
7074
7246
  EmbeddingModel: z.ZodNullable<z.ZodString>;
7247
+ Parent: z.ZodNullable<z.ZodString>;
7248
+ RootParentID: z.ZodNullable<z.ZodString>;
7075
7249
  }, "strip", z.ZodTypeAny, {
7076
7250
  ID?: string;
7077
7251
  __mj_CreatedAt?: Date;
7078
7252
  __mj_UpdatedAt?: Date;
7079
7253
  Name?: string;
7080
7254
  Description?: string;
7255
+ ParentID?: string;
7256
+ Parent?: string;
7257
+ RootParentID?: string;
7081
7258
  EmbeddingModelID?: string;
7082
7259
  EmbeddingModel?: string;
7083
7260
  Text?: string;
7084
7261
  ContentType?: string;
7085
7262
  URL?: string;
7263
+ VectorRecordID?: string;
7264
+ EmbeddingStatus?: "Pending" | "Complete" | "Failed" | "Skipped" | "Processing";
7265
+ TaggingStatus?: "Pending" | "Complete" | "Failed" | "Skipped" | "Processing";
7266
+ LastEmbeddedAt?: Date;
7267
+ LastTaggedAt?: Date;
7086
7268
  Checksum?: string;
7087
7269
  ContentSourceID?: string;
7088
7270
  ContentTypeID?: string;
7089
7271
  ContentSourceTypeID?: string;
7090
7272
  ContentFileTypeID?: string;
7091
7273
  EntityRecordDocumentID?: string;
7092
- EmbeddingStatus?: "Pending" | "Complete" | "Failed" | "Skipped" | "Processing";
7093
- LastEmbeddedAt?: Date;
7094
- TaggingStatus?: "Pending" | "Complete" | "Failed" | "Skipped" | "Processing";
7095
- LastTaggedAt?: Date;
7274
+ DisplayLink?: string;
7096
7275
  ContentSource?: string;
7097
7276
  ContentSourceType?: string;
7098
7277
  ContentFileType?: string;
@@ -7103,21 +7282,26 @@ export declare const MJContentItemSchema: z.ZodObject<{
7103
7282
  __mj_UpdatedAt?: Date;
7104
7283
  Name?: string;
7105
7284
  Description?: string;
7285
+ ParentID?: string;
7286
+ Parent?: string;
7287
+ RootParentID?: string;
7106
7288
  EmbeddingModelID?: string;
7107
7289
  EmbeddingModel?: string;
7108
7290
  Text?: string;
7109
7291
  ContentType?: string;
7110
7292
  URL?: string;
7293
+ VectorRecordID?: string;
7294
+ EmbeddingStatus?: "Pending" | "Complete" | "Failed" | "Skipped" | "Processing";
7295
+ TaggingStatus?: "Pending" | "Complete" | "Failed" | "Skipped" | "Processing";
7296
+ LastEmbeddedAt?: Date;
7297
+ LastTaggedAt?: Date;
7111
7298
  Checksum?: string;
7112
7299
  ContentSourceID?: string;
7113
7300
  ContentTypeID?: string;
7114
7301
  ContentSourceTypeID?: string;
7115
7302
  ContentFileTypeID?: string;
7116
7303
  EntityRecordDocumentID?: string;
7117
- EmbeddingStatus?: "Pending" | "Complete" | "Failed" | "Skipped" | "Processing";
7118
- LastEmbeddedAt?: Date;
7119
- TaggingStatus?: "Pending" | "Complete" | "Failed" | "Skipped" | "Processing";
7120
- LastTaggedAt?: Date;
7304
+ DisplayLink?: string;
7121
7305
  ContentSource?: string;
7122
7306
  ContentSourceType?: string;
7123
7307
  ContentFileType?: string;
@@ -7388,6 +7572,8 @@ export declare const MJContentSourceSchema: z.ZodObject<{
7388
7572
  EntityID: z.ZodNullable<z.ZodString>;
7389
7573
  EntityDocumentID: z.ZodNullable<z.ZodString>;
7390
7574
  ScheduledActionID: z.ZodNullable<z.ZodString>;
7575
+ SegmenterKey: z.ZodNullable<z.ZodString>;
7576
+ CleanerKey: z.ZodNullable<z.ZodString>;
7391
7577
  ContentType: z.ZodString;
7392
7578
  ContentSourceType: z.ZodString;
7393
7579
  ContentFileType: z.ZodString;
@@ -7408,6 +7594,7 @@ export declare const MJContentSourceSchema: z.ZodObject<{
7408
7594
  EmbeddingModel?: string;
7409
7595
  ContentType?: string;
7410
7596
  URL?: string;
7597
+ SegmenterKey?: string;
7411
7598
  ContentTypeID?: string;
7412
7599
  ContentSourceTypeID?: string;
7413
7600
  ContentFileTypeID?: string;
@@ -7416,6 +7603,7 @@ export declare const MJContentSourceSchema: z.ZodObject<{
7416
7603
  VectorIndexID?: string;
7417
7604
  EntityDocumentID?: string;
7418
7605
  ScheduledActionID?: string;
7606
+ CleanerKey?: string;
7419
7607
  VectorIndex?: string;
7420
7608
  EntityDocument?: string;
7421
7609
  ScheduledAction?: string;
@@ -7431,6 +7619,7 @@ export declare const MJContentSourceSchema: z.ZodObject<{
7431
7619
  EmbeddingModel?: string;
7432
7620
  ContentType?: string;
7433
7621
  URL?: string;
7622
+ SegmenterKey?: string;
7434
7623
  ContentTypeID?: string;
7435
7624
  ContentSourceTypeID?: string;
7436
7625
  ContentFileTypeID?: string;
@@ -7439,6 +7628,7 @@ export declare const MJContentSourceSchema: z.ZodObject<{
7439
7628
  VectorIndexID?: string;
7440
7629
  EntityDocumentID?: string;
7441
7630
  ScheduledActionID?: string;
7631
+ CleanerKey?: string;
7442
7632
  VectorIndex?: string;
7443
7633
  EntityDocument?: string;
7444
7634
  ScheduledAction?: string;
@@ -7488,6 +7678,8 @@ export declare const MJContentTypeSchema: z.ZodObject<{
7488
7678
  EmbeddingModelID: z.ZodNullable<z.ZodString>;
7489
7679
  VectorIndexID: z.ZodNullable<z.ZodString>;
7490
7680
  Configuration: z.ZodNullable<z.ZodAny>;
7681
+ SegmenterKey: z.ZodNullable<z.ZodString>;
7682
+ CleanerKey: z.ZodNullable<z.ZodString>;
7491
7683
  AIModel: z.ZodString;
7492
7684
  EmbeddingModel: z.ZodNullable<z.ZodString>;
7493
7685
  VectorIndex: z.ZodNullable<z.ZodString>;
@@ -7502,7 +7694,9 @@ export declare const MJContentTypeSchema: z.ZodObject<{
7502
7694
  EmbeddingModel?: string;
7503
7695
  AIModelID?: string;
7504
7696
  AIModel?: string;
7697
+ SegmenterKey?: string;
7505
7698
  VectorIndexID?: string;
7699
+ CleanerKey?: string;
7506
7700
  VectorIndex?: string;
7507
7701
  MinTags?: number;
7508
7702
  MaxTags?: number;
@@ -7517,7 +7711,9 @@ export declare const MJContentTypeSchema: z.ZodObject<{
7517
7711
  EmbeddingModel?: string;
7518
7712
  AIModelID?: string;
7519
7713
  AIModel?: string;
7714
+ SegmenterKey?: string;
7520
7715
  VectorIndexID?: string;
7716
+ CleanerKey?: string;
7521
7717
  VectorIndex?: string;
7522
7718
  MinTags?: number;
7523
7719
  MaxTags?: number;
@@ -7628,6 +7824,35 @@ export declare const MJConversationArtifactSchema: z.ZodObject<{
7628
7824
  SharingScope?: "Everyone" | "Public" | "None" | "SpecificUsers";
7629
7825
  }>;
7630
7826
  export type MJConversationArtifactEntityType = z.infer<typeof MJConversationArtifactSchema>;
7827
+ /**
7828
+ * zod schema definition for the entity MJ: Conversation Compaction Runs
7829
+ */
7830
+ export declare const MJConversationCompactionRunSchema: z.ZodObject<{
7831
+ ID: z.ZodString;
7832
+ ConversationDetailID: z.ZodString;
7833
+ PromptRunID: z.ZodString;
7834
+ __mj_CreatedAt: z.ZodDate;
7835
+ __mj_UpdatedAt: z.ZodDate;
7836
+ ConversationDetail: z.ZodNullable<z.ZodString>;
7837
+ PromptRun: z.ZodNullable<z.ZodString>;
7838
+ }, "strip", z.ZodTypeAny, {
7839
+ ID?: string;
7840
+ __mj_CreatedAt?: Date;
7841
+ __mj_UpdatedAt?: Date;
7842
+ ConversationDetailID?: string;
7843
+ ConversationDetail?: string;
7844
+ PromptRunID?: string;
7845
+ PromptRun?: string;
7846
+ }, {
7847
+ ID?: string;
7848
+ __mj_CreatedAt?: Date;
7849
+ __mj_UpdatedAt?: Date;
7850
+ ConversationDetailID?: string;
7851
+ ConversationDetail?: string;
7852
+ PromptRunID?: string;
7853
+ PromptRun?: string;
7854
+ }>;
7855
+ export type MJConversationCompactionRunEntityType = z.infer<typeof MJConversationCompactionRunSchema>;
7631
7856
  /**
7632
7857
  * zod schema definition for the entity MJ: Conversation Detail Artifacts
7633
7858
  */
@@ -7802,6 +8027,7 @@ export declare const MJConversationDetailSchema: z.ZodObject<{
7802
8027
  UtteranceStartMs: z.ZodNullable<z.ZodNumber>;
7803
8028
  UtteranceEndMs: z.ZodNullable<z.ZodNumber>;
7804
8029
  MediaType: z.ZodNullable<z.ZodUnion<[z.ZodLiteral<"Audio">, z.ZodLiteral<"Text">, z.ZodLiteral<"Video">]>>;
8030
+ Sequence: z.ZodNumber;
7805
8031
  Conversation: z.ZodNullable<z.ZodString>;
7806
8032
  User: z.ZodNullable<z.ZodString>;
7807
8033
  Artifact: z.ZodNullable<z.ZodString>;
@@ -7824,6 +8050,7 @@ export declare const MJConversationDetailSchema: z.ZodObject<{
7824
8050
  Message?: string;
7825
8051
  AgentID?: string;
7826
8052
  Agent?: string;
8053
+ Sequence?: number;
7827
8054
  Conversation?: string;
7828
8055
  ConversationID?: string;
7829
8056
  TestRunID?: string;
@@ -7865,6 +8092,7 @@ export declare const MJConversationDetailSchema: z.ZodObject<{
7865
8092
  Message?: string;
7866
8093
  AgentID?: string;
7867
8094
  Agent?: string;
8095
+ Sequence?: number;
7868
8096
  Conversation?: string;
7869
8097
  ConversationID?: string;
7870
8098
  TestRunID?: string;
@@ -11579,7 +11807,7 @@ export declare const MJIntegrationObjectSchema: z.ZodObject<{
11579
11807
  ResponseDataKey?: string;
11580
11808
  DefaultPageSize?: number;
11581
11809
  SupportsPagination?: boolean;
11582
- PaginationType?: "None" | "Cursor" | "Offset" | "PageNumber";
11810
+ PaginationType?: "None" | "Cursor" | "PageNumber" | "Offset";
11583
11811
  SupportsIncrementalSync?: boolean;
11584
11812
  SupportsWrite?: boolean;
11585
11813
  DefaultQueryParams?: string;
@@ -11624,7 +11852,7 @@ export declare const MJIntegrationObjectSchema: z.ZodObject<{
11624
11852
  ResponseDataKey?: string;
11625
11853
  DefaultPageSize?: number;
11626
11854
  SupportsPagination?: boolean;
11627
- PaginationType?: "None" | "Cursor" | "Offset" | "PageNumber";
11855
+ PaginationType?: "None" | "Cursor" | "PageNumber" | "Offset";
11628
11856
  SupportsIncrementalSync?: boolean;
11629
11857
  SupportsWrite?: boolean;
11630
11858
  DefaultQueryParams?: string;
@@ -16113,9 +16341,13 @@ export declare const MJSearchExecutionLogSchema: z.ZodObject<{
16113
16341
  ProvidersJSON: z.ZodNullable<z.ZodString>;
16114
16342
  __mj_CreatedAt: z.ZodDate;
16115
16343
  __mj_UpdatedAt: z.ZodDate;
16344
+ AISkillID: z.ZodNullable<z.ZodString>;
16345
+ PrimaryScopeRecordID: z.ZodNullable<z.ZodString>;
16346
+ ScopeDecisionJSON: z.ZodNullable<z.ZodString>;
16116
16347
  SearchScope: z.ZodNullable<z.ZodString>;
16117
16348
  User: z.ZodNullable<z.ZodString>;
16118
16349
  AIAgent: z.ZodNullable<z.ZodString>;
16350
+ AISkill: z.ZodNullable<z.ZodString>;
16119
16351
  }, "strip", z.ZodTypeAny, {
16120
16352
  ID?: string;
16121
16353
  User?: string;
@@ -16123,6 +16355,7 @@ export declare const MJSearchExecutionLogSchema: z.ZodObject<{
16123
16355
  __mj_UpdatedAt?: Date;
16124
16356
  Status?: "Success" | "Failure" | "Forbidden";
16125
16357
  UserID?: string;
16358
+ PrimaryScopeRecordID?: string;
16126
16359
  SearchScopeID?: string;
16127
16360
  SearchScope?: string;
16128
16361
  Query?: string;
@@ -16133,7 +16366,10 @@ export declare const MJSearchExecutionLogSchema: z.ZodObject<{
16133
16366
  RerankerCostCents?: number;
16134
16367
  FailureReason?: string;
16135
16368
  ProvidersJSON?: string;
16369
+ AISkillID?: string;
16370
+ ScopeDecisionJSON?: string;
16136
16371
  AIAgent?: string;
16372
+ AISkill?: string;
16137
16373
  }, {
16138
16374
  ID?: string;
16139
16375
  User?: string;
@@ -16141,6 +16377,7 @@ export declare const MJSearchExecutionLogSchema: z.ZodObject<{
16141
16377
  __mj_UpdatedAt?: Date;
16142
16378
  Status?: "Success" | "Failure" | "Forbidden";
16143
16379
  UserID?: string;
16380
+ PrimaryScopeRecordID?: string;
16144
16381
  SearchScopeID?: string;
16145
16382
  SearchScope?: string;
16146
16383
  Query?: string;
@@ -16151,7 +16388,10 @@ export declare const MJSearchExecutionLogSchema: z.ZodObject<{
16151
16388
  RerankerCostCents?: number;
16152
16389
  FailureReason?: string;
16153
16390
  ProvidersJSON?: string;
16391
+ AISkillID?: string;
16392
+ ScopeDecisionJSON?: string;
16154
16393
  AIAgent?: string;
16394
+ AISkill?: string;
16155
16395
  }>;
16156
16396
  export type MJSearchExecutionLogEntityType = z.infer<typeof MJSearchExecutionLogSchema>;
16157
16397
  /**
@@ -16221,6 +16461,7 @@ export declare const MJSearchScopeEntitySchema: z.ZodObject<{
16221
16461
  UserSearchString: z.ZodNullable<z.ZodString>;
16222
16462
  __mj_CreatedAt: z.ZodDate;
16223
16463
  __mj_UpdatedAt: z.ZodDate;
16464
+ RequiredMetadataKeys: z.ZodNullable<z.ZodString>;
16224
16465
  SearchScope: z.ZodString;
16225
16466
  Entity: z.ZodString;
16226
16467
  }, "strip", z.ZodTypeAny, {
@@ -16233,6 +16474,7 @@ export declare const MJSearchScopeEntitySchema: z.ZodObject<{
16233
16474
  SearchScopeID?: string;
16234
16475
  SearchScope?: string;
16235
16476
  UserSearchString?: string;
16477
+ RequiredMetadataKeys?: string;
16236
16478
  }, {
16237
16479
  ID?: string;
16238
16480
  EntityID?: string;
@@ -16243,6 +16485,7 @@ export declare const MJSearchScopeEntitySchema: z.ZodObject<{
16243
16485
  SearchScopeID?: string;
16244
16486
  SearchScope?: string;
16245
16487
  UserSearchString?: string;
16488
+ RequiredMetadataKeys?: string;
16246
16489
  }>;
16247
16490
  export type MJSearchScopeEntityEntityType = z.infer<typeof MJSearchScopeEntitySchema>;
16248
16491
  /**
@@ -16258,6 +16501,7 @@ export declare const MJSearchScopeExternalIndexSchema: z.ZodObject<{
16258
16501
  MetadataFilter: z.ZodNullable<z.ZodString>;
16259
16502
  __mj_CreatedAt: z.ZodDate;
16260
16503
  __mj_UpdatedAt: z.ZodDate;
16504
+ RequiredMetadataKeys: z.ZodNullable<z.ZodString>;
16261
16505
  SearchScope: z.ZodString;
16262
16506
  VectorIndex: z.ZodNullable<z.ZodString>;
16263
16507
  }, "strip", z.ZodTypeAny, {
@@ -16268,6 +16512,7 @@ export declare const MJSearchScopeExternalIndexSchema: z.ZodObject<{
16268
16512
  SearchScope?: string;
16269
16513
  VectorIndexID?: string;
16270
16514
  VectorIndex?: string;
16515
+ RequiredMetadataKeys?: string;
16271
16516
  IndexType?: "Other" | "Vector" | "AzureAISearch" | "Elasticsearch" | "OpenSearch" | "Typesense";
16272
16517
  ExternalIndexName?: string;
16273
16518
  ExternalIndexConfig?: string;
@@ -16280,6 +16525,7 @@ export declare const MJSearchScopeExternalIndexSchema: z.ZodObject<{
16280
16525
  SearchScope?: string;
16281
16526
  VectorIndexID?: string;
16282
16527
  VectorIndex?: string;
16528
+ RequiredMetadataKeys?: string;
16283
16529
  IndexType?: "Other" | "Vector" | "AzureAISearch" | "Elasticsearch" | "OpenSearch" | "Typesense";
16284
16530
  ExternalIndexName?: string;
16285
16531
  ExternalIndexConfig?: string;
@@ -16297,6 +16543,9 @@ export declare const MJSearchScopePermissionSchema: z.ZodObject<{
16297
16543
  PermissionLevel: z.ZodUnion<[z.ZodLiteral<"Manage">, z.ZodLiteral<"None">, z.ZodLiteral<"Read">, z.ZodLiteral<"Search">]>;
16298
16544
  __mj_CreatedAt: z.ZodDate;
16299
16545
  __mj_UpdatedAt: z.ZodDate;
16546
+ StartAt: z.ZodNullable<z.ZodDate>;
16547
+ EndAt: z.ZodNullable<z.ZodDate>;
16548
+ PrimaryScopeRecordID: z.ZodNullable<z.ZodString>;
16300
16549
  SearchScope: z.ZodString;
16301
16550
  User: z.ZodNullable<z.ZodString>;
16302
16551
  Role: z.ZodNullable<z.ZodString>;
@@ -16307,8 +16556,11 @@ export declare const MJSearchScopePermissionSchema: z.ZodObject<{
16307
16556
  __mj_CreatedAt?: Date;
16308
16557
  __mj_UpdatedAt?: Date;
16309
16558
  UserID?: string;
16559
+ PrimaryScopeRecordID?: string;
16310
16560
  RoleID?: string;
16311
16561
  SearchScopeID?: string;
16562
+ StartAt?: Date;
16563
+ EndAt?: Date;
16312
16564
  SearchScope?: string;
16313
16565
  PermissionLevel?: "None" | "Search" | "Read" | "Manage";
16314
16566
  }, {
@@ -16318,8 +16570,11 @@ export declare const MJSearchScopePermissionSchema: z.ZodObject<{
16318
16570
  __mj_CreatedAt?: Date;
16319
16571
  __mj_UpdatedAt?: Date;
16320
16572
  UserID?: string;
16573
+ PrimaryScopeRecordID?: string;
16321
16574
  RoleID?: string;
16322
16575
  SearchScopeID?: string;
16576
+ StartAt?: Date;
16577
+ EndAt?: Date;
16323
16578
  SearchScope?: string;
16324
16579
  PermissionLevel?: "None" | "Search" | "Read" | "Manage";
16325
16580
  }>;
@@ -16900,7 +17155,7 @@ export declare const MJTagAuditLogSchema: z.ZodObject<{
16900
17155
  ID?: string;
16901
17156
  __mj_CreatedAt?: Date;
16902
17157
  __mj_UpdatedAt?: Date;
16903
- Action?: "Deprecated" | "Merged" | "Created" | "Deleted" | "DescriptionChanged" | "Moved" | "Reactivated" | "Renamed" | "Split";
17158
+ Action?: "Deprecated" | "Deleted" | "Merged" | "Created" | "DescriptionChanged" | "Moved" | "Reactivated" | "Renamed" | "Split";
16904
17159
  Details?: string;
16905
17160
  Tag?: string;
16906
17161
  TagID?: string;
@@ -16912,7 +17167,7 @@ export declare const MJTagAuditLogSchema: z.ZodObject<{
16912
17167
  ID?: string;
16913
17168
  __mj_CreatedAt?: Date;
16914
17169
  __mj_UpdatedAt?: Date;
16915
- Action?: "Deprecated" | "Merged" | "Created" | "Deleted" | "DescriptionChanged" | "Moved" | "Reactivated" | "Renamed" | "Split";
17170
+ Action?: "Deprecated" | "Deleted" | "Merged" | "Created" | "DescriptionChanged" | "Moved" | "Reactivated" | "Renamed" | "Split";
16916
17171
  Details?: string;
16917
17172
  Tag?: string;
16918
17173
  TagID?: string;
@@ -17164,7 +17419,7 @@ export declare const MJTagSchema: z.ZodObject<{
17164
17419
  Name?: string;
17165
17420
  Description?: string;
17166
17421
  ParentID?: string;
17167
- Status?: "Active" | "Deprecated" | "Merged" | "Deleted";
17422
+ Status?: "Active" | "Deprecated" | "Deleted" | "Merged";
17168
17423
  Parent?: string;
17169
17424
  RootParentID?: string;
17170
17425
  DisplayName?: string;
@@ -17188,7 +17443,7 @@ export declare const MJTagSchema: z.ZodObject<{
17188
17443
  Name?: string;
17189
17444
  Description?: string;
17190
17445
  ParentID?: string;
17191
- Status?: "Active" | "Deprecated" | "Merged" | "Deleted";
17446
+ Status?: "Active" | "Deprecated" | "Deleted" | "Merged";
17192
17447
  Parent?: string;
17193
17448
  RootParentID?: string;
17194
17449
  DisplayName?: string;
@@ -18125,6 +18380,56 @@ export declare const MJTestSchema: z.ZodObject<{
18125
18380
  RepeatCount?: number;
18126
18381
  }>;
18127
18382
  export type MJTestEntityType = z.infer<typeof MJTestSchema>;
18383
+ /**
18384
+ * zod schema definition for the entity MJ: Themes
18385
+ */
18386
+ export declare const MJThemeSchema: z.ZodObject<{
18387
+ ID: z.ZodString;
18388
+ Name: z.ZodString;
18389
+ Description: z.ZodNullable<z.ZodString>;
18390
+ Seeds: z.ZodString;
18391
+ LightMarkURL: z.ZodNullable<z.ZodString>;
18392
+ DarkMarkURL: z.ZodNullable<z.ZodString>;
18393
+ WordmarkURL: z.ZodNullable<z.ZodString>;
18394
+ MonochromeURL: z.ZodNullable<z.ZodString>;
18395
+ IsDefault: z.ZodBoolean;
18396
+ Status: z.ZodUnion<[z.ZodLiteral<"Active">, z.ZodLiteral<"Draft">, z.ZodLiteral<"Inactive">]>;
18397
+ Overrides: z.ZodNullable<z.ZodString>;
18398
+ CustomCSS: z.ZodNullable<z.ZodString>;
18399
+ __mj_CreatedAt: z.ZodDate;
18400
+ __mj_UpdatedAt: z.ZodDate;
18401
+ }, "strip", z.ZodTypeAny, {
18402
+ ID?: string;
18403
+ __mj_CreatedAt?: Date;
18404
+ __mj_UpdatedAt?: Date;
18405
+ Name?: string;
18406
+ Description?: string;
18407
+ Status?: "Active" | "Inactive" | "Draft";
18408
+ IsDefault?: boolean;
18409
+ Seeds?: string;
18410
+ LightMarkURL?: string;
18411
+ DarkMarkURL?: string;
18412
+ WordmarkURL?: string;
18413
+ MonochromeURL?: string;
18414
+ Overrides?: string;
18415
+ CustomCSS?: string;
18416
+ }, {
18417
+ ID?: string;
18418
+ __mj_CreatedAt?: Date;
18419
+ __mj_UpdatedAt?: Date;
18420
+ Name?: string;
18421
+ Description?: string;
18422
+ Status?: "Active" | "Inactive" | "Draft";
18423
+ IsDefault?: boolean;
18424
+ Seeds?: string;
18425
+ LightMarkURL?: string;
18426
+ DarkMarkURL?: string;
18427
+ WordmarkURL?: string;
18428
+ MonochromeURL?: string;
18429
+ Overrides?: string;
18430
+ CustomCSS?: string;
18431
+ }>;
18432
+ export type MJThemeEntityType = z.infer<typeof MJThemeSchema>;
18128
18433
  /**
18129
18434
  * zod schema definition for the entity MJ: User Application Entities
18130
18435
  */
@@ -24562,6 +24867,7 @@ export declare class MJAIAgentRunStepEntity extends BaseEntity<MJAIAgentRunStepE
24562
24867
  * * Possible Values
24563
24868
  * * Actions
24564
24869
  * * Chat
24870
+ * * Compaction
24565
24871
  * * Decision
24566
24872
  * * ForEach
24567
24873
  * * Plan
@@ -24573,8 +24879,8 @@ export declare class MJAIAgentRunStepEntity extends BaseEntity<MJAIAgentRunStepE
24573
24879
  * * While
24574
24880
  * * Description: Type of execution step: Prompt, Actions, Sub-Agent, Decision, Chat, Validation, ForEach, While, Tool
24575
24881
  */
24576
- get StepType(): 'Actions' | 'Chat' | 'Decision' | 'ForEach' | 'Plan' | 'Prompt' | 'Skill' | 'Sub-Agent' | 'Tool' | 'Validation' | 'While';
24577
- set StepType(value: 'Actions' | 'Chat' | 'Decision' | 'ForEach' | 'Plan' | 'Prompt' | 'Skill' | 'Sub-Agent' | 'Tool' | 'Validation' | 'While');
24882
+ get StepType(): 'Actions' | 'Chat' | 'Compaction' | 'Decision' | 'ForEach' | 'Plan' | 'Prompt' | 'Skill' | 'Sub-Agent' | 'Tool' | 'Validation' | 'While';
24883
+ set StepType(value: 'Actions' | 'Chat' | 'Compaction' | 'Decision' | 'ForEach' | 'Plan' | 'Prompt' | 'Skill' | 'Sub-Agent' | 'Tool' | 'Validation' | 'While');
24578
24884
  /**
24579
24885
  * * Field Name: StepName
24580
24886
  * * Display Name: Step Name
@@ -26805,6 +27111,45 @@ export declare class MJAIAgentTypeEntity extends BaseEntity<MJAIAgentTypeEntityT
26805
27111
  */
26806
27112
  Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
26807
27113
  /**
27114
+ * Validate() method override for MJ: AI Agent Types entity. This is an auto-generated method that invokes the generated validators for this entity for the following fields:
27115
+ * * CompactionTargetPercent: The compaction target percentage must be a value between 1 and 100 percent.
27116
+ * * CompactionTriggerPercent: The compaction trigger percentage must be a value between 1 and 100 percent.
27117
+ * * ContextWindowMaxTokens: The maximum tokens for the context window must be a positive number greater than 0.
27118
+ * * Table-Level: The compaction target percentage must be less than the compaction trigger percentage to ensure that compaction successfully reduces the resource usage below the trigger threshold.
27119
+ * @public
27120
+ * @method
27121
+ * @override
27122
+ */
27123
+ Validate(): ValidationResult;
27124
+ /**
27125
+ * The compaction target percentage must be a value between 1 and 100 percent.
27126
+ * @param result - the ValidationResult object to add any errors or warnings to
27127
+ * @public
27128
+ * @method
27129
+ */
27130
+ ValidateCompactionTargetPercentRange(result: ValidationResult): void;
27131
+ /**
27132
+ * The compaction trigger percentage must be a value between 1 and 100 percent.
27133
+ * @param result - the ValidationResult object to add any errors or warnings to
27134
+ * @public
27135
+ * @method
27136
+ */
27137
+ ValidateCompactionTriggerPercentRange(result: ValidationResult): void;
27138
+ /**
27139
+ * The maximum tokens for the context window must be a positive number greater than 0.
27140
+ * @param result - the ValidationResult object to add any errors or warnings to
27141
+ * @public
27142
+ * @method
27143
+ */
27144
+ ValidateContextWindowMaxTokensGreaterThanZero(result: ValidationResult): void;
27145
+ /**
27146
+ * The compaction target percentage must be less than the compaction trigger percentage to ensure that compaction successfully reduces the resource usage below the trigger threshold.
27147
+ * @param result - the ValidationResult object to add any errors or warnings to
27148
+ * @public
27149
+ * @method
27150
+ */
27151
+ ValidateCompactionTargetPercentLessThanTriggerPercent(result: ValidationResult): void;
27152
+ /**
26808
27153
  * * Field Name: ID
26809
27154
  * * Display Name: ID
26810
27155
  * * SQL Data Type: uniqueidentifier
@@ -26840,7 +27185,7 @@ export declare class MJAIAgentTypeEntity extends BaseEntity<MJAIAgentTypeEntityT
26840
27185
  set SystemPromptID(value: string | null);
26841
27186
  /**
26842
27187
  * * Field Name: IsActive
26843
- * * Display Name: Is Active
27188
+ * * Display Name: Active
26844
27189
  * * SQL Data Type: bit
26845
27190
  * * Default Value: 1
26846
27191
  * * Description: Indicates whether this agent type is available for use. Inactive types cannot be assigned to new agents.
@@ -26904,7 +27249,7 @@ export declare class MJAIAgentTypeEntity extends BaseEntity<MJAIAgentTypeEntityT
26904
27249
  set UIFormSectionExpandedByDefault(value: boolean);
26905
27250
  /**
26906
27251
  * * Field Name: PromptParamsSchema
26907
- * * Display Name: Prompt Parameters Schema
27252
+ * * Display Name: Prompt Params Schema
26908
27253
  * * SQL Data Type: nvarchar(MAX)
26909
27254
  * * Description: JSON Schema defining the available prompt parameters for this agent type. Includes property definitions with types, defaults, and descriptions. Used by agents of this type to customize which prompt sections are included in the system prompt. The schema follows JSON Schema draft-07 format.
26910
27255
  */
@@ -26920,7 +27265,7 @@ export declare class MJAIAgentTypeEntity extends BaseEntity<MJAIAgentTypeEntityT
26920
27265
  set AssignmentStrategy(value: string | null);
26921
27266
  /**
26922
27267
  * * Field Name: DefaultStorageAccountID
26923
- * * Display Name: Default Storage Account
27268
+ * * Display Name: Default Storage Account ID
26924
27269
  * * SQL Data Type: uniqueidentifier
26925
27270
  * * Related Entity/Foreign Key: MJ: File Storage Accounts (vwFileStorageAccounts.ID)
26926
27271
  * * Description: Default file storage account for agents of this type. Lowest priority in the resolution chain (Type → Category tree → Agent → Runtime override). When set, all agents of this type use this storage account unless overridden at a more specific level. FK to FileStorageAccount.
@@ -26929,7 +27274,7 @@ export declare class MJAIAgentTypeEntity extends BaseEntity<MJAIAgentTypeEntityT
26929
27274
  set DefaultStorageAccountID(value: string | null);
26930
27275
  /**
26931
27276
  * * Field Name: ConfigSchema
26932
- * * Display Name: Configuration Schema
27277
+ * * Display Name: Config Schema
26933
27278
  * * SQL Data Type: nvarchar(MAX)
26934
27279
  * * Description: JSON Schema (draft-07) describing the shape of TypeConfiguration payloads on agents of this type. When present, agent saves validate their TypeConfiguration against it server-side (MJAIAgentEntityServer.ValidateAsync); null = TypeConfiguration is freeform for this type.
26935
27280
  */
@@ -26944,17 +27289,89 @@ export declare class MJAIAgentTypeEntity extends BaseEntity<MJAIAgentTypeEntityT
26944
27289
  get DefaultConfiguration(): string | null;
26945
27290
  set DefaultConfiguration(value: string | null);
26946
27291
  /**
27292
+ * * Field Name: ContextCompressionMessageThreshold
27293
+ * * Display Name: Context Compression Message Threshold
27294
+ * * SQL Data Type: int
27295
+ * * Description: Type-level default for the in-turn context-compression message-count threshold. Overridable per agent via AIAgent.ContextCompressionMessageThreshold.
27296
+ */
27297
+ get ContextCompressionMessageThreshold(): number | null;
27298
+ set ContextCompressionMessageThreshold(value: number | null);
27299
+ /**
27300
+ * * Field Name: ContextCompressionPromptID
27301
+ * * Display Name: Context Compression Prompt ID
27302
+ * * SQL Data Type: uniqueidentifier
27303
+ * * Related Entity/Foreign Key: MJ: AI Prompts (vwAIPrompts.ID)
27304
+ * * Description: Type-level default prompt used for in-turn context compression. Overridable per agent via AIAgent.ContextCompressionPromptID.
27305
+ */
27306
+ get ContextCompressionPromptID(): string | null;
27307
+ set ContextCompressionPromptID(value: string | null);
27308
+ /**
27309
+ * * Field Name: ContextCompressionMessageRetentionCount
27310
+ * * Display Name: Context Compression Message Retention Count
27311
+ * * SQL Data Type: int
27312
+ * * Description: Type-level default for the number of most-recent messages kept uncompressed (the "hot tail") when context compression is applied. Overridable per agent via AIAgent.ContextCompressionMessageRetentionCount.
27313
+ */
27314
+ get ContextCompressionMessageRetentionCount(): number | null;
27315
+ set ContextCompressionMessageRetentionCount(value: number | null);
27316
+ /**
27317
+ * * Field Name: ContextWindowMaxTokens
27318
+ * * Display Name: Context Window Max Tokens
27319
+ * * SQL Data Type: int
27320
+ * * Description: Type-level default effective working-context budget, in tokens. Null means use the selected model's MaxInputTokens. The resolved value is clamped to the model's limit at runtime (a warning is logged if it would exceed it). Overridable per agent via AIAgent.ContextWindowMaxTokens.
27321
+ */
27322
+ get ContextWindowMaxTokens(): number | null;
27323
+ set ContextWindowMaxTokens(value: number | null);
27324
+ /**
27325
+ * * Field Name: CompactionTriggerPercent
27326
+ * * Display Name: Compaction Trigger Percent
27327
+ * * SQL Data Type: int
27328
+ * * Default Value: 75
27329
+ * * Description: Type-level default: the percentage of the effective context budget at which cross-turn conversation compaction is triggered. Defaults to 75. Overridable per agent via AIAgent.CompactionTriggerPercent.
27330
+ */
27331
+ get CompactionTriggerPercent(): number;
27332
+ set CompactionTriggerPercent(value: number);
27333
+ /**
27334
+ * * Field Name: CompactionTargetPercent
27335
+ * * Display Name: Compaction Target Percent
27336
+ * * SQL Data Type: int
27337
+ * * Default Value: 30
27338
+ * * Description: Type-level default: the target percentage of the effective context budget to reduce to after a cross-turn compaction. Defaults to 30. Overridable per agent via AIAgent.CompactionTargetPercent.
27339
+ */
27340
+ get CompactionTargetPercent(): number;
27341
+ set CompactionTargetPercent(value: number);
27342
+ /**
27343
+ * * Field Name: ConversationSummaryPromptID
27344
+ * * Display Name: Conversation Summary Prompt ID
27345
+ * * SQL Data Type: uniqueidentifier
27346
+ * * Related Entity/Foreign Key: MJ: AI Prompts (vwAIPrompts.ID)
27347
+ * * Description: Type-level default prompt used for cross-turn conversation compaction (the durable summary baseline). Distinct from ContextCompressionPromptID, which governs in-turn compression. Overridable per agent via AIAgent.ConversationSummaryPromptID.
27348
+ */
27349
+ get ConversationSummaryPromptID(): string | null;
27350
+ set ConversationSummaryPromptID(value: string | null);
27351
+ /**
26947
27352
  * * Field Name: SystemPrompt
26948
- * * Display Name: System Prompt Content
27353
+ * * Display Name: System Prompt
26949
27354
  * * SQL Data Type: nvarchar(255)
26950
27355
  */
26951
27356
  get SystemPrompt(): string | null;
26952
27357
  /**
26953
27358
  * * Field Name: DefaultStorageAccount
26954
- * * Display Name: Default Storage Account Name
27359
+ * * Display Name: Default Storage Account
26955
27360
  * * SQL Data Type: nvarchar(200)
26956
27361
  */
26957
27362
  get DefaultStorageAccount(): string | null;
27363
+ /**
27364
+ * * Field Name: ContextCompressionPrompt
27365
+ * * Display Name: Context Compression Prompt
27366
+ * * SQL Data Type: nvarchar(255)
27367
+ */
27368
+ get ContextCompressionPrompt(): string | null;
27369
+ /**
27370
+ * * Field Name: ConversationSummaryPrompt
27371
+ * * Display Name: Conversation Summary Prompt
27372
+ * * SQL Data Type: nvarchar(255)
27373
+ */
27374
+ get ConversationSummaryPrompt(): string | null;
26958
27375
  }
26959
27376
  /**
26960
27377
  * MJ: AI Agents - strongly typed entity sub-class
@@ -26992,6 +27409,9 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
26992
27409
  Delete(options?: EntityDeleteOptions): Promise<boolean>;
26993
27410
  /**
26994
27411
  * Validate() method override for MJ: AI Agents entity. This is an auto-generated method that invokes the generated validators for this entity for the following fields:
27412
+ * * CompactionTargetPercent: The compaction target percentage must be between 1 and 100 percent.
27413
+ * * CompactionTriggerPercent: The compaction trigger percentage must be a value between 1 and 100.
27414
+ * * ContextWindowMaxTokens: The maximum tokens for the context window must be a positive number greater than zero.
26995
27415
  * * DefaultPromptEffortLevel: This rule ensures that if a default prompt effort level is specified, it must be a number between 1 and 100, inclusive.
26996
27416
  * * MaxExecutionsPerRun: This rule ensures that if 'MaxExecutionsPerRun' is provided, it must be a value greater than zero. If it is left blank, that's acceptable.
26997
27417
  * * MaxMessages: This rule ensures that the maximum number of messages, if specified, must be greater than zero.
@@ -27005,6 +27425,27 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
27005
27425
  */
27006
27426
  Validate(): ValidationResult;
27007
27427
  /**
27428
+ * The compaction target percentage must be between 1 and 100 percent.
27429
+ * @param result - the ValidationResult object to add any errors or warnings to
27430
+ * @public
27431
+ * @method
27432
+ */
27433
+ ValidateCompactionTargetPercentRange(result: ValidationResult): void;
27434
+ /**
27435
+ * The compaction trigger percentage must be a value between 1 and 100.
27436
+ * @param result - the ValidationResult object to add any errors or warnings to
27437
+ * @public
27438
+ * @method
27439
+ */
27440
+ ValidateCompactionTriggerPercentRange(result: ValidationResult): void;
27441
+ /**
27442
+ * The maximum tokens for the context window must be a positive number greater than zero.
27443
+ * @param result - the ValidationResult object to add any errors or warnings to
27444
+ * @public
27445
+ * @method
27446
+ */
27447
+ ValidateContextWindowMaxTokensGreaterThanZero(result: ValidationResult): void;
27448
+ /**
27008
27449
  * This rule ensures that if a default prompt effort level is specified, it must be a number between 1 and 100, inclusive.
27009
27450
  * @param result - the ValidationResult object to add any errors or warnings to
27010
27451
  * @public
@@ -27102,7 +27543,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
27102
27543
  get __mj_UpdatedAt(): Date;
27103
27544
  /**
27104
27545
  * * Field Name: ParentID
27105
- * * Display Name: Parent Agent
27546
+ * * Display Name: Parent
27106
27547
  * * SQL Data Type: uniqueidentifier
27107
27548
  * * Related Entity/Foreign Key: MJ: AI Agents (vwAIAgents.ID)
27108
27549
  * * Description: References the parent agent in the hierarchical structure. If NULL, this is a root (top-level) agent.
@@ -27151,7 +27592,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
27151
27592
  set EnableContextCompression(value: boolean);
27152
27593
  /**
27153
27594
  * * Field Name: ContextCompressionMessageThreshold
27154
- * * Display Name: Compression Message Threshold
27595
+ * * Display Name: Context Compression Message Threshold
27155
27596
  * * SQL Data Type: int
27156
27597
  * * Description: Number of messages that triggers context compression when EnableContextCompression is true.
27157
27598
  */
@@ -27159,7 +27600,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
27159
27600
  set ContextCompressionMessageThreshold(value: number | null);
27160
27601
  /**
27161
27602
  * * Field Name: ContextCompressionPromptID
27162
- * * Display Name: Compression Prompt
27603
+ * * Display Name: Context Compression Prompt ID
27163
27604
  * * SQL Data Type: uniqueidentifier
27164
27605
  * * Related Entity/Foreign Key: MJ: AI Prompts (vwAIPrompts.ID)
27165
27606
  */
@@ -27167,7 +27608,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
27167
27608
  set ContextCompressionPromptID(value: string | null);
27168
27609
  /**
27169
27610
  * * Field Name: ContextCompressionMessageRetentionCount
27170
- * * Display Name: Compression Retention Count
27611
+ * * Display Name: Context Compression Message Retention Count
27171
27612
  * * SQL Data Type: int
27172
27613
  * * Description: Number of recent messages to keep uncompressed when context compression is applied.
27173
27614
  */
@@ -27175,7 +27616,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
27175
27616
  set ContextCompressionMessageRetentionCount(value: number | null);
27176
27617
  /**
27177
27618
  * * Field Name: TypeID
27178
- * * Display Name: Agent Type
27619
+ * * Display Name: Type
27179
27620
  * * SQL Data Type: uniqueidentifier
27180
27621
  * * Related Entity/Foreign Key: MJ: AI Agent Types (vwAIAgentTypes.ID)
27181
27622
  * * Description: Reference to the AIAgentType that defines the category and system-level behavior for this agent. Cannot be null.
@@ -27227,7 +27668,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
27227
27668
  set ModelSelectionMode(value: 'Agent' | 'Agent Type');
27228
27669
  /**
27229
27670
  * * Field Name: PayloadDownstreamPaths
27230
- * * Display Name: Downstream Payload Paths
27671
+ * * Display Name: Payload Downstream Paths
27231
27672
  * * SQL Data Type: nvarchar(MAX)
27232
27673
  * * Default Value: ["*"]
27233
27674
  * * 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"]
@@ -27236,7 +27677,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
27236
27677
  set PayloadDownstreamPaths(value: string);
27237
27678
  /**
27238
27679
  * * Field Name: PayloadUpstreamPaths
27239
- * * Display Name: Upstream Payload Paths
27680
+ * * Display Name: Payload Upstream Paths
27240
27681
  * * SQL Data Type: nvarchar(MAX)
27241
27682
  * * Default Value: ["*"]
27242
27683
  * * 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.*"]
@@ -27245,7 +27686,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
27245
27686
  set PayloadUpstreamPaths(value: string);
27246
27687
  /**
27247
27688
  * * Field Name: PayloadSelfReadPaths
27248
- * * Display Name: Self-Read Payload Paths
27689
+ * * Display Name: Payload Self Read Paths
27249
27690
  * * SQL Data Type: nvarchar(MAX)
27250
27691
  * * Description: JSON array of paths that specify what parts of the payload the agent's own prompt can read. Controls downstream data
27251
27692
  flow when the agent executes its own prompt step.
@@ -27254,7 +27695,7 @@ flow when the agent executes its own prompt step.
27254
27695
  set PayloadSelfReadPaths(value: string | null);
27255
27696
  /**
27256
27697
  * * Field Name: PayloadSelfWritePaths
27257
- * * Display Name: Self-Write Payload Paths
27698
+ * * Display Name: Payload Self Write Paths
27258
27699
  * * SQL Data Type: nvarchar(MAX)
27259
27700
  * * Description: JSON array of paths that specify what parts of the payload the agent's own prompt can write back. Controls upstream
27260
27701
  data flow when the agent executes its own prompt step.
@@ -27279,7 +27720,7 @@ data flow when the agent executes its own prompt step.
27279
27720
  set FinalPayloadValidation(value: string | null);
27280
27721
  /**
27281
27722
  * * Field Name: FinalPayloadValidationMode
27282
- * * Display Name: Final Validation Mode
27723
+ * * Display Name: Final Payload Validation Mode
27283
27724
  * * SQL Data Type: nvarchar(25)
27284
27725
  * * Default Value: Retry
27285
27726
  * * Value List Type: List
@@ -27293,7 +27734,7 @@ data flow when the agent executes its own prompt step.
27293
27734
  set FinalPayloadValidationMode(value: 'Fail' | 'Retry' | 'Warn');
27294
27735
  /**
27295
27736
  * * Field Name: FinalPayloadValidationMaxRetries
27296
- * * Display Name: Final Validation Max Retries
27737
+ * * Display Name: Final Payload Validation Max Retries
27297
27738
  * * SQL Data Type: int
27298
27739
  * * Default Value: 3
27299
27740
  * * Description: Maximum number of retry attempts allowed when FinalPayloadValidation fails with
@@ -27363,7 +27804,7 @@ if this limit is exceeded.
27363
27804
  set StartingPayloadValidation(value: string | null);
27364
27805
  /**
27365
27806
  * * Field Name: StartingPayloadValidationMode
27366
- * * Display Name: Starting Validation Mode
27807
+ * * Display Name: Starting Payload Validation Mode
27367
27808
  * * SQL Data Type: nvarchar(25)
27368
27809
  * * Default Value: Fail
27369
27810
  * * Value List Type: List
@@ -27406,7 +27847,7 @@ if this limit is exceeded.
27406
27847
  set DefaultArtifactTypeID(value: string | null);
27407
27848
  /**
27408
27849
  * * Field Name: OwnerUserID
27409
- * * Display Name: Owner
27850
+ * * Display Name: Owner User
27410
27851
  * * SQL Data Type: uniqueidentifier
27411
27852
  * * Related Entity/Foreign Key: MJ: Users (vwUsers.ID)
27412
27853
  * * Default Value: ECAFCCEC-6A37-EF11-86D4-000D3A4E707E
@@ -27581,7 +28022,7 @@ if this limit is exceeded.
27581
28022
  set InlineStorageThresholdBytes(value: number | null);
27582
28023
  /**
27583
28024
  * * Field Name: AgentTypePromptParams
27584
- * * Display Name: Prompt Parameters
28025
+ * * Display Name: Agent Type Prompt Params
27585
28026
  * * SQL Data Type: nvarchar(MAX)
27586
28027
  * * 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.
27587
28028
  */
@@ -27783,14 +28224,47 @@ if this limit is exceeded.
27783
28224
  get RequirePlanMode(): boolean;
27784
28225
  set RequirePlanMode(value: boolean);
27785
28226
  /**
28227
+ * * Field Name: ContextWindowMaxTokens
28228
+ * * Display Name: Context Window Max Tokens
28229
+ * * SQL Data Type: int
28230
+ * * Description: Per-agent override for the effective working-context budget, in tokens. Null inherits the agent type's value (which, if also null, falls back to the selected model's MaxInputTokens). The resolved value is clamped to the model's limit at runtime.
28231
+ */
28232
+ get ContextWindowMaxTokens(): number | null;
28233
+ set ContextWindowMaxTokens(value: number | null);
28234
+ /**
28235
+ * * Field Name: CompactionTriggerPercent
28236
+ * * Display Name: Compaction Trigger Percent
28237
+ * * SQL Data Type: int
28238
+ * * Description: Per-agent override for the cross-turn compaction trigger percentage. Null inherits the agent type's value.
28239
+ */
28240
+ get CompactionTriggerPercent(): number | null;
28241
+ set CompactionTriggerPercent(value: number | null);
28242
+ /**
28243
+ * * Field Name: CompactionTargetPercent
28244
+ * * Display Name: Compaction Target Percent
28245
+ * * SQL Data Type: int
28246
+ * * Description: Per-agent override for the cross-turn compaction target percentage. Null inherits the agent type's value.
28247
+ */
28248
+ get CompactionTargetPercent(): number | null;
28249
+ set CompactionTargetPercent(value: number | null);
28250
+ /**
28251
+ * * Field Name: ConversationSummaryPromptID
28252
+ * * Display Name: Conversation Summary Prompt ID
28253
+ * * SQL Data Type: uniqueidentifier
28254
+ * * Related Entity/Foreign Key: MJ: AI Prompts (vwAIPrompts.ID)
28255
+ * * Description: Per-agent override for the cross-turn conversation compaction prompt. Null inherits the agent type's value.
28256
+ */
28257
+ get ConversationSummaryPromptID(): string | null;
28258
+ set ConversationSummaryPromptID(value: string | null);
28259
+ /**
27786
28260
  * * Field Name: Parent
27787
- * * Display Name: Parent Agent Name
28261
+ * * Display Name: Parent
27788
28262
  * * SQL Data Type: nvarchar(255)
27789
28263
  */
27790
28264
  get Parent(): string | null;
27791
28265
  /**
27792
28266
  * * Field Name: ContextCompressionPrompt
27793
- * * Display Name: Compression Prompt Name
28267
+ * * Display Name: Context Compression Prompt
27794
28268
  * * SQL Data Type: nvarchar(255)
27795
28269
  */
27796
28270
  get ContextCompressionPrompt(): string | null;
@@ -27802,13 +28276,13 @@ if this limit is exceeded.
27802
28276
  get Type(): string | null;
27803
28277
  /**
27804
28278
  * * Field Name: DefaultArtifactType
27805
- * * Display Name: Default Artifact Type Name
28279
+ * * Display Name: Default Artifact Type
27806
28280
  * * SQL Data Type: nvarchar(100)
27807
28281
  */
27808
28282
  get DefaultArtifactType(): string | null;
27809
28283
  /**
27810
28284
  * * Field Name: OwnerUser
27811
- * * Display Name: Owner Name
28285
+ * * Display Name: Owner User
27812
28286
  * * SQL Data Type: nvarchar(100)
27813
28287
  */
27814
28288
  get OwnerUser(): string;
@@ -27820,7 +28294,7 @@ if this limit is exceeded.
27820
28294
  get AttachmentStorageProvider(): string | null;
27821
28295
  /**
27822
28296
  * * Field Name: Category
27823
- * * Display Name: Category Name
28297
+ * * Display Name: Category
27824
28298
  * * SQL Data Type: nvarchar(200)
27825
28299
  */
27826
28300
  get Category(): string | null;
@@ -27849,14 +28323,20 @@ if this limit is exceeded.
27849
28323
  */
27850
28324
  get DefaultMediaCollection(): string | null;
27851
28325
  /**
28326
+ * * Field Name: ConversationSummaryPrompt
28327
+ * * Display Name: Conversation Summary Prompt
28328
+ * * SQL Data Type: nvarchar(255)
28329
+ */
28330
+ get ConversationSummaryPrompt(): string | null;
28331
+ /**
27852
28332
  * * Field Name: RootParentID
27853
- * * Display Name: Root Parent
28333
+ * * Display Name: Root Parent ID
27854
28334
  * * SQL Data Type: uniqueidentifier
27855
28335
  */
27856
28336
  get RootParentID(): string | null;
27857
28337
  /**
27858
28338
  * * Field Name: RootDefaultCoAgentID
27859
- * * Display Name: Root Default Co-Agent
28339
+ * * Display Name: Root Default Co-Agent ID
27860
28340
  * * SQL Data Type: uniqueidentifier
27861
28341
  */
27862
28342
  get RootDefaultCoAgentID(): string | null;
@@ -31100,15 +31580,6 @@ export declare class MJAIPromptRunEntity extends BaseEntity<MJAIPromptRunEntityT
31100
31580
  get ExecutionOrder(): number | null;
31101
31581
  set ExecutionOrder(value: number | null);
31102
31582
  /**
31103
- * * Field Name: AgentRunID
31104
- * * Display Name: Agent Run
31105
- * * SQL Data Type: uniqueidentifier
31106
- * * Related Entity/Foreign Key: MJ: AI Agent Runs (vwAIAgentRuns.ID)
31107
- * * Description: Optional reference to the AIAgentRun that initiated this prompt execution. Links prompt runs to their parent agent runs for comprehensive execution tracking.
31108
- */
31109
- get AgentRunID(): string | null;
31110
- set AgentRunID(value: string | null);
31111
- /**
31112
31583
  * * Field Name: Cost
31113
31584
  * * Display Name: Cost
31114
31585
  * * SQL Data Type: decimal(19, 8)
@@ -31696,12 +32167,6 @@ export declare class MJAIPromptRunEntity extends BaseEntity<MJAIPromptRunEntityT
31696
32167
  */
31697
32168
  get Parent(): string | null;
31698
32169
  /**
31699
- * * Field Name: AgentRun
31700
- * * Display Name: Agent Run
31701
- * * SQL Data Type: nvarchar(255)
31702
- */
31703
- get AgentRun(): string | null;
31704
- /**
31705
32170
  * * Field Name: OriginalModel
31706
32171
  * * Display Name: Original Model
31707
32172
  * * SQL Data Type: nvarchar(50)
@@ -33114,6 +33579,129 @@ export declare class MJAISkillPermissionEntity extends BaseEntity<MJAISkillPermi
33114
33579
  */
33115
33580
  get User(): string | null;
33116
33581
  }
33582
+ /**
33583
+ * MJ: AI Skill Search Scopes - strongly typed entity sub-class
33584
+ * * Schema: __mj
33585
+ * * Base Table: AISkillSearchScope
33586
+ * * Base View: vwAISkillSearchScopes
33587
+ * * @description Search Scopes an AI Skill may reach when activated, honoured when AISkill.SearchScopeAccess = 'Assigned'. Mirrors AIAgentSearchScope: Status plus an optional StartAt/EndAt window time-box a grant, and Priority/IsDefault pick among several. An empty table means no skill grants any scope - the pre-migration behaviour.
33588
+ * * Primary Key: ID
33589
+ * @extends {BaseEntity}
33590
+ * @class
33591
+ * @public
33592
+ */
33593
+ export declare class MJAISkillSearchScopeEntity extends BaseEntity<MJAISkillSearchScopeEntityType> {
33594
+ /**
33595
+ * Loads the MJ: AI Skill Search Scopes record from the database
33596
+ * @param ID: string - primary key value to load the MJ: AI Skill Search Scopes record.
33597
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
33598
+ * @returns {Promise<boolean>} - true if successful, false otherwise
33599
+ * @public
33600
+ * @async
33601
+ * @memberof MJAISkillSearchScopeEntity
33602
+ * @method
33603
+ * @override
33604
+ */
33605
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
33606
+ /**
33607
+ * * Field Name: ID
33608
+ * * Display Name: ID
33609
+ * * SQL Data Type: uniqueidentifier
33610
+ * * Default Value: newsequentialid()
33611
+ */
33612
+ get ID(): string;
33613
+ set ID(value: string);
33614
+ /**
33615
+ * * Field Name: SkillID
33616
+ * * Display Name: Skill ID
33617
+ * * SQL Data Type: uniqueidentifier
33618
+ * * Related Entity/Foreign Key: MJ: AI Skills (vwAISkills.ID)
33619
+ * * Description: The skill this grant belongs to.
33620
+ */
33621
+ get SkillID(): string;
33622
+ set SkillID(value: string);
33623
+ /**
33624
+ * * Field Name: SearchScopeID
33625
+ * * Display Name: Search Scope ID
33626
+ * * SQL Data Type: uniqueidentifier
33627
+ * * Related Entity/Foreign Key: MJ: Search Scopes (vwSearchScopes.ID)
33628
+ * * Description: The Search Scope this skill may reach.
33629
+ */
33630
+ get SearchScopeID(): string;
33631
+ set SearchScopeID(value: string);
33632
+ /**
33633
+ * * Field Name: Status
33634
+ * * Display Name: Status
33635
+ * * SQL Data Type: nvarchar(20)
33636
+ * * Default Value: Active
33637
+ * * Value List Type: List
33638
+ * * Possible Values
33639
+ * * Active
33640
+ * * Inactive
33641
+ * * Description: Active or Inactive. Inactive rows are ignored during resolution.
33642
+ */
33643
+ get Status(): 'Active' | 'Inactive';
33644
+ set Status(value: 'Active' | 'Inactive');
33645
+ /**
33646
+ * * Field Name: StartAt
33647
+ * * Display Name: Start At
33648
+ * * SQL Data Type: datetimeoffset
33649
+ * * Description: Optional start of the window in which this grant is honoured. NULL = no lower bound. Evaluated against the current time on every resolution, so a window opening or closing needs no cache invalidation.
33650
+ */
33651
+ get StartAt(): Date | null;
33652
+ set StartAt(value: Date | null);
33653
+ /**
33654
+ * * Field Name: EndAt
33655
+ * * Display Name: End At
33656
+ * * SQL Data Type: datetimeoffset
33657
+ * * Description: Optional end of the window in which this grant is honoured. NULL = no upper bound.
33658
+ */
33659
+ get EndAt(): Date | null;
33660
+ set EndAt(value: Date | null);
33661
+ /**
33662
+ * * Field Name: Priority
33663
+ * * Display Name: Priority
33664
+ * * SQL Data Type: int
33665
+ * * Description: Lower numbers win when several granted scopes are candidates and none is marked IsDefault.
33666
+ */
33667
+ get Priority(): number | null;
33668
+ set Priority(value: number | null);
33669
+ /**
33670
+ * * Field Name: IsDefault
33671
+ * * Display Name: Is Default
33672
+ * * SQL Data Type: bit
33673
+ * * Default Value: 0
33674
+ * * Description: When set, this scope is chosen for the skill ahead of Priority ordering.
33675
+ */
33676
+ get IsDefault(): boolean;
33677
+ set IsDefault(value: boolean);
33678
+ /**
33679
+ * * Field Name: __mj_CreatedAt
33680
+ * * Display Name: Created At
33681
+ * * SQL Data Type: datetimeoffset
33682
+ * * Default Value: getutcdate()
33683
+ */
33684
+ get __mj_CreatedAt(): Date;
33685
+ /**
33686
+ * * Field Name: __mj_UpdatedAt
33687
+ * * Display Name: Updated At
33688
+ * * SQL Data Type: datetimeoffset
33689
+ * * Default Value: getutcdate()
33690
+ */
33691
+ get __mj_UpdatedAt(): Date;
33692
+ /**
33693
+ * * Field Name: Skill
33694
+ * * Display Name: Skill
33695
+ * * SQL Data Type: nvarchar(255)
33696
+ */
33697
+ get Skill(): string;
33698
+ /**
33699
+ * * Field Name: SearchScope
33700
+ * * Display Name: Search Scope
33701
+ * * SQL Data Type: nvarchar(200)
33702
+ */
33703
+ get SearchScope(): string;
33704
+ }
33117
33705
  /**
33118
33706
  * MJ: AI Skill Sub Agents - strongly typed entity sub-class
33119
33707
  * * Schema: __mj
@@ -33320,6 +33908,19 @@ export declare class MJAISkillEntity extends BaseEntity<MJAISkillEntityType> {
33320
33908
  get ActivationMode(): 'Auto' | 'RequestedOnly';
33321
33909
  set ActivationMode(value: 'Auto' | 'RequestedOnly');
33322
33910
  /**
33911
+ * * Field Name: SearchScopeAccess
33912
+ * * Display Name: Search Scope Access
33913
+ * * SQL Data Type: nvarchar(20)
33914
+ * * Value List Type: List
33915
+ * * Possible Values
33916
+ * * All
33917
+ * * Assigned
33918
+ * * None
33919
+ * * Description: Which Search Scopes this skill may reach when activated. None = grants no retrieval scope; Assigned = only scopes listed in AISkillSearchScope; All = any active scope. NULL behaves as None so existing skills are unaffected. Mirrors AIAgent.SearchScopeAccess so a skill and an agent are interchangeable principals to SearchScopePermissionResolver.
33920
+ */
33921
+ get SearchScopeAccess(): 'All' | 'Assigned' | 'None' | null;
33922
+ set SearchScopeAccess(value: 'All' | 'Assigned' | 'None' | null);
33923
+ /**
33323
33924
  * * Field Name: CreatedByUser
33324
33925
  * * Display Name: Created By User
33325
33926
  * * SQL Data Type: nvarchar(100)
@@ -40291,6 +40892,266 @@ export declare class MJContentItemAttributeEntity extends BaseEntity<MJContentIt
40291
40892
  */
40292
40893
  get ContentItem(): string | null;
40293
40894
  }
40895
+ /**
40896
+ * MJ: Content Item Chunks - strongly typed entity sub-class
40897
+ * * Schema: __mj
40898
+ * * Base Table: ContentItemChunk
40899
+ * * Base View: vwContentItemChunks
40900
+ * * @description Represents an individual chunk of a Content Item's text that was embedded as a distinct vector. When a Content Item is too large to embed as a single vector it is split into ordered chunks; each chunk becomes one row here, linking the stored vector back to the specific portion of the parent Content Item it represents.
40901
+ * * Primary Key: ID
40902
+ * @extends {BaseEntity}
40903
+ * @class
40904
+ * @public
40905
+ */
40906
+ export declare class MJContentItemChunkEntity extends BaseEntity<MJContentItemChunkEntityType> {
40907
+ /**
40908
+ * Loads the MJ: Content Item Chunks record from the database
40909
+ * @param ID: string - primary key value to load the MJ: Content Item Chunks record.
40910
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
40911
+ * @returns {Promise<boolean>} - true if successful, false otherwise
40912
+ * @public
40913
+ * @async
40914
+ * @memberof MJContentItemChunkEntity
40915
+ * @method
40916
+ * @override
40917
+ */
40918
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
40919
+ /**
40920
+ * * Field Name: ID
40921
+ * * Display Name: ID
40922
+ * * SQL Data Type: uniqueidentifier
40923
+ * * Default Value: newsequentialid()
40924
+ */
40925
+ get ID(): string;
40926
+ set ID(value: string);
40927
+ /**
40928
+ * * Field Name: ContentItemID
40929
+ * * Display Name: Content Item
40930
+ * * SQL Data Type: uniqueidentifier
40931
+ * * Related Entity/Foreign Key: MJ: Content Items (vwContentItems.ID)
40932
+ */
40933
+ get ContentItemID(): string;
40934
+ set ContentItemID(value: string);
40935
+ /**
40936
+ * * Field Name: Sequence
40937
+ * * Display Name: Sequence
40938
+ * * SQL Data Type: int
40939
+ * * Description: Zero-based ordinal position of this chunk within the parent Content Item, preserving the original order in which the text was split.
40940
+ */
40941
+ get Sequence(): number;
40942
+ set Sequence(value: number);
40943
+ /**
40944
+ * * Field Name: Text
40945
+ * * Display Name: Text
40946
+ * * SQL Data Type: nvarchar(MAX)
40947
+ * * Description: The chunk of extracted text (from the parent Content Item) that was embedded to produce this chunk's vector. NULL for media-only segments (for example an image, or a video window with no transcript), where the embedded payload is the media itself and any readable representation lives in Description/Transcript.
40948
+ */
40949
+ get Text(): string | null;
40950
+ set Text(value: string | null);
40951
+ /**
40952
+ * * Field Name: VectorRecordID
40953
+ * * Display Name: Vector Record ID
40954
+ * * SQL Data Type: nvarchar(100)
40955
+ * * Description: The identifier of this chunk's vector record in the vector database (e.g. Pinecone) — the deterministic key MemberJunction assigns and upserts the chunk's embedding under. Provides traceability from the chunk back to its stored vector.
40956
+ */
40957
+ get VectorRecordID(): string | null;
40958
+ set VectorRecordID(value: string | null);
40959
+ /**
40960
+ * * Field Name: EmbeddingStatus
40961
+ * * Display Name: Embedding Status
40962
+ * * SQL Data Type: nvarchar(20)
40963
+ * * Default Value: Pending
40964
+ * * Value List Type: List
40965
+ * * Possible Values
40966
+ * * Active
40967
+ * * Complete
40968
+ * * Failed
40969
+ * * Pending
40970
+ * * Processed
40971
+ * * Processing
40972
+ * * Skipped
40973
+ * * Description: Embedding lifecycle state of this chunk: Pending (default), Processing, Active, Complete, Processed, Failed, or Skipped.
40974
+ */
40975
+ get EmbeddingStatus(): 'Active' | 'Complete' | 'Failed' | 'Pending' | 'Processed' | 'Processing' | 'Skipped';
40976
+ set EmbeddingStatus(value: 'Active' | 'Complete' | 'Failed' | 'Pending' | 'Processed' | 'Processing' | 'Skipped');
40977
+ /**
40978
+ * * Field Name: TaggingStatus
40979
+ * * Display Name: Tagging Status
40980
+ * * SQL Data Type: nvarchar(20)
40981
+ * * Default Value: Pending
40982
+ * * Value List Type: List
40983
+ * * Possible Values
40984
+ * * Active
40985
+ * * Complete
40986
+ * * Failed
40987
+ * * Pending
40988
+ * * Processed
40989
+ * * Processing
40990
+ * * Skipped
40991
+ * * Description: Tagging lifecycle state of this chunk: Pending (default), Processing, Active, Complete, Processed, Failed, or Skipped.
40992
+ */
40993
+ get TaggingStatus(): 'Active' | 'Complete' | 'Failed' | 'Pending' | 'Processed' | 'Processing' | 'Skipped';
40994
+ set TaggingStatus(value: 'Active' | 'Complete' | 'Failed' | 'Pending' | 'Processed' | 'Processing' | 'Skipped');
40995
+ /**
40996
+ * * Field Name: DeleteStatus
40997
+ * * Display Name: Delete Status
40998
+ * * SQL Data Type: nvarchar(20)
40999
+ * * Value List Type: List
41000
+ * * Possible Values
41001
+ * * Deleted
41002
+ * * Pending
41003
+ * * Description: Deletion lifecycle state of this chunk's vector: NULL when not slated for deletion, Pending when vector removal is queued, or Deleted once the vector has been removed from the vector database.
41004
+ */
41005
+ get DeleteStatus(): 'Deleted' | 'Pending' | null;
41006
+ set DeleteStatus(value: 'Deleted' | 'Pending' | null);
41007
+ /**
41008
+ * * Field Name: LastEmbeddedAt
41009
+ * * Display Name: Last Embedded At
41010
+ * * SQL Data Type: datetimeoffset
41011
+ * * Description: Timestamp of the last successful embedding of this chunk.
41012
+ */
41013
+ get LastEmbeddedAt(): Date | null;
41014
+ set LastEmbeddedAt(value: Date | null);
41015
+ /**
41016
+ * * Field Name: LastTaggedAt
41017
+ * * Display Name: Last Tagged At
41018
+ * * SQL Data Type: datetimeoffset
41019
+ * * Description: Timestamp of the last successful tagging of this chunk.
41020
+ */
41021
+ get LastTaggedAt(): Date | null;
41022
+ set LastTaggedAt(value: Date | null);
41023
+ /**
41024
+ * * Field Name: LastDeletedAt
41025
+ * * Display Name: Last Deleted At
41026
+ * * SQL Data Type: datetimeoffset
41027
+ * * Description: Timestamp of the last successful deletion of this chunk's vector from the vector database.
41028
+ */
41029
+ get LastDeletedAt(): Date | null;
41030
+ set LastDeletedAt(value: Date | null);
41031
+ /**
41032
+ * * Field Name: __mj_CreatedAt
41033
+ * * Display Name: Created At
41034
+ * * SQL Data Type: datetimeoffset
41035
+ * * Default Value: getutcdate()
41036
+ */
41037
+ get __mj_CreatedAt(): Date;
41038
+ /**
41039
+ * * Field Name: __mj_UpdatedAt
41040
+ * * Display Name: Updated At
41041
+ * * SQL Data Type: datetimeoffset
41042
+ * * Default Value: getutcdate()
41043
+ */
41044
+ get __mj_UpdatedAt(): Date;
41045
+ /**
41046
+ * * Field Name: Modality
41047
+ * * Display Name: Modality
41048
+ * * SQL Data Type: nvarchar(20)
41049
+ * * Default Value: text
41050
+ * * Value List Type: List
41051
+ * * Possible Values
41052
+ * * audio
41053
+ * * image
41054
+ * * multimodal
41055
+ * * text
41056
+ * * video
41057
+ * * Description: The modality of this chunk's embedded payload: text (default), image, audio, video, or multimodal (text and media fused into a single vector). Determines which vector index the chunk's embedding belongs to, since a multimodal embedding model produces vectors of a different dimension than a text model, and is used at retrieval time to merge results per modality rather than taking a single global top-k.
41058
+ */
41059
+ get Modality(): 'audio' | 'image' | 'multimodal' | 'text' | 'video';
41060
+ set Modality(value: 'audio' | 'image' | 'multimodal' | 'text' | 'video');
41061
+ /**
41062
+ * * Field Name: StartOffset
41063
+ * * Display Name: Start Offset
41064
+ * * SQL Data Type: int
41065
+ * * Description: Inclusive character offset where this chunk begins within the parent Content Item's extracted text. Together with EndOffset this is the provenance link that resolves a search hit back to the exact passage in the source document. NULL for media segments, which are positioned by StartMs/EndMs instead.
41066
+ */
41067
+ get StartOffset(): number | null;
41068
+ set StartOffset(value: number | null);
41069
+ /**
41070
+ * * Field Name: EndOffset
41071
+ * * Display Name: End Offset
41072
+ * * SQL Data Type: int
41073
+ * * Description: Exclusive character offset where this chunk ends within the parent Content Item's extracted text. See StartOffset. NULL for media segments.
41074
+ */
41075
+ get EndOffset(): number | null;
41076
+ set EndOffset(value: number | null);
41077
+ /**
41078
+ * * Field Name: StartMs
41079
+ * * Display Name: Start (ms)
41080
+ * * SQL Data Type: int
41081
+ * * Description: Start of this chunk's time window, in milliseconds from the beginning of the parent audio or video asset. Set by transcript- or window-based segmentation; enables time-windowed playback deep-links from a search result (for example 14:22-15:05 of a session recording). NULL for text segments.
41082
+ */
41083
+ get StartMs(): number | null;
41084
+ set StartMs(value: number | null);
41085
+ /**
41086
+ * * Field Name: EndMs
41087
+ * * Display Name: End (ms)
41088
+ * * SQL Data Type: int
41089
+ * * Description: End of this chunk's time window, in milliseconds from the beginning of the parent audio or video asset. See StartMs. NULL for text segments.
41090
+ */
41091
+ get EndMs(): number | null;
41092
+ set EndMs(value: number | null);
41093
+ /**
41094
+ * * Field Name: PageNumber
41095
+ * * Display Name: Page Number
41096
+ * * SQL Data Type: int
41097
+ * * Description: One-based page number this chunk came from, for paginated sources such as PDFs or slide decks. Provides citation-grade provenance alongside the character offsets. NULL when the source is not paginated.
41098
+ */
41099
+ get PageNumber(): number | null;
41100
+ set PageNumber(value: number | null);
41101
+ /**
41102
+ * * Field Name: SegmentTitle
41103
+ * * Display Name: Segment Title
41104
+ * * SQL Data Type: nvarchar(500)
41105
+ * * Description: Human-readable label for this segment — a document heading for structure-based segmentation, or a generated chapter title for topic- and transcript-based segmentation. Displayed with search results and prepended to the embedded text so a chunk's vector carries its own topic.
41106
+ */
41107
+ get SegmentTitle(): string | null;
41108
+ set SegmentTitle(value: string | null);
41109
+ /**
41110
+ * * Field Name: Description
41111
+ * * Display Name: Description
41112
+ * * SQL Data Type: nvarchar(MAX)
41113
+ * * Description: An AI-generated description of this chunk's content, primarily for non-text segments. Retrieval of a media chunk otherwise yields only a pointer (an asset and a time window) that an agent cannot reason over; this column is the readable representation that an agent reads, a cross-encoder reranks, and lexical search matches. A short summary of it may be mirrored into the vector record's metadata for display and filtering, but the full text belongs here.
41114
+ */
41115
+ get Description(): string | null;
41116
+ set Description(value: string | null);
41117
+ /**
41118
+ * * Field Name: Transcript
41119
+ * * Display Name: Transcript
41120
+ * * SQL Data Type: nvarchar(MAX)
41121
+ * * Description: The verbatim transcript covering this chunk's time window, for audio and video segments, including speaker labels where the source provides them. Distinct from Description, which is a generated summary: this is what was actually said, and it is what makes a recording findable by lexical search.
41122
+ */
41123
+ get Transcript(): string | null;
41124
+ set Transcript(value: string | null);
41125
+ /**
41126
+ * * Field Name: SegmenterKey
41127
+ * * Display Name: Segmenter Key
41128
+ * * SQL Data Type: nvarchar(100)
41129
+ * * Description: Registration key of the segmentation strategy that produced this chunk (for example StructuralText, SemanticText, Transcript, or FixedWindow). Provenance: when a Content Source's configured strategy changes, this identifies which chunks were produced by the previous strategy and therefore need re-chunking.
41130
+ */
41131
+ get SegmenterKey(): string | null;
41132
+ set SegmenterKey(value: string | null);
41133
+ /**
41134
+ * * Field Name: ParentChunkID
41135
+ * * Display Name: Parent Chunk
41136
+ * * SQL Data Type: uniqueidentifier
41137
+ * * Related Entity/Foreign Key: MJ: Content Item Chunks (vwContentItemChunks.ID)
41138
+ * * Description: Optional self-reference to another chunk of the same Content Item that is the parent of this one, expressing a chapter to sub-chapter hierarchy — for example a five-minute chapter of a recording and the individual speaker turns within it, or a document section and its subsections. NULL for top-level segments.
41139
+ */
41140
+ get ParentChunkID(): string | null;
41141
+ set ParentChunkID(value: string | null);
41142
+ /**
41143
+ * * Field Name: ContentItem
41144
+ * * Display Name: Content Item
41145
+ * * SQL Data Type: nvarchar(250)
41146
+ */
41147
+ get ContentItem(): string | null;
41148
+ /**
41149
+ * * Field Name: RootParentChunkID
41150
+ * * Display Name: Root Parent Chunk
41151
+ * * SQL Data Type: uniqueidentifier
41152
+ */
41153
+ get RootParentChunkID(): string | null;
41154
+ }
40294
41155
  /**
40295
41156
  * MJ: Content Item Duplicates - strongly typed entity sub-class
40296
41157
  * * Schema: __mj
@@ -40589,7 +41450,7 @@ export declare class MJContentItemEntity extends BaseEntity<MJContentItemEntityT
40589
41450
  set ID(value: string);
40590
41451
  /**
40591
41452
  * * Field Name: ContentSourceID
40592
- * * Display Name: Content Source ID
41453
+ * * Display Name: Content Source
40593
41454
  * * SQL Data Type: uniqueidentifier
40594
41455
  * * Related Entity/Foreign Key: MJ: Content Sources (vwContentSources.ID)
40595
41456
  */
@@ -40611,7 +41472,7 @@ export declare class MJContentItemEntity extends BaseEntity<MJContentItemEntityT
40611
41472
  set Description(value: string | null);
40612
41473
  /**
40613
41474
  * * Field Name: ContentTypeID
40614
- * * Display Name: Content Type ID
41475
+ * * Display Name: Content Type
40615
41476
  * * SQL Data Type: uniqueidentifier
40616
41477
  * * Related Entity/Foreign Key: MJ: Content Types (vwContentTypes.ID)
40617
41478
  */
@@ -40619,7 +41480,7 @@ export declare class MJContentItemEntity extends BaseEntity<MJContentItemEntityT
40619
41480
  set ContentTypeID(value: string);
40620
41481
  /**
40621
41482
  * * Field Name: ContentSourceTypeID
40622
- * * Display Name: Content Source Type ID
41483
+ * * Display Name: Content Source Type
40623
41484
  * * SQL Data Type: uniqueidentifier
40624
41485
  * * Related Entity/Foreign Key: MJ: Content Source Types (vwContentSourceTypes.ID)
40625
41486
  */
@@ -40627,7 +41488,7 @@ export declare class MJContentItemEntity extends BaseEntity<MJContentItemEntityT
40627
41488
  set ContentSourceTypeID(value: string);
40628
41489
  /**
40629
41490
  * * Field Name: ContentFileTypeID
40630
- * * Display Name: Content File Type ID
41491
+ * * Display Name: Content File Type
40631
41492
  * * SQL Data Type: uniqueidentifier
40632
41493
  * * Related Entity/Foreign Key: MJ: Content File Types (vwContentFileTypes.ID)
40633
41494
  */
@@ -40651,7 +41512,7 @@ export declare class MJContentItemEntity extends BaseEntity<MJContentItemEntityT
40651
41512
  set URL(value: string);
40652
41513
  /**
40653
41514
  * * Field Name: Text
40654
- * * Display Name: Text
41515
+ * * Display Name: Extracted Text
40655
41516
  * * SQL Data Type: nvarchar(MAX)
40656
41517
  * * Description: The extracted text content from the source document or file.
40657
41518
  */
@@ -40673,7 +41534,7 @@ export declare class MJContentItemEntity extends BaseEntity<MJContentItemEntityT
40673
41534
  get __mj_UpdatedAt(): Date;
40674
41535
  /**
40675
41536
  * * Field Name: EntityRecordDocumentID
40676
- * * Display Name: Entity Record Document ID
41537
+ * * Display Name: Entity Record Document
40677
41538
  * * SQL Data Type: uniqueidentifier
40678
41539
  * * Related Entity/Foreign Key: MJ: Entity Record Documents (vwEntityRecordDocuments.ID)
40679
41540
  * * Description: For entity-sourced content items, links to the Entity Record Document snapshot that was rendered for this item. Provides traceability back to the source entity record via ERD.EntityID + ERD.RecordID. NULL for non-entity sources.
@@ -40706,7 +41567,7 @@ export declare class MJContentItemEntity extends BaseEntity<MJContentItemEntityT
40706
41567
  set LastEmbeddedAt(value: Date | null);
40707
41568
  /**
40708
41569
  * * Field Name: EmbeddingModelID
40709
- * * Display Name: Embedding Model ID
41570
+ * * Display Name: Embedding Model
40710
41571
  * * SQL Data Type: uniqueidentifier
40711
41572
  * * Related Entity/Foreign Key: MJ: AI Models (vwAIModels.ID)
40712
41573
  * * Description: The AI model used to generate the most recent embedding for this content item.
@@ -40738,41 +41599,78 @@ export declare class MJContentItemEntity extends BaseEntity<MJContentItemEntityT
40738
41599
  get LastTaggedAt(): Date | null;
40739
41600
  set LastTaggedAt(value: Date | null);
40740
41601
  /**
41602
+ * * Field Name: VectorRecordID
41603
+ * * Display Name: Vector Record ID
41604
+ * * SQL Data Type: nvarchar(100)
41605
+ * * Description: The identifier of this Content Item's vector record in the vector database (e.g. Pinecone) — the deterministic key MemberJunction assigns and upserts the embedding under when the item is embedded as a single vector. Provides traceability from the Content Item back to its stored vector. For chunked items, per-chunk identifiers are tracked on the ContentItemChunk entity instead.
41606
+ */
41607
+ get VectorRecordID(): string | null;
41608
+ set VectorRecordID(value: string | null);
41609
+ /**
41610
+ * * Field Name: ParentID
41611
+ * * Display Name: Parent Content
41612
+ * * SQL Data Type: uniqueidentifier
41613
+ * * Related Entity/Foreign Key: MJ: Content Items (vwContentItems.ID)
41614
+ * * Description: Optional self-reference to another Content Item that is the parent of this one, enabling a content-item hierarchy (e.g. a document and its sub-pages, or a site and its crawled pages). NULL for top-level items.
41615
+ */
41616
+ get ParentID(): string | null;
41617
+ set ParentID(value: string | null);
41618
+ /**
41619
+ * * Field Name: DisplayLink
41620
+ * * Display Name: Display Link
41621
+ * * SQL Data Type: nvarchar(2000)
41622
+ * * Description: Optional display/clickable URL for this Content Item (e.g. a canonical or human-facing link), distinct from the source URL used for ingestion.
41623
+ */
41624
+ get DisplayLink(): string | null;
41625
+ set DisplayLink(value: string | null);
41626
+ /**
40741
41627
  * * Field Name: ContentSource
40742
- * * Display Name: Content Source
41628
+ * * Display Name: Content Source Name
40743
41629
  * * SQL Data Type: nvarchar(255)
40744
41630
  */
40745
41631
  get ContentSource(): string | null;
40746
41632
  /**
40747
41633
  * * Field Name: ContentType
40748
- * * Display Name: Content Type
41634
+ * * Display Name: Content Type Name
40749
41635
  * * SQL Data Type: nvarchar(255)
40750
41636
  */
40751
41637
  get ContentType(): string;
40752
41638
  /**
40753
41639
  * * Field Name: ContentSourceType
40754
- * * Display Name: Content Source Type
41640
+ * * Display Name: Content Source Type Name
40755
41641
  * * SQL Data Type: nvarchar(255)
40756
41642
  */
40757
41643
  get ContentSourceType(): string;
40758
41644
  /**
40759
41645
  * * Field Name: ContentFileType
40760
- * * Display Name: Content File Type
41646
+ * * Display Name: Content File Type Name
40761
41647
  * * SQL Data Type: nvarchar(255)
40762
41648
  */
40763
41649
  get ContentFileType(): string;
40764
41650
  /**
40765
41651
  * * Field Name: EntityRecordDocument
40766
- * * Display Name: Entity Record Document
41652
+ * * Display Name: Entity Record Document Name
40767
41653
  * * SQL Data Type: nvarchar(450)
40768
41654
  */
40769
41655
  get EntityRecordDocument(): string | null;
40770
41656
  /**
40771
41657
  * * Field Name: EmbeddingModel
40772
- * * Display Name: Embedding Model
41658
+ * * Display Name: Embedding Model Name
40773
41659
  * * SQL Data Type: nvarchar(50)
40774
41660
  */
40775
41661
  get EmbeddingModel(): string | null;
41662
+ /**
41663
+ * * Field Name: Parent
41664
+ * * Display Name: Parent Content Name
41665
+ * * SQL Data Type: nvarchar(250)
41666
+ */
41667
+ get Parent(): string | null;
41668
+ /**
41669
+ * * Field Name: RootParentID
41670
+ * * Display Name: Root Parent Content
41671
+ * * SQL Data Type: uniqueidentifier
41672
+ */
41673
+ get RootParentID(): string | null;
40776
41674
  }
40777
41675
  /**
40778
41676
  * MJ: Content Process Run Details - strongly typed entity sub-class
@@ -41575,6 +42473,19 @@ export declare class MJContentSourceTypeEntity extends BaseEntity<MJContentSourc
41575
42473
  * The keys match the RequiredFields defined on the parent ContentSourceType's Configuration.
41576
42474
  */
41577
42475
  export interface MJContentSourceEntity_IContentSourceConfiguration {
42476
+ /**
42477
+ * Options passed to the segmentation strategy named by SegmenterKey.
42478
+ *
42479
+ * Sizing note: TargetTokens should be driven by the shape of your QUERIES, not by the
42480
+ * embedding model's context window. The window is an upper bound; a good chunk is about
42481
+ * as much content as a good answer, so that a matching chunk is mostly signal.
42482
+ */
42483
+ SegmentationOptions?: MJContentSourceEntity_IContentSegmentationOptions;
42484
+ /**
42485
+ * Options passed to the cleaning strategy named by CleanerKey. Selector rules are
42486
+ * per-source because the right selector is a property of the site's template.
42487
+ */
42488
+ CleaningOptions?: MJContentSourceEntity_IContentCleaningOptions;
41578
42489
  /** Tag taxonomy matching mode: constrained (only match within subtree), auto-grow (match or create within subtree), free-flow (match or create anywhere) */
41579
42490
  TagTaxonomyMode?: 'constrained' | 'auto-grow' | 'free-flow';
41580
42491
  /** Root Tag ID for constrained/auto-grow modes — limits taxonomy operations to this subtree */
@@ -41585,6 +42496,33 @@ export interface MJContentSourceEntity_IContentSourceConfiguration {
41585
42496
  ShareTaxonomyWithLLM?: boolean;
41586
42497
  /** Enable vectorization for this source. Default true */
41587
42498
  EnableVectorization?: boolean;
42499
+ /**
42500
+ * Vector-database record-id strategy for this source's chunks. Default 'recordId'.
42501
+ * - 'recordId' (default, recommended): each ContentItemChunk's unique RecordID is used as its
42502
+ * vector-DB record id. Safe with the soft-delete + PurgeDeletedChunks flow — a re-chunk mints
42503
+ * new rows with new ids, so a superseded (soft-deleted) chunk and its replacement never share
42504
+ * a vector id, and purging the old one can't orphan the live chunk's vector.
42505
+ * - 'hash': a deterministic hash of the parent content item id (5.49 EntityDocument parity).
42506
+ * NOT safe with re-chunking + purge — a replacement chunk reuses the superseded chunk's id,
42507
+ * so purging the old chunk would delete the live chunk's vector. Use only for sources that
42508
+ * are never re-chunked or purged.
42509
+ */
42510
+ VectorIDStrategy?: 'hash' | 'recordId';
42511
+ /**
42512
+ * How chunk text + vectors are stored for this source. Default 'alwaysChunk'.
42513
+ * - 'alwaysChunk' (default): every content item gets at least one ContentItemChunk row holding
42514
+ * its text — even items small enough to fit in a single chunk — and ContentItem.VectorRecordID
42515
+ * is never set. The ContentItemChunk table is always the single source of truth for vectors.
42516
+ * - 'mixed': items that fit in a single chunk keep their text and vector id on the ContentItem
42517
+ * (no chunk row); only larger items are split into ContentItemChunk rows.
42518
+ */
42519
+ ChunkTextStorage?: 'mixed' | 'alwaysChunk';
42520
+ /**
42521
+ * Controls what goes into each vector's metadata. Vector-store metadata has real storage +
42522
+ * performance cost, so this lets a source keep it minimal. Falls back to the ContentType's
42523
+ * default, then 'default'.
42524
+ */
42525
+ VectorMetadata?: MJContentSourceEntity_IContentSourceVectorMetadataConfig;
41588
42526
  /**
41589
42527
  * Lower confidence band (0.0-1.0) that routes a semantic match into the human-in-the-loop
41590
42528
  * `MJ:Tag Suggestions` queue instead of auto-applying or auto-creating. A score `s` is
@@ -41652,6 +42590,64 @@ export interface MJContentSourceEntity_IContentSourceConfiguration {
41652
42590
  */
41653
42591
  Website?: MJContentSourceEntity_IContentSourceWebsiteConfiguration;
41654
42592
  }
42593
+ /**
42594
+ * Controls which keys land in a content vector's metadata. Vector metadata is expensive in a
42595
+ * vector database (storage + query performance). This mirrors the entity-vectorization pipeline's
42596
+ * metadata-control structure (field strategy, per-field overrides, storage-type coercion,
42597
+ * truncation, opt-out toggles), adapted to content-item vectors.
42598
+ *
42599
+ * Field values are read from the parent ContentItem. The identity keys (Entity + RecordID, plus
42600
+ * ContentItemID / Sequence for chunk vectors) are managed as system keys — see FieldStrategy.
42601
+ */
42602
+ export interface MJContentSourceEntity_IContentSourceVectorMetadataConfig {
42603
+ /**
42604
+ * Which ContentItem fields go into metadata. Mirrors the entity pipeline's field strategy.
42605
+ * When UNSET, the standard curated content set is used (the historical default): the identity
42606
+ * keys + ContentSourceID / ContentSourceTypeID + Title / Description / URL + Tags. When set:
42607
+ * - 'all': every eligible ContentItem field (non-PK, non-uniqueidentifier, non-binary,
42608
+ * non-system) plus the toggle-driven keys below.
42609
+ * - 'include': ONLY the ContentItem fields marked `Included: true` in `Fields` (explicit
42610
+ * inclusion wins over the eligibility heuristics — a uniqueidentifier / PK / __mj_* field
42611
+ * can be included by name; only genuinely unstorable binary types are refused).
42612
+ * - 'exclude': all eligible fields EXCEPT those marked `Included: false` in `Fields`.
42613
+ * - 'explicit': EXACTLY the fields in `Fields` — no system keys except `Entity` (always kept so
42614
+ * content search results stay correctly labeled), and the toggles flip to opt-in (default
42615
+ * false). Keeps metadata minimal. NOTE: under 'explicit' a search hit's record id is
42616
+ * recoverable only when VectorIDStrategy='recordId' (the default), where the vector's own id
42617
+ * is the chunk id; with 'hash' the id would need to be kept explicitly.
42618
+ */
42619
+ FieldStrategy?: 'all' | 'include' | 'exclude' | 'explicit';
42620
+ /** Per-field overrides keyed by ContentItem field name (see {@link MJContentSourceEntity_IContentSourceVectorMetadataFieldConfig}). */
42621
+ Fields?: Record<string, MJContentSourceEntity_IContentSourceVectorMetadataFieldConfig>;
42622
+ /** Global default truncation limit (characters) for large string fields. Default 1000. */
42623
+ DefaultTruncationLimit?: number;
42624
+ /** Include the content entity's icon. Default true under a set strategy; opt-in under 'explicit'. */
42625
+ IncludeEntityIcon?: boolean;
42626
+ /** Include __mj_UpdatedAt for recency sorting. Default true under a set strategy; opt-in under 'explicit'. */
42627
+ IncludeUpdatedAt?: boolean;
42628
+ /** Include the item's Tags array. Default true (and under the curated default); opt-in under 'explicit'. */
42629
+ IncludeTags?: boolean;
42630
+ /**
42631
+ * When true, include the embedded text in metadata under the 'Text' key (which surfaces as the
42632
+ * search snippet). Default false — external hydrators read the authoritative text from the
42633
+ * ContentItem / ContentItemChunk row, so the copy is usually unnecessary storage. Honored under
42634
+ * every strategy (including the curated default).
42635
+ */
42636
+ IncludeText?: boolean;
42637
+ }
42638
+ /** Per-field metadata override, keyed by ContentItem field name. Mirrors the entity pipeline. */
42639
+ export interface MJContentSourceEntity_IContentSourceVectorMetadataFieldConfig {
42640
+ /** Include this field under 'include'/'explicit', or exclude it (false) under 'all'/'exclude'. */
42641
+ Included?: boolean;
42642
+ /** Override the truncation limit (characters) for this field. */
42643
+ TruncationLimit?: number;
42644
+ /**
42645
+ * How to store this field's value: 'string' (default, truncated), 'number', 'boolean',
42646
+ * 'epochSeconds' / 'epochMilliseconds' (parse a date to Unix epoch for numeric range filters).
42647
+ * SQL numeric column types store as numbers automatically without setting this.
42648
+ */
42649
+ StoreAs?: 'string' | 'number' | 'boolean' | 'epochSeconds' | 'epochMilliseconds';
42650
+ }
41655
42651
  /**
41656
42652
  * Per-source crawl/discovery settings specific to AutotagWebsite. All optional with
41657
42653
  * runtime defaults; an empty object is valid and produces the standard behavior
@@ -41686,6 +42682,61 @@ export interface MJContentSourceEntity_IContentSourceWebsiteConfiguration {
41686
42682
  */
41687
42683
  RootURL?: string;
41688
42684
  }
42685
+ /**
42686
+ * Options for the segmentation strategy. All optional; each segmenter ignores options
42687
+ * that don't apply to it.
42688
+ */
42689
+ export interface MJContentSourceEntity_IContentSegmentationOptions {
42690
+ /** Hard ceiling on tokens per segment. Segments larger than this are split. */
42691
+ MaxSegmentTokens?: number;
42692
+ /** Overlap tokens applied when an oversized segment must be split. */
42693
+ OverlapTokens?: number;
42694
+ /** Merge adjacent text segments estimating below this many tokens. */
42695
+ MinSegmentTokens?: number;
42696
+ /** AdaptiveBoundary: desired segment size — size this to your queries, not to the model. */
42697
+ TargetTokens?: number;
42698
+ /** AdaptiveBoundary: percent below target at which a paragraph break is accepted. */
42699
+ UndershootPercent?: number;
42700
+ /** AdaptiveBoundary: percent above target to keep looking for a sentence/word break. */
42701
+ OvershootPercent?: number;
42702
+ /** AdaptiveBoundary: if the whole text is within this percent of target, don't split at all. */
42703
+ NoSplitPercent?: number;
42704
+ /** Transcript: maximum wall-clock length of one chapter, in milliseconds. */
42705
+ MaxChapterMs?: number;
42706
+ /** Transcript: a silence gap at least this long starts a new chapter. */
42707
+ BoundaryGapMs?: number;
42708
+ /** Transcript: also emit one child segment per speaker turn within each chapter. */
42709
+ EmitSubChapters?: boolean;
42710
+ /** FixedWindow: window length in milliseconds for audio/video with no transcript. */
42711
+ WindowMs?: number;
42712
+ /** SemanticText: skip the LLM boundary pass for documents below this token count. */
42713
+ MinTokensForLLM?: number;
42714
+ }
42715
+ /**
42716
+ * Options for the content-cleaning strategy that runs before segmentation.
42717
+ *
42718
+ * Garbage that survives cleaning is expensive: it gets embedded, stored, retrieved, and
42719
+ * shown to a user or an agent. Navigation chrome repeated across a thousand pages produces
42720
+ * a thousand near-identical vectors that crowd out real answers.
42721
+ */
42722
+ export interface MJContentSourceEntity_IContentCleaningOptions {
42723
+ /**
42724
+ * CSS selectors whose content is the ONLY content to keep. The highest-leverage knob:
42725
+ * naming the element that holds the article (e.g. '.article-body', 'main') discards
42726
+ * navigation, sidebars, and advertising without enumerating what to drop.
42727
+ */
42728
+ IncludeSelectors?: string[];
42729
+ /** CSS selectors to remove, applied after IncludeSelectors (inline ad slots, share widgets). */
42730
+ ExcludeSelectors?: string[];
42731
+ /** Collapse runs of whitespace and blank lines. Default true. */
42732
+ NormalizeWhitespace?: boolean;
42733
+ /** Maximum characters to retain after cleaning. */
42734
+ MaxLength?: number;
42735
+ /** Html cleaner: replace the built-in exclusion list rather than appending to it. */
42736
+ ReplaceDefaultExcludes?: boolean;
42737
+ /** Html cleaner: keep `alt` text from images as content. */
42738
+ IncludeImageAltText?: boolean;
42739
+ }
41689
42740
  /**
41690
42741
  * MJ: Content Sources - strongly typed entity sub-class
41691
42742
  * * Schema: __mj
@@ -41834,50 +42885,66 @@ export declare class MJContentSourceEntity extends BaseEntity<MJContentSourceEnt
41834
42885
  get ScheduledActionID(): string | null;
41835
42886
  set ScheduledActionID(value: string | null);
41836
42887
  /**
42888
+ * * Field Name: SegmenterKey
42889
+ * * Display Name: Segmenter Strategy
42890
+ * * SQL Data Type: nvarchar(100)
42891
+ * * Description: Registration key of the segmentation strategy used to split this source's content into embeddable chunks — for example StructuralText (document headings), AdaptiveBoundary (target size closing on the nearest natural break), SemanticText (LLM-detected topic boundaries), Transcript (audio/video chapters), PagedContent (one segment per page), or FixedWindow (uniform windows). NULL falls back to the Content Type's value, then to a built-in default.
42892
+ */
42893
+ get SegmenterKey(): string | null;
42894
+ set SegmenterKey(value: string | null);
42895
+ /**
42896
+ * * Field Name: CleanerKey
42897
+ * * Display Name: Cleaner Strategy
42898
+ * * SQL Data Type: nvarchar(100)
42899
+ * * Description: Registration key of the content-cleaning strategy applied to this source before segmentation — for example Html (CSS-selector-driven extraction that drops navigation, sidebars, and advertising) or PlainText (whitespace normalization only). Cleaning is separate from segmentation because the two change for different reasons: a new site template needs new selectors, not a new chunking strategy. NULL falls back to the Content Type's value, then to a default inferred from the content's mime type.
42900
+ */
42901
+ get CleanerKey(): string | null;
42902
+ set CleanerKey(value: string | null);
42903
+ /**
41837
42904
  * * Field Name: ContentType
41838
- * * Display Name: Content Type
42905
+ * * Display Name: Content Type Name
41839
42906
  * * SQL Data Type: nvarchar(255)
41840
42907
  */
41841
42908
  get ContentType(): string;
41842
42909
  /**
41843
42910
  * * Field Name: ContentSourceType
41844
- * * Display Name: Content Source Type
42911
+ * * Display Name: Content Source Type Name
41845
42912
  * * SQL Data Type: nvarchar(255)
41846
42913
  */
41847
42914
  get ContentSourceType(): string;
41848
42915
  /**
41849
42916
  * * Field Name: ContentFileType
41850
- * * Display Name: Content File Type
42917
+ * * Display Name: Content File Type Name
41851
42918
  * * SQL Data Type: nvarchar(255)
41852
42919
  */
41853
42920
  get ContentFileType(): string;
41854
42921
  /**
41855
42922
  * * Field Name: EmbeddingModel
41856
- * * Display Name: Embedding Model
42923
+ * * Display Name: Embedding Model Name
41857
42924
  * * SQL Data Type: nvarchar(50)
41858
42925
  */
41859
42926
  get EmbeddingModel(): string | null;
41860
42927
  /**
41861
42928
  * * Field Name: VectorIndex
41862
- * * Display Name: Vector Index
42929
+ * * Display Name: Vector Index Name
41863
42930
  * * SQL Data Type: nvarchar(255)
41864
42931
  */
41865
42932
  get VectorIndex(): string | null;
41866
42933
  /**
41867
42934
  * * Field Name: Entity
41868
- * * Display Name: Entity
42935
+ * * Display Name: Entity Name
41869
42936
  * * SQL Data Type: nvarchar(255)
41870
42937
  */
41871
42938
  get Entity(): string | null;
41872
42939
  /**
41873
42940
  * * Field Name: EntityDocument
41874
- * * Display Name: Entity Document
42941
+ * * Display Name: Entity Document Name
41875
42942
  * * SQL Data Type: nvarchar(250)
41876
42943
  */
41877
42944
  get EntityDocument(): string | null;
41878
42945
  /**
41879
42946
  * * Field Name: ScheduledAction
41880
- * * Display Name: Scheduled Action
42947
+ * * Display Name: Scheduled Action Name
41881
42948
  * * SQL Data Type: nvarchar(255)
41882
42949
  */
41883
42950
  get ScheduledAction(): string | null;
@@ -41968,10 +43035,132 @@ export declare class MJContentTypeAttributeEntity extends BaseEntity<MJContentTy
41968
43035
  * their own {@link IContentSourceConfiguration}.
41969
43036
  */
41970
43037
  export interface MJContentTypeEntity_IContentTypeConfiguration {
43038
+ /**
43039
+ * Options passed to the segmentation strategy named by SegmenterKey.
43040
+ *
43041
+ * Sizing note: TargetTokens should be driven by the shape of your QUERIES, not by the
43042
+ * embedding model's context window. The window is an upper bound; a good chunk is about
43043
+ * as much content as a good answer, so that a matching chunk is mostly signal.
43044
+ */
43045
+ SegmentationOptions?: MJContentTypeEntity_IContentSegmentationOptions;
43046
+ /**
43047
+ * Options passed to the cleaning strategy named by CleanerKey. Selector rules are
43048
+ * per-source because the right selector is a property of the site's template.
43049
+ */
43050
+ CleaningOptions?: MJContentTypeEntity_IContentCleaningOptions;
41971
43051
  /** Whether to share tag taxonomy with LLM by default for all sources of this type. Can be overridden per source. Default true */
41972
43052
  ShareTaxonomyWithLLM?: boolean;
41973
43053
  /** Default tag taxonomy mode for sources of this type. Can be overridden per source */
41974
43054
  DefaultTagTaxonomyMode?: 'constrained' | 'auto-grow' | 'free-flow';
43055
+ /**
43056
+ * Default vector-database record-id strategy for sources of this type. Overridable per source
43057
+ * via {@link IContentSourceConfiguration.VectorIDStrategy}. Default 'recordId' (the safe,
43058
+ * purge-compatible strategy); 'hash' is legacy parity and unsafe with re-chunk + purge.
43059
+ */
43060
+ VectorIDStrategy?: 'hash' | 'recordId';
43061
+ /**
43062
+ * Default chunk text/vector storage mode for sources of this type. Overridable per source via
43063
+ * {@link IContentSourceConfiguration.ChunkTextStorage}. Default 'alwaysChunk' — every item gets
43064
+ * a ContentItemChunk row and ContentItem.VectorRecordID is never set; 'mixed' keeps
43065
+ * single-chunk items' text/vector on the ContentItem.
43066
+ */
43067
+ ChunkTextStorage?: 'mixed' | 'alwaysChunk';
43068
+ /**
43069
+ * Default vector-metadata configuration for sources of this type. Overridable per source via
43070
+ * {@link IContentSourceConfiguration.VectorMetadata}. Controls how minimal each vector's
43071
+ * metadata is kept.
43072
+ */
43073
+ VectorMetadata?: MJContentTypeEntity_IContentTypeVectorMetadataConfig;
43074
+ }
43075
+ /**
43076
+ * Content-type-level default for vector metadata shape. Structurally identical to
43077
+ * {@link IContentSourceConfiguration.VectorMetadata}; a source's own setting overrides it.
43078
+ */
43079
+ export interface MJContentTypeEntity_IContentTypeVectorMetadataConfig {
43080
+ /**
43081
+ * Which ContentItem fields go into metadata (mirrors the entity pipeline). Unset ⇒ the curated
43082
+ * default (identity + ContentSourceID/Type + Title / Description / URL + Tags).
43083
+ * - 'all': every eligible ContentItem field. - 'include': only `Fields` marked Included.
43084
+ * - 'exclude': all eligible except `Fields` marked Included:false. - 'explicit': exactly
43085
+ * `Fields`, no system keys except Entity, toggles opt-in.
43086
+ */
43087
+ FieldStrategy?: 'all' | 'include' | 'exclude' | 'explicit';
43088
+ /** Per-field overrides keyed by ContentItem field name. */
43089
+ Fields?: Record<string, MJContentTypeEntity_IContentTypeVectorMetadataFieldConfig>;
43090
+ /** Global default truncation limit (characters) for large string fields. Default 1000. */
43091
+ DefaultTruncationLimit?: number;
43092
+ /** Include the content entity's icon. Default true under a set strategy; opt-in under 'explicit'. */
43093
+ IncludeEntityIcon?: boolean;
43094
+ /** Include __mj_UpdatedAt for recency sorting. Default true under a set strategy; opt-in under 'explicit'. */
43095
+ IncludeUpdatedAt?: boolean;
43096
+ /** Include the item's Tags array. Default true (and under the curated default); opt-in under 'explicit'. */
43097
+ IncludeTags?: boolean;
43098
+ /** Include the embedded text under the 'Text' key. Default false. Honored under every strategy. */
43099
+ IncludeText?: boolean;
43100
+ }
43101
+ /** Per-field metadata override, keyed by ContentItem field name. Mirrors the entity pipeline. */
43102
+ export interface MJContentTypeEntity_IContentTypeVectorMetadataFieldConfig {
43103
+ /** Include this field under 'include'/'explicit', or exclude it (false) under 'all'/'exclude'. */
43104
+ Included?: boolean;
43105
+ /** Override the truncation limit (characters) for this field. */
43106
+ TruncationLimit?: number;
43107
+ /** How to store this field's value ('string' default, 'number', 'boolean', 'epochSeconds', 'epochMilliseconds'). */
43108
+ StoreAs?: 'string' | 'number' | 'boolean' | 'epochSeconds' | 'epochMilliseconds';
43109
+ }
43110
+ /**
43111
+ * Options for the segmentation strategy. All optional; each segmenter ignores options
43112
+ * that don't apply to it.
43113
+ */
43114
+ export interface MJContentTypeEntity_IContentSegmentationOptions {
43115
+ /** Hard ceiling on tokens per segment. Segments larger than this are split. */
43116
+ MaxSegmentTokens?: number;
43117
+ /** Overlap tokens applied when an oversized segment must be split. */
43118
+ OverlapTokens?: number;
43119
+ /** Merge adjacent text segments estimating below this many tokens. */
43120
+ MinSegmentTokens?: number;
43121
+ /** AdaptiveBoundary: desired segment size — size this to your queries, not to the model. */
43122
+ TargetTokens?: number;
43123
+ /** AdaptiveBoundary: percent below target at which a paragraph break is accepted. */
43124
+ UndershootPercent?: number;
43125
+ /** AdaptiveBoundary: percent above target to keep looking for a sentence/word break. */
43126
+ OvershootPercent?: number;
43127
+ /** AdaptiveBoundary: if the whole text is within this percent of target, don't split at all. */
43128
+ NoSplitPercent?: number;
43129
+ /** Transcript: maximum wall-clock length of one chapter, in milliseconds. */
43130
+ MaxChapterMs?: number;
43131
+ /** Transcript: a silence gap at least this long starts a new chapter. */
43132
+ BoundaryGapMs?: number;
43133
+ /** Transcript: also emit one child segment per speaker turn within each chapter. */
43134
+ EmitSubChapters?: boolean;
43135
+ /** FixedWindow: window length in milliseconds for audio/video with no transcript. */
43136
+ WindowMs?: number;
43137
+ /** SemanticText: skip the LLM boundary pass for documents below this token count. */
43138
+ MinTokensForLLM?: number;
43139
+ }
43140
+ /**
43141
+ * Options for the content-cleaning strategy that runs before segmentation.
43142
+ *
43143
+ * Garbage that survives cleaning is expensive: it gets embedded, stored, retrieved, and
43144
+ * shown to a user or an agent. Navigation chrome repeated across a thousand pages produces
43145
+ * a thousand near-identical vectors that crowd out real answers.
43146
+ */
43147
+ export interface MJContentTypeEntity_IContentCleaningOptions {
43148
+ /**
43149
+ * CSS selectors whose content is the ONLY content to keep. The highest-leverage knob:
43150
+ * naming the element that holds the article (e.g. '.article-body', 'main') discards
43151
+ * navigation, sidebars, and advertising without enumerating what to drop.
43152
+ */
43153
+ IncludeSelectors?: string[];
43154
+ /** CSS selectors to remove, applied after IncludeSelectors (inline ad slots, share widgets). */
43155
+ ExcludeSelectors?: string[];
43156
+ /** Collapse runs of whitespace and blank lines. Default true. */
43157
+ NormalizeWhitespace?: boolean;
43158
+ /** Maximum characters to retain after cleaning. */
43159
+ MaxLength?: number;
43160
+ /** Html cleaner: replace the built-in exclusion list rather than appending to it. */
43161
+ ReplaceDefaultExcludes?: boolean;
43162
+ /** Html cleaner: keep `alt` text from images as content. */
43163
+ IncludeImageAltText?: boolean;
41975
43164
  }
41976
43165
  /**
41977
43166
  * MJ: Content Types - strongly typed entity sub-class
@@ -42093,6 +43282,22 @@ export declare class MJContentTypeEntity extends BaseEntity<MJContentTypeEntityT
42093
43282
  get ConfigurationObject(): MJContentTypeEntity_IContentTypeConfiguration | null;
42094
43283
  set ConfigurationObject(value: MJContentTypeEntity_IContentTypeConfiguration | null);
42095
43284
  /**
43285
+ * * Field Name: SegmenterKey
43286
+ * * Display Name: Segmenter Strategy
43287
+ * * SQL Data Type: nvarchar(100)
43288
+ * * Description: Default segmentation strategy for content of this type, used when a Content Source does not specify its own SegmenterKey. See ContentSource.SegmenterKey for the available strategies.
43289
+ */
43290
+ get SegmenterKey(): string | null;
43291
+ set SegmenterKey(value: string | null);
43292
+ /**
43293
+ * * Field Name: CleanerKey
43294
+ * * Display Name: Cleaner Strategy
43295
+ * * SQL Data Type: nvarchar(100)
43296
+ * * Description: Default content-cleaning strategy for content of this type, used when a Content Source does not specify its own CleanerKey. See ContentSource.CleanerKey.
43297
+ */
43298
+ get CleanerKey(): string | null;
43299
+ set CleanerKey(value: string | null);
43300
+ /**
42096
43301
  * * Field Name: AIModel
42097
43302
  * * Display Name: AI Model Name
42098
43303
  * * SQL Data Type: nvarchar(50)
@@ -42441,6 +43646,83 @@ export declare class MJConversationArtifactEntity extends BaseEntity<MJConversat
42441
43646
  */
42442
43647
  get ArtifactType(): string;
42443
43648
  }
43649
+ /**
43650
+ * MJ: Conversation Compaction Runs - strongly typed entity sub-class
43651
+ * * Schema: __mj
43652
+ * * Base Table: ConversationCompactionRun
43653
+ * * Base View: vwConversationCompactionRuns
43654
+ * * @description Links a conversation detail boundary row to the AI Prompt Run that produced its compaction summary. Audit-only join table replacing the former ConversationDetail.SummaryPromptRunID FK to break the CodeGen cycle.
43655
+ * * Primary Key: ID
43656
+ * @extends {BaseEntity}
43657
+ * @class
43658
+ * @public
43659
+ */
43660
+ export declare class MJConversationCompactionRunEntity extends BaseEntity<MJConversationCompactionRunEntityType> {
43661
+ /**
43662
+ * Loads the MJ: Conversation Compaction Runs record from the database
43663
+ * @param ID: string - primary key value to load the MJ: Conversation Compaction Runs record.
43664
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
43665
+ * @returns {Promise<boolean>} - true if successful, false otherwise
43666
+ * @public
43667
+ * @async
43668
+ * @memberof MJConversationCompactionRunEntity
43669
+ * @method
43670
+ * @override
43671
+ */
43672
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
43673
+ /**
43674
+ * * Field Name: ID
43675
+ * * Display Name: ID
43676
+ * * SQL Data Type: uniqueidentifier
43677
+ * * Default Value: newsequentialid()
43678
+ */
43679
+ get ID(): string;
43680
+ set ID(value: string);
43681
+ /**
43682
+ * * Field Name: ConversationDetailID
43683
+ * * Display Name: Conversation Detail
43684
+ * * SQL Data Type: uniqueidentifier
43685
+ * * Related Entity/Foreign Key: MJ: Conversation Details (vwConversationDetails.ID)
43686
+ * * Description: The conversation detail row whose SummaryOfEarlierConversation was produced by this compaction run.
43687
+ */
43688
+ get ConversationDetailID(): string;
43689
+ set ConversationDetailID(value: string);
43690
+ /**
43691
+ * * Field Name: PromptRunID
43692
+ * * Display Name: Prompt Run
43693
+ * * SQL Data Type: uniqueidentifier
43694
+ * * Related Entity/Foreign Key: MJ: AI Prompt Runs (vwAIPromptRuns.ID)
43695
+ * * Description: The AI Prompt Run that generated the compaction summary (model, tokens, cost, prompt version).
43696
+ */
43697
+ get PromptRunID(): string;
43698
+ set PromptRunID(value: string);
43699
+ /**
43700
+ * * Field Name: __mj_CreatedAt
43701
+ * * Display Name: Created At
43702
+ * * SQL Data Type: datetimeoffset
43703
+ * * Default Value: getutcdate()
43704
+ */
43705
+ get __mj_CreatedAt(): Date;
43706
+ /**
43707
+ * * Field Name: __mj_UpdatedAt
43708
+ * * Display Name: Updated At
43709
+ * * SQL Data Type: datetimeoffset
43710
+ * * Default Value: getutcdate()
43711
+ */
43712
+ get __mj_UpdatedAt(): Date;
43713
+ /**
43714
+ * * Field Name: ConversationDetail
43715
+ * * Display Name: Conversation Detail Name
43716
+ * * SQL Data Type: nvarchar(100)
43717
+ */
43718
+ get ConversationDetail(): string | null;
43719
+ /**
43720
+ * * Field Name: PromptRun
43721
+ * * Display Name: Prompt Run Name
43722
+ * * SQL Data Type: nvarchar(255)
43723
+ */
43724
+ get PromptRun(): string | null;
43725
+ }
42444
43726
  /**
42445
43727
  * MJ: Conversation Detail Artifacts - strongly typed entity sub-class
42446
43728
  * * Schema: __mj
@@ -42947,7 +44229,7 @@ export declare class MJConversationDetailEntity extends BaseEntity<MJConversatio
42947
44229
  set Error(value: string | null);
42948
44230
  /**
42949
44231
  * * Field Name: HiddenToUser
42950
- * * Display Name: Hidden to User
44232
+ * * Display Name: Hidden To User
42951
44233
  * * SQL Data Type: bit
42952
44234
  * * Default Value: 0
42953
44235
  * * Description: Flag indicating if this message should be hidden from end users (system messages, function calls, etc.).
@@ -42994,7 +44276,7 @@ export declare class MJConversationDetailEntity extends BaseEntity<MJConversatio
42994
44276
  set ReflectionInsights(value: string | null);
42995
44277
  /**
42996
44278
  * * Field Name: SummaryOfEarlierConversation
42997
- * * Display Name: Summary of Earlier Conversation
44279
+ * * Display Name: Summary Of Earlier Conversation
42998
44280
  * * SQL Data Type: nvarchar(MAX)
42999
44281
  * * Description: This column optionally stores a summary of the entire conversation leading up to this particular conversation detail record. It is used in long-running conversations to optimize performance by summarizing earlier parts.
43000
44282
  */
@@ -43002,7 +44284,7 @@ export declare class MJConversationDetailEntity extends BaseEntity<MJConversatio
43002
44284
  set SummaryOfEarlierConversation(value: string | null);
43003
44285
  /**
43004
44286
  * * Field Name: UserID
43005
- * * Display Name: User ID
44287
+ * * Display Name: User
43006
44288
  * * SQL Data Type: uniqueidentifier
43007
44289
  * * Related Entity/Foreign Key: MJ: Users (vwUsers.ID)
43008
44290
  * * Description: This field, when populated, overrides the UserID at the Conversation level to specify a different user created the message.
@@ -43011,7 +44293,7 @@ export declare class MJConversationDetailEntity extends BaseEntity<MJConversatio
43011
44293
  set UserID(value: string | null);
43012
44294
  /**
43013
44295
  * * Field Name: ArtifactID
43014
- * * Display Name: Artifact ID
44296
+ * * Display Name: Artifact
43015
44297
  * *
43016
44298
  * * @deprecated This field is deprecated and will be removed in a future version. Using it will result in console warnings.SQL Data Type: uniqueidentifier
43017
44299
  * * Related Entity/Foreign Key: MJ: Conversation Artifacts (vwConversationArtifacts.ID)
@@ -43021,7 +44303,7 @@ export declare class MJConversationDetailEntity extends BaseEntity<MJConversatio
43021
44303
  set ArtifactID(value: string | null);
43022
44304
  /**
43023
44305
  * * Field Name: ArtifactVersionID
43024
- * * Display Name: Artifact Version ID
44306
+ * * Display Name: Artifact Version
43025
44307
  * *
43026
44308
  * * @deprecated This field is deprecated and will be removed in a future version. Using it will result in console warnings.SQL Data Type: uniqueidentifier
43027
44309
  * * Related Entity/Foreign Key: MJ: Conversation Artifact Versions (vwConversationArtifactVersions.ID)
@@ -43031,7 +44313,7 @@ export declare class MJConversationDetailEntity extends BaseEntity<MJConversatio
43031
44313
  set ArtifactVersionID(value: string | null);
43032
44314
  /**
43033
44315
  * * Field Name: CompletionTime
43034
- * * Display Name: Completion Time (ms)
44316
+ * * Display Name: Completion Time
43035
44317
  * * SQL Data Type: bigint
43036
44318
  * * Description: Duration in milliseconds representing how long the AI response processing took to complete for this conversation detail.
43037
44319
  */
@@ -43048,7 +44330,7 @@ export declare class MJConversationDetailEntity extends BaseEntity<MJConversatio
43048
44330
  set IsPinned(value: boolean);
43049
44331
  /**
43050
44332
  * * Field Name: ParentID
43051
- * * Display Name: Parent ID
44333
+ * * Display Name: Parent
43052
44334
  * * SQL Data Type: uniqueidentifier
43053
44335
  * * Related Entity/Foreign Key: MJ: Conversation Details (vwConversationDetails.ID)
43054
44336
  * * Description: Optional reference to parent message for threaded conversations. NULL for top-level messages.
@@ -43057,7 +44339,7 @@ export declare class MJConversationDetailEntity extends BaseEntity<MJConversatio
43057
44339
  set ParentID(value: string | null);
43058
44340
  /**
43059
44341
  * * Field Name: AgentID
43060
- * * Display Name: Agent ID
44342
+ * * Display Name: Agent
43061
44343
  * * SQL Data Type: uniqueidentifier
43062
44344
  * * Related Entity/Foreign Key: MJ: AI Agents (vwAIAgents.ID)
43063
44345
  * * Description: Denormalized agent ID for quick lookup of agent name and icon without joining through AgentRun
@@ -43089,7 +44371,7 @@ export declare class MJConversationDetailEntity extends BaseEntity<MJConversatio
43089
44371
  set SuggestedResponses(value: string | null);
43090
44372
  /**
43091
44373
  * * Field Name: TestRunID
43092
- * * Display Name: Test Run ID
44374
+ * * Display Name: Test Run
43093
44375
  * * SQL Data Type: uniqueidentifier
43094
44376
  * * Related Entity/Foreign Key: MJ: Test Runs (vwTestRuns.ID)
43095
44377
  * * Description: Optional Foreign Key - Links this conversation detail to a test run if this message was part of a test conversation. Allows filtering and analyzing test-specific conversation turns.
@@ -43131,7 +44413,7 @@ export declare class MJConversationDetailEntity extends BaseEntity<MJConversatio
43131
44413
  set OriginalMessageChanged(value: boolean);
43132
44414
  /**
43133
44415
  * * Field Name: AgentSessionID
43134
- * * Display Name: Agent Session ID
44416
+ * * Display Name: Agent Session
43135
44417
  * * SQL Data Type: uniqueidentifier
43136
44418
  * * Related Entity/Foreign Key: MJ: AI Agent Sessions (vwAIAgentSessions.ID)
43137
44419
  * * Description: Links this message to the AIAgentSession that was active when it was created. NULL for messages typed in standard text chat outside any live session. Lets the conversation timeline group a sessions messages into a single collapsible block.
@@ -43148,7 +44430,7 @@ export declare class MJConversationDetailEntity extends BaseEntity<MJConversatio
43148
44430
  set TurnEndedAt(value: Date | null);
43149
44431
  /**
43150
44432
  * * Field Name: UtteranceStartMs
43151
- * * Display Name: Utterance Start (ms)
44433
+ * * Display Name: Utterance Start Ms
43152
44434
  * * SQL Data Type: int
43153
44435
  * * Description: Precise media-relative start of this turn, in integer milliseconds from the recording t0 (AIAgentSession.RecordingStartedAt). Populated only when the realtime driver supplies frame timing; NULL otherwise (fall back to __mj_CreatedAt - t0). Used by the evidence player for click-to-seek.
43154
44436
  */
@@ -43156,7 +44438,7 @@ export declare class MJConversationDetailEntity extends BaseEntity<MJConversatio
43156
44438
  set UtteranceStartMs(value: number | null);
43157
44439
  /**
43158
44440
  * * Field Name: UtteranceEndMs
43159
- * * Display Name: Utterance End (ms)
44441
+ * * Display Name: Utterance End Ms
43160
44442
  * * SQL Data Type: int
43161
44443
  * * Description: Precise media-relative end of this turn, in integer milliseconds from the recording t0 (AIAgentSession.RecordingStartedAt). Populated only when the realtime driver supplies frame timing; NULL otherwise. Used by the evidence player for click-to-seek.
43162
44444
  */
@@ -43176,6 +44458,14 @@ export declare class MJConversationDetailEntity extends BaseEntity<MJConversatio
43176
44458
  get MediaType(): 'Audio' | 'Text' | 'Video' | null;
43177
44459
  set MediaType(value: 'Audio' | 'Text' | 'Video' | null);
43178
44460
  /**
44461
+ * * Field Name: Sequence
44462
+ * * Display Name: Sequence
44463
+ * * SQL Data Type: int
44464
+ * * Default Value: 0
44465
+ * * Description: Monotonic, per-conversation ordinal assigned on insert (1-based). Provides a stable symbolic handle used by conversation-history retrieval tools and by the sequence markers embedded in compaction summaries. A summary stored in SummaryOfEarlierConversation on a given row covers all rows with a lower Sequence in the same conversation.
44466
+ */
44467
+ get Sequence(): number;
44468
+ /**
43179
44469
  * * Field Name: Conversation
43180
44470
  * * Display Name: Conversation
43181
44471
  * * SQL Data Type: nvarchar(255)
@@ -43219,7 +44509,7 @@ export declare class MJConversationDetailEntity extends BaseEntity<MJConversatio
43219
44509
  get TestRun(): string | null;
43220
44510
  /**
43221
44511
  * * Field Name: RootParentID
43222
- * * Display Name: Root Parent ID
44512
+ * * Display Name: Root Parent
43223
44513
  * * SQL Data Type: uniqueidentifier
43224
44514
  */
43225
44515
  get RootParentID(): string | null;
@@ -66443,6 +67733,31 @@ export declare class MJSearchExecutionLogEntity extends BaseEntity<MJSearchExecu
66443
67733
  */
66444
67734
  get __mj_UpdatedAt(): Date;
66445
67735
  /**
67736
+ * * Field Name: AISkillID
67737
+ * * Display Name: AI Skill ID
67738
+ * * SQL Data Type: uniqueidentifier
67739
+ * * Related Entity/Foreign Key: MJ: AI Skills (vwAISkills.ID)
67740
+ * * Description: The AI Skill on whose behalf this search ran, or NULL for a search with no active skill. Mirrors AIAgentID: since a skill is a search principal in its own right (AISkill.SearchScopeAccess plus MJ: AI Skill Search Scopes rows can reach a scope the user's own roles do not grant), the log must record which skill was active or the entitlement decision cannot be reconstructed.
67741
+ */
67742
+ get AISkillID(): string | null;
67743
+ set AISkillID(value: string | null);
67744
+ /**
67745
+ * * Field Name: PrimaryScopeRecordID
67746
+ * * Display Name: Primary Scope Record ID
67747
+ * * SQL Data Type: uniqueidentifier
67748
+ * * Description: The tenant this search ran for, taken from SearchContext.PrimaryScopeRecordID. Lets a multi-tenant deployment partition, filter and retain search audit history per customer. NULL for untenanted searches. Named for the existing primary-scope concept rather than OrganizationID because a scope's primary scope may be a Company, Client or Practice.
67749
+ */
67750
+ get PrimaryScopeRecordID(): string | null;
67751
+ set PrimaryScopeRecordID(value: string | null);
67752
+ /**
67753
+ * * Field Name: ScopeDecisionJSON
67754
+ * * Display Name: Scope Decision JSON
67755
+ * * SQL Data Type: nvarchar(MAX)
67756
+ * * Description: Serialized ScopeExplanation recording WHY this search could reach what it reached: the entitlement decision and the grant that produced it, every dimension with its provenance (CallerSupplied / ServerDerived / Default / DiscardedCaller / Absent), and each lane's rendered filter with its active-or-skipped status and reason. Identical in shape to the value returned by SearchEngine.ExplainScope(), so the dry-run an administrator previews before running a search is the same structure the audit log stores afterwards. NULL when the engine did not capture a decision (older writers, or a failure before scope resolution).
67757
+ */
67758
+ get ScopeDecisionJSON(): string | null;
67759
+ set ScopeDecisionJSON(value: string | null);
67760
+ /**
66446
67761
  * * Field Name: SearchScope
66447
67762
  * * Display Name: Search Scope Name
66448
67763
  * * SQL Data Type: nvarchar(200)
@@ -66460,6 +67775,12 @@ export declare class MJSearchExecutionLogEntity extends BaseEntity<MJSearchExecu
66460
67775
  * * SQL Data Type: nvarchar(255)
66461
67776
  */
66462
67777
  get AIAgent(): string | null;
67778
+ /**
67779
+ * * Field Name: AISkill
67780
+ * * Display Name: AI Skill
67781
+ * * SQL Data Type: nvarchar(255)
67782
+ */
67783
+ get AISkill(): string | null;
66463
67784
  }
66464
67785
  /**
66465
67786
  * MJ: Search Providers - strongly typed entity sub-class
@@ -66712,6 +68033,14 @@ export declare class MJSearchScopeEntityEntity extends BaseEntity<MJSearchScopeE
66712
68033
  */
66713
68034
  get __mj_UpdatedAt(): Date;
66714
68035
  /**
68036
+ * * Field Name: RequiredMetadataKeys
68037
+ * * Display Name: Required Metadata Keys
68038
+ * * SQL Data Type: nvarchar(MAX)
68039
+ * * Description: JSON array of column or alias names the rendered ExtraFilter MUST reference for this lane to be considered safe, e.g. ["OrganizationID","ContentSourceID"]. Checked against the RENDERED filter at search time: if one is missing the lane is SKIPPED rather than queried, because a partially-rendered filter (an {% if %} clause dropped when its dimension was absent or discarded) is still valid SQL and silently widens the search. Same concept and same engine check as SearchScopeExternalIndex.RequiredMetadataKeys, applied to the SQL lane. NULL = no contract declared, which is the pre-migration behaviour.
68040
+ */
68041
+ get RequiredMetadataKeys(): string | null;
68042
+ set RequiredMetadataKeys(value: string | null);
68043
+ /**
66715
68044
  * * Field Name: SearchScope
66716
68045
  * * Display Name: Search Scope
66717
68046
  * * SQL Data Type: nvarchar(200)
@@ -66844,6 +68173,14 @@ export declare class MJSearchScopeExternalIndexEntity extends BaseEntity<MJSearc
66844
68173
  */
66845
68174
  get __mj_UpdatedAt(): Date;
66846
68175
  /**
68176
+ * * Field Name: RequiredMetadataKeys
68177
+ * * Display Name: Required Metadata Keys
68178
+ * * SQL Data Type: nvarchar(MAX)
68179
+ * * Description: JSON array of metadata key names the rendered MetadataFilter MUST constrain on for this lane to be considered safe, e.g. ["OrganizationID","ContentSourceID"]. Checked against the RENDERED filter at search time: if a key is missing the lane is SKIPPED rather than queried, because a partially-rendered filter silently widens the search. This also documents the ingest contract — these are the labels the writer must stamp on every document in the index, since a filter on a key that was never written either matches nothing or (on providers that ignore unknown keys) matches everything. NULL = no contract declared, which is the pre-migration behaviour.
68180
+ */
68181
+ get RequiredMetadataKeys(): string | null;
68182
+ set RequiredMetadataKeys(value: string | null);
68183
+ /**
66847
68184
  * * Field Name: SearchScope
66848
68185
  * * Display Name: Search Scope
66849
68186
  * * SQL Data Type: nvarchar(200)
@@ -66960,6 +68297,30 @@ export declare class MJSearchScopePermissionEntity extends BaseEntity<MJSearchSc
66960
68297
  */
66961
68298
  get __mj_UpdatedAt(): Date;
66962
68299
  /**
68300
+ * * Field Name: StartAt
68301
+ * * Display Name: Start At
68302
+ * * SQL Data Type: datetimeoffset
68303
+ * * Description: Optional start of the window in which this grant applies. NULL = no lower bound. SearchScopePermission was the only member of this family without a time window, so temporary grants previously needed a bespoke mechanism.
68304
+ */
68305
+ get StartAt(): Date | null;
68306
+ set StartAt(value: Date | null);
68307
+ /**
68308
+ * * Field Name: EndAt
68309
+ * * Display Name: End At
68310
+ * * SQL Data Type: datetimeoffset
68311
+ * * Description: Optional end of the window in which this grant applies. NULL = no upper bound.
68312
+ */
68313
+ get EndAt(): Date | null;
68314
+ set EndAt(value: Date | null);
68315
+ /**
68316
+ * * Field Name: PrimaryScopeRecordID
68317
+ * * Display Name: Primary Scope Record ID
68318
+ * * SQL Data Type: uniqueidentifier
68319
+ * * Description: Optional tenant this grant is limited to, matched against SearchContext.PrimaryScopeRecordID at search time and type-checkable against the scope's own PrimaryScopeEntityID. NULL = applies to every tenant, which is the pre-migration behaviour for all existing rows. Deliberately NOT called OrganizationID: MJ is domain-agnostic and a scope's primary scope may be a Company, Client or Practice, so this reuses the existing primary-scope concept rather than inventing a parallel tenancy column.
68320
+ */
68321
+ get PrimaryScopeRecordID(): string | null;
68322
+ set PrimaryScopeRecordID(value: string | null);
68323
+ /**
66963
68324
  * * Field Name: SearchScope
66964
68325
  * * Display Name: Search Scope Name
66965
68326
  * * SQL Data Type: nvarchar(200)
@@ -71957,6 +73318,148 @@ export declare class MJTestEntity extends BaseEntity<MJTestEntityType> {
71957
73318
  */
71958
73319
  get Type(): string;
71959
73320
  }
73321
+ /**
73322
+ * MJ: Themes - strongly typed entity sub-class
73323
+ * * Schema: __mj
73324
+ * * Base Table: Theme
73325
+ * * Base View: vwThemes
73326
+ * * @description A named brand theme. Stores ~8 brand seeds (color hue anchors, neutral character, vibrancy, shape, depth, type, viz palette) as JSON; the full --mj-* design-token contract is derived from the seeds at load. A theme is a brand — light/dark is the user's mode layered under it, so a theme carries no per-mode values.
73327
+ * * Primary Key: ID
73328
+ * @extends {BaseEntity}
73329
+ * @class
73330
+ * @public
73331
+ */
73332
+ export declare class MJThemeEntity extends BaseEntity<MJThemeEntityType> {
73333
+ /**
73334
+ * Loads the MJ: Themes record from the database
73335
+ * @param ID: string - primary key value to load the MJ: Themes record.
73336
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
73337
+ * @returns {Promise<boolean>} - true if successful, false otherwise
73338
+ * @public
73339
+ * @async
73340
+ * @memberof MJThemeEntity
73341
+ * @method
73342
+ * @override
73343
+ */
73344
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
73345
+ /**
73346
+ * * Field Name: ID
73347
+ * * Display Name: ID
73348
+ * * SQL Data Type: uniqueidentifier
73349
+ * * Default Value: newsequentialid()
73350
+ */
73351
+ get ID(): string;
73352
+ set ID(value: string);
73353
+ /**
73354
+ * * Field Name: Name
73355
+ * * Display Name: Name
73356
+ * * SQL Data Type: nvarchar(100)
73357
+ * * Description: Display name for the theme (unique).
73358
+ */
73359
+ get Name(): string;
73360
+ set Name(value: string);
73361
+ /**
73362
+ * * Field Name: Description
73363
+ * * Display Name: Description
73364
+ * * SQL Data Type: nvarchar(MAX)
73365
+ * * Description: Optional description of the theme.
73366
+ */
73367
+ get Description(): string | null;
73368
+ set Description(value: string | null);
73369
+ /**
73370
+ * * Field Name: Seeds
73371
+ * * Display Name: Seeds
73372
+ * * SQL Data Type: nvarchar(MAX)
73373
+ * * Description: Brand seeds as JSON (the ThemeSeeds shape from @memberjunction/theme-engine): primary/accent/tertiary hue anchors, neutralChroma, vibrancy, radius, depth, fontFamily, and an optional vizPalette override. Source of truth — the full token contract is derived from this, not stored.
73374
+ */
73375
+ get Seeds(): string;
73376
+ set Seeds(value: string);
73377
+ /**
73378
+ * * Field Name: LightMarkURL
73379
+ * * Display Name: Light Mode Logo
73380
+ * * SQL Data Type: nvarchar(1000)
73381
+ * * Description: Public URL of the logo mark for light surfaces. Logos are variant uploads, never recolored.
73382
+ */
73383
+ get LightMarkURL(): string | null;
73384
+ set LightMarkURL(value: string | null);
73385
+ /**
73386
+ * * Field Name: DarkMarkURL
73387
+ * * Display Name: Dark Mode Logo
73388
+ * * SQL Data Type: nvarchar(1000)
73389
+ * * Description: Public URL of the logo mark for dark surfaces. Dark mode swaps to this artwork rather than transforming the light mark.
73390
+ */
73391
+ get DarkMarkURL(): string | null;
73392
+ set DarkMarkURL(value: string | null);
73393
+ /**
73394
+ * * Field Name: WordmarkURL
73395
+ * * Display Name: Wordmark Logo
73396
+ * * SQL Data Type: nvarchar(1000)
73397
+ * * Description: Optional public URL of the full wordmark logo.
73398
+ */
73399
+ get WordmarkURL(): string | null;
73400
+ set WordmarkURL(value: string | null);
73401
+ /**
73402
+ * * Field Name: MonochromeURL
73403
+ * * Display Name: Monochrome Logo
73404
+ * * SQL Data Type: nvarchar(1000)
73405
+ * * Description: Optional public URL of a single-fill monochrome logo variant.
73406
+ */
73407
+ get MonochromeURL(): string | null;
73408
+ set MonochromeURL(value: string | null);
73409
+ /**
73410
+ * * Field Name: IsDefault
73411
+ * * Display Name: Is Default Theme
73412
+ * * SQL Data Type: bit
73413
+ * * Default Value: 0
73414
+ * * Description: When 1, this is the default theme applied when no other is selected. Single-default enforcement is handled at the application layer.
73415
+ */
73416
+ get IsDefault(): boolean;
73417
+ set IsDefault(value: boolean);
73418
+ /**
73419
+ * * Field Name: Status
73420
+ * * Display Name: Status
73421
+ * * SQL Data Type: nvarchar(20)
73422
+ * * Default Value: Active
73423
+ * * Value List Type: List
73424
+ * * Possible Values
73425
+ * * Active
73426
+ * * Draft
73427
+ * * Inactive
73428
+ * * Description: Lifecycle status: Active (available), Inactive (retired), or Draft (in progress, not applied).
73429
+ */
73430
+ get Status(): 'Active' | 'Draft' | 'Inactive';
73431
+ set Status(value: 'Active' | 'Draft' | 'Inactive');
73432
+ /**
73433
+ * * Field Name: Overrides
73434
+ * * Display Name: Token Overrides
73435
+ * * SQL Data Type: nvarchar(MAX)
73436
+ * * Description: Optional advanced token overrides as a JSON object mapping a --mj-* CSS custom property name to a value (e.g. {"--mj-brand-primary-hover":"#0a5cff"}). Applied on top of the seed-derived token contract at load, before CustomCSS. Leave null to use the pure derived theme.
73437
+ */
73438
+ get Overrides(): string | null;
73439
+ set Overrides(value: string | null);
73440
+ /**
73441
+ * * Field Name: CustomCSS
73442
+ * * Display Name: Custom CSS
73443
+ * * SQL Data Type: nvarchar(MAX)
73444
+ * * Description: Optional advanced raw CSS appended to the theme overlay and auto-scoped under [data-theme-overlay="<id>"]. Applied last, after the derived tokens and Overrides. Escape hatch for rules the seed/token model cannot express; leave null for none.
73445
+ */
73446
+ get CustomCSS(): string | null;
73447
+ set CustomCSS(value: string | null);
73448
+ /**
73449
+ * * Field Name: __mj_CreatedAt
73450
+ * * Display Name: Created At
73451
+ * * SQL Data Type: datetimeoffset
73452
+ * * Default Value: getutcdate()
73453
+ */
73454
+ get __mj_CreatedAt(): Date;
73455
+ /**
73456
+ * * Field Name: __mj_UpdatedAt
73457
+ * * Display Name: Updated At
73458
+ * * SQL Data Type: datetimeoffset
73459
+ * * Default Value: getutcdate()
73460
+ */
73461
+ get __mj_UpdatedAt(): Date;
73462
+ }
71960
73463
  /**
71961
73464
  * MJ: User Application Entities - strongly typed entity sub-class
71962
73465
  * * Schema: __mj