@signal-tree/angular 15.4.0 → 15.4.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.
Files changed (2) hide show
  1. package/llms.txt +17 -4
  2. package/package.json +2 -2
package/llms.txt CHANGED
@@ -1,6 +1,6 @@
1
1
  # SignalTree
2
2
 
3
- This reference describes the 15.4.0 package version, with explicitly marked
3
+ This reference describes the 15.4.2 package version, with explicitly marked
4
4
  15.3.1 comparisons. Consult the [npm package page](https://www.npmjs.com/package/@signal-tree/kernel?activeTab=versions)
5
5
  for published versions.
6
6
 
@@ -226,9 +226,12 @@ in existing v15. In 15.3.1, automatic refusal before a
226
226
  handle returns records surviving writes as committed, retains eligible undo
227
227
  history, releases consequences, and still throws. Successful automatic rollback
228
228
  reverses recorded writes. Error does not guarantee undo: never blindly retry the
229
- whole operation or use `undo()`/`jumpTo()` for request reconciliation. Removing a
230
- pending-created row after a confirmed edit does not necessarily clear its
231
- rollback dependency. Recoverable pending refusal is a v16 target, not v15 API.
229
+ whole operation or use `undo()`/`jumpTo()` for request reconciliation. Since
230
+ 15.4.2, a pending-created or pending-rekeyed row removed by settled later work
231
+ no longer blocks rollback; a pending-created row confirmed work edited and kept
232
+ still refuses, so removal is not a general recovery strategy. After a rejection,
233
+ `undo()` of a later write can restore the rejected transaction's speculative
234
+ value. Recoverable pending refusal is a v16 target, not v15 API.
232
235
 
233
236
  15.3.1 containment covers deferred write subscribers and transaction turn
234
237
  listeners, not all framework effects. Vue watcher failures differ between
@@ -302,3 +305,13 @@ work, not a FIFO of application values. A tool recording these events owns its
302
305
  bounded retention and must show interruptions, omissions and unsupported sources.
303
306
  Unsubscribe on view teardown and destroy bounded-lifetime trees. See
304
307
  [Runtime observation in 15.4.0](https://github.com/JBorgia/signal-tree/blob/v15.4.0/docs/guides/runtime-observation.md) for contracts and examples.
308
+
309
+ ## Observer failures during undo and rollback (15.4.2)
310
+
311
+ A reactive observer can throw after undo, redo or transaction rollback has
312
+ already applied. SignalTree completes the operation's bookkeeping and rethrows
313
+ the original value; a throw alone does not establish that state was unchanged.
314
+ Reusing that error in a later failure before application does not make the later
315
+ operation successful. Check current state and settlement/history status when
316
+ handling failures. This does not provide atomic recovery for arbitrary user
317
+ callbacks that partially mutate state before throwing.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@signal-tree/angular",
3
- "version": "15.4.0",
3
+ "version": "15.4.2",
4
4
  "description": "Angular realization for SignalTree.",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -25,7 +25,7 @@
25
25
  "llms.txt"
26
26
  ],
27
27
  "dependencies": {
28
- "@signal-tree/kernel": "15.4.0"
28
+ "@signal-tree/kernel": "15.4.2"
29
29
  },
30
30
  "peerDependencies": {
31
31
  "@angular/core": "^20.0.0 || ^21.0.0 || ^22.0.0",