@axiom-lattice/core 2.1.41 → 2.1.43

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.
package/dist/index.d.mts CHANGED
@@ -8,7 +8,7 @@ import { BaseLanguageModelInput, LanguageModelLike } from '@langchain/core/langu
8
8
  import { CallbackManagerForLLMRun } from '@langchain/core/callbacks/manager';
9
9
  import { ChatResult } from '@langchain/core/outputs';
10
10
  import * as _axiom_lattice_protocols from '@axiom-lattice/protocols';
11
- import { LLMConfig, SemanticMetricsServerConfig, MetricMeta, MetricQueryResult, DataSource, SemanticMetricsQueryRequest, SemanticMetricsQueryResponse, TableQueryRequest, TableQueryResponse, ExecuteSqlQueryRequest, ExecuteSqlQueryResponse, MetricsServerType, MetricsServerConfig, ToolConfig, ToolExecutor, AgentConfig, MiddlewareType, GraphBuildOptions, MessageChunk, QueueLatticeProtocol, QueueConfig, QueueClient, QueueResult, ScheduleLatticeProtocol, ScheduleConfig, ScheduleClient, ScheduleStorage, TaskHandler, ScheduleOnceOptions, ScheduleCronOptions, ScheduledTaskDefinition, ScheduledTaskStatus, ScheduleExecutionType, ThreadStore, AssistantStore, SkillStore, WorkspaceStore, ProjectStore, DatabaseConfigStore, MetricsServerConfigStore, McpServerConfigStore, UserStore, TenantStore, UserTenantLinkStore, Thread, CreateThreadRequest, Assistant, CreateAssistantRequest, Skill, CreateSkillRequest, DatabaseConfigEntry, CreateDatabaseConfigRequest, UpdateDatabaseConfigRequest, User, CreateUserRequest, UpdateUserRequest, Tenant, CreateTenantRequest, UpdateTenantRequest, UserTenantLink, CreateUserTenantLinkRequest, UpdateUserTenantLinkRequest, LoggerLatticeProtocol, LoggerConfig, LoggerClient, LoggerContext, SkillConfig, SkillClient } from '@axiom-lattice/protocols';
11
+ import { LLMConfig, SemanticMetricsServerConfig, MetricMeta, MetricQueryResult, DataSource, SemanticMetricsQueryRequest, SemanticMetricsQueryResponse, TableQueryRequest, TableQueryResponse, ExecuteSqlQueryRequest, ExecuteSqlQueryResponse, MetricsServerType, MetricsServerConfig, ToolConfig, ToolExecutor, AgentConfig, MiddlewareType, GraphBuildOptions, MessageChunk, MessageChunkType, QueueLatticeProtocol, QueueConfig, QueueClient, QueueResult, ScheduleLatticeProtocol, ScheduleConfig, ScheduleClient, ScheduleStorage, TaskHandler, ScheduleOnceOptions, ScheduleCronOptions, ScheduledTaskDefinition, ScheduledTaskStatus, ScheduleExecutionType, ThreadStore, AssistantStore, SkillStore, WorkspaceStore, ProjectStore, DatabaseConfigStore, MetricsServerConfigStore, McpServerConfigStore, UserStore, TenantStore, UserTenantLinkStore, Thread, CreateThreadRequest, Assistant, CreateAssistantRequest, Skill, CreateSkillRequest, DatabaseConfigEntry, CreateDatabaseConfigRequest, UpdateDatabaseConfigRequest, User, CreateUserRequest, UpdateUserRequest, Tenant, CreateTenantRequest, UpdateTenantRequest, UserTenantLink, CreateUserTenantLinkRequest, UpdateUserTenantLinkRequest, LoggerLatticeProtocol, LoggerConfig, LoggerClient, LoggerContext, SkillConfig, SkillClient } from '@axiom-lattice/protocols';
12
12
  export { _axiom_lattice_protocols as Protocols };
13
13
  export { AgentConfig, AgentType, GraphBuildOptions, MemoryType } from '@axiom-lattice/protocols';
