This is an automated email from the ASF dual-hosted git repository.

ebenizzy pushed a commit to branch burr-0.42.0
in repository https://gitbox.apache.org/repos/asf/burr.git

commit 44719962a7b39ae82de7d1ba7d2b2eebf1317ca3
Author: Elijah ben Izzy <[email protected]>
AuthorDate: Sun Feb 1 20:40:38 2026 -0800

    Replace non-standard license headers in 6 notebooks
    
    Replace "Copyright YEAR Apache Software Foundation" format with the
    Apache-recommended "Licensed to the Apache Software Foundation" format.
    The copyright year format is not standard for ASF projects.
---
 examples/deep-researcher/notebook.ipynb      | 28 +++++------------
 examples/email-assistant/notebook.ipynb      | 16 +---------
 examples/hello-world-counter/notebook.ipynb  | 16 +---------
 examples/multi-modal-chatbot/burr_demo.ipynb | 46 ++++++++++------------------
 examples/multi-modal-chatbot/notebook.ipynb  | 16 +---------
 examples/streaming-fastapi/notebook.ipynb    | 16 +---------
 6 files changed, 27 insertions(+), 111 deletions(-)

diff --git a/examples/deep-researcher/notebook.ipynb 
b/examples/deep-researcher/notebook.ipynb
index 6673870b..6243b2eb 100644
--- a/examples/deep-researcher/notebook.ipynb
+++ b/examples/deep-researcher/notebook.ipynb
@@ -5,21 +5,7 @@
    "cell_type": "code",
    "outputs": [],
    "execution_count": null,
