@falai/agent 2.7.0 → 3.0.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.
- package/README.md +1 -1
- package/dist/adapters/MemoryAdapter.d.ts +1 -1
- package/dist/adapters/MemoryAdapter.d.ts.map +1 -1
- package/dist/adapters/MemoryAdapter.js +3 -3
- package/dist/adapters/MemoryAdapter.js.map +1 -1
- package/dist/adapters/MongoAdapter.d.ts +1 -1
- package/dist/adapters/MongoAdapter.d.ts.map +1 -1
- package/dist/adapters/MongoAdapter.js +2 -2
- package/dist/adapters/MongoAdapter.js.map +1 -1
- package/dist/adapters/OpenSearchAdapter.d.ts +1 -1
- package/dist/adapters/OpenSearchAdapter.d.ts.map +1 -1
- package/dist/adapters/OpenSearchAdapter.js +3 -3
- package/dist/adapters/OpenSearchAdapter.js.map +1 -1
- package/dist/adapters/PostgreSQLAdapter.d.ts +1 -1
- package/dist/adapters/PostgreSQLAdapter.d.ts.map +1 -1
- package/dist/adapters/PostgreSQLAdapter.js +3 -3
- package/dist/adapters/PostgreSQLAdapter.js.map +1 -1
- package/dist/adapters/PrismaAdapter.d.ts +1 -1
- package/dist/adapters/PrismaAdapter.d.ts.map +1 -1
- package/dist/adapters/PrismaAdapter.js +3 -3
- package/dist/adapters/PrismaAdapter.js.map +1 -1
- package/dist/adapters/RedisAdapter.d.ts +1 -1
- package/dist/adapters/RedisAdapter.d.ts.map +1 -1
- package/dist/adapters/RedisAdapter.js +3 -3
- package/dist/adapters/RedisAdapter.js.map +1 -1
- package/dist/adapters/SQLiteAdapter.d.ts +1 -1
- package/dist/adapters/SQLiteAdapter.d.ts.map +1 -1
- package/dist/adapters/SQLiteAdapter.js +3 -3
- package/dist/adapters/SQLiteAdapter.js.map +1 -1
- package/dist/adapters/index.d.ts +13 -13
- package/dist/adapters/index.d.ts.map +1 -1
- package/dist/adapters/index.js +7 -7
- package/dist/adapters/index.js.map +1 -1
- package/dist/adapters/sessionRow.d.ts +1 -1
- package/dist/adapters/sessionRow.d.ts.map +1 -1
- package/dist/cjs/adapters/MemoryAdapter.d.ts +1 -1
- package/dist/cjs/adapters/MemoryAdapter.d.ts.map +1 -1
- package/dist/cjs/adapters/MemoryAdapter.js +14 -14
- package/dist/cjs/adapters/MemoryAdapter.js.map +1 -1
- package/dist/cjs/adapters/MongoAdapter.d.ts +1 -1
- package/dist/cjs/adapters/MongoAdapter.d.ts.map +1 -1
- package/dist/cjs/adapters/MongoAdapter.js +4 -4
- package/dist/cjs/adapters/MongoAdapter.js.map +1 -1
- package/dist/cjs/adapters/OpenSearchAdapter.d.ts +1 -1
- package/dist/cjs/adapters/OpenSearchAdapter.d.ts.map +1 -1
- package/dist/cjs/adapters/OpenSearchAdapter.js +6 -6
- package/dist/cjs/adapters/OpenSearchAdapter.js.map +1 -1
- package/dist/cjs/adapters/PostgreSQLAdapter.d.ts +1 -1
- package/dist/cjs/adapters/PostgreSQLAdapter.d.ts.map +1 -1
- package/dist/cjs/adapters/PostgreSQLAdapter.js +12 -12
- package/dist/cjs/adapters/PostgreSQLAdapter.js.map +1 -1
- package/dist/cjs/adapters/PrismaAdapter.d.ts +1 -1
- package/dist/cjs/adapters/PrismaAdapter.d.ts.map +1 -1
- package/dist/cjs/adapters/PrismaAdapter.js +7 -7
- package/dist/cjs/adapters/PrismaAdapter.js.map +1 -1
- package/dist/cjs/adapters/RedisAdapter.d.ts +1 -1
- package/dist/cjs/adapters/RedisAdapter.d.ts.map +1 -1
- package/dist/cjs/adapters/RedisAdapter.js +13 -13
- package/dist/cjs/adapters/RedisAdapter.js.map +1 -1
- package/dist/cjs/adapters/SQLiteAdapter.d.ts +1 -1
- package/dist/cjs/adapters/SQLiteAdapter.d.ts.map +1 -1
- package/dist/cjs/adapters/SQLiteAdapter.js +8 -8
- package/dist/cjs/adapters/SQLiteAdapter.js.map +1 -1
- package/dist/cjs/adapters/index.d.ts +13 -13
- package/dist/cjs/adapters/index.d.ts.map +1 -1
- package/dist/cjs/adapters/index.js +14 -14
- package/dist/cjs/adapters/index.js.map +1 -1
- package/dist/cjs/adapters/sessionRow.d.ts +1 -1
- package/dist/cjs/adapters/sessionRow.d.ts.map +1 -1
- package/dist/cjs/core/Agent.d.ts +11 -11
- package/dist/cjs/core/Agent.d.ts.map +1 -1
- package/dist/cjs/core/Agent.js +65 -65
- package/dist/cjs/core/Agent.js.map +1 -1
- package/dist/cjs/core/AutoChainExecutor.d.ts +5 -5
- package/dist/cjs/core/AutoChainExecutor.d.ts.map +1 -1
- package/dist/cjs/core/AutoChainExecutor.js +26 -26
- package/dist/cjs/core/AutoChainExecutor.js.map +1 -1
- package/dist/cjs/core/BranchEvaluator.d.ts +4 -4
- package/dist/cjs/core/BranchEvaluator.d.ts.map +1 -1
- package/dist/cjs/core/BranchEvaluator.js +6 -6
- package/dist/cjs/core/BranchEvaluator.js.map +1 -1
- package/dist/cjs/core/CompactionEngine.d.ts +2 -2
- package/dist/cjs/core/CompactionEngine.d.ts.map +1 -1
- package/dist/cjs/core/DirectiveChainTracker.d.ts +1 -1
- package/dist/cjs/core/DirectiveChainTracker.d.ts.map +1 -1
- package/dist/cjs/core/DirectiveChainTracker.js +5 -5
- package/dist/cjs/core/DirectiveChainTracker.js.map +1 -1
- package/dist/cjs/core/Events.d.ts +1 -1
- package/dist/cjs/core/Events.d.ts.map +1 -1
- package/dist/cjs/core/Events.js +15 -15
- package/dist/cjs/core/Events.js.map +1 -1
- package/dist/cjs/core/Flow.d.ts +4 -4
- package/dist/cjs/core/Flow.d.ts.map +1 -1
- package/dist/cjs/core/Flow.js +15 -15
- package/dist/cjs/core/Flow.js.map +1 -1
- package/dist/cjs/core/FlowRouter.d.ts +4 -4
- package/dist/cjs/core/FlowRouter.d.ts.map +1 -1
- package/dist/cjs/core/FlowRouter.js +64 -64
- package/dist/cjs/core/FlowRouter.js.map +1 -1
- package/dist/cjs/core/PersistenceManager.d.ts +1 -1
- package/dist/cjs/core/PersistenceManager.d.ts.map +1 -1
- package/dist/cjs/core/PersistenceManager.js +10 -10
- package/dist/cjs/core/PersistenceManager.js.map +1 -1
- package/dist/cjs/core/PromptComposer.d.ts +4 -4
- package/dist/cjs/core/PromptComposer.d.ts.map +1 -1
- package/dist/cjs/core/PromptComposer.js +13 -13
- package/dist/cjs/core/PromptComposer.js.map +1 -1
- package/dist/cjs/core/PromptSectionCache.d.ts +2 -2
- package/dist/cjs/core/PromptSectionCache.d.ts.map +1 -1
- package/dist/cjs/core/ResponseEngine.d.ts +4 -4
- package/dist/cjs/core/ResponseEngine.d.ts.map +1 -1
- package/dist/cjs/core/ResponseEngine.js +7 -7
- package/dist/cjs/core/ResponseEngine.js.map +1 -1
- package/dist/cjs/core/ResponseModal.d.ts +10 -10
- package/dist/cjs/core/ResponseModal.d.ts.map +1 -1
- package/dist/cjs/core/ResponseModal.js +69 -69
- package/dist/cjs/core/ResponseModal.js.map +1 -1
- package/dist/cjs/core/ResponsePipeline.d.ts +15 -7
- package/dist/cjs/core/ResponsePipeline.d.ts.map +1 -1
- package/dist/cjs/core/ResponsePipeline.js +99 -91
- package/dist/cjs/core/ResponsePipeline.js.map +1 -1
- package/dist/cjs/core/SessionFinalizer.d.ts +4 -4
- package/dist/cjs/core/SessionFinalizer.d.ts.map +1 -1
- package/dist/cjs/core/SessionFinalizer.js +12 -12
- package/dist/cjs/core/SessionFinalizer.js.map +1 -1
- package/dist/cjs/core/SessionManager.d.ts +5 -5
- package/dist/cjs/core/SessionManager.d.ts.map +1 -1
- package/dist/cjs/core/SessionManager.js +8 -8
- package/dist/cjs/core/SessionManager.js.map +1 -1
- package/dist/cjs/core/SignalCoordinator.d.ts +5 -5
- package/dist/cjs/core/SignalCoordinator.d.ts.map +1 -1
- package/dist/cjs/core/SignalCoordinator.js +12 -12
- package/dist/cjs/core/SignalCoordinator.js.map +1 -1
- package/dist/cjs/core/SignalEvaluator.d.ts +4 -4
- package/dist/cjs/core/SignalEvaluator.d.ts.map +1 -1
- package/dist/cjs/core/SignalEvaluator.js +6 -6
- package/dist/cjs/core/SignalEvaluator.js.map +1 -1
- package/dist/cjs/core/SignalProcessor.d.ts +6 -6
- package/dist/cjs/core/SignalProcessor.d.ts.map +1 -1
- package/dist/cjs/core/SignalProcessor.js +14 -14
- package/dist/cjs/core/SignalProcessor.js.map +1 -1
- package/dist/cjs/core/Step.d.ts +5 -5
- package/dist/cjs/core/Step.d.ts.map +1 -1
- package/dist/cjs/core/Step.js +17 -17
- package/dist/cjs/core/Step.js.map +1 -1
- package/dist/cjs/core/StepLifecycle.d.ts +3 -3
- package/dist/cjs/core/StepLifecycle.d.ts.map +1 -1
- package/dist/cjs/core/StepLifecycle.js +10 -10
- package/dist/cjs/core/StepLifecycle.js.map +1 -1
- package/dist/cjs/core/StreamingToolExecutor.d.ts +1 -1
- package/dist/cjs/core/StreamingToolExecutor.d.ts.map +1 -1
- package/dist/cjs/core/StreamingToolExecutor.js +5 -5
- package/dist/cjs/core/StreamingToolExecutor.js.map +1 -1
- package/dist/cjs/core/ToolLoopExecutor.d.ts +4 -4
- package/dist/cjs/core/ToolLoopExecutor.d.ts.map +1 -1
- package/dist/cjs/core/ToolLoopExecutor.js +51 -51
- package/dist/cjs/core/ToolLoopExecutor.js.map +1 -1
- package/dist/cjs/core/ToolManager.d.ts +5 -5
- package/dist/cjs/core/ToolManager.d.ts.map +1 -1
- package/dist/cjs/core/ToolManager.js +66 -66
- package/dist/cjs/core/ToolManager.js.map +1 -1
- package/dist/cjs/core/createAgent.d.ts +2 -2
- package/dist/cjs/core/createAgent.d.ts.map +1 -1
- package/dist/cjs/core/createAgent.js +2 -2
- package/dist/cjs/core/createAgent.js.map +1 -1
- package/dist/cjs/core/flow-namespace.d.ts +2 -2
- package/dist/cjs/core/flow-namespace.d.ts.map +1 -1
- package/dist/cjs/core/flow-namespace.js +4 -4
- package/dist/cjs/core/flow-namespace.js.map +1 -1
- package/dist/cjs/core/toolGates.d.ts +1 -1
- package/dist/cjs/core/toolGates.d.ts.map +1 -1
- package/dist/cjs/core/toolGates.js +3 -3
- package/dist/cjs/core/toolGates.js.map +1 -1
- package/dist/cjs/index.d.ts +50 -48
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +96 -91
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/providers/AnthropicProvider.d.ts +25 -42
- package/dist/cjs/providers/AnthropicProvider.d.ts.map +1 -1
- package/dist/cjs/providers/AnthropicProvider.js +31 -408
- package/dist/cjs/providers/AnthropicProvider.js.map +1 -1
- package/dist/cjs/providers/DeepSeekProvider.d.ts +13 -34
- package/dist/cjs/providers/DeepSeekProvider.d.ts.map +1 -1
- package/dist/cjs/providers/DeepSeekProvider.js +17 -51
- package/dist/cjs/providers/DeepSeekProvider.js.map +1 -1
- package/dist/cjs/providers/GeminiProvider.d.ts +24 -83
- package/dist/cjs/providers/GeminiProvider.d.ts.map +1 -1
- package/dist/cjs/providers/GeminiProvider.js +32 -514
- package/dist/cjs/providers/GeminiProvider.js.map +1 -1
- package/dist/cjs/providers/GenericOpenAICompatibleProvider.d.ts +9 -10
- package/dist/cjs/providers/GenericOpenAICompatibleProvider.d.ts.map +1 -1
- package/dist/cjs/providers/GenericOpenAICompatibleProvider.js +14 -20
- package/dist/cjs/providers/GenericOpenAICompatibleProvider.js.map +1 -1
- package/dist/cjs/providers/OpenAICompatibleProvider.d.ts +26 -144
- package/dist/cjs/providers/OpenAICompatibleProvider.d.ts.map +1 -1
- package/dist/cjs/providers/OpenAICompatibleProvider.js +40 -523
- package/dist/cjs/providers/OpenAICompatibleProvider.js.map +1 -1
- package/dist/cjs/providers/OpenAIProvider.d.ts +14 -20
- package/dist/cjs/providers/OpenAIProvider.d.ts.map +1 -1
- package/dist/cjs/providers/OpenAIProvider.js +20 -27
- package/dist/cjs/providers/OpenAIProvider.js.map +1 -1
- package/dist/cjs/providers/OpenRouterProvider.d.ts +20 -24
- package/dist/cjs/providers/OpenRouterProvider.d.ts.map +1 -1
- package/dist/cjs/providers/OpenRouterProvider.js +22 -38
- package/dist/cjs/providers/OpenRouterProvider.js.map +1 -1
- package/dist/cjs/providers/ProviderAdapter.d.ts +94 -0
- package/dist/cjs/providers/ProviderAdapter.d.ts.map +1 -0
- package/dist/cjs/providers/ProviderAdapter.js +257 -0
- package/dist/cjs/providers/ProviderAdapter.js.map +1 -0
- package/dist/cjs/providers/index.d.ts +21 -18
- package/dist/cjs/providers/index.d.ts.map +1 -1
- package/dist/cjs/providers/index.js +23 -21
- package/dist/cjs/providers/index.js.map +1 -1
- package/dist/cjs/types/agent.d.ts +11 -11
- package/dist/cjs/types/agent.d.ts.map +1 -1
- package/dist/cjs/types/ai.d.ts +11 -21
- package/dist/cjs/types/ai.d.ts.map +1 -1
- package/dist/cjs/types/compaction.d.ts +2 -2
- package/dist/cjs/types/compaction.d.ts.map +1 -1
- package/dist/cjs/types/errors.d.ts +16 -20
- package/dist/cjs/types/errors.d.ts.map +1 -1
- package/dist/cjs/types/errors.js +17 -18
- package/dist/cjs/types/errors.js.map +1 -1
- package/dist/cjs/types/flow.d.ts +7 -7
- package/dist/cjs/types/flow.d.ts.map +1 -1
- package/dist/cjs/types/history.d.ts +1 -1
- package/dist/cjs/types/history.d.ts.map +1 -1
- package/dist/cjs/types/index.d.ts +17 -17
- package/dist/cjs/types/index.d.ts.map +1 -1
- package/dist/cjs/types/index.js +14 -14
- package/dist/cjs/types/index.js.map +1 -1
- package/dist/cjs/types/persistence.d.ts +2 -2
- package/dist/cjs/types/persistence.d.ts.map +1 -1
- package/dist/cjs/types/session.d.ts +4 -4
- package/dist/cjs/types/session.d.ts.map +1 -1
- package/dist/cjs/types/signals.d.ts +3 -3
- package/dist/cjs/types/signals.d.ts.map +1 -1
- package/dist/cjs/types/template.d.ts +2 -2
- package/dist/cjs/types/template.d.ts.map +1 -1
- package/dist/cjs/types/tool.d.ts +2 -2
- package/dist/cjs/types/tool.d.ts.map +1 -1
- package/dist/cjs/utils/condition.d.ts +1 -1
- package/dist/cjs/utils/condition.d.ts.map +1 -1
- package/dist/cjs/utils/condition.js +6 -6
- package/dist/cjs/utils/condition.js.map +1 -1
- package/dist/cjs/utils/event.d.ts +1 -1
- package/dist/cjs/utils/event.d.ts.map +1 -1
- package/dist/cjs/utils/event.js +2 -2
- package/dist/cjs/utils/event.js.map +1 -1
- package/dist/cjs/utils/history.d.ts +2 -2
- package/dist/cjs/utils/history.d.ts.map +1 -1
- package/dist/cjs/utils/history.js +15 -15
- package/dist/cjs/utils/history.js.map +1 -1
- package/dist/cjs/utils/index.d.ts +11 -13
- package/dist/cjs/utils/index.d.ts.map +1 -1
- package/dist/cjs/utils/index.js +57 -67
- package/dist/cjs/utils/index.js.map +1 -1
- package/dist/cjs/utils/serialize.d.ts +2 -2
- package/dist/cjs/utils/serialize.d.ts.map +1 -1
- package/dist/cjs/utils/session.d.ts +3 -3
- package/dist/cjs/utils/session.d.ts.map +1 -1
- package/dist/cjs/utils/session.js +4 -4
- package/dist/cjs/utils/session.js.map +1 -1
- package/dist/cjs/utils/template.d.ts +3 -3
- package/dist/cjs/utils/template.d.ts.map +1 -1
- package/dist/cjs/utils/template.js +5 -5
- package/dist/cjs/utils/template.js.map +1 -1
- package/dist/constants/index.d.ts +1 -0
- package/dist/constants/index.js +1 -1
- package/dist/core/Agent.d.ts +11 -11
- package/dist/core/Agent.d.ts.map +1 -1
- package/dist/core/Agent.js +13 -13
- package/dist/core/Agent.js.map +1 -1
- package/dist/core/AutoChainExecutor.d.ts +5 -5
- package/dist/core/AutoChainExecutor.d.ts.map +1 -1
- package/dist/core/AutoChainExecutor.js +5 -5
- package/dist/core/AutoChainExecutor.js.map +1 -1
- package/dist/core/BranchEvaluator.d.ts +4 -4
- package/dist/core/BranchEvaluator.d.ts.map +1 -1
- package/dist/core/BranchEvaluator.js +2 -2
- package/dist/core/BranchEvaluator.js.map +1 -1
- package/dist/core/CompactionEngine.d.ts +2 -2
- package/dist/core/CompactionEngine.d.ts.map +1 -1
- package/dist/core/DirectiveChainTracker.d.ts +1 -1
- package/dist/core/DirectiveChainTracker.d.ts.map +1 -1
- package/dist/core/DirectiveChainTracker.js +2 -2
- package/dist/core/DirectiveChainTracker.js.map +1 -1
- package/dist/core/Events.d.ts +1 -1
- package/dist/core/Events.d.ts.map +1 -1
- package/dist/core/Events.js +1 -1
- package/dist/core/Events.js.map +1 -1
- package/dist/core/Flow.d.ts +4 -4
- package/dist/core/Flow.d.ts.map +1 -1
- package/dist/core/Flow.js +3 -3
- package/dist/core/Flow.js.map +1 -1
- package/dist/core/FlowRouter.d.ts +4 -4
- package/dist/core/FlowRouter.d.ts.map +1 -1
- package/dist/core/FlowRouter.js +4 -4
- package/dist/core/FlowRouter.js.map +1 -1
- package/dist/core/PersistenceManager.d.ts +1 -1
- package/dist/core/PersistenceManager.d.ts.map +1 -1
- package/dist/core/PersistenceManager.js +3 -3
- package/dist/core/PersistenceManager.js.map +1 -1
- package/dist/core/PromptComposer.d.ts +4 -4
- package/dist/core/PromptComposer.d.ts.map +1 -1
- package/dist/core/PromptComposer.js +3 -3
- package/dist/core/PromptComposer.js.map +1 -1
- package/dist/core/PromptSectionCache.d.ts +2 -2
- package/dist/core/PromptSectionCache.d.ts.map +1 -1
- package/dist/core/ResponseEngine.d.ts +4 -4
- package/dist/core/ResponseEngine.d.ts.map +1 -1
- package/dist/core/ResponseEngine.js +2 -2
- package/dist/core/ResponseEngine.js.map +1 -1
- package/dist/core/ResponseModal.d.ts +10 -10
- package/dist/core/ResponseModal.d.ts.map +1 -1
- package/dist/core/ResponseModal.js +14 -14
- package/dist/core/ResponseModal.js.map +1 -1
- package/dist/core/ResponsePipeline.d.ts +15 -7
- package/dist/core/ResponsePipeline.d.ts.map +1 -1
- package/dist/core/ResponsePipeline.js +25 -17
- package/dist/core/ResponsePipeline.js.map +1 -1
- package/dist/core/SessionFinalizer.d.ts +4 -4
- package/dist/core/SessionFinalizer.d.ts.map +1 -1
- package/dist/core/SessionFinalizer.js +3 -3
- package/dist/core/SessionFinalizer.js.map +1 -1
- package/dist/core/SessionManager.d.ts +5 -5
- package/dist/core/SessionManager.d.ts.map +1 -1
- package/dist/core/SessionManager.js +3 -3
- package/dist/core/SessionManager.js.map +1 -1
- package/dist/core/SignalCoordinator.d.ts +5 -5
- package/dist/core/SignalCoordinator.d.ts.map +1 -1
- package/dist/core/SignalCoordinator.js +2 -2
- package/dist/core/SignalCoordinator.js.map +1 -1
- package/dist/core/SignalEvaluator.d.ts +4 -4
- package/dist/core/SignalEvaluator.d.ts.map +1 -1
- package/dist/core/SignalEvaluator.js +2 -2
- package/dist/core/SignalEvaluator.js.map +1 -1
- package/dist/core/SignalProcessor.d.ts +6 -6
- package/dist/core/SignalProcessor.d.ts.map +1 -1
- package/dist/core/SignalProcessor.js +3 -3
- package/dist/core/SignalProcessor.js.map +1 -1
- package/dist/core/Step.d.ts +5 -5
- package/dist/core/Step.d.ts.map +1 -1
- package/dist/core/Step.js +4 -4
- package/dist/core/Step.js.map +1 -1
- package/dist/core/StepLifecycle.d.ts +3 -3
- package/dist/core/StepLifecycle.d.ts.map +1 -1
- package/dist/core/StepLifecycle.js +2 -2
- package/dist/core/StepLifecycle.js.map +1 -1
- package/dist/core/StreamingToolExecutor.d.ts +1 -1
- package/dist/core/StreamingToolExecutor.d.ts.map +1 -1
- package/dist/core/StreamingToolExecutor.js +2 -2
- package/dist/core/StreamingToolExecutor.js.map +1 -1
- package/dist/core/ToolLoopExecutor.d.ts +4 -4
- package/dist/core/ToolLoopExecutor.d.ts.map +1 -1
- package/dist/core/ToolLoopExecutor.js +3 -3
- package/dist/core/ToolLoopExecutor.js.map +1 -1
- package/dist/core/ToolManager.d.ts +5 -5
- package/dist/core/ToolManager.d.ts.map +1 -1
- package/dist/core/ToolManager.js +4 -4
- package/dist/core/ToolManager.js.map +1 -1
- package/dist/core/createAgent.d.ts +2 -2
- package/dist/core/createAgent.d.ts.map +1 -1
- package/dist/core/createAgent.js +1 -1
- package/dist/core/createAgent.js.map +1 -1
- package/dist/core/flow-namespace.d.ts +2 -2
- package/dist/core/flow-namespace.d.ts.map +1 -1
- package/dist/core/flow-namespace.js +1 -1
- package/dist/core/flow-namespace.js.map +1 -1
- package/dist/core/toolGates.d.ts +1 -1
- package/dist/core/toolGates.d.ts.map +1 -1
- package/dist/core/toolGates.js +1 -1
- package/dist/core/toolGates.js.map +1 -1
- package/dist/index.d.ts +50 -48
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +34 -31
- package/dist/index.js.map +1 -1
- package/dist/providers/AnthropicProvider.d.ts +25 -42
- package/dist/providers/AnthropicProvider.d.ts.map +1 -1
- package/dist/providers/AnthropicProvider.js +31 -405
- package/dist/providers/AnthropicProvider.js.map +1 -1
- package/dist/providers/DeepSeekProvider.d.ts +13 -34
- package/dist/providers/DeepSeekProvider.d.ts.map +1 -1
- package/dist/providers/DeepSeekProvider.js +16 -47
- package/dist/providers/DeepSeekProvider.js.map +1 -1
- package/dist/providers/GeminiProvider.d.ts +24 -83
- package/dist/providers/GeminiProvider.d.ts.map +1 -1
- package/dist/providers/GeminiProvider.js +32 -514
- package/dist/providers/GeminiProvider.js.map +1 -1
- package/dist/providers/GenericOpenAICompatibleProvider.d.ts +9 -10
- package/dist/providers/GenericOpenAICompatibleProvider.d.ts.map +1 -1
- package/dist/providers/GenericOpenAICompatibleProvider.js +13 -16
- package/dist/providers/GenericOpenAICompatibleProvider.js.map +1 -1
- package/dist/providers/OpenAICompatibleProvider.d.ts +26 -144
- package/dist/providers/OpenAICompatibleProvider.d.ts.map +1 -1
- package/dist/providers/OpenAICompatibleProvider.js +39 -522
- package/dist/providers/OpenAICompatibleProvider.js.map +1 -1
- package/dist/providers/OpenAIProvider.d.ts +14 -20
- package/dist/providers/OpenAIProvider.d.ts.map +1 -1
- package/dist/providers/OpenAIProvider.js +19 -23
- package/dist/providers/OpenAIProvider.js.map +1 -1
- package/dist/providers/OpenRouterProvider.d.ts +20 -24
- package/dist/providers/OpenRouterProvider.d.ts.map +1 -1
- package/dist/providers/OpenRouterProvider.js +21 -34
- package/dist/providers/OpenRouterProvider.js.map +1 -1
- package/dist/providers/ProviderAdapter.d.ts +94 -0
- package/dist/providers/ProviderAdapter.d.ts.map +1 -0
- package/dist/providers/ProviderAdapter.js +251 -0
- package/dist/providers/ProviderAdapter.js.map +1 -0
- package/dist/providers/index.d.ts +21 -18
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js +13 -10
- package/dist/providers/index.js.map +1 -1
- package/dist/types/agent.d.ts +11 -11
- package/dist/types/agent.d.ts.map +1 -1
- package/dist/types/ai.d.ts +11 -21
- package/dist/types/ai.d.ts.map +1 -1
- package/dist/types/compaction.d.ts +2 -2
- package/dist/types/compaction.d.ts.map +1 -1
- package/dist/types/errors.d.ts +16 -20
- package/dist/types/errors.d.ts.map +1 -1
- package/dist/types/errors.js +15 -16
- package/dist/types/errors.js.map +1 -1
- package/dist/types/flow.d.ts +7 -7
- package/dist/types/flow.d.ts.map +1 -1
- package/dist/types/history.d.ts +1 -1
- package/dist/types/history.d.ts.map +1 -1
- package/dist/types/index.d.ts +17 -17
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +4 -4
- package/dist/types/index.js.map +1 -1
- package/dist/types/persistence.d.ts +2 -2
- package/dist/types/persistence.d.ts.map +1 -1
- package/dist/types/session.d.ts +4 -4
- package/dist/types/session.d.ts.map +1 -1
- package/dist/types/signals.d.ts +3 -3
- package/dist/types/signals.d.ts.map +1 -1
- package/dist/types/template.d.ts +2 -2
- package/dist/types/template.d.ts.map +1 -1
- package/dist/types/tool.d.ts +2 -2
- package/dist/types/tool.d.ts.map +1 -1
- package/dist/utils/condition.d.ts +1 -1
- package/dist/utils/condition.d.ts.map +1 -1
- package/dist/utils/condition.js +2 -2
- package/dist/utils/condition.js.map +1 -1
- package/dist/utils/event.d.ts +1 -1
- package/dist/utils/event.d.ts.map +1 -1
- package/dist/utils/event.js +1 -1
- package/dist/utils/event.js.map +1 -1
- package/dist/utils/history.d.ts +2 -2
- package/dist/utils/history.d.ts.map +1 -1
- package/dist/utils/history.js +1 -1
- package/dist/utils/history.js.map +1 -1
- package/dist/utils/index.d.ts +11 -13
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +11 -12
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/serialize.d.ts +2 -2
- package/dist/utils/serialize.d.ts.map +1 -1
- package/dist/utils/session.d.ts +3 -3
- package/dist/utils/session.d.ts.map +1 -1
- package/dist/utils/session.js +2 -2
- package/dist/utils/session.js.map +1 -1
- package/dist/utils/template.d.ts +3 -3
- package/dist/utils/template.d.ts.map +1 -1
- package/dist/utils/template.js +1 -1
- package/dist/utils/template.js.map +1 -1
- package/docs/reference/branches.md +2 -0
- package/docs/reference/errors.md +5 -5
- package/docs/reference/providers.md +42 -43
- package/examples/01-quickstart.ts +1 -1
- package/examples/04-instructions.ts +1 -1
- package/examples/05-branching.ts +2 -2
- package/examples/08-persistence.ts +1 -1
- package/examples/tsconfig.json +6 -3
- package/package.json +8 -6
- package/src/adapters/MemoryAdapter.ts +4 -4
- package/src/adapters/MongoAdapter.ts +3 -3
- package/src/adapters/OpenSearchAdapter.ts +4 -4
- package/src/adapters/PostgreSQLAdapter.ts +4 -4
- package/src/adapters/PrismaAdapter.ts +4 -4
- package/src/adapters/RedisAdapter.ts +4 -4
- package/src/adapters/SQLiteAdapter.ts +4 -4
- package/src/adapters/index.ts +13 -13
- package/src/adapters/sessionRow.ts +1 -1
- package/src/core/Agent.ts +18 -18
- package/src/core/AutoChainExecutor.ts +9 -9
- package/src/core/BranchEvaluator.ts +5 -5
- package/src/core/CompactionEngine.ts +2 -2
- package/src/core/DirectiveChainTracker.ts +3 -3
- package/src/core/Events.ts +2 -2
- package/src/core/Flow.ts +9 -9
- package/src/core/FlowRouter.ts +8 -8
- package/src/core/PersistenceManager.ts +4 -4
- package/src/core/PromptComposer.ts +8 -8
- package/src/core/PromptSectionCache.ts +2 -2
- package/src/core/ResponseEngine.ts +6 -6
- package/src/core/ResponseModal.ts +24 -24
- package/src/core/ResponsePipeline.ts +43 -23
- package/src/core/SessionFinalizer.ts +7 -7
- package/src/core/SessionManager.ts +7 -7
- package/src/core/SignalCoordinator.ts +7 -7
- package/src/core/SignalEvaluator.ts +6 -6
- package/src/core/SignalProcessor.ts +9 -9
- package/src/core/Step.ts +9 -9
- package/src/core/StepLifecycle.ts +6 -6
- package/src/core/StreamingToolExecutor.ts +4 -4
- package/src/core/ToolLoopExecutor.ts +7 -7
- package/src/core/ToolManager.ts +9 -9
- package/src/core/createAgent.ts +2 -2
- package/src/core/flow-namespace.ts +3 -3
- package/src/core/toolGates.ts +2 -2
- package/src/index.ts +59 -48
- package/src/providers/AnthropicProvider.ts +45 -548
- package/src/providers/DeepSeekProvider.ts +27 -92
- package/src/providers/GeminiProvider.ts +43 -680
- package/src/providers/GenericOpenAICompatibleProvider.ts +19 -27
- package/src/providers/OpenAICompatibleProvider.ts +58 -763
- package/src/providers/OpenAIProvider.ts +31 -55
- package/src/providers/OpenRouterProvider.ts +40 -70
- package/src/providers/ProviderAdapter.ts +368 -0
- package/src/providers/index.ts +21 -23
- package/src/types/agent.ts +11 -11
- package/src/types/ai.ts +11 -21
- package/src/types/compaction.ts +2 -2
- package/src/types/errors.ts +17 -35
- package/src/types/flow.ts +7 -7
- package/src/types/history.ts +1 -1
- package/src/types/index.ts +17 -17
- package/src/types/persistence.ts +2 -2
- package/src/types/session.ts +4 -4
- package/src/types/signals.ts +3 -3
- package/src/types/template.ts +2 -2
- package/src/types/tool.ts +2 -2
- package/src/utils/condition.ts +3 -3
- package/src/utils/event.ts +1 -1
- package/src/utils/history.ts +3 -3
- package/src/utils/index.ts +11 -31
- package/src/utils/serialize.ts +2 -2
- package/src/utils/session.ts +6 -6
- package/src/utils/template.ts +3 -3
- package/dist/cjs/providers/errorClassification.d.ts +0 -68
- package/dist/cjs/providers/errorClassification.d.ts.map +0 -1
- package/dist/cjs/providers/errorClassification.js +0 -150
- package/dist/cjs/providers/errorClassification.js.map +0 -1
- package/dist/cjs/utils/retry.d.ts +0 -165
- package/dist/cjs/utils/retry.d.ts.map +0 -1
- package/dist/cjs/utils/retry.js +0 -338
- package/dist/cjs/utils/retry.js.map +0 -1
- package/dist/providers/errorClassification.d.ts +0 -68
- package/dist/providers/errorClassification.d.ts.map +0 -1
- package/dist/providers/errorClassification.js +0 -142
- package/dist/providers/errorClassification.js.map +0 -1
- package/dist/utils/retry.d.ts +0 -165
- package/dist/utils/retry.d.ts.map +0 -1
- package/dist/utils/retry.js +0 -327
- package/dist/utils/retry.js.map +0 -1
- package/src/providers/errorClassification.ts +0 -206
- package/src/utils/retry.ts +0 -523
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"retry.js","sourceRoot":"","sources":["../../../src/utils/retry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shared provider error utilities: classification of SDK/HTTP errors onto
|
|
3
|
-
* normalized ProviderErrorCode values, backup-model eligibility, and
|
|
4
|
-
* wrapping of terminal failures in ProviderError.
|
|
5
|
-
*
|
|
6
|
-
* The classification is derived once and reused for both backup-model
|
|
7
|
-
* decisions and final error wrapping, so the two can never drift apart.
|
|
8
|
-
*/
|
|
9
|
-
import { ProviderError, type ProviderErrorCode } from "../types/errors";
|
|
10
|
-
/**
|
|
11
|
-
* Shape of errors with status/code properties thrown by provider SDKs
|
|
12
|
-
*/
|
|
13
|
-
export interface ErrorWithStatus {
|
|
14
|
-
status?: number;
|
|
15
|
-
code?: string;
|
|
16
|
-
message?: string;
|
|
17
|
-
type?: string;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Type guard to check if error is ErrorWithStatus
|
|
21
|
-
*/
|
|
22
|
-
export declare function isErrorWithStatus(error: unknown): error is ErrorWithStatus;
|
|
23
|
-
/**
|
|
24
|
-
* Safely extract error message
|
|
25
|
-
*/
|
|
26
|
-
export declare function getErrorMessage(error: unknown): string;
|
|
27
|
-
/**
|
|
28
|
-
* Provider-specific signals treated as "overloaded/unavailable", in
|
|
29
|
-
* addition to the shared defaults (HTTP 500/503 and the common message
|
|
30
|
-
* substrings below).
|
|
31
|
-
*/
|
|
32
|
-
export interface ErrorClassificationOptions {
|
|
33
|
-
/** Extra HTTP statuses treated as overloaded (e.g. Anthropic's 529) */
|
|
34
|
-
overloadedStatuses?: readonly number[];
|
|
35
|
-
/** Error `code` values treated as overloaded/unavailable (e.g. "model_not_found") */
|
|
36
|
-
overloadedCodes?: readonly string[];
|
|
37
|
-
/** Error `type` values treated as overloaded (e.g. Anthropic's "overloaded_error") */
|
|
38
|
-
overloadedTypes?: readonly string[];
|
|
39
|
-
/** Extra message substrings treated as overloaded (e.g. OpenRouter's "capacity") */
|
|
40
|
-
overloadedMessages?: readonly string[];
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Classify an unknown error into a normalized ProviderErrorCode.
|
|
44
|
-
*
|
|
45
|
-
* Overload/availability checks run first so that backup-model decisions
|
|
46
|
-
* (rate_limited/overloaded) match the historical shouldUseBackupModel
|
|
47
|
-
* predicate exactly.
|
|
48
|
-
*/
|
|
49
|
-
export declare function classifyProviderError(error: unknown, options?: ErrorClassificationOptions): ProviderErrorCode;
|
|
50
|
-
/**
|
|
51
|
-
* Whether an error code qualifies for trying backup models.
|
|
52
|
-
* Mirrors the historical shouldUseBackupModel predicate.
|
|
53
|
-
*/
|
|
54
|
-
export declare function isBackupEligible(code: ProviderErrorCode): boolean;
|
|
55
|
-
/**
|
|
56
|
-
* Whether an error is worth retrying with backoff: transient availability,
|
|
57
|
-
* rate-limiting, timeouts and network faults only. Deterministic failures —
|
|
58
|
-
* auth (401/403), invalid request (400/404/422) and caller aborts — must fail
|
|
59
|
-
* fast instead of burning the retry budget on the same outcome.
|
|
60
|
-
*/
|
|
61
|
-
export declare function isRetriableProviderError(error: unknown, options?: ErrorClassificationOptions): boolean;
|
|
62
|
-
/**
|
|
63
|
-
* Wrap a terminal failure (after retries/backup exhaustion) in a
|
|
64
|
-
* normalized ProviderError, preserving the original error as `cause`.
|
|
65
|
-
* Already-wrapped errors pass through untouched.
|
|
66
|
-
*/
|
|
67
|
-
export declare function toProviderError(error: unknown, provider: string, options?: ErrorClassificationOptions): ProviderError;
|
|
68
|
-
//# sourceMappingURL=errorClassification.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errorClassification.d.ts","sourceRoot":"","sources":["../../src/providers/errorClassification.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,aAAa,EAAE,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAExE;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAM1E;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAQtD;AAED;;;;GAIG;AACH,MAAM,WAAW,0BAA0B;IACzC,uEAAuE;IACvE,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,qFAAqF;IACrF,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,sFAAsF;IACtF,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,oFAAoF;IACpF,kBAAkB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAaD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,0BAA+B,GACvC,iBAAiB,CA4DnB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAEjE;AAcD;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,OAAO,EACd,OAAO,CAAC,EAAE,0BAA0B,GACnC,OAAO,CAWT;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,0BAA0B,GACnC,aAAa,CAUf"}
|
|
@@ -1,142 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shared provider error utilities: classification of SDK/HTTP errors onto
|
|
3
|
-
* normalized ProviderErrorCode values, backup-model eligibility, and
|
|
4
|
-
* wrapping of terminal failures in ProviderError.
|
|
5
|
-
*
|
|
6
|
-
* The classification is derived once and reused for both backup-model
|
|
7
|
-
* decisions and final error wrapping, so the two can never drift apart.
|
|
8
|
-
*/
|
|
9
|
-
import { ProviderError } from "../types/errors";
|
|
10
|
-
/**
|
|
11
|
-
* Type guard to check if error is ErrorWithStatus
|
|
12
|
-
*/
|
|
13
|
-
export function isErrorWithStatus(error) {
|
|
14
|
-
return (typeof error === "object" &&
|
|
15
|
-
error !== null &&
|
|
16
|
-
("status" in error || "code" in error || "message" in error));
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Safely extract error message
|
|
20
|
-
*/
|
|
21
|
-
export function getErrorMessage(error) {
|
|
22
|
-
if (error instanceof Error) {
|
|
23
|
-
return error.message;
|
|
24
|
-
}
|
|
25
|
-
if (isErrorWithStatus(error) && error.message) {
|
|
26
|
-
return error.message;
|
|
27
|
-
}
|
|
28
|
-
return String(error);
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Message substrings every provider historically treated as
|
|
32
|
-
* overloaded/unavailable for backup-model purposes.
|
|
33
|
-
*/
|
|
34
|
-
const DEFAULT_OVERLOADED_MESSAGES = [
|
|
35
|
-
"overloaded",
|
|
36
|
-
"unavailable",
|
|
37
|
-
"internal error",
|
|
38
|
-
"Internal error",
|
|
39
|
-
];
|
|
40
|
-
/**
|
|
41
|
-
* Classify an unknown error into a normalized ProviderErrorCode.
|
|
42
|
-
*
|
|
43
|
-
* Overload/availability checks run first so that backup-model decisions
|
|
44
|
-
* (rate_limited/overloaded) match the historical shouldUseBackupModel
|
|
45
|
-
* predicate exactly.
|
|
46
|
-
*/
|
|
47
|
-
export function classifyProviderError(error, options = {}) {
|
|
48
|
-
if (!isErrorWithStatus(error)) {
|
|
49
|
-
return "unknown";
|
|
50
|
-
}
|
|
51
|
-
const { status, code, type } = error;
|
|
52
|
-
const message = getErrorMessage(error);
|
|
53
|
-
// Server errors / overload
|
|
54
|
-
if (status === 500 || status === 503) {
|
|
55
|
-
return "overloaded";
|
|
56
|
-
}
|
|
57
|
-
// Rate limiting
|
|
58
|
-
if (status === 429) {
|
|
59
|
-
return "rate_limited";
|
|
60
|
-
}
|
|
61
|
-
// Provider-specific overload/unavailability signals
|
|
62
|
-
if (status !== undefined && options.overloadedStatuses?.includes(status)) {
|
|
63
|
-
return "overloaded";
|
|
64
|
-
}
|
|
65
|
-
if (code !== undefined && options.overloadedCodes?.includes(code)) {
|
|
66
|
-
return "overloaded";
|
|
67
|
-
}
|
|
68
|
-
if (type !== undefined && options.overloadedTypes?.includes(type)) {
|
|
69
|
-
return "overloaded";
|
|
70
|
-
}
|
|
71
|
-
const overloadedMessages = options.overloadedMessages
|
|
72
|
-
? [...DEFAULT_OVERLOADED_MESSAGES, ...options.overloadedMessages]
|
|
73
|
-
: DEFAULT_OVERLOADED_MESSAGES;
|
|
74
|
-
if (overloadedMessages.some((pattern) => message.includes(pattern))) {
|
|
75
|
-
return "overloaded";
|
|
76
|
-
}
|
|
77
|
-
// Non-retriable classifications (never triggered backup models)
|
|
78
|
-
if (status === 401 || status === 403) {
|
|
79
|
-
return "auth";
|
|
80
|
-
}
|
|
81
|
-
if (status === 400 || status === 404 || status === 422) {
|
|
82
|
-
return "invalid_request";
|
|
83
|
-
}
|
|
84
|
-
if (status === 408 ||
|
|
85
|
-
message.includes("timed out") ||
|
|
86
|
-
message.includes("timeout")) {
|
|
87
|
-
return "timeout";
|
|
88
|
-
}
|
|
89
|
-
if (message.includes("fetch failed") ||
|
|
90
|
-
message.includes("ECONNREFUSED") ||
|
|
91
|
-
message.includes("ECONNRESET") ||
|
|
92
|
-
message.includes("ETIMEDOUT") ||
|
|
93
|
-
message.includes("network")) {
|
|
94
|
-
return "network";
|
|
95
|
-
}
|
|
96
|
-
return "unknown";
|
|
97
|
-
}
|
|
98
|
-
/**
|
|
99
|
-
* Whether an error code qualifies for trying backup models.
|
|
100
|
-
* Mirrors the historical shouldUseBackupModel predicate.
|
|
101
|
-
*/
|
|
102
|
-
export function isBackupEligible(code) {
|
|
103
|
-
return code === "rate_limited" || code === "overloaded";
|
|
104
|
-
}
|
|
105
|
-
/** Errors whose name marks them as caller- or SDK-initiated aborts. */
|
|
106
|
-
function isAbortLikeError(error) {
|
|
107
|
-
if (!(error instanceof Error))
|
|
108
|
-
return false;
|
|
109
|
-
// OpenAI SDK: APIUserAbortError. Generic fetch/DOM: AbortError / TimeoutError
|
|
110
|
-
// handled below via classification (a timeout IS retriable; a caller abort is not).
|
|
111
|
-
return (error.name === "AbortError" ||
|
|
112
|
-
error.name === "APIUserAbortError" ||
|
|
113
|
-
/abort/i.test(error.message));
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* Whether an error is worth retrying with backoff: transient availability,
|
|
117
|
-
* rate-limiting, timeouts and network faults only. Deterministic failures —
|
|
118
|
-
* auth (401/403), invalid request (400/404/422) and caller aborts — must fail
|
|
119
|
-
* fast instead of burning the retry budget on the same outcome.
|
|
120
|
-
*/
|
|
121
|
-
export function isRetriableProviderError(error, options) {
|
|
122
|
-
if (isAbortLikeError(error)) {
|
|
123
|
-
return false;
|
|
124
|
-
}
|
|
125
|
-
const code = classifyProviderError(error, options);
|
|
126
|
-
return (code === "rate_limited" ||
|
|
127
|
-
code === "overloaded" ||
|
|
128
|
-
code === "timeout" ||
|
|
129
|
-
code === "network");
|
|
130
|
-
}
|
|
131
|
-
/**
|
|
132
|
-
* Wrap a terminal failure (after retries/backup exhaustion) in a
|
|
133
|
-
* normalized ProviderError, preserving the original error as `cause`.
|
|
134
|
-
* Already-wrapped errors pass through untouched.
|
|
135
|
-
*/
|
|
136
|
-
export function toProviderError(error, provider, options) {
|
|
137
|
-
if (error instanceof ProviderError) {
|
|
138
|
-
return error;
|
|
139
|
-
}
|
|
140
|
-
return new ProviderError(classifyProviderError(error, options), provider, getErrorMessage(error), error);
|
|
141
|
-
}
|
|
142
|
-
//# sourceMappingURL=errorClassification.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errorClassification.js","sourceRoot":"","sources":["../../src/providers/errorClassification.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/retry.d.ts
DELETED
|
@@ -1,165 +0,0 @@
|
|
|
1
|
-
export interface RetryOptions<T> {
|
|
2
|
-
operation: () => Promise<T>;
|
|
3
|
-
maxRetries: number;
|
|
4
|
-
delay: (attempt: number) => number;
|
|
5
|
-
onRetry?: (attempt: number, error: unknown) => void;
|
|
6
|
-
onFailure?: (error: unknown) => boolean;
|
|
7
|
-
/**
|
|
8
|
-
* Predicate deciding whether an error may be retried at all. When it returns
|
|
9
|
-
* `false` the error is rethrown immediately — no backoff, no further attempts.
|
|
10
|
-
* Providers pass a classifier here so deterministic failures (401, 400,
|
|
11
|
-
* caller aborts) fail fast instead of burning the full retry budget.
|
|
12
|
-
*/
|
|
13
|
-
isRetriable?: (error: unknown) => boolean;
|
|
14
|
-
}
|
|
15
|
-
/** Provider timeout (ms) + retry count, after defaults are applied. */
|
|
16
|
-
export interface RetryConfig {
|
|
17
|
-
timeout: number;
|
|
18
|
-
retries: number;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Normalize a provider's optional retry config against the defaults. `timeout`
|
|
22
|
-
* uses `||` (a 0ms timeout is degenerate — it aborts every call immediately — so
|
|
23
|
-
* fall back to the default), while `retries` uses `??` so an explicit
|
|
24
|
-
* `retries: 0` (disable retries) is honored rather than treated as unset. Single
|
|
25
|
-
* definition so this distinction can't drift between providers.
|
|
26
|
-
*/
|
|
27
|
-
export declare function resolveRetryConfig(input?: {
|
|
28
|
-
timeout?: number;
|
|
29
|
-
retries?: number;
|
|
30
|
-
}): RetryConfig;
|
|
31
|
-
export declare function retry<T>(options: RetryOptions<T>): Promise<T>;
|
|
32
|
-
/**
|
|
33
|
-
* Combine abort signals into one that aborts as soon as any input aborts.
|
|
34
|
-
* `undefined` inputs are skipped, so a caller can pass an optional caller-signal
|
|
35
|
-
* alongside a required per-attempt one. Returns the sole signal when only one is
|
|
36
|
-
* present (no wrapper), or `undefined` when none are.
|
|
37
|
-
*
|
|
38
|
-
* Prefers the platform `AbortSignal.any`, which cleans up its listeners via weak
|
|
39
|
-
* refs — so merging onto a long-lived caller signal that's reused across many
|
|
40
|
-
* calls can't accumulate listeners. Falls back to a manual controller on older
|
|
41
|
-
* runtimes (< Node 20.3); there the listeners live until a source aborts or is
|
|
42
|
-
* garbage-collected, which is fine for the usual per-request signal.
|
|
43
|
-
*/
|
|
44
|
-
export declare function combineAbortSignals(...signals: Array<AbortSignal | undefined>): AbortSignal | undefined;
|
|
45
|
-
export declare const withTimeoutAndRetry: <T>(operation: (signal: AbortSignal) => Promise<T>, timeoutMs?: number, maxRetries?: number, operationName?: string, isRetriable?: (error: unknown) => boolean) => Promise<T>;
|
|
46
|
-
export interface StreamRetryOptions {
|
|
47
|
-
/** Maximum number of retries after the first attempt. Defaults to 3. */
|
|
48
|
-
maxRetries?: number;
|
|
49
|
-
/** Backoff before the next attempt, in ms. Defaults to capped exponential. */
|
|
50
|
-
delay?: (attempt: number) => number;
|
|
51
|
-
/** Label used in retry logs. */
|
|
52
|
-
operationName?: string;
|
|
53
|
-
/**
|
|
54
|
-
* Predicate deciding whether a pre-first-chunk failure may be retried.
|
|
55
|
-
* When it returns `false` the error propagates immediately. Post-first-chunk
|
|
56
|
-
* failures are never retried regardless (the stream is already committed).
|
|
57
|
-
*/
|
|
58
|
-
isRetriable?: (error: unknown) => boolean;
|
|
59
|
-
/**
|
|
60
|
-
* Max ms to wait for the *first* chunk (time-to-first-token) before treating
|
|
61
|
-
* the attempt as failed. Guards a provider that opens a stream and then
|
|
62
|
-
* stalls. Only the first chunk is bounded — later chunks are unbounded so a
|
|
63
|
-
* long but healthy stream is never cut off. `0`/omitted disables the deadline.
|
|
64
|
-
*/
|
|
65
|
-
firstChunkTimeoutMs?: number;
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* Streaming analog of {@link withTimeoutAndRetry}. Re-runs an async-generator
|
|
69
|
-
* factory as long as it fails *before yielding its first chunk* — an empty
|
|
70
|
-
* completion that throws "No response", an error while establishing the stream,
|
|
71
|
-
* or (with `firstChunkTimeoutMs`) a stall before the first token. Once any chunk
|
|
72
|
-
* has been yielded the stream is committed and further errors propagate, so a
|
|
73
|
-
* retry can never double-emit deltas the consumer has already received.
|
|
74
|
-
*
|
|
75
|
-
* This mirrors the non-streaming path, where the provider throws on an empty
|
|
76
|
-
* completion inside `withTimeoutAndRetry` and is retried on the same model
|
|
77
|
-
* before the caller falls through to backup models.
|
|
78
|
-
*/
|
|
79
|
-
export declare function withStreamRetry<T>(factory: (signal: AbortSignal) => AsyncGenerator<T>, options?: StreamRetryOptions): AsyncGenerator<T>;
|
|
80
|
-
/**
|
|
81
|
-
* Inputs shared by {@link withBackupFallback} and {@link streamWithBackupFallback}.
|
|
82
|
-
*
|
|
83
|
-
* The walkers own only control flow: which model runs next and when the walk
|
|
84
|
-
* gives up. Logging and terminal-error wrapping stay with the caller (via the
|
|
85
|
-
* callbacks and a try/catch around the call), so each provider keeps its exact
|
|
86
|
-
* log prefixes, classification options and error normalization.
|
|
87
|
-
*/
|
|
88
|
-
export interface BackupFallbackBase {
|
|
89
|
-
/**
|
|
90
|
-
* Models to try in order: `[primaryModel, ...backupModels]`. The first
|
|
91
|
-
* successful attempt wins; every failure advances (or stops) the walk.
|
|
92
|
-
*/
|
|
93
|
-
models: string[];
|
|
94
|
-
/**
|
|
95
|
-
* Predicate deciding whether a failure may fall through to the remaining
|
|
96
|
-
* models. Returning `false` stops the walk and rethrows the error — a
|
|
97
|
-
* deterministic failure (auth, invalid request) would hit identically on
|
|
98
|
-
* every backup. Must be a pure classifier: it may be evaluated more than
|
|
99
|
-
* once per error (the failure callback recomputes it to annotate logs).
|
|
100
|
-
*/
|
|
101
|
-
shouldTryBackup: (error: unknown) => boolean;
|
|
102
|
-
/**
|
|
103
|
-
* Called once per failed model, before the backup decision is applied.
|
|
104
|
-
* `attemptNo` is the 1-based position in `models` (`1` = primary) and
|
|
105
|
-
* `total` is `models.length`, so callers can distinguish the primary
|
|
106
|
-
* failure and tell whether any model remains after this one
|
|
107
|
-
* (`attemptNo < total`).
|
|
108
|
-
*/
|
|
109
|
-
onModelFailed?: (model: string, error: unknown, attemptNo: number, total: number) => void;
|
|
110
|
-
/**
|
|
111
|
-
* Called before each *backup* attempt (position > 0). `backupNo` and
|
|
112
|
-
* `backupTotal` count backups only (`1..models.length - 1`), matching the
|
|
113
|
-
* historical "Trying backup model 1/2: …" log shape.
|
|
114
|
-
*/
|
|
115
|
-
onBackupStart?: (model: string, backupNo: number, backupTotal: number) => void;
|
|
116
|
-
/** Called when a backup succeeds, just before its result is returned/yielded. */
|
|
117
|
-
onBackupSucceeded?: (model: string) => void;
|
|
118
|
-
}
|
|
119
|
-
export interface BackupFallbackOptions<T> extends BackupFallbackBase {
|
|
120
|
-
/** Run one model. A rejection marks the model failed; the resolved value wins. */
|
|
121
|
-
attempt: (model: string) => Promise<T>;
|
|
122
|
-
}
|
|
123
|
-
export interface StreamBackupFallbackOptions<T> extends BackupFallbackBase {
|
|
124
|
-
/** Produce one model's chunk stream; consumed lazily via `yield*`. */
|
|
125
|
-
attempt: (model: string) => AsyncGenerator<T>;
|
|
126
|
-
}
|
|
127
|
-
/**
|
|
128
|
-
* Try `models[0]` (the primary); on failure, if `shouldTryBackup` allows,
|
|
129
|
-
* walk the remaining backup models in order. Resolves with the first
|
|
130
|
-
* successful result; otherwise rethrows the last error seen. Errors are
|
|
131
|
-
* rethrown untouched — wrap them at the call site.
|
|
132
|
-
*
|
|
133
|
-
* Streaming twin: {@link streamWithBackupFallback}.
|
|
134
|
-
*/
|
|
135
|
-
export declare function withBackupFallback<T>(opts: BackupFallbackOptions<T>): Promise<T>;
|
|
136
|
-
/**
|
|
137
|
-
* Streaming twin of {@link withBackupFallback}: same walk, consuming each
|
|
138
|
-
* model's chunk stream lazily via `yield*` so chunks flow through unchanged.
|
|
139
|
-
* A stream that errors before completion counts as that model's failure and
|
|
140
|
-
* the walk proceeds exactly as in the non-streaming case.
|
|
141
|
-
*/
|
|
142
|
-
export declare function streamWithBackupFallback<T>(opts: StreamBackupFallbackOptions<T>): AsyncGenerator<T>;
|
|
143
|
-
/**
|
|
144
|
-
* Standard logging observer for the backup-fallback walkers. Holds the
|
|
145
|
-
* per-walk state (primary error message, whether backups were tried) that the
|
|
146
|
-
* terminal "All models failed" log needs, so each provider call site is just
|
|
147
|
-
* `attempt` + `shouldTryBackup` + its own terminal error wrap.
|
|
148
|
-
*
|
|
149
|
-
* ```ts
|
|
150
|
-
* const observer = backupFallbackLogging("[OPENAI]", shouldUseBackupModel);
|
|
151
|
-
* try {
|
|
152
|
-
* return await withBackupFallback({ models, attempt, shouldTryBackup, ...observer.callbacks });
|
|
153
|
-
* } catch (error) {
|
|
154
|
-
* observer.logExhausted(error);
|
|
155
|
-
* throw wrap(error);
|
|
156
|
-
* }
|
|
157
|
-
* ```
|
|
158
|
-
*/
|
|
159
|
-
export declare function backupFallbackLogging(label: string, shouldTryBackup: (error: unknown) => boolean, options?: {
|
|
160
|
-
streaming?: boolean;
|
|
161
|
-
}): {
|
|
162
|
-
callbacks: Pick<BackupFallbackBase, "onModelFailed" | "onBackupStart" | "onBackupSucceeded">;
|
|
163
|
-
logExhausted: (lastError: unknown) => void;
|
|
164
|
-
};
|
|
165
|
-
//# sourceMappingURL=retry.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/utils/retry.ts"],"names":[],"mappings":"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"}
|