14
14
  import * as langchain from 'langchain';
@@ -1789,7 +1789,7 @@ declare abstract class ChunkBuffer {
1789
1789
  * Check if a thread exists (valid or expired)
1790
1790
  */
1791
1791
  abstract hasThread(threadId: string): Promise<boolean>;
1792
- abstract getNewChunksSinceContentIterator(threadId: string, messageId: string, knownContent: string): AsyncIterable<MessageChunk>;
1792
+ abstract getNewChunksSinceContentIterator(threadId: string, messageId: string, knownContent: string, stopTypes?: MessageChunkType[]): AsyncIterable<MessageChunk>;
1793
1793
  }
1794
1794
 
1795
1795
  /**
@@ -1847,7 +1847,7 @@ declare class InMemoryChunkBuffer extends ChunkBuffer {
1847
1847
  */
1848
1848
  cleanupExpiredThreads(): Promise<number>;
1849
1849
  extendThreadTTL(threadId: string, additionalMs?: number): Promise<void>;
1850
- getNewChunksSinceContentIterator(threadId: string, messageId: string, knownContent: string): AsyncIterable<MessageChunk>;
1850
+ getNewChunksSinceContentIterator(threadId: string, messageId: string, knownContent: string, stopTypes?: MessageChunkType[]): AsyncIterable<MessageChunk>;
1851
1851
  getStats(): BufferStats;
1852
1852
  dispose(): void;
1853
1853
  }
@@ -2290,6 +2290,7 @@ interface IMessageQueueStore {
2290
2290
  markProcessing(messageId: string): Promise<void>;
2291
2291
  markCompleted(messageId: string): Promise<void>;
2292
2292
  clearCompletedMessages(threadId: string): Promise<void>;
2293
+ resetProcessingToPending(threadId: string): Promise<number>;
2293
2294
  }
2294
2295
  /**
2295
2296
  * Agent executor function type
@@ -2857,6 +2858,7 @@ declare class InMemoryThreadMessageQueueStore implements IMessageQueueStore {
2857
2858
  markProcessing(messageId: string): Promise<void>;
2858
2859
  markCompleted(messageId: string): Promise<void>;
2859
2860
  clearCompletedMessages(threadId: string): Promise<void>;
2861
+ resetProcessingToPending(threadId: string): Promise<number>;
2860
2862
  }
2861
2863
 
2862
2864
  /**
@@ -4944,7 +4946,7 @@ interface ThreadStatusChangedEvent {
4944
4946
  pendingCount?: number;
4945
4947
  };
4946
4948
  }
4947
- type AgentLifecycleEventName = 'message:started' | 'message:completed' | 'message:failed' | 'thread:busy' | 'thread:idle' | 'queue:pending';
4949
+ type AgentLifecycleEventName = 'message:started' | 'message:completed' | 'message:interrupted' | 'message:failed' | 'thread:busy' | 'thread:idle' | 'queue:pending';
4948
4950
  interface MessageStartedEvent {
4949
4951
  type: 'message:started';
4950
4952
  messageId: string;
@@ -5012,7 +5014,7 @@ declare class Agent {
5012
5014
  */
5013
5015
  setQueueStore(store: IMessageQueueStore): void;
5014
5016
  addChunk(content: MessageChunk): Promise<void>;
