@lobehub/lobehub 2.0.0-next.204 → 2.0.0-next.205

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/CHANGELOG.md CHANGED
@@ -2,6 +2,31 @@
2
2
 
3
3
  # Changelog
4
4
 
5
+ ## [Version 2.0.0-next.205](https://github.com/lobehub/lobe-chat/compare/v2.0.0-next.204...v2.0.0-next.205)
6
+
7
+ <sup>Released on **2026-01-04**</sup>
8
+
9
+ #### 🐛 Bug Fixes
10
+
11
+ - **gtd**: Fix frozen object mutation in updateTodos.
12
+
13
+ <br/>
14
+
15
+ <details>
16
+ <summary><kbd>Improvements and Fixes</kbd></summary>
17
+
18
+ #### What's fixed
19
+
20
+ - **gtd**: Fix frozen object mutation in updateTodos, closes [#11184](https://github.com/lobehub/lobe-chat/issues/11184) ([4970794](https://github.com/lobehub/lobe-chat/commit/4970794))
21
+
22
+ </details>
23
+
24
+ <div align="right">
25
+
26
+ [![](https://img.shields.io/badge/-BACK_TO_TOP-151515?style=flat-square)](#readme-top)
27
+
28
+ </div>
29
+
5
30
  ## [Version 2.0.0-next.204](https://github.com/lobehub/lobe-chat/compare/v2.0.0-next.203...v2.0.0-next.204)
6
31
 
7
32
  <sup>Released on **2026-01-04**</sup>
package/changelog/v1.json CHANGED
@@ -1,4 +1,9 @@
1
1
  [
2
+ {
3
+ "children": {},
4
+ "date": "2026-01-04",
5
+ "version": "2.0.0-next.205"
6
+ },
2
7
  {
3
8
  "children": {
4
9
  "features": [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lobehub/lobehub",
3
- "version": "2.0.0-next.204",
3
+ "version": "2.0.0-next.205",
4
4
  "description": "LobeHub - an open-source,comprehensive AI Agent framework that supports speech synthesis, multimodal, and extensible Function Call plugin system. Supports one-click free deployment of your private ChatGPT/LLM web application.",
5
5
  "keywords": [
6
6
  "framework",
@@ -151,13 +151,15 @@ class GTDExecutor extends BaseExecutor<typeof GTDApiNameEnum> {
151
151
  }
152
152
  case 'update': {
153
153
  if (op.index !== undefined && op.index >= 0 && op.index < updatedTodos.length) {
154
- const item = updatedTodos[op.index];
154
+ // Create a new object to avoid mutating frozen/immutable objects from store
155
+ const updatedItem = { ...updatedTodos[op.index] };
155
156
  if (op.newText !== undefined) {
156
- item.text = op.newText;
157
+ updatedItem.text = op.newText;
157
158
  }
158
159
  if (op.completed !== undefined) {
159
- item.completed = op.completed;
160
+ updatedItem.completed = op.completed;
160
161
  }
162
+ updatedTodos[op.index] = updatedItem;
161
163
  results.push(`Updated item ${op.index + 1}`);
162
164
  }
163
165
  break;
@@ -171,7 +173,8 @@ class GTDExecutor extends BaseExecutor<typeof GTDApiNameEnum> {
171
173
  }
172
174
  case 'complete': {
173
175
  if (op.index !== undefined && op.index >= 0 && op.index < updatedTodos.length) {
174
- updatedTodos[op.index].completed = true;
176
+ // Create a new object to avoid mutating frozen/immutable objects from store
177
+ updatedTodos[op.index] = { ...updatedTodos[op.index], completed: true };
175
178
  results.push(`Completed: "${updatedTodos[op.index].text}"`);
176
179
  }
177
180
  break;