@ferricstore/ferricstore 0.12.0 → 0.12.2
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 +3 -0
- package/dist/langgraph.cjs +395 -125
- package/dist/langgraph.cjs.map +1 -1
- package/dist/langgraph.d.cts +17 -7
- package/dist/langgraph.d.ts +17 -7
- package/dist/langgraph.js +396 -126
- package/dist/langgraph.js.map +1 -1
- package/dist/openai-agents.cjs +161 -24
- package/dist/openai-agents.cjs.map +1 -1
- package/dist/openai-agents.d.cts +10 -4
- package/dist/openai-agents.d.ts +10 -4
- package/dist/openai-agents.js +161 -24
- package/dist/openai-agents.js.map +1 -1
- package/docs/agent-api/assets/hierarchy.js +1 -0
- package/docs/agent-api/assets/highlight.css +92 -0
- package/docs/agent-api/assets/icons.js +18 -0
- package/docs/agent-api/assets/icons.svg +1 -0
- package/docs/agent-api/assets/main.js +60 -0
- package/docs/agent-api/assets/navigation.js +1 -0
- package/docs/agent-api/assets/search.js +1 -0
- package/docs/agent-api/assets/style.css +1648 -0
- package/docs/agent-api/classes/langgraph.FerricStoreSaver.html +297 -0
- package/docs/agent-api/classes/langgraph.FerricStoreStore.html +298 -0
- package/docs/agent-api/classes/langgraph.LangGraphFlow.html +190 -0
- package/docs/agent-api/classes/langgraph.LangGraphFlowContext.html +158 -0
- package/docs/agent-api/classes/langgraph.LangGraphFlowRun.html +133 -0
- package/docs/agent-api/classes/openai-agents.FerricStoreSession.html +241 -0
- package/docs/agent-api/hierarchy.html +44 -0
- package/docs/agent-api/index.html +142 -0
- package/docs/agent-api/interfaces/langgraph.FerricFlowHandlerContext.html +94 -0
- package/docs/agent-api/interfaces/langgraph.FerricStoreCommandClient.html +77 -0
- package/docs/agent-api/interfaces/langgraph.FerricStoreLockOptions.html +81 -0
- package/docs/agent-api/interfaces/langgraph.FerricStoreSaverOptions.html +106 -0
- package/docs/agent-api/interfaces/langgraph.FerricStoreStoreOptions.html +98 -0
- package/docs/agent-api/interfaces/langgraph.InvokableLangGraph.html +83 -0
- package/docs/agent-api/interfaces/langgraph.LangGraphFlowOptions.html +116 -0
- package/docs/agent-api/interfaces/openai-agents.FerricStoreSessionOptions.html +114 -0
- package/docs/agent-api/interfaces/openai-agents.Session.html +208 -0
- package/docs/agent-api/interfaces/openai-agents.SessionHistoryRewriteAwareSession.html +230 -0
- package/docs/agent-api/interfaces/openai-agents.SessionHistoryTransactionAwareSession.html +237 -0
- package/docs/agent-api/modules/langgraph.html +44 -0
- package/docs/agent-api/modules/openai-agents.html +44 -0
- package/docs/agent-api/modules.html +35 -0
- package/docs/agent-api/types/langgraph.LangGraphChannelVersions.html +33 -0
- package/docs/agent-api/types/langgraph.LangGraphInvocationConfig.html +33 -0
- package/docs/agent-api/types/langgraph.LangGraphOutcomeMapper.html +50 -0
- package/docs/agent-api/types/langgraph.LangGraphPendingWrite.html +33 -0
- package/docs/agent-api/types/openai-agents.AgentInputItem.html +35 -0
- package/docs/agent-frameworks.md +25 -8
- package/docs/api/index.html +4 -1
- package/docs/api/media/agent-frameworks.md +25 -8
- package/package.json +5 -5
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>LangGraphChannelVersions | @ferricstore/ferricstore</title><meta name="description" content="Documentation for @ferricstore/ferricstore"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar">
|
|
2
|
+
<div class="tsd-toolbar-contents container"><a href="../index.html" class="title">@ferricstore/ferricstore</a>
|
|
3
|
+
<div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/>
|
|
4
|
+
<ul role="listbox" id="tsd-search-results"></ul>
|
|
5
|
+
<div id="tsd-search-status" aria-live="polite" aria-atomic="true">
|
|
6
|
+
<div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header>
|
|
7
|
+
<div class="container container-main">
|
|
8
|
+
<div class="col-content">
|
|
9
|
+
<div class="tsd-page-title">
|
|
10
|
+
<ul class="tsd-breadcrumb" aria-label="Breadcrumb">
|
|
11
|
+
<li><a href="../modules/langgraph.html">langgraph</a></li>
|
|
12
|
+
<li><a href="" aria-current="page">LangGraphChannelVersions</a></li></ul>
|
|
13
|
+
<h1>Type Alias LangGraphChannelVersions</h1></div>
|
|
14
|
+
<div class="tsd-signature"><span class="tsd-kind-type-alias">LangGraphChannelVersions</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Record</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">,</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources">
|
|
15
|
+
<ul>
|
|
16
|
+
<li>Defined in <a href="https://github.com/ferricstore/ferricstore-typescript/blob/main/src/langgraph/checkpoint.ts#L26">langgraph/checkpoint.ts:26</a></li></ul></aside></div>
|
|
17
|
+
<div class="col-sidebar">
|
|
18
|
+
<div class="page-menu">
|
|
19
|
+
<div class="tsd-navigation settings">
|
|
20
|
+
<details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>
|
|
21
|
+
<h3>Settings</h3></summary>
|
|
22
|
+
<div class="tsd-accordion-details">
|
|
23
|
+
<div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span>
|
|
24
|
+
<ul id="tsd-filter-options">
|
|
25
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li>
|
|
26
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li>
|
|
27
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div>
|
|
28
|
+
<div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div></div>
|
|
29
|
+
<div class="site-menu">
|
|
30
|
+
<nav class="tsd-navigation"><a href="../modules.html">@ferricstore/ferricstore</a>
|
|
31
|
+
<ul class="tsd-small-nested-navigation" id="tsd-nav-container">
|
|
32
|
+
<li>Loading...</li></ul></nav></div></div></div><footer></footer>
|
|
33
|
+
<div class="overlay"></div></body></html>
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>LangGraphInvocationConfig | @ferricstore/ferricstore</title><meta name="description" content="Documentation for @ferricstore/ferricstore"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar">
|
|
2
|
+
<div class="tsd-toolbar-contents container"><a href="../index.html" class="title">@ferricstore/ferricstore</a>
|
|
3
|
+
<div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/>
|
|
4
|
+
<ul role="listbox" id="tsd-search-results"></ul>
|
|
5
|
+
<div id="tsd-search-status" aria-live="polite" aria-atomic="true">
|
|
6
|
+
<div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header>
|
|
7
|
+
<div class="container container-main">
|
|
8
|
+
<div class="col-content">
|
|
9
|
+
<div class="tsd-page-title">
|
|
10
|
+
<ul class="tsd-breadcrumb" aria-label="Breadcrumb">
|
|
11
|
+
<li><a href="../modules/langgraph.html">langgraph</a></li>
|
|
12
|
+
<li><a href="" aria-current="page">LangGraphInvocationConfig</a></li></ul>
|
|
13
|
+
<h1>Type Alias LangGraphInvocationConfig</h1></div>
|
|
14
|
+
<div class="tsd-signature"><span class="tsd-kind-type-alias">LangGraphInvocationConfig</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">RunnableConfig</span> <span class="tsd-signature-symbol">&</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-kind-property">context</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">unknown</span> <span class="tsd-signature-symbol">}</span> <span class="tsd-signature-symbol">&</span> <span class="tsd-signature-type">Record</span><span class="tsd-signature-symbol"><</span><br/> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">,</span><br/> <span class="tsd-signature-type">unknown</span><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">></span></div><aside class="tsd-sources">
|
|
15
|
+
<ul>
|
|
16
|
+
<li>Defined in <a href="https://github.com/ferricstore/ferricstore-typescript/blob/main/src/langgraph/flow.ts#L8">langgraph/flow.ts:8</a></li></ul></aside></div>
|
|
17
|
+
<div class="col-sidebar">
|
|
18
|
+
<div class="page-menu">
|
|
19
|
+
<div class="tsd-navigation settings">
|
|
20
|
+
<details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>
|
|
21
|
+
<h3>Settings</h3></summary>
|
|
22
|
+
<div class="tsd-accordion-details">
|
|
23
|
+
<div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span>
|
|
24
|
+
<ul id="tsd-filter-options">
|
|
25
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li>
|
|
26
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li>
|
|
27
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div>
|
|
28
|
+
<div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div></div>
|
|
29
|
+
<div class="site-menu">
|
|
30
|
+
<nav class="tsd-navigation"><a href="../modules.html">@ferricstore/ferricstore</a>
|
|
31
|
+
<ul class="tsd-small-nested-navigation" id="tsd-nav-container">
|
|
32
|
+
<li>Loading...</li></ul></nav></div></div></div><footer></footer>
|
|
33
|
+
<div class="overlay"></div></body></html>
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>LangGraphOutcomeMapper | @ferricstore/ferricstore</title><meta name="description" content="Documentation for @ferricstore/ferricstore"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar">
|
|
2
|
+
<div class="tsd-toolbar-contents container"><a href="../index.html" class="title">@ferricstore/ferricstore</a>
|
|
3
|
+
<div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/>
|
|
4
|
+
<ul role="listbox" id="tsd-search-results"></ul>
|
|
5
|
+
<div id="tsd-search-status" aria-live="polite" aria-atomic="true">
|
|
6
|
+
<div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header>
|
|
7
|
+
<div class="container container-main">
|
|
8
|
+
<div class="col-content">
|
|
9
|
+
<div class="tsd-page-title">
|
|
10
|
+
<ul class="tsd-breadcrumb" aria-label="Breadcrumb">
|
|
11
|
+
<li><a href="../modules/langgraph.html">langgraph</a></li>
|
|
12
|
+
<li><a href="" aria-current="page">LangGraphOutcomeMapper</a></li></ul>
|
|
13
|
+
<h1>Type Alias LangGraphOutcomeMapper<Output></h1></div>
|
|
14
|
+
<div class="tsd-signature"><span class="tsd-kind-type-alias">LangGraphOutcomeMapper</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span><br/> <span class="tsd-kind-parameter">run</span><span class="tsd-signature-symbol">:</span> <a href="../classes/langgraph.LangGraphFlowRun.html" class="tsd-signature-type tsd-kind-class">LangGraphFlowRun</a><span class="tsd-signature-symbol"><</span><a class="tsd-signature-type tsd-kind-type-parameter" href="#output">Output</a><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">,</span><br/> <span class="tsd-kind-parameter">flow</span><span class="tsd-signature-symbol">:</span> <a href="../interfaces/langgraph.FerricFlowHandlerContext.html" class="tsd-signature-type tsd-kind-interface">FerricFlowHandlerContext</a><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">)</span> <span class="tsd-signature-symbol">=></span> <span class="tsd-signature-type">Outcome</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">Outcome</span><span class="tsd-signature-symbol">></span></div>
|
|
15
|
+
<section class="tsd-panel">
|
|
16
|
+
<h4>Type Parameters</h4>
|
|
17
|
+
<ul class="tsd-type-parameter-list">
|
|
18
|
+
<li><span id="output"><span class="tsd-kind-type-parameter">Output</span></span></li></ul></section>
|
|
19
|
+
<div class="tsd-type-declaration">
|
|
20
|
+
<h4>Type Declaration</h4>
|
|
21
|
+
<ul class="tsd-parameters">
|
|
22
|
+
<li class="tsd-parameter-signature">
|
|
23
|
+
<ul class="tsd-signatures">
|
|
24
|
+
<li class="tsd-signature" id="__type"><span class="tsd-signature-symbol">(</span><br/> <span class="tsd-kind-parameter">run</span><span class="tsd-signature-symbol">:</span> <a href="../classes/langgraph.LangGraphFlowRun.html" class="tsd-signature-type tsd-kind-class">LangGraphFlowRun</a><span class="tsd-signature-symbol"><</span><a class="tsd-signature-type tsd-kind-type-parameter" href="#output">Output</a><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">,</span><br/> <span class="tsd-kind-parameter">flow</span><span class="tsd-signature-symbol">:</span> <a href="../interfaces/langgraph.FerricFlowHandlerContext.html" class="tsd-signature-type tsd-kind-interface">FerricFlowHandlerContext</a><span class="tsd-signature-symbol">,</span><br/><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Outcome</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">Outcome</span><span class="tsd-signature-symbol">></span></li>
|
|
25
|
+
<li class="tsd-description">
|
|
26
|
+
<div class="tsd-parameters">
|
|
27
|
+
<h4 class="tsd-parameters-title">Parameters</h4>
|
|
28
|
+
<ul class="tsd-parameter-list">
|
|
29
|
+
<li><span><span class="tsd-kind-parameter">run</span>: <a href="../classes/langgraph.LangGraphFlowRun.html" class="tsd-signature-type tsd-kind-class">LangGraphFlowRun</a><span class="tsd-signature-symbol"><</span><a class="tsd-signature-type tsd-kind-type-parameter" href="#output">Output</a><span class="tsd-signature-symbol">></span></span></li>
|
|
30
|
+
<li><span><span class="tsd-kind-parameter">flow</span>: <a href="../interfaces/langgraph.FerricFlowHandlerContext.html" class="tsd-signature-type tsd-kind-interface">FerricFlowHandlerContext</a></span></li></ul></div>
|
|
31
|
+
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Outcome</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">Promise</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">Outcome</span><span class="tsd-signature-symbol">></span></h4></li></ul></li></ul></div><aside class="tsd-sources">
|
|
32
|
+
<ul>
|
|
33
|
+
<li>Defined in <a href="https://github.com/ferricstore/ferricstore-typescript/blob/main/src/langgraph/flow.ts#L68">langgraph/flow.ts:68</a></li></ul></aside></div>
|
|
34
|
+
<div class="col-sidebar">
|
|
35
|
+
<div class="page-menu">
|
|
36
|
+
<div class="tsd-navigation settings">
|
|
37
|
+
<details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>
|
|
38
|
+
<h3>Settings</h3></summary>
|
|
39
|
+
<div class="tsd-accordion-details">
|
|
40
|
+
<div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span>
|
|
41
|
+
<ul id="tsd-filter-options">
|
|
42
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li>
|
|
43
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li>
|
|
44
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div>
|
|
45
|
+
<div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div></div>
|
|
46
|
+
<div class="site-menu">
|
|
47
|
+
<nav class="tsd-navigation"><a href="../modules.html">@ferricstore/ferricstore</a>
|
|
48
|
+
<ul class="tsd-small-nested-navigation" id="tsd-nav-container">
|
|
49
|
+
<li>Loading...</li></ul></nav></div></div></div><footer></footer>
|
|
50
|
+
<div class="overlay"></div></body></html>
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>LangGraphPendingWrite | @ferricstore/ferricstore</title><meta name="description" content="Documentation for @ferricstore/ferricstore"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar">
|
|
2
|
+
<div class="tsd-toolbar-contents container"><a href="../index.html" class="title">@ferricstore/ferricstore</a>
|
|
3
|
+
<div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/>
|
|
4
|
+
<ul role="listbox" id="tsd-search-results"></ul>
|
|
5
|
+
<div id="tsd-search-status" aria-live="polite" aria-atomic="true">
|
|
6
|
+
<div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header>
|
|
7
|
+
<div class="container container-main">
|
|
8
|
+
<div class="col-content">
|
|
9
|
+
<div class="tsd-page-title">
|
|
10
|
+
<ul class="tsd-breadcrumb" aria-label="Breadcrumb">
|
|
11
|
+
<li><a href="../modules/langgraph.html">langgraph</a></li>
|
|
12
|
+
<li><a href="" aria-current="page">LangGraphPendingWrite</a></li></ul>
|
|
13
|
+
<h1>Type Alias LangGraphPendingWrite</h1></div>
|
|
14
|
+
<div class="tsd-signature"><span class="tsd-kind-type-alias">LangGraphPendingWrite</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">[</span>channel<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">,</span> value<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">unknown</span><span class="tsd-signature-symbol">]</span></div><aside class="tsd-sources">
|
|
15
|
+
<ul>
|
|
16
|
+
<li>Defined in <a href="https://github.com/ferricstore/ferricstore-typescript/blob/main/src/langgraph/checkpoint.ts#L25">langgraph/checkpoint.ts:25</a></li></ul></aside></div>
|
|
17
|
+
<div class="col-sidebar">
|
|
18
|
+
<div class="page-menu">
|
|
19
|
+
<div class="tsd-navigation settings">
|
|
20
|
+
<details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>
|
|
21
|
+
<h3>Settings</h3></summary>
|
|
22
|
+
<div class="tsd-accordion-details">
|
|
23
|
+
<div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span>
|
|
24
|
+
<ul id="tsd-filter-options">
|
|
25
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li>
|
|
26
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li>
|
|
27
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div>
|
|
28
|
+
<div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div></div>
|
|
29
|
+
<div class="site-menu">
|
|
30
|
+
<nav class="tsd-navigation"><a href="../modules.html">@ferricstore/ferricstore</a>
|
|
31
|
+
<ul class="tsd-small-nested-navigation" id="tsd-nav-container">
|
|
32
|
+
<li>Loading...</li></ul></nav></div></div></div><footer></footer>
|
|
33
|
+
<div class="overlay"></div></body></html>
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>AgentInputItem | @ferricstore/ferricstore</title><meta name="description" content="Documentation for @ferricstore/ferricstore"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar">
|
|
2
|
+
<div class="tsd-toolbar-contents container"><a href="../index.html" class="title">@ferricstore/ferricstore</a>
|
|
3
|
+
<div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/>
|
|
4
|
+
<ul role="listbox" id="tsd-search-results"></ul>
|
|
5
|
+
<div id="tsd-search-status" aria-live="polite" aria-atomic="true">
|
|
6
|
+
<div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header>
|
|
7
|
+
<div class="container container-main">
|
|
8
|
+
<div class="col-content">
|
|
9
|
+
<div class="tsd-page-title">
|
|
10
|
+
<ul class="tsd-breadcrumb" aria-label="Breadcrumb">
|
|
11
|
+
<li><a href="../modules/openai-agents.html">openai-agents</a></li>
|
|
12
|
+
<li><a href="" aria-current="page">AgentInputItem</a></li></ul>
|
|
13
|
+
<h1>Type Alias AgentInputItem</h1></div>
|
|
14
|
+
<div class="tsd-signature"><span class="tsd-kind-type-alias">AgentInputItem</span><span class="tsd-signature-symbol">:</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">UserMessageItem</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">AssistantMessageItem</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">SystemMessageItem</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">ToolSearchCallItem</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">ToolSearchOutputItem</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">HostedToolCallItem</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">ProgramCallItem</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">ProgramCallResultItem</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">FunctionCallItem</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">ComputerUseCallItem</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">ShellCallItem</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">ApplyPatchCallItem</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">FunctionCallResultItem</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">ComputerCallResultItem</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">ShellCallResultItem</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">ApplyPatchCallResultItem</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">ReasoningItem</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">CompactionItem</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">UnknownItem</span></div>
|
|
15
|
+
<div class="tsd-comment tsd-typography"><p>Agent input</p>
|
|
16
|
+
</div><aside class="tsd-sources">
|
|
17
|
+
<ul>
|
|
18
|
+
<li>Defined in <a href="https://github.com/ferricstore/ferricstore-typescript/blob/main/src/../node_modules/@openai/agents-core/dist/types/aliases.d.ts#L17">../node_modules/@openai/agents-core/dist/types/aliases.d.ts:17</a></li></ul></aside></div>
|
|
19
|
+
<div class="col-sidebar">
|
|
20
|
+
<div class="page-menu">
|
|
21
|
+
<div class="tsd-navigation settings">
|
|
22
|
+
<details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>
|
|
23
|
+
<h3>Settings</h3></summary>
|
|
24
|
+
<div class="tsd-accordion-details">
|
|
25
|
+
<div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span>
|
|
26
|
+
<ul id="tsd-filter-options">
|
|
27
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li>
|
|
28
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li>
|
|
29
|
+
<li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div>
|
|
30
|
+
<div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div></div>
|
|
31
|
+
<div class="site-menu">
|
|
32
|
+
<nav class="tsd-navigation"><a href="../modules.html">@ferricstore/ferricstore</a>
|
|
33
|
+
<ul class="tsd-small-nested-navigation" id="tsd-nav-container">
|
|
34
|
+
<li>Loading...</li></ul></nav></div></div></div><footer></footer>
|
|
35
|
+
<div class="overlay"></div></body></html>
|
package/docs/agent-frameworks.md
CHANGED
|
@@ -106,6 +106,12 @@ outcomes; interrupts can transition to a chosen Flow state or use a custom
|
|
|
106
106
|
outcome mapper. Call `resume(flowContext, value)` from a handler to send a
|
|
107
107
|
LangGraph `Command({ resume: value })`.
|
|
108
108
|
|
|
109
|
+
Static `invokeOptions` and values returned by the `config` callback are merged,
|
|
110
|
+
including their nested `configurable` and `metadata` objects. Dynamic values
|
|
111
|
+
override static values; the bridge always owns `thread_id`, `checkpoint_ns`, and
|
|
112
|
+
the `ferricflow_*` metadata fields. An explicitly supplied runtime context is
|
|
113
|
+
preserved.
|
|
114
|
+
|
|
109
115
|
The graph checkpointer and FerricFlow solve different layers and are intended
|
|
110
116
|
to be used together:
|
|
111
117
|
|
|
@@ -142,13 +148,19 @@ clear, compaction replacement, function-call history rewrites, and atomic
|
|
|
142
148
|
`append_items` / `replace_suffix` transactions. A transaction stores its
|
|
143
149
|
operation ID and history mutation in one atomic record. Repeating the same
|
|
144
150
|
operation is a no-op; reusing its ID for different content or replacing a
|
|
145
|
-
non-matching suffix fails without changing history.
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
151
|
+
non-matching suffix fails without changing history. Versioned transaction
|
|
152
|
+
digests are deterministic across worker locales, while receipts created by the
|
|
153
|
+
original locale-ordered format remain valid during migration. When an existing
|
|
154
|
+
deployment also changes locale, pass its previous locale tags through
|
|
155
|
+
`legacyReceiptLocales` until its receipts have been replayed and upgraded.
|
|
156
|
+
|
|
157
|
+
All session mutations use a renewable FerricStore lock for contention control
|
|
158
|
+
and a native compare-and-swap commit for correctness. Reads see either the old
|
|
159
|
+
or new complete session record, never a partial history, and a writer whose
|
|
160
|
+
lock expires cannot overwrite a newer state. `clearSession()` also clears
|
|
161
|
+
transaction receipts. Session persistence stores conversation history; put the
|
|
162
|
+
overall agent run in FerricFlow when it also needs durable leases, retries,
|
|
163
|
+
timers, signals, or multi-step business state.
|
|
152
164
|
|
|
153
165
|
## Operational options
|
|
154
166
|
|
|
@@ -156,4 +168,9 @@ All three adapters accept `keyPrefix`, `lockTtlMs`, `lockWaitMs`, and
|
|
|
156
168
|
`lockRetryMs`. The saver and store also accept `scanCount`; the saver accepts a
|
|
157
169
|
custom LangGraph serializer. Defaults are suitable for ordinary use. Give
|
|
158
170
|
different applications or environments different prefixes when they share a
|
|
159
|
-
FerricStore deployment.
|
|
171
|
+
FerricStore deployment. `lockRetryMs` must be lower than `lockTtlMs`. Before
|
|
172
|
+
publishing authoritative state, the adapters use FerricStore CAS. LangGraph
|
|
173
|
+
checkpoint deletion advances a thread epoch, and BaseStore deletion writes a
|
|
174
|
+
CAS tombstone; their discovery indexes are append-only and validated on reads.
|
|
175
|
+
These rules make late commands from expired writers harmless even across
|
|
176
|
+
processes.
|
package/docs/api/index.html
CHANGED
|
@@ -26,7 +26,10 @@
|
|
|
26
26
|
<p>Use <code>@ferricstore/ferricstore/langgraph</code> for a LangGraph.js checkpointer,
|
|
27
27
|
long-term <code>BaseStore</code>, and FerricFlow handler bridge. Use
|
|
28
28
|
<code>@ferricstore/ferricstore/openai-agents</code> for an atomic, idempotent OpenAI
|
|
29
|
-
Agents SDK <code>Session</code>. See <a href="media/agent-frameworks.md">docs/agent-frameworks.md</a
|
|
29
|
+
Agents SDK <code>Session</code>. See <a href="media/agent-frameworks.md">docs/agent-frameworks.md</a>.
|
|
30
|
+
The generated
|
|
31
|
+
<a href="https://unpkg.com/@ferricstore/ferricstore/docs/agent-api/modules.html">agent framework API reference</a>
|
|
32
|
+
covers every public adapter class and option.</p>
|
|
30
33
|
<h2 id="compatibility" class="tsd-anchor-link">Compatibility<a href="#compatibility" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24" aria-hidden="true"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2>
|
|
31
34
|
<p>TypeScript SDK <code>0.12.0</code> requires FerricStore server <code>0.11.4</code> or newer. With
|
|
32
35
|
FerricStore 0.11.11 it negotiates compact Stream mode 34 for homogeneous auto-ID
|
|
@@ -106,6 +106,12 @@ outcomes; interrupts can transition to a chosen Flow state or use a custom
|
|
|
106
106
|
outcome mapper. Call `resume(flowContext, value)` from a handler to send a
|
|
107
107
|
LangGraph `Command({ resume: value })`.
|
|
108
108
|
|
|
109
|
+
Static `invokeOptions` and values returned by the `config` callback are merged,
|
|
110
|
+
including their nested `configurable` and `metadata` objects. Dynamic values
|
|
111
|
+
override static values; the bridge always owns `thread_id`, `checkpoint_ns`, and
|
|
112
|
+
the `ferricflow_*` metadata fields. An explicitly supplied runtime context is
|
|
113
|
+
preserved.
|
|
114
|
+
|
|
109
115
|
The graph checkpointer and FerricFlow solve different layers and are intended
|
|
110
116
|
to be used together:
|
|
111
117
|
|
|
@@ -142,13 +148,19 @@ clear, compaction replacement, function-call history rewrites, and atomic
|
|
|
142
148
|
`append_items` / `replace_suffix` transactions. A transaction stores its
|
|
143
149
|
operation ID and history mutation in one atomic record. Repeating the same
|
|
144
150
|
operation is a no-op; reusing its ID for different content or replacing a
|
|
145
|
-
non-matching suffix fails without changing history.
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
151
|
+
non-matching suffix fails without changing history. Versioned transaction
|
|
152
|
+
digests are deterministic across worker locales, while receipts created by the
|
|
153
|
+
original locale-ordered format remain valid during migration. When an existing
|
|
154
|
+
deployment also changes locale, pass its previous locale tags through
|
|
155
|
+
`legacyReceiptLocales` until its receipts have been replayed and upgraded.
|
|
156
|
+
|
|
157
|
+
All session mutations use a renewable FerricStore lock for contention control
|
|
158
|
+
and a native compare-and-swap commit for correctness. Reads see either the old
|
|
159
|
+
or new complete session record, never a partial history, and a writer whose
|
|
160
|
+
lock expires cannot overwrite a newer state. `clearSession()` also clears
|
|
161
|
+
transaction receipts. Session persistence stores conversation history; put the
|
|
162
|
+
overall agent run in FerricFlow when it also needs durable leases, retries,
|
|
163
|
+
timers, signals, or multi-step business state.
|
|
152
164
|
|
|
153
165
|
## Operational options
|
|
154
166
|
|
|
@@ -156,4 +168,9 @@ All three adapters accept `keyPrefix`, `lockTtlMs`, `lockWaitMs`, and
|
|
|
156
168
|
`lockRetryMs`. The saver and store also accept `scanCount`; the saver accepts a
|
|
157
169
|
custom LangGraph serializer. Defaults are suitable for ordinary use. Give
|
|
158
170
|
different applications or environments different prefixes when they share a
|
|
159
|
-
FerricStore deployment.
|
|
171
|
+
FerricStore deployment. `lockRetryMs` must be lower than `lockTtlMs`. Before
|
|
172
|
+
publishing authoritative state, the adapters use FerricStore CAS. LangGraph
|
|
173
|
+
checkpoint deletion advances a thread epoch, and BaseStore deletion writes a
|
|
174
|
+
CAS tombstone; their discovery indexes are append-only and validated on reads.
|
|
175
|
+
These rules make late commands from expired writers harmless even across
|
|
176
|
+
processes.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ferricstore/ferricstore",
|
|
3
|
-
"version": "0.12.
|
|
3
|
+
"version": "0.12.2",
|
|
4
4
|
"description": "TypeScript SDK for FerricStore and FerricFlow",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -83,8 +83,8 @@
|
|
|
83
83
|
"scripts": {
|
|
84
84
|
"build": "tsup src/index.ts src/langgraph.ts src/openai-agents.ts --format esm,cjs --dts --sourcemap --clean --splitting false",
|
|
85
85
|
"check": "npm run typecheck && npm run lint && npm run test && npm run build && npm run test:exports && npm run docs:check",
|
|
86
|
-
"docs": "typedoc",
|
|
87
|
-
"docs:check": "
|
|
86
|
+
"docs": "typedoc --logLevel Warn && typedoc --options typedoc.agent.json --logLevel Warn",
|
|
87
|
+
"docs:check": "npm run docs && node scripts/check-generated-docs.mjs",
|
|
88
88
|
"integration:down": "docker compose down -v",
|
|
89
89
|
"integration:up": "docker compose up -d ferricstore && node scripts/wait-for-ferricstore.mjs",
|
|
90
90
|
"lint": "eslint .",
|
|
@@ -108,11 +108,11 @@
|
|
|
108
108
|
"@langchain/langgraph": "^1.4.12",
|
|
109
109
|
"@openai/agents": "^0.17.0",
|
|
110
110
|
"@types/node": "^22.20.1",
|
|
111
|
-
"eslint": "^10.9.
|
|
111
|
+
"eslint": "^10.9.1",
|
|
112
112
|
"tsup": "^8.5.1",
|
|
113
113
|
"typedoc": "^0.28.20",
|
|
114
114
|
"typescript": "^6.0.3",
|
|
115
|
-
"typescript-eslint": "^8.
|
|
115
|
+
"typescript-eslint": "^8.68.0",
|
|
116
116
|
"vitest": "^4.1.11"
|
|
117
117
|
},
|
|
118
118
|
"peerDependencies": {
|