5015
- chunkStream(message_id: string, known_content?: string): {
5017
+ chunkStream(message_id: string, stopTypes?: MessageChunkType[]): {
5016
5018
  [Symbol.asyncIterator]: () => AsyncGenerator<MessageChunk, void, unknown>;
5017
5019
  };
5018
5020
  getLatticeClientAndRuntimeConfig(custom_run_config?: any): Promise<{
@@ -5025,7 +5027,6 @@ declare class Agent {
5025
5027
  private agentExecutor;
5026
5028
  getPendingMessages(): Promise<PendingMessage[]>;
5027
5029
  private agentStreamExecutor;
5028
- private tryToCompleteThread;
5029
5030
  private waitingForQueueEnd;
5030
5031
  private getQueueStore;
5031
5032
  private getDefaultQueueConfig;
@@ -5049,9 +5050,9 @@ declare class Agent {
5049
5050
  }>;
5050
5051
  /**
5051
5052
  * Start queue processor if not already running
5052
- * Private method used internally by addMessage
5053
+ * Public method to allow external triggering (e.g., from recovery)
5053
5054
  */
5054
- private startQueueProcessorIfNeeded;
5055
+ startQueueProcessorIfNeeded(): Promise<void>;
5055
5056
  /**
5056
5057
  * Remove pending message
5057
5058
  */
@@ -5068,6 +5069,12 @@ declare class Agent {
5068
5069
  }[]>;
5069
5070
  get_draw_graph(): Promise<string>;
5070
5071
  getRunStatus(): Promise<ThreadStatus>;
5072
+ /**
5073
+ * Resume task processing after server restart
5074
+ * Resets any stuck processing messages to pending and starts queue processing
5075
+ * Note: Does not rely on LangGraph state as it may be stale after crash/restart
5076
+ */
5077
+ resumeTask(): Promise<void>;
5071
5078
  /**
5072
5079
  * Abort the current agent execution
5073
5080
  * This will cancel any ongoing invoke or stream operations
@@ -5130,6 +5137,20 @@ declare class AgentInstanceManager {
5130
5137
  * Clear all agent instances (use with caution)
5131
5138
  */
5132
5139
  clearAll(): void;
5140
+ /**
5141
+ * Restore agent instances for threads with pending messages after server restart
5142
+ * Queries the message queue store for threads with pending/processing messages
5143
+ * and recreates agent instances to resume processing
5144
+ */
5145
+ restore(): Promise<{
5146
+ restored: number;
5147
+ errors: number;
5148
+ }>;
5149
+ /**
5150
+ * Restore a single thread
5151
+ * Delegates actual recovery logic to Agent.resumeTask()
5152
+ */
5153
+ private restoreThread;
5133
5154
  }
5134
5155
  declare const agentInstanceManager: AgentInstanceManager;
5135
5156
 
package/dist/index.d.ts CHANGED
@@ -8,7 +8,7 @@ import { BaseLanguageModelInput, LanguageModelLike } from '@langchain/core/langu
8
8
  import { CallbackManagerForLLMRun } from '@langchain/core/callbacks/manager';
9
9
  import { ChatResult } from '@langchain/core/outputs';
10
10
  import * as _axiom_lattice_protocols from '@axiom-lattice/protocols';
11
- import { LLMConfig, SemanticMetricsServerConfig, MetricMeta, MetricQueryResult, DataSource, SemanticMetricsQueryRequest, SemanticMetricsQueryResponse, TableQueryRequest, TableQueryResponse, ExecuteSqlQueryRequest, ExecuteSqlQueryResponse, MetricsServerType, MetricsServerConfig, ToolConfig, ToolExecutor, AgentConfig, MiddlewareType, GraphBuildOptions, MessageChunk, QueueLatticeProtocol, QueueConfig, QueueClient, QueueResult, ScheduleLatticeProtocol, ScheduleConfig, ScheduleClient, ScheduleStorage, TaskHandler, ScheduleOnceOptions, ScheduleCronOptions, ScheduledTaskDefinition, ScheduledTaskStatus, ScheduleExecutionType, ThreadStore, AssistantStore, SkillStore, WorkspaceStore, ProjectStore, DatabaseConfigStore, MetricsServerConfigStore, McpServerConfigStore, UserStore, TenantStore, UserTenantLinkStore, Thread, CreateThreadRequest, Assistant, CreateAssistantRequest, Skill, CreateSkillRequest, DatabaseConfigEntry, CreateDatabaseConfigRequest, UpdateDatabaseConfigRequest, User, CreateUserRequest, UpdateUserRequest, Tenant, CreateTenantRequest, UpdateTenantRequest, UserTenantLink, CreateUserTenantLinkRequest, UpdateUserTenantLinkRequest, LoggerLatticeProtocol, LoggerConfig, LoggerClient, LoggerContext, SkillConfig, SkillClient } from '@axiom-lattice/protocols';
11
+ import { LLMConfig, SemanticMetricsServerConfig, MetricMeta, MetricQueryResult, DataSource, SemanticMetricsQueryRequest, SemanticMetricsQueryResponse, TableQueryRequest, TableQueryResponse, ExecuteSqlQueryRequest, ExecuteSqlQueryResponse, MetricsServerType, MetricsServerConfig, ToolConfig, ToolExecutor, AgentConfig, MiddlewareType, GraphBuildOptions, MessageChunk, MessageChunkType, QueueLatticeProtocol, QueueConfig, QueueClient, QueueResult, ScheduleLatticeProtocol, ScheduleConfig, ScheduleClient, ScheduleStorage, TaskHandler, ScheduleOnceOptions, ScheduleCronOptions, ScheduledTaskDefinition, ScheduledTaskStatus, ScheduleExecutionType, ThreadStore, AssistantStore, SkillStore, WorkspaceStore, ProjectStore, DatabaseConfigStore, MetricsServerConfigStore, McpServerConfigStore, UserStore, TenantStore, UserTenantLinkStore, Thread, CreateThreadRequest, Assistant, CreateAssistantRequest, Skill, CreateSkillRequest, DatabaseConfigEntry, CreateDatabaseConfigRequest, UpdateDatabaseConfigRequest, User, CreateUserRequest, UpdateUserRequest, Tenant, CreateTenantRequest, UpdateTenantRequest, UserTenantLink, CreateUserTenantLinkRequest, UpdateUserTenantLinkRequest, LoggerLatticeProtocol, LoggerConfig, LoggerClient, LoggerContext, SkillConfig, SkillClient } from '@axiom-lattice/protocols';
12
12
  export { _axiom_lattice_protocols as Protocols };
13
13
  export { AgentConfig, AgentType, GraphBuildOptions, MemoryType } from '@axiom-lattice/protocols';
14
14
  import * as langchain from 'langchain';
@@ -1789,7 +1789,7 @@ declare abstract class ChunkBuffer {
1789
1789
  * Check if a thread exists (valid or expired)
1790
1790
  */
1791
1791
  abstract hasThread(threadId: string): Promise<boolean>;
1792
- abstract getNewChunksSinceContentIterator(threadId: string, messageId: string, knownContent: string): AsyncIterable<MessageChunk>;
1792
+ abstract getNewChunksSinceContentIterator(threadId: string, messageId: string, knownContent: string, stopTypes?: MessageChunkType[]): AsyncIterable<MessageChunk>;
1793
1793
  }
1794
1794
 
1795
1795
  /**
@@ -1847,7 +1847,7 @@ declare class InMemoryChunkBuffer extends ChunkBuffer {
1847
1847
  */
1848
1848
  cleanupExpiredThreads(): Promise<number>;
1849
1849
  extendThreadTTL(threadId: string, additionalMs?: number): Promise<void>;
1850
- getNewChunksSinceContentIterator(threadId: string, messageId: string, knownContent: string): AsyncIterable<MessageChunk>;
1850
+ getNewChunksSinceContentIterator(threadId: string, messageId: string, knownContent: string, stopTypes?: MessageChunkType[]): AsyncIterable<MessageChunk>;
1851
1851
  getStats(): BufferStats;
1852
1852
  dispose(): void;
1853
1853
  }
@@ -2290,6 +2290,7 @@ interface IMessageQueueStore {
2290
2290
  markProcessing(messageId: string): Promise<void>;
2291
2291
  markCompleted(messageId: string): Promise<void>;
2292
2292
  clearCompletedMessages(threadId: string): Promise<void>;
2293
+ resetProcessingToPending(threadId: string): Promise<number>;
2293
2294
  }
2294
2295
  /**
2295
2296
  * Agent executor function type
@@ -2857,6 +2858,7 @@ declare class InMemoryThreadMessageQueueStore implements IMessageQueueStore {
2857
2858
  markProcessing(messageId: string): Promise<void>;
2858
2859
  markCompleted(messageId: string): Promise<void>;
2859
2860
  clearCompletedMessages(threadId: string): Promise<void>;
2861
+ resetProcessingToPending(threadId: string): Promise<number>;
2860
2862
  }
2861
2863
 
2862
2864
  /**
@@ -4944,7 +4946,7 @@ interface ThreadStatusChangedEvent {
4944
4946
  pendingCount?: number;
4945
4947
  };
4946
4948
  }
4947
- type AgentLifecycleEventName = 'message:started' | 'message:completed' | 'message:failed' | 'thread:busy' | 'thread:idle' | 'queue:pending';
4949
+ type AgentLifecycleEventName = 'message:started' | 'message:completed' | 'message:interrupted' | 'message:failed' | 'thread:busy' | 'thread:idle' | 'queue:pending';
4948
4950
  interface MessageStartedEvent {
4949
4951
  type: 'message:started';
4950
4952
  messageId: string;
@@ -5012,7 +5014,7 @@ declare class Agent {
5012
5014
  */
5013
5015
  setQueueStore(store: IMessageQueueStore): void;
5014
5016
  addChunk(content: MessageChunk): Promise<void>;
5015
- chunkStream(message_id: string, known_content?: string): {
5017
+ chunkStream(message_id: string, stopTypes?: MessageChunkType[]): {
5016
5018
  [Symbol.asyncIterator]: () => AsyncGenerator<MessageChunk, void, unknown>;
5017
5019
  };
5018
5020
  getLatticeClientAndRuntimeConfig(custom_run_config?: any): Promise<{
@@ -5025,7 +5027,6 @@ declare class Agent {
5025
5027
  private agentExecutor;
5026
5028
  getPendingMessages(): Promise<PendingMessage[]>;
5027
5029
  private agentStreamExecutor;
5028
- private tryToCompleteThread;
5029
5030
  private waitingForQueueEnd;
5030
5031
  private getQueueStore;
5031
5032
  private getDefaultQueueConfig;
@@ -5049,9 +5050,9 @@ declare class Agent {
5049
5050
  }>;
5050
5051
  /**
5051
5052
  * Start queue processor if not already running
5052
- * Private method used internally by addMessage
5053
+ * Public method to allow external triggering (e.g., from recovery)
5053
5054
  */
5054
- private startQueueProcessorIfNeeded;
5055
+ startQueueProcessorIfNeeded(): Promise<void>;
5055
5056
  /**
5056
5057
  * Remove pending message
5057
5058
  */
@@ -5068,6 +5069,12 @@ declare class Agent {
5068
5069
  }[]>;
5069
5070
  get_draw_graph(): Promise<string>;
5070
5071
  getRunStatus(): Promise<ThreadStatus>;
5072
+ /**
5073
+ * Resume task processing after server restart
5074
+ * Resets any stuck processing messages to pending and starts queue processing
5075
+ * Note: Does not rely on LangGraph state as it may be stale after crash/restart
5076
+ */
5077
+ resumeTask(): Promise<void>;
5071
5078
  /**
5072
5079
  * Abort the current agent execution
5073
5080
  * This will cancel any ongoing invoke or stream operations
@@ -5130,6 +5137,20 @@ declare class AgentInstanceManager {
5130
5137
  * Clear all agent instances (use with caution)
5131
5138
  */
5132
5139
  clearAll(): void;
5140
+ /**
5141
+ * Restore agent instances for threads with pending messages after server restart
5142
+ * Queries the message queue store for threads with pending/processing messages
5143
+ * and recreates agent instances to resume processing
5144
+ */
5145
+ restore(): Promise<{
5146
+ restored: number;
5147
+ errors: number;
5148
+ }>;
5149
+ /**
5150
+ * Restore a single thread
5151
+ * Delegates actual recovery logic to Agent.resumeTask()
5152
+ */
5153
+ private restoreThread;
5133
5154
  }
5134
5155
  declare const agentInstanceManager: AgentInstanceManager;
5135
5156