-   "source": [
-    "# Copyright 2026 Apache Software Foundation\n",
-    "#\n",
-    "# Licensed under the Apache License, Version 2.0 (the \"License\");\n",
-    "# you may not use this file except in compliance with the License.\n",
-    "# You may obtain a copy of the License at\n",
-    "#\n",
-    "#     http://www.apache.org/licenses/LICENSE-2.0\n";,
-    "#\n",
-    "# Unless required by applicable law or agreed to in writing, software\n",
-    "# distributed under the License is distributed on an \"AS IS\" BASIS,\n",
-    "# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 
implied.\n",
-    "# See the License for the specific language governing permissions and\n",
-    "# limitations under the License."
-   ],
+   "source": "# Licensed to the Apache Software Foundation (ASF) under one\n# 
or more contributor license agreements.  See the NOTICE file\n# distributed 
with this work for additional information\n# regarding copyright ownership.  
The ASF licenses this file\n# to you under the Apache License, Version 2.0 
(the\n# \"License\"); you may not use this file except in compliance\n# with 
the License.  You may obtain a copy of the License at\n#\n#   
http://www.apache.org/licenses/LICENSE-2.0\n#\n [...]
    "id": "4d47e95ddd66c645"
   },
   {
@@ -114,8 +100,8 @@
       "Requirement already satisfied: referencing>=0.28.4 in 
/home/maggie/.pyenv/versions/3.12.9/lib/python3.12/site-packages (from 
jsonschema>=3.0->altair<6,>=4.0->streamlit->burr[start]) (0.36.2)\n",
       "Requirement already satisfied: rpds-py>=0.7.1 in 
/home/maggie/.pyenv/versions/3.12.9/lib/python3.12/site-packages (from 
jsonschema>=3.0->altair<6,>=4.0->streamlit->burr[start]) (0.24.0)\n",
       "\n",
-      
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m
 A new release of pip is available: 
\u001B[0m\u001B[31;49m24.3.1\u001B[0m\u001B[39;49m -> 
\u001B[0m\u001B[32;49m25.1\u001B[0m\n",
-      
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m
 To update, run: \u001B[0m\u001B[32;49mpip install --upgrade pip\u001B[0m\n",
+      
"\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m
 A new release of pip is available: 
\u001b[0m\u001b[31;49m24.3.1\u001b[0m\u001b[39;49m -> 
\u001b[0m\u001b[32;49m25.1\u001b[0m\n",
+      
"\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m
 To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n",
       "Requirement already satisfied: openai in 
/home/maggie/.pyenv/versions/3.12.9/lib/python3.12/site-packages (1.75.0)\n",
       "Requirement already satisfied: anyio<5,>=3.5.0 in 
/home/maggie/.pyenv/versions/3.12.9/lib/python3.12/site-packages (from openai) 
(4.9.0)\n",
       "Requirement already satisfied: distro<2,>=1.7.0 in 
/home/maggie/.pyenv/versions/3.12.9/lib/python3.12/site-packages (from openai) 
(1.9.0)\n",
@@ -133,8 +119,8 @@
       "Requirement already satisfied: pydantic-core==2.33.1 in 
/home/maggie/.pyenv/versions/3.12.9/lib/python3.12/site-packages (from 
pydantic<3,>=1.9.0->openai) (2.33.1)\n",
       "Requirement already satisfied: typing-inspection>=0.4.0 in 
/home/maggie/.pyenv/versions/3.12.9/lib/python3.12/site-packages (from 
pydantic<3,>=1.9.0->openai) (0.4.0)\n",
       "\n",
-      
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m
 A new release of pip is available: 
\u001B[0m\u001B[31;49m24.3.1\u001B[0m\u001B[39;49m -> 
\u001B[0m\u001B[32;49m25.1\u001B[0m\n",
-      
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m
 To update, run: \u001B[0m\u001B[32;49mpip install --upgrade pip\u001B[0m\n",
+      
"\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m
 A new release of pip is available: 
\u001b[0m\u001b[31;49m24.3.1\u001b[0m\u001b[39;49m -> 
\u001b[0m\u001b[32;49m25.1\u001b[0m\n",
+      
"\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m
 To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n",
       "Requirement already satisfied: tavily-python in 
/home/maggie/.pyenv/versions/3.12.9/lib/python3.12/site-packages (0.5.4)\n",
       "Requirement already satisfied: requests in 
/home/maggie/.pyenv/versions/3.12.9/lib/python3.12/site-packages (from 
tavily-python) (2.32.3)\n",
       "Requirement already satisfied: tiktoken>=0.5.1 in 
/home/maggie/.pyenv/versions/3.12.9/lib/python3.12/site-packages (from 
tavily-python) (0.9.0)\n",
@@ -150,8 +136,8 @@
       "Requirement already satisfied: sniffio>=1.1 in 
/home/maggie/.pyenv/versions/3.12.9/lib/python3.12/site-packages (from 
anyio->httpx->tavily-python) (1.3.1)\n",
       "Requirement already satisfied: typing_extensions>=4.5 in 
/home/maggie/.pyenv/versions/3.12.9/lib/python3.12/site-packages (from 
anyio->httpx->tavily-python) (4.13.2)\n",
       "\n",
-      
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m
 A new release of pip is available: 
\u001B[0m\u001B[31;49m24.3.1\u001B[0m\u001B[39;49m -> 
\u001B[0m\u001B[32;49m25.1\u001B[0m\n",
-      
"\u001B[1m[\u001B[0m\u001B[34;49mnotice\u001B[0m\u001B[1;39;49m]\u001B[0m\u001B[39;49m
 To update, run: \u001B[0m\u001B[32;49mpip install --upgrade pip\u001B[0m\n"
+      
"\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m
 A new release of pip is available: 
\u001b[0m\u001b[31;49m24.3.1\u001b[0m\u001b[39;49m -> 
\u001b[0m\u001b[32;49m25.1\u001b[0m\n",
+      
"\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m
 To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n"
      ]
     }
    ],
diff --git a/examples/email-assistant/notebook.ipynb 
b/examples/email-assistant/notebook.ipynb
index cbe0adfc..b8e423db 100644
--- a/examples/email-assistant/notebook.ipynb
+++ b/examples/email-assistant/notebook.ipynb
@@ -5,21 +5,7 @@
    "cell_type": "code",
    "outputs": [],
    "execution_count": null,
-   "source": [
-    "# Copyright 2026 Apache Software Foundation\n",
-    "#\n",
-    "# Licensed under the Apache License, Version 2.0 (the \"License\");\n",
-    "# you may not use this file except in compliance with the License.\n",
-    "# You may obtain a copy of the License at\n",
-    "#\n",
-    "#     http://www.apache.org/licenses/LICENSE-2.0\n";,
-    "#\n",
-    "# Unless required by applicable law or agreed to in writing, software\n",
-    "# distributed under the License is distributed on an \"AS IS\" BASIS,\n",
-    "# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 
implied.\n",
-    "# See the License for the specific language governing permissions and\n",
-    "# limitations under the License."
-   ],
+   "source": "# Licensed to the Apache Software Foundation (ASF) under one\n# 
or more contributor license agreements.  See the NOTICE file\n# distributed 
with this work for additional information\n# regarding copyright ownership.  
The ASF licenses this file\n# to you under the Apache License, Version 2.0 
(the\n# \"License\"); you may not use this file except in compliance\n# with 
the License.  You may obtain a copy of the License at\n#\n#   
http://www.apache.org/licenses/LICENSE-2.0\n#\n [...]
    "id": "b12d533ee9ffae9"
   },
   {
diff --git a/examples/hello-world-counter/notebook.ipynb 
b/examples/hello-world-counter/notebook.ipynb
index e9296025..2a94846f 100644
--- a/examples/hello-world-counter/notebook.ipynb
+++ b/examples/hello-world-counter/notebook.ipynb
@@ -5,21 +5,7 @@
    "cell_type": "code",
    "outputs": [],
    "execution_count": null,
-   "source": [
-    "# Copyright 2026 Apache Software Foundation\n",
-    "#\n",
-    "# Licensed under the Apache License, Version 2.0 (the \"License\");\n",
-    "# you may not use this file except in compliance with the License.\n",
-    "# You may obtain a copy of the License at\n",
-    "#\n",
-    "#     http://www.apache.org/licenses/LICENSE-2.0\n";,
-    "#\n",
-    "# Unless required by applicable law or agreed to in writing, software\n",
-    "# distributed under the License is distributed on an \"AS IS\" BASIS,\n",
-    "# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 
implied.\n",
-    "# See the License for the specific language governing permissions and\n",
-    "# limitations under the License."
-   ],
+   "source": "# Licensed to the Apache Software Foundation (ASF) under one\n# 
or more contributor license agreements.  See the NOTICE file\n# distributed 
with this work for additional information\n# regarding copyright ownership.  
The ASF licenses this file\n# to you under the Apache License, Version 2.0 
(the\n# \"License\"); you may not use this file except in compliance\n# with 
the License.  You may obtain a copy of the License at\n#\n#   
http://www.apache.org/licenses/LICENSE-2.0\n#\n [...]
    "id": "62688b26eff3080f"
   },
   {
diff --git a/examples/multi-modal-chatbot/burr_demo.ipynb 
b/examples/multi-modal-chatbot/burr_demo.ipynb
index 5af9f21f..5f26a6f5 100644
--- a/examples/multi-modal-chatbot/burr_demo.ipynb
+++ b/examples/multi-modal-chatbot/burr_demo.ipynb
@@ -5,21 +5,7 @@
    "cell_type": "code",
    "outputs": [],
    "execution_count": null,
-   "source": [
-    "# Copyright 2026 Apache Software Foundation\n",
-    "#\n",
-    "# Licensed under the Apache License, Version 2.0 (the \"License\");\n",
-    "# you may not use this file except in compliance with the License.\n",
-    "# You may obtain a copy of the License at\n",
-    "#\n",
-    "#     http://www.apache.org/licenses/LICENSE-2.0\n";,
-    "#\n",
-    "# Unless required by applicable law or agreed to in writing, software\n",
-    "# distributed under the License is distributed on an \"AS IS\" BASIS,\n",
-    "# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 
implied.\n",
-    "# See the License for the specific language governing permissions and\n",
-    "# limitations under the License."
-   ],
+   "source": "# Licensed to the Apache Software Foundation (ASF) under one\n# 
or more contributor license agreements.  See the NOTICE file\n# distributed 
with this work for additional information\n# regarding copyright ownership.  
The ASF licenses this file\n# to you under the Apache License, Version 2.0 
(the\n# \"License\"); you may not use this file except in compliance\n# with 
the License.  You may obtain a copy of the License at\n#\n#   
http://www.apache.org/licenses/LICENSE-2.0\n#\n [...]
    "id": "f19821bfb84682cd"
   },
   {
@@ -720,21 +706,21 @@
      "evalue": "Demo error",
      "output_type": "error",
      "traceback": [
-      
"\u001B[0;31m---------------------------------------------------------------------------\u001B[0m",
-      "\u001B[0;31mValueError\u001B[0m                                
Traceback (most recent call last)",
-      "Cell \u001B[0;32mIn[4], line 5\u001B[0m\n\u001B[1;32m      3\u001B[0m 
\u001B[38;5;28;01mif\u001B[39;00m 
\u001B[38;5;124m\"\u001B[39m\u001B[38;5;124mquit\u001B[39m\u001B[38;5;124m\"\u001B[39m
 \u001B[38;5;241m==\u001B[39m 
user_input\u001B[38;5;241m.\u001B[39mlower():\n\u001B[1;32m      4\u001B[0m     
\u001B[38;5;28;01mbreak\u001B[39;00m\n\u001B[0;32m----> 5\u001B[0m last_action, 
action_result, app_state \u001B[38;5;241m=\u001B[39m 
\u001B[43mapp\u001B[49m\u001B[38;5;241;43m.\u001B[39 [...]
-      "File \u001B[0;32m~/dagworks/burr/burr/telemetry.py:276\u001B[0m, in 
\u001B[0;36mcapture_function_usage.<locals>.wrapped_fn\u001B[0;34m(*args, 
**kwargs)\u001B[0m\n\u001B[1;32m    273\u001B[0m 
\u001B[38;5;129m@functools\u001B[39m\u001B[38;5;241m.\u001B[39mwraps(call_fn)\n\u001B[1;32m
    274\u001B[0m \u001B[38;5;28;01mdef\u001B[39;00m 
\u001B[38;5;21mwrapped_fn\u001B[39m(\u001B[38;5;241m*\u001B[39margs, 
\u001B[38;5;241m*\u001B[39m\u001B[38;5;241m*\u001B[39mkwargs):\n\u001B[1;32m    
27 [...]
-      "File \u001B[0;32m~/dagworks/burr/burr/core/application.py:616\u001B[0m, 
in 
\u001B[0;36m_call_execute_method_pre_post.__call__.<locals>.wrapper_sync\u001B[0;34m(app_self,
 *args, **kwargs)\u001B[0m\n\u001B[1;32m    614\u001B[0m exc 
\u001B[38;5;241m=\u001B[39m \u001B[38;5;28;01mNone\u001B[39;00m\n\u001B[1;32m   
 615\u001B[0m \u001B[38;5;28;01mtry\u001B[39;00m:\n\u001B[0;32m--> 616\u001B[0m 
    \u001B[38;5;28;01mreturn\u001B[39;00m 
\u001B[43mfn\u001B[49m\u001B[43m(\u001B[49m\u001B[43m [...]
-      "File 
\u001B[0;32m~/dagworks/burr/burr/core/application.py:1168\u001B[0m, in 
\u001B[0;36mApplication.run\u001B[0;34m(self, halt_before, halt_after, 
inputs)\u001B[0m\n\u001B[1;32m   1166\u001B[0m 
\u001B[38;5;28;01mwhile\u001B[39;00m 
\u001B[38;5;28;01mTrue\u001B[39;00m:\n\u001B[1;32m   1167\u001B[0m     
\u001B[38;5;28;01mtry\u001B[39;00m:\n\u001B[0;32m-> 1168\u001B[0m         
\u001B[38;5;28;43mnext\u001B[39;49m\u001B[43m(\u001B[49m\u001B[43mgen\u001B[49m\u001B[43m)\u001B[49m\n\u001B[
 [...]
-      "File 
\u001B[0;32m~/dagworks/burr/burr/core/application.py:1111\u001B[0m, in 
\u001B[0;36mApplication.iterate\u001B[0;34m(self, halt_before, halt_after, 
inputs)\u001B[0m\n\u001B[1;32m   1108\u001B[0m prior_action: Optional[Action] 
\u001B[38;5;241m=\u001B[39m \u001B[38;5;28;01mNone\u001B[39;00m\n\u001B[1;32m   
1109\u001B[0m \u001B[38;5;28;01mwhile\u001B[39;00m 
\u001B[38;5;28mself\u001B[39m\u001B[38;5;241m.\u001B[39mhas_next_action():\n\u001B[1;32m
   1110\u001B[0m     \u001B[38;5;66;0 [...]
-      "File \u001B[0;32m~/dagworks/burr/burr/core/application.py:616\u001B[0m, 
in 
\u001B[0;36m_call_execute_method_pre_post.__call__.<locals>.wrapper_sync\u001B[0;34m(app_self,
 *args, **kwargs)\u001B[0m\n\u001B[1;32m    614\u001B[0m exc 
\u001B[38;5;241m=\u001B[39m \u001B[38;5;28;01mNone\u001B[39;00m\n\u001B[1;32m   
 615\u001B[0m \u001B[38;5;28;01mtry\u001B[39;00m:\n\u001B[0;32m--> 616\u001B[0m 
    \u001B[38;5;28;01mreturn\u001B[39;00m 
\u001B[43mfn\u001B[49m\u001B[43m(\u001B[49m\u001B[43m [...]
-      "File \u001B[0;32m~/dagworks/burr/burr/core/application.py:773\u001B[0m, 
in \u001B[0;36mApplication.step\u001B[0;34m(self, 
inputs)\u001B[0m\n\u001B[1;32m    770\u001B[0m \u001B[38;5;66;03m# we need to 
increment the sequence before we start computing\u001B[39;00m\n\u001B[1;32m    
771\u001B[0m \u001B[38;5;66;03m# that way if we're replaying from state, we 
don't get stuck\u001B[39;00m\n\u001B[1;32m    772\u001B[0m 
\u001B[38;5;28mself\u001B[39m\u001B[38;5;241m.\u001B[39m_increment_sequ [...]
-      "File \u001B[0;32m~/dagworks/burr/burr/core/application.py:826\u001B[0m, 
in \u001B[0;36mApplication._step\u001B[0;34m(self, inputs, 
_run_hooks)\u001B[0m\n\u001B[1;32m    824\u001B[0m     exc 
\u001B[38;5;241m=\u001B[39m e\n\u001B[1;32m    825\u001B[0m     
logger\u001B[38;5;241m.\u001B[39mexception(_format_BASE_ERROR_MESSAGE(next_action,
 \u001B[38;5;28mself\u001B[39m\u001B[38;5;241m.\u001B[39m_state, 
inputs))\n\u001B[0;32m--> 826\u001B[0m     \u001B[38;5;28;01mraise\u001B[39;00m 
e\n\ [...]
-      "File \u001B[0;32m~/dagworks/burr/burr/core/application.py:812\u001B[0m, 
in \u001B[0;36mApplication._step\u001B[0;34m(self, inputs, 
_run_hooks)\u001B[0m\n\u001B[1;32m    810\u001B[0m 
\u001B[38;5;28;01mtry\u001B[39;00m:\n\u001B[1;32m    811\u001B[0m     
\u001B[38;5;28;01mif\u001B[39;00m 
next_action\u001B[38;5;241m.\u001B[39msingle_step:\n\u001B[0;32m--> 
812\u001B[0m         result, new_state \u001B[38;5;241m=\u001B[39m 
\u001B[43m_run_single_step_action\u001B[49m\u001B[43m(\u001B[49m [...]
-      "File \u001B[0;32m~/dagworks/burr/burr/core/application.py:252\u001B[0m, 
in \u001B[0;36m_run_single_step_action\u001B[0;34m(action, state, 
inputs)\u001B[0m\n\u001B[1;32m    249\u001B[0m \u001B[38;5;66;03m# TODO -- 
guard all reads/writes with a subset of the state\u001B[39;00m\n\u001B[1;32m    
250\u001B[0m 
action\u001B[38;5;241m.\u001B[39mvalidate_inputs(inputs)\n\u001B[1;32m    
251\u001B[0m result, new_state \u001B[38;5;241m=\u001B[39m 
_adjust_single_step_output(\n\u001B[0;32m--> 2 [...]
-      "File \u001B[0;32m~/dagworks/burr/burr/core/action.py:639\u001B[0m, in 
\u001B[0;36mFunctionBasedAction.run_and_update\u001B[0;34m(self, state, 
**run_kwargs)\u001B[0m\n\u001B[1;32m    638\u001B[0m 
\u001B[38;5;28;01mdef\u001B[39;00m 
\u001B[38;5;21mrun_and_update\u001B[39m(\u001B[38;5;28mself\u001B[39m, state: 
State, \u001B[38;5;241m*\u001B[39m\u001B[38;5;241m*\u001B[39mrun_kwargs) 
\u001B[38;5;241m-\u001B[39m\u001B[38;5;241m>\u001B[39m 
\u001B[38;5;28mtuple\u001B[39m[\u001B[38;5;28mdic [...]
-      "Cell \u001B[0;32mIn[1], line 94\u001B[0m, in 
\u001B[0;36mimage_response\u001B[0;34m(state, model)\u001B[0m\n\u001B[1;32m     
91\u001B[0m 
\u001B[38;5;129m@action\u001B[39m(reads\u001B[38;5;241m=\u001B[39m[\u001B[38;5;124m\"\u001B[39m\u001B[38;5;124mprompt\u001B[39m\u001B[38;5;124m\"\u001B[39m,
 
\u001B[38;5;124m\"\u001B[39m\u001B[38;5;124mchat_history\u001B[39m\u001B[38;5;124m\"\u001B[39m,
 
\u001B[38;5;124m\"\u001B[39m\u001B[38;5;124mmode\u001B[39m\u001B[38;5;124m\"\u001B[39m],
 writes [...]
-      "\u001B[0;31mValueError\u001B[0m: Demo error"
+      
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
+      "\u001b[0;31mValueError\u001b[0m                                
Traceback (most recent call last)",
+      "Cell \u001b[0;32mIn[4], line 5\u001b[0m\n\u001b[1;32m      3\u001b[0m 
\u001b[38;5;28;01mif\u001b[39;00m 
\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mquit\u001b[39m\u001b[38;5;124m\"\u001b[39m
 \u001b[38;5;241m==\u001b[39m 
user_input\u001b[38;5;241m.\u001b[39mlower():\n\u001b[1;32m      4\u001b[0m     
\u001b[38;5;28;01mbreak\u001b[39;00m\n\u001b[0;32m----> 5\u001b[0m last_action, 
action_result, app_state \u001b[38;5;241m=\u001b[39m 
\u001b[43mapp\u001b[49m\u001b[38;5;241;43m.\u001b[39 [...]
+      "File \u001b[0;32m~/dagworks/burr/burr/telemetry.py:276\u001b[0m, in 
\u001b[0;36mcapture_function_usage.<locals>.wrapped_fn\u001b[0;34m(*args, 
**kwargs)\u001b[0m\n\u001b[1;32m    273\u001b[0m 
\u001b[38;5;129m@functools\u001b[39m\u001b[38;5;241m.\u001b[39mwraps(call_fn)\n\u001b[1;32m
    274\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m 
\u001b[38;5;21mwrapped_fn\u001b[39m(\u001b[38;5;241m*\u001b[39margs, 
\u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mkwargs):\n\u001b[1;32m    
27 [...]
+      "File \u001b[0;32m~/dagworks/burr/burr/core/application.py:616\u001b[0m, 
in 
\u001b[0;36m_call_execute_method_pre_post.__call__.<locals>.wrapper_sync\u001b[0;34m(app_self,
 *args, **kwargs)\u001b[0m\n\u001b[1;32m    614\u001b[0m exc 
\u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m\n\u001b[1;32m   
 615\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m--> 616\u001b[0m 
    \u001b[38;5;28;01mreturn\u001b[39;00m 
\u001b[43mfn\u001b[49m\u001b[43m(\u001b[49m\u001b[43m [...]
+      "File 
\u001b[0;32m~/dagworks/burr/burr/core/application.py:1168\u001b[0m, in 
\u001b[0;36mApplication.run\u001b[0;34m(self, halt_before, halt_after, 
inputs)\u001b[0m\n\u001b[1;32m   1166\u001b[0m 
\u001b[38;5;28;01mwhile\u001b[39;00m 
\u001b[38;5;28;01mTrue\u001b[39;00m:\n\u001b[1;32m   1167\u001b[0m     
\u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m-> 1168\u001b[0m         
\u001b[38;5;28;43mnext\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mgen\u001b[49m\u001b[43m)\u001b[49m\n\u001b[
 [...]
+      "File 
\u001b[0;32m~/dagworks/burr/burr/core/application.py:1111\u001b[0m, in 
\u001b[0;36mApplication.iterate\u001b[0;34m(self, halt_before, halt_after, 
inputs)\u001b[0m\n\u001b[1;32m   1108\u001b[0m prior_action: Optional[Action] 
\u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m\n\u001b[1;32m   
1109\u001b[0m \u001b[38;5;28;01mwhile\u001b[39;00m 
\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mhas_next_action():\n\u001b[1;32m
   1110\u001b[0m     \u001b[38;5;66;0 [...]
+      "File \u001b[0;32m~/dagworks/burr/burr/core/application.py:616\u001b[0m, 
in 
\u001b[0;36m_call_execute_method_pre_post.__call__.<locals>.wrapper_sync\u001b[0;34m(app_self,
 *args, **kwargs)\u001b[0m\n\u001b[1;32m    614\u001b[0m exc 
\u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m\n\u001b[1;32m   
 615\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m--> 616\u001b[0m 
    \u001b[38;5;28;01mreturn\u001b[39;00m 
\u001b[43mfn\u001b[49m\u001b[43m(\u001b[49m\u001b[43m [...]
+      "File \u001b[0;32m~/dagworks/burr/burr/core/application.py:773\u001b[0m, 
in \u001b[0;36mApplication.step\u001b[0;34m(self, 
inputs)\u001b[0m\n\u001b[1;32m    770\u001b[0m \u001b[38;5;66;03m# we need to 
increment the sequence before we start computing\u001b[39;00m\n\u001b[1;32m    
771\u001b[0m \u001b[38;5;66;03m# that way if we're replaying from state, we 
don't get stuck\u001b[39;00m\n\u001b[1;32m    772\u001b[0m 
\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_increment_sequ [...]
+      "File \u001b[0;32m~/dagworks/burr/burr/core/application.py:826\u001b[0m, 
in \u001b[0;36mApplication._step\u001b[0;34m(self, inputs, 
_run_hooks)\u001b[0m\n\u001b[1;32m    824\u001b[0m     exc 
\u001b[38;5;241m=\u001b[39m e\n\u001b[1;32m    825\u001b[0m     
logger\u001b[38;5;241m.\u001b[39mexception(_format_BASE_ERROR_MESSAGE(next_action,
 \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_state, 
inputs))\n\u001b[0;32m--> 826\u001b[0m     \u001b[38;5;28;01mraise\u001b[39;00m 
e\n\ [...]
+      "File \u001b[0;32m~/dagworks/burr/burr/core/application.py:812\u001b[0m, 
in \u001b[0;36mApplication._step\u001b[0;34m(self, inputs, 
_run_hooks)\u001b[0m\n\u001b[1;32m    810\u001b[0m 
\u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[1;32m    811\u001b[0m     
\u001b[38;5;28;01mif\u001b[39;00m 
next_action\u001b[38;5;241m.\u001b[39msingle_step:\n\u001b[0;32m--> 
812\u001b[0m         result, new_state \u001b[38;5;241m=\u001b[39m 
\u001b[43m_run_single_step_action\u001b[49m\u001b[43m(\u001b[49m [...]
+      "File \u001b[0;32m~/dagworks/burr/burr/core/application.py:252\u001b[0m, 
in \u001b[0;36m_run_single_step_action\u001b[0;34m(action, state, 
inputs)\u001b[0m\n\u001b[1;32m    249\u001b[0m \u001b[38;5;66;03m# TODO -- 
guard all reads/writes with a subset of the state\u001b[39;00m\n\u001b[1;32m    
250\u001b[0m 
action\u001b[38;5;241m.\u001b[39mvalidate_inputs(inputs)\n\u001b[1;32m    
251\u001b[0m result, new_state \u001b[38;5;241m=\u001b[39m 
_adjust_single_step_output(\n\u001b[0;32m--> 2 [...]
+      "File \u001b[0;32m~/dagworks/burr/burr/core/action.py:639\u001b[0m, in 
\u001b[0;36mFunctionBasedAction.run_and_update\u001b[0;34m(self, state, 
**run_kwargs)\u001b[0m\n\u001b[1;32m    638\u001b[0m 
\u001b[38;5;28;01mdef\u001b[39;00m 
\u001b[38;5;21mrun_and_update\u001b[39m(\u001b[38;5;28mself\u001b[39m, state: 
State, \u001b[38;5;241m*\u001b[39m\u001b[38;5;241m*\u001b[39mrun_kwargs) 
\u001b[38;5;241m-\u001b[39m\u001b[38;5;241m>\u001b[39m 
\u001b[38;5;28mtuple\u001b[39m[\u001b[38;5;28mdic [...]
+      "Cell \u001b[0;32mIn[1], line 94\u001b[0m, in 
\u001b[0;36mimage_response\u001b[0;34m(state, model)\u001b[0m\n\u001b[1;32m     
91\u001b[0m 
\u001b[38;5;129m@action\u001b[39m(reads\u001b[38;5;241m=\u001b[39m[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mprompt\u001b[39m\u001b[38;5;124m\"\u001b[39m,
 
\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mchat_history\u001b[39m\u001b[38;5;124m\"\u001b[39m,
 
\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mmode\u001b[39m\u001b[38;5;124m\"\u001b[39m],
 writes [...]
+      "\u001b[0;31mValueError\u001b[0m: Demo error"
      ]
     }
    ],
diff --git a/examples/multi-modal-chatbot/notebook.ipynb 
b/examples/multi-modal-chatbot/notebook.ipynb
index 53753899..87c0084a 100644
--- a/examples/multi-modal-chatbot/notebook.ipynb
+++ b/examples/multi-modal-chatbot/notebook.ipynb
@@ -5,21 +5,7 @@
    "cell_type": "code",
    "outputs": [],
    "execution_count": null,
-   "source": [
-    "# Copyright 2026 Apache Software Foundation\n",
-    "#\n",
-    "# Licensed under the Apache License, Version 2.0 (the \"License\");\n",
-    "# you may not use this file except in compliance with the License.\n",
-    "# You may obtain a copy of the License at\n",
-    "#\n",
-    "#     http://www.apache.org/licenses/LICENSE-2.0\n";,
-    "#\n",
-    "# Unless required by applicable law or agreed to in writing, software\n",
-    "# distributed under the License is distributed on an \"AS IS\" BASIS,\n",
-    "# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 
implied.\n",
-    "# See the License for the specific language governing permissions and\n",
-    "# limitations under the License."
-   ],
+   "source": "# Licensed to the Apache Software Foundation (ASF) under one\n# 
or more contributor license agreements.  See the NOTICE file\n# distributed 
with this work for additional information\n# regarding copyright ownership.  
The ASF licenses this file\n# to you under the Apache License, Version 2.0 
(the\n# \"License\"); you may not use this file except in compliance\n# with 
the License.  You may obtain a copy of the License at\n#\n#   
http://www.apache.org/licenses/LICENSE-2.0\n#\n [...]
    "id": "d1d5e86fb8bcd92f"
   },
   {
diff --git a/examples/streaming-fastapi/notebook.ipynb 
b/examples/streaming-fastapi/notebook.ipynb
index a4a813ee..fcb411c4 100644
--- a/examples/streaming-fastapi/notebook.ipynb
+++ b/examples/streaming-fastapi/notebook.ipynb
@@ -5,21 +5,7 @@
    "cell_type": "code",
    "outputs": [],
    "execution_count": null,
-   "source": [
-    "# Copyright 2026 Apache Software Foundation\n",
-    "#\n",
-    "# Licensed under the Apache License, Version 2.0 (the \"License\");\n",
-    "# you may not use this file except in compliance with the License.\n",
-    "# You may obtain a copy of the License at\n",
-    "#\n",
-    "#     http://www.apache.org/licenses/LICENSE-2.0\n";,
-    "#\n",
-    "# Unless required by applicable law or agreed to in writing, software\n",
-    "# distributed under the License is distributed on an \"AS IS\" BASIS,\n",
-    "# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 
implied.\n",
-    "# See the License for the specific language governing permissions and\n",
-    "# limitations under the License."
-   ],
+   "source": "# Licensed to the Apache Software Foundation (ASF) under one\n# 
or more contributor license agreements.  See the NOTICE file\n# distributed 
with this work for additional information\n# regarding copyright ownership.  
The ASF licenses this file\n# to you under the Apache License, Version 2.0 
(the\n# \"License\"); you may not use this file except in compliance\n# with 
the License.  You may obtain a copy of the License at\n#\n#   
http://www.apache.org/licenses/LICENSE-2.0\n#\n [...]
    "id": "8b8a0b32aa99226c"
   },
   {

Reply via email to