@kodaris/krubble-app-components 1.0.117 → 1.0.118

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/dist/chatbot.d.ts CHANGED
@@ -346,6 +346,21 @@ export declare class KRChatbot extends LitElement {
346
346
  private _reader;
347
347
  private _decoder;
348
348
  private _buffer;
349
+ /**
350
+ * True once the current turn ended cleanly (a `finished:true` chunk arrived).
351
+ * Distinguishes a real completion from a dropped stream: if the SSE stream
352
+ * closes (`result.done`) while this is still false, the turn is NOT over — the
353
+ * connection dropped (5-min emitter timeout, tab was backgrounded, network
354
+ * blip) — so we reconnect instead of unlocking the composer. Reset per turn.
355
+ */
356
+ private _turnFinishedCleanly;
357
+ /**
358
+ * Consecutive failed reconnect attempts for the current drop. Bounds the retry
359
+ * loop so a genuinely dead turn (server gone) can't spin forever — after the
360
+ * cap we give up and finish the turn. Reset when a reconnect succeeds or a new
361
+ * turn starts.
362
+ */
363
+ private _reconnectAttempts;
349
364
  private _userHasScrolledUp;
350
365
  private _isDragging;
351
366
  private _isResizing;
@@ -910,6 +925,23 @@ export declare class KRChatbot extends LitElement {
910
925
  private _handleDrawerResizeMouseMove;
911
926
  private _handleDrawerResizeMouseUp;
912
927
  private _readStreamChunk;
928
+ /**
929
+ * Reconnect to an in-flight turn after the SSE stream dropped without finishing
930
+ * (5-min emitter timeout, tab backgrounded, network blip). Hits the read-only
931
+ * `/stream/attach/{conversationID}` endpoint, which re-attaches a fresh SSE
932
+ * connection to the still-running server-side turn without starting anything new.
933
+ *
934
+ * - 200 with a body → resume reading; the turn's events keep flowing (events
935
+ * emitted during the gap are not replayed, so the live text may jump forward —
936
+ * the full transcript reconciles from the DB when the turn ends).
937
+ * - 204 → no live turn: it already finished server-side while we were
938
+ * disconnected. Reload the transcript so the final answer appears, then unlock.
939
+ * - failure / retry cap hit → give up and finish so the composer never wedges.
940
+ *
941
+ * The composer stays locked (`_isStreaming` untouched) throughout, so the input
942
+ * never looks ready while the AI is still working.
943
+ */
944
+ private _reconnectStream;
913
945
  /**
914
946
  * The assistant bubble streamed text should append to. Returns the last message
915
947
  * when it's already an assistant bubble; otherwise (the last message is a tool
@@ -1 +1 @@
1
- {"version":3,"file":"chatbot.d.ts","sourceRoot":"","sources":["../src/chatbot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chatbot.d.ts","sourceRoot":"","sources":["../src/chatbot.ts"],"names":[],"mappings":"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"}
package/dist/chatbot.js CHANGED
@@ -153,6 +153,21 @@ let KRChatbot = class KRChatbot extends LitElement {
153
153
  this._reader = null;
154
154
  this._decoder = new TextDecoder();
155
155
  this._buffer = '';
156
+ /**
157
+ * True once the current turn ended cleanly (a `finished:true` chunk arrived).
158
+ * Distinguishes a real completion from a dropped stream: if the SSE stream
159
+ * closes (`result.done`) while this is still false, the turn is NOT over — the
160
+ * connection dropped (5-min emitter timeout, tab was backgrounded, network
161
+ * blip) — so we reconnect instead of unlocking the composer. Reset per turn.
162
+ */
163
+ this._turnFinishedCleanly = false;
164
+ /**
165
+ * Consecutive failed reconnect attempts for the current drop. Bounds the retry
166
+ * loop so a genuinely dead turn (server gone) can't spin forever — after the
167
+ * cap we give up and finish the turn. Reset when a reconnect succeeds or a new
168
+ * turn starts.
169
+ */
170
+ this._reconnectAttempts = 0;
156
171
  this._userHasScrolledUp = false;
157
172
  this._isDragging = false;
158
173
  this._isResizing = false;
@@ -612,6 +627,20 @@ let KRChatbot = class KRChatbot extends LitElement {
612
627
  data,
613
628
  });
614
629
  }
630
+ // Persisted reasoning row — the DB stores the model's thinking as its own
631
+ // row with the text in `content` and type "reasoning". Live, reasoning
632
+ // instead arrives as REASONING_PART deltas accumulated onto an assistant
633
+ // bubble's `reasoning` property, which is the ONLY shape the render shows
634
+ // (via msg.reasoning). Map the DB row into that same shape — an assistant
635
+ // bubble carrying the text in `reasoning` — so reloaded/reconciled
636
+ // reasoning renders identically to live instead of vanishing.
637
+ if (msg.type === 'reasoning') {
638
+ return Promise.resolve({
639
+ type: 'assistant',
640
+ content: '',
641
+ reasoning: msg.content || '',
642
+ });
643
+ }
615
644
  // A persisted approve/deny record — content is {outcome, tools:[...]}.
