This is an automated email from the ASF dual-hosted git repository.
github-bot pushed a commit to branch asf-staging
in repository https://gitbox.apache.org/repos/asf/burr.git
The following commit(s) were added to refs/heads/asf-staging by this push:
new d116efab Deploy documentation from
73854d4f9b892afa2fc4edc5ca1c57b24783d99f
d116efab is described below
commit d116efab1839609fa4840a33680b41c4e2b2aec3
Author: GitHub Actions <[email protected]>
AuthorDate: Mon Mar 16 05:13:19 2026 +0000
Deploy documentation from 73854d4f9b892afa2fc4edc5ca1c57b24783d99f
---
content/_sources/concepts/transitions.rst.txt | 4 ++++
content/concepts/transitions/index.html | 4 ++++
content/reference/conditions/index.html | 5 +++++
content/searchindex.js | 2 +-
4 files changed, 14 insertions(+), 1 deletion(-)
diff --git a/content/_sources/concepts/transitions.rst.txt
b/content/_sources/concepts/transitions.rst.txt
index 3ade8ef0..479ee881 100644
--- a/content/_sources/concepts/transitions.rst.txt
+++ b/content/_sources/concepts/transitions.rst.txt
@@ -67,6 +67,8 @@ Conditions have a few APIs, but the most common are the three
convenience functi
("check", "tagged", when(tags__contains="python")), # collection
contains value
("check", "clean", when(status__notin=["banned", "suspended"])), #
not in
("check", "changed", when(status__ne="initial")), # not equal
+ ("check", "missing", when(value__is=None)), # identity check
+ ("check", "present", when(value__isnot=None)), # not-identity check
)
Available operators:
@@ -81,6 +83,8 @@ Available operators:
- ``key__in=[values]`` — value is in the given collection
- ``key__notin=[values]`` — value is not in the given collection
- ``key__contains=value`` — collection/string in state contains the value
+- ``key__is=value`` — identity check (``is``), useful for
``None``/``True``/``False``
+- ``key__isnot=value`` — negated identity check (``is not``)
Multiple keyword arguments are ANDed together. For more complex expressions,
use ``expr()``.
diff --git a/content/concepts/transitions/index.html
b/content/concepts/transitions/index.html
index d8f54d06..3b38e3d7 100644
--- a/content/concepts/transitions/index.html
+++ b/content/concepts/transitions/index.html
@@ -435,6 +435,8 @@ You can think of them as edges in a graph.</p>
<span class="p">(</span><span class="s2">"check"</span><span
class="p">,</span> <span class="s2">"tagged"</span><span
class="p">,</span> <span class="n">when</span><span class="p">(</span><span
class="n">tags__contains</span><span class="o">=</span><span
class="s2">"python"</span><span class="p">)),</span> <span
class="c1"># collection contains value</span>
<span class="p">(</span><span class="s2">"check"</span><span
class="p">,</span> <span class="s2">"clean"</span><span
class="p">,</span> <span class="n">when</span><span class="p">(</span><span
class="n">status__notin</span><span class="o">=</span><span
class="p">[</span><span class="s2">"banned"</span><span
class="p">,</span> <span class="s2">"suspended"</span><span
class="p">])),</span> <span class="c1"># not in</span>
<span class="p">(</span><span class="s2">"check"</span><span
class="p">,</span> <span class="s2">"changed"</span><span
class="p">,</span> <span class="n">when</span><span class="p">(</span><span
class="n">status__ne</span><span class="o">=</span><span
class="s2">"initial"</span><span class="p">)),</span> <span
class="c1"># not equal</span>
+ <span class="p">(</span><span class="s2">"check"</span><span
class="p">,</span> <span class="s2">"missing"</span><span
class="p">,</span> <span class="n">when</span><span class="p">(</span><span
class="n">value__is</span><span class="o">=</span><span
class="kc">None</span><span class="p">)),</span> <span class="c1"># identity
check</span>
+ <span class="p">(</span><span class="s2">"check"</span><span
class="p">,</span> <span class="s2">"present"</span><span
class="p">,</span> <span class="n">when</span><span class="p">(</span><span
class="n">value__isnot</span><span class="o">=</span><span
class="kc">None</span><span class="p">)),</span> <span class="c1">#
not-identity check</span>
<span class="p">)</span>
</pre></div>
</div>
@@ -450,6 +452,8 @@ You can think of them as edges in a graph.</p>
<li><p><code class="docutils literal notranslate"><span
class="pre">key__in=[values]</span></code> — value is in the given
collection</p></li>
<li><p><code class="docutils literal notranslate"><span
class="pre">key__notin=[values]</span></code> — value is not in the given
collection</p></li>
<li><p><code class="docutils literal notranslate"><span
class="pre">key__contains=value</span></code> — collection/string in state
contains the value</p></li>
+<li><p><code class="docutils literal notranslate"><span
class="pre">key__is=value</span></code> — identity check (<code class="docutils
literal notranslate"><span class="pre">is</span></code>), useful for <code
class="docutils literal notranslate"><span class="pre">None</span></code>/<code
class="docutils literal notranslate"><span class="pre">True</span></code>/<code
class="docutils literal notranslate"><span
class="pre">False</span></code></p></li>
+<li><p><code class="docutils literal notranslate"><span
class="pre">key__isnot=value</span></code> — negated identity check (<code
class="docutils literal notranslate"><span class="pre">is</span> <span
class="pre">not</span></code>)</p></li>
</ul>
<p>Multiple keyword arguments are ANDed together. For more complex
expressions, use <code class="docutils literal notranslate"><span
class="pre">expr()</span></code>.</p>
<p>Conditions are evaluated in the order they are specified, and the first one
that evaluates to True will be the transition that is selected
diff --git a/content/reference/conditions/index.html
b/content/reference/conditions/index.html
index e4fe905e..cfa0526d 100644
--- a/content/reference/conditions/index.html
+++ b/content/reference/conditions/index.html
@@ -585,6 +585,11 @@ The result is just a key/value dictionary.</p>
<span class="n">when</span><span class="p">(</span><span
class="n">tags__contains</span><span class="o">=</span><span
class="s2">"python"</span><span class="p">)</span> <span
class="c1"># "python" in state["tags"]</span>
</pre></div>
</div>
+<p>Identity operators:</p>
+<div class="highlight-default notranslate"><div
class="highlight"><pre><span></span><span class="n">when</span><span
class="p">(</span><span class="n">value__is</span><span class="o">=</span><span
class="kc">None</span><span class="p">)</span> <span class="c1">#
state["value"] is None</span>
+<span class="n">when</span><span class="p">(</span><span
class="n">value__isnot</span><span class="o">=</span><span
class="kc">None</span><span class="p">)</span> <span class="c1">#
state["value"] is not None</span>
+</pre></div>
+</div>
<p>Multiple conditions are ANDed together:</p>
<div class="highlight-default notranslate"><div
class="highlight"><pre><span></span><span class="n">when</span><span
class="p">(</span><span class="n">age__gte</span><span class="o">=</span><span
class="mi">18</span><span class="p">,</span> <span class="n">status</span><span
class="o">=</span><span class="s2">"active"</span><span
class="p">)</span> <span class="c1"># age >= 18 AND status ==
"active"</span>
</pre></div>
diff --git a/content/searchindex.js b/content/searchindex.js
index 5c3ea300..1b662cb7 100644
--- a/content/searchindex.js
+++ b/content/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles":{"1. Agent application is modeled as State +
Actions \u2013>
Graph":[[28,"agent-application-is-modeled-as-state-actions-graph"]],"1. Make
your methods async":[[6,"make-your-methods-async"]],"2. Build application
\u2013> built in checkpointing &
tracking":[[28,"build-application-built-in-checkpointing-tracking"]],"2.
Implement the is_async method":[[6,"implement-the-is-async-method"]],"3. Comes
with a UI":[[28,"comes-with-a-ui"]],"3. Use async persisters with [...]
\ No newline at end of file
+Search.setIndex({"alltitles":{"1. Agent application is modeled as State +
Actions \u2013>
Graph":[[28,"agent-application-is-modeled-as-state-actions-graph"]],"1. Make
your methods async":[[6,"make-your-methods-async"]],"2. Build application
\u2013> built in checkpointing &
tracking":[[28,"build-application-built-in-checkpointing-tracking"]],"2.
Implement the is_async method":[[6,"implement-the-is-async-method"]],"3. Comes
with a UI":[[28,"comes-with-a-ui"]],"3. Use async persisters with [...]
\ No newline at end of file