@artooi/ag-ui-web-component 0.26.1 → 0.27.0
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 +45 -1
- package/README.md +5 -2
- package/dist/ag-ui-web-component.bundle.js +20 -20
- package/dist/ag-ui-web-component.bundle.js.map +3 -3
- package/dist/core/ag_ui_chat.d.ts +6 -2
- package/dist/core/ag_ui_chat.d.ts.map +1 -1
- package/dist/core/agui_client.d.ts.map +1 -1
- package/dist/core/conversation_store.d.ts +15 -2
- package/dist/core/conversation_store.d.ts.map +1 -1
- package/dist/core/remote_conversation_store.d.ts +6 -0
- package/dist/core/remote_conversation_store.d.ts.map +1 -1
- package/dist/core/utils.d.ts +14 -0
- package/dist/core/utils.d.ts.map +1 -1
- package/dist/index.js +40 -12
- package/dist/index.js.map +3 -3
- package/package.json +1 -1
- package/src/core/ag_ui_chat.ts +14 -5
- package/src/core/agui_client.ts +25 -1
- package/src/core/conversation_store.ts +19 -8
- package/src/core/remote_conversation_store.ts +10 -1
- package/src/core/utils.ts +25 -1
- package/src/version.ts +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,49 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.27.0] — 2026-08-26
|
|
11
|
+
|
|
12
|
+
### Fixed
|
|
13
|
+
|
|
14
|
+
- **A deliberate cancel was reported as an error as well as a cancellation.**
|
|
15
|
+
Pressing Stop (or Escape, or anything else that cancels a run) could put a
|
|
16
|
+
warning bubble carrying the browser's own abort text — Chrome's is
|
|
17
|
+
`BodyStreamBuffer was aborted` — directly above the muted stopped note: one
|
|
18
|
+
deliberate stop, described twice, once as a failure. Cancelling aborts the
|
|
19
|
+
response while its body is being read, and that abort can reach the AG-UI
|
|
20
|
+
subscriber as a `RUN_ERROR` event, which was forwarded to `onError` without
|
|
21
|
+
consulting the cancel flag. Only the promise route ever checked it. It looked
|
|
22
|
+
intermittent because whether the abort produces a run error depends on where
|
|
23
|
+
in the stream it lands. A cancelled run now reports the cancellation alone; a
|
|
24
|
+
run that failed on its own still reports its error.
|
|
25
|
+
|
|
26
|
+
- **Chrome's mid-read abort was classified as a genuine error.**
|
|
27
|
+
`isAbortError` matched only `name === "AbortError"`, and Chrome raises
|
|
28
|
+
`TypeError: BodyStreamBuffer was aborted` when a fetch body is cancelled
|
|
29
|
+
mid-read. The cancel flag hid this in the common case; an abort arriving
|
|
30
|
+
without it — a caller aborting the request by another route — was reported as
|
|
31
|
+
a failure. A `TypeError` whose message names the abort is now read as one.
|
|
32
|
+
|
|
33
|
+
- **The new-chat button deleted the conversation it left.** Pressing the header's
|
|
34
|
+
new-chat button (or the drawer's "New chat", or calling `newChat()`) cleared the
|
|
35
|
+
active thread from the store before minting the next id — the same call the
|
|
36
|
+
drawer's own delete action makes. The conversation vanished from the history
|
|
37
|
+
drawer, and with `data-threads-url` set it was deleted on the server too, since
|
|
38
|
+
the remote store answers `clear` with a `DELETE`. The line predates the history
|
|
39
|
+
drawer: it was written when "new chat" meant wiping the one conversation there
|
|
40
|
+
was, and multi-thread support was layered over it. Starting a conversation now
|
|
41
|
+
leaves the previous one where it was, to return to from the drawer. A thread
|
|
42
|
+
nothing was ever sent in is still dropped — it never appeared in the drawer, so
|
|
43
|
+
keeping it would only strand a record per press.
|
|
44
|
+
|
|
45
|
+
### Added
|
|
46
|
+
|
|
47
|
+
- **`ClientConversationStore.newThread()`** — start a conversation without
|
|
48
|
+
destroying one. Optional, so an existing custom store keeps working: the
|
|
49
|
+
element then mints the id itself and hands it to `setActiveThread`, which loses
|
|
50
|
+
only the store's own record that the thread is new. `SessionStorageStore` and
|
|
51
|
+
`RemoteConversationStore` both implement it.
|
|
52
|
+
|
|
10
53
|
## [0.26.1] — 2026-08-25
|
|
11
54
|
|
|
12
55
|
### Fixed
|
|
@@ -1662,7 +1705,8 @@ hosts that both arrange the page the way it expects.
|
|
|
1662
1705
|
### Notes
|
|
1663
1706
|
- First release — exercising the automated npm OIDC publish pipeline end-to-end.
|
|
1664
1707
|
|
|
1665
|
-
[Unreleased]: https://github.com/Artui/ag-ui-web-component/compare/v0.
|
|
1708
|
+
[Unreleased]: https://github.com/Artui/ag-ui-web-component/compare/v0.27.0...HEAD
|
|
1709
|
+
[0.27.0]: https://github.com/Artui/ag-ui-web-component/compare/v0.26.1...v0.27.0
|
|
1666
1710
|
[0.26.1]: https://github.com/Artui/ag-ui-web-component/compare/v0.26.0...v0.26.1
|
|
1667
1711
|
[0.26.0]: https://github.com/Artui/ag-ui-web-component/compare/v0.25.2...v0.26.0
|
|
1668
1712
|
[0.25.2]: https://github.com/Artui/ag-ui-web-component/compare/v0.25.1...v0.25.2
|
package/README.md
CHANGED
|
@@ -773,8 +773,11 @@ handler), gate `drag_and_drop` with [`confirmPredicate`](#inline-confirmation-x-
|
|
|
773
773
|
The header carries two built-in buttons: a new-chat (✚) button and a collapse (—) toggle. The
|
|
774
774
|
matching JS API:
|
|
775
775
|
|
|
776
|
-
- `newChat()` — clears the transcript
|
|
777
|
-
|
|
776
|
+
- `newChat()` — clears the transcript, drops the in-memory run state, and mints a new thread id.
|
|
777
|
+
The conversation it leaves is **kept**: it stays in the history drawer to return to, and on a
|
|
778
|
+
server-backed store it stays on the server. Deleting one is the drawer row's own action. A chat
|
|
779
|
+
nothing was ever sent in is the exception — it was never listed, so it is dropped rather than
|
|
780
|
+
left behind.
|
|
778
781
|
- `setCollapsed(collapsed)` / `toggleCollapsed()` — collapse or expand the widget. The state is
|
|
779
782
|
reflected as the boolean `collapsed` attribute/property and persisted per-tab in
|
|
780
783
|
`sessionStorage`, so it survives a reload.
|