616
645
  // Keep the type, parse content into `data`; the render reads msg.data.*.
617
646
  if (msg.type === 'action_decision') {
@@ -654,6 +683,16 @@ let KRChatbot = class KRChatbot extends LitElement {
654
683
  if (messages && messages.length) {
655
684
  this.messages = messages;
656
685
  }
686
+ // A turn may still be running server-side for this conversation (the page was
687
+ // reloaded mid-turn, or opened on another device while a turn streams). After
688
+ // the transcript loads, try to attach to that live turn: _reconnectStream hits
689
+ // the read-only attach endpoint — 200 resumes streaming (locks the composer +
690
+ // shows the typing indicator so the user knows the AI is still working), 204
691
+ // means nothing is running (stays idle). Only meaningful with a pinned
692
+ // conversation and the built-in stream (a custom `send` owns its own turns).
693
+ if (this.conversationId && !this._isStreaming) {
694
+ this._reconnectStream();
695
+ }
657
696
  }).catch(() => { });
658
697
  // Fetch the framework config on load (debugTelemetryEnabled, v2ChatEnabled,
659
698
  // registryServer). debugTelemetryEnabled gates the debug affordances and is
@@ -1693,6 +1732,10 @@ let KRChatbot = class KRChatbot extends LitElement {
1693
1732
  content: '',
1694
1733
  }];
1695
1734
  this._isStreaming = true;
1735
+ // Fresh turn: not yet finished, no reconnects used. These gate the drop-vs-done
1736
+ // decision in _readStreamChunk when the stream closes.
1737
+ this._turnFinishedCleanly = false;
1738
+ this._reconnectAttempts = 0;
1696
1739
  // Scroll user's message to the top (Gemini-style). The runway (min-height =
1697
1740
  // viewport) goes on the agent-turn WRAPPER, not an individual message — the
1698
1741
  // whole turn (reasoning, tool lines, text, decision) streams inside that one
@@ -1903,6 +1946,10 @@ let KRChatbot = class KRChatbot extends LitElement {
1903
1946
  const btn = this._messagesEl?.querySelector(`.confirmation__btn[data-decision="${decision}"]`);
1904
1947
  btn?.showLoading();
1905
1948
  this._isStreaming = true;
1949
+ // Fresh turn (confirmation decision runs a model turn too): reset the
1950
+ // drop-vs-done gates used by _readStreamChunk.
1951
+ this._turnFinishedCleanly = false;
1952
+ this._reconnectAttempts = 0;
1906
1953
  this._userHasScrolledUp = false;
1907
1954
  this.send({
1908
1955
  message: '',
@@ -2207,11 +2254,18 @@ let KRChatbot = class KRChatbot extends LitElement {
2207
2254
  }
2208
2255
  this._reader.read().then((result) => {
2209
2256
  if (result.done) {
2210
- // Fallback unlock: the stream closed without a `finished:true` chunk
2211
- // (network drop, server crash, the 5-min emitter timeout). Treat it as
2212
- // the turn ending so a dropped stream never wedges the composer — the
2213
- // server self-heals its turn lock and bounces any premature send.
2214
- this._finishStream();
2257
+ // The stream closed. Two very different cases:
2258
+ // 1. A `finished:true` chunk already arrived (_turnFinishedCleanly) — the
2259
+ // turn is genuinely over; finishing was already handled below. Nothing to do.
2260
+ // 2. No finished chunk yet — the connection DROPPED mid-turn (5-min emitter
2261
+ // timeout, tab backgrounded, network blip) but the server-side turn is
2262
+ // still running. Do NOT unlock the composer (that's the old bug that made
2263
+ // the input look ready while the AI was still working). Reconnect to the
2264
+ // live stream and keep receiving events.
2265
+ if (this._turnFinishedCleanly) {
2266
+ return;
2267
+ }
2268
+ this._reconnectStream();
2215
2269
  return;
2216
2270
  }
2217
2271
  this._buffer = this._buffer + this._decoder.decode(result.value, { stream: true });
@@ -2364,7 +2418,9 @@ let KRChatbot = class KRChatbot extends LitElement {
2364
2418
  }
2365
2419
  if (data.finished) {
2366
2420
  // Primary unlock signal: the turn is over and the server released
2367
- // the turn lock. The SSE stream closes right after this chunk.
2421
+ // the turn lock. The SSE stream closes right after this chunk. Mark
2422
+ // it clean so the imminent `result.done` doesn't trigger a reconnect.
2423
+ this._turnFinishedCleanly = true;
2368
2424
  this._finishStream();
2369
2425
  }
2370
2426
  }
@@ -2376,9 +2432,110 @@ let KRChatbot = class KRChatbot extends LitElement {
2376
2432
  }
2377
2433
  this._readStreamChunk();
2378
2434
  }).catch((err) => {
2379
- if (err.name !== 'AbortError') {
2380
- this._handleStreamError(err.message);
2435
+ if (err.name === 'AbortError') {
2436
+ return;
2437
+ }
2438
+ // A read error mid-turn is a drop, not a completion — reconnect (same as a
2439
+ // clean `done` without a finished chunk) unless the turn already finished.
2440
+ if (!this._turnFinishedCleanly) {
2441
+ this._reconnectStream();
2442
+ return;
2443
+ }
2444
+ this._handleStreamError(err.message);
2445
+ });
2446
+ }
2447
+ /**
2448
+ * Reconnect to an in-flight turn after the SSE stream dropped without finishing
2449
+ * (5-min emitter timeout, tab backgrounded, network blip). Hits the read-only
2450
+ * `/stream/attach/{conversationID}` endpoint, which re-attaches a fresh SSE
2451
+ * connection to the still-running server-side turn without starting anything new.
2452
+ *
2453
+ * - 200 with a body → resume reading; the turn's events keep flowing (events
2454
+ * emitted during the gap are not replayed, so the live text may jump forward —
2455
+ * the full transcript reconciles from the DB when the turn ends).
2456
+ * - 204 → no live turn: it already finished server-side while we were
2457
+ * disconnected. Reload the transcript so the final answer appears, then unlock.
2458
+ * - failure / retry cap hit → give up and finish so the composer never wedges.
2459
+ *
2460
+ * The composer stays locked (`_isStreaming` untouched) throughout, so the input
2461
+ * never looks ready while the AI is still working.
2462
+ */
2463
+ _reconnectStream() {
2464
+ // Without a pinned conversation there's nothing to re-attach to (a custom
2465
+ // `send` owns its own targeting). Fall back to finishing.
2466
+ if (!this.conversationId) {
2467
+ this._finishStream();
2468
+ return;
2469
+ }
2470
+ // Bound the retries so a genuinely dead turn can't loop forever.
2471
+ if (this._reconnectAttempts >= 5) {
2472
+ this._handleStreamError('Lost connection to the assistant. Please reload the conversation.');
2473
+ return;
2474
+ }
2475
+ this._reconnectAttempts = this._reconnectAttempts + 1;
2476
+ KRHttp.fetch({
2477
+ url: `/api/system/integration/aws/bedrock/stream/attach/${this.conversationId}`,
2478
+ method: 'GET',
2479
+ headers: { Accept: 'text/event-stream' },
2480
+ }).then((response) => {
2481
+ // 204 No Content: the turn finished server-side during the gap. Pull the
2482
+ // final transcript from the DB (via the same `load` callback the component
2483
+ // initializes with) so the answer that streamed during the disconnect
2484
+ // appears, then unlock.
2485
+ if (response.status === 204) {
2486
+ this._reconnectAttempts = 0;
2487
+ if (this.load) {
2488
+ this.load().then((messages) => {
2489
+ this.messages = messages;
2490
+ this.requestUpdate();
2491
+ }).catch(() => {
2492
+ // Reload failed — leave the transcript as-is; the user can refresh manually.
2493
+ });
2494
+ }
2495
+ this._finishStream();
2496
+ return;
2497
+ }
2498
+ if (!response.ok || !response.body) {
2499
+ // Transient failure — back off and try again on the same drop.
2500
+ setTimeout(() => this._reconnectStream(), 1000);
2501
+ return;
2502
+ }
2503
+ // Re-attached to the live turn: reset the retry counter and resume reading
2504
+ // into the same buffer/decoder from the fresh stream. Mark streaming so the
2505
+ // composer locks and the typing indicator shows — load-triggered attaches (a
2506
+ // page reloaded mid-turn) start with _isStreaming false, so this is what
2507
+ // surfaces "the AI is still working"; on a mid-session drop it's already true
2508
+ // (a no-op).
2509
+ this._reconnectAttempts = 0;
2510
+ this._isStreaming = true;
2511
+ this._reader = response.body.getReader();
2512
+ this._decoder = new TextDecoder();
2513
+ this._buffer = '';
2514
+ // Close the gap: events the turn emitted between the drop and this re-attach
2515
+ // aren't replayed on the live stream. Every COMPLETED iteration during the
2516
+ // gap was persisted (assistant text, tool_use/tool_result rows), so reload the
2517
+ // transcript from the DB to backfill them, THEN start reading live. Ordering
2518
+ // matters — the reader buffers incoming bytes until _readStreamChunk runs, so
2519
+ // starting live only after the async reload resolves prevents the reload from
2520
+ // clobbering freshly-streamed chunks. Only the current in-flight iteration's
2521
+ // partial text is missing from the reload; it streams live from here.
2522
+ if (this.load) {
2523
+ this.load().then((messages) => {
2524
+ this.messages = messages;
2525
+ this.requestUpdate();
2526
+ this._readStreamChunk();
2527
+ }).catch(() => {
2528
+ // Reload failed — go live anyway; the gap's completed iterations just
2529
+ // won't show until the next full reload, but the turn keeps streaming.
2530
+ this._readStreamChunk();
2531
+ });
2532
+ }
2533
+ else {
2534
+ this._readStreamChunk();
2381
2535
  }
2536
+ }).catch(() => {
2537
+ // Network error reaching the attach endpoint — back off and retry.
2538
+ setTimeout(() => this._reconnectStream(), 1000);
2382
2539
  });
2383
2540
  }
2384
2541
  /**