You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by "wu-sheng (via GitHub)" <gi...@apache.org> on 2026/10/18 07:23:04 UTC

[PR] feat(conversation-view): show where a model call's history changed [skywalking-horizon-ui]

wu-sheng opened a new pull request, #202:
URL: https://github.com/apache/skywalking-horizon-ui/pull/202

   ## Problem
   
   The AI Sessionizer now records each model call's message list and compares it with the call before it in its stream
   (apache/skywalking-ai-sessionizer#76, #77). Where a history changed, as when an application trims the history it
   sends, the document holds a `history.change` step just before the call. The renderer drew it as an unknown kind.
   
   The Prompt tab's second mode also compared two request bodies by position. A Claude Code 2.1.302 request that
   continues a provider thread holds only its new messages, so the tab reported every such request as a rewritten
   history, or as "the context was replaced by a summary here: 20 message(s) became 2".
   
   ## Change
   
   - **The card.** `history.change` is a kind of its own: dashed, in `--acv-kind-history`, a hue between the first and
     fourth series colours that no other kind uses. Its line gives the counts and what else changed
     (`view/history.ts`). A count the card does not carry is not shown as zero. A click on the card, in the transcript
     or on the timeline, selects the call it stands before (`ConversationModel.target`), or the card itself when the
     document has no such call. The card takes its call's place in document order, just before it. A comparator that
     only put the card before its call was not transitive with the call's own message at the same record.
   - **"What changed"** (`view/prompt.ts`) says what the call's attributes say: kept, changed, first, not compared, or
     unavailable with the reason.
     - A kept history shows the messages this call added, by place. The body must hold what its manifest lists, and
       only a thread continue takes an offset.
     - A changed history marks each message kept, changed or added, by the same counts the card gives, and lists the
       messages dropped from the call before. With an id twice in a list, or two messages of one digest and no id,
       which earlier message became which is not known, so only the counts are shown. With a thread, the bodies hold
       part of each history, so only the counts are shown too.
     - A first call after an `epoch.boundary` says the context was reset there, "and replaced by a summary" only when
       the boundary has a `summarizes` relation. A call between the two is the framework's own, so it does not hide a
       reset.
     - The tools are not compared when either request continues a provider thread, since such a request sends none.
       The settings leave out `metadata`, `thread` and `diagnostics`.
   - **The prompt store** reads a request's list as the Sessionizer reads it (`PromptStore.listOf`): exactly one of
     `entries`, `base`/`keep`/`add` and `unavailable`, every field of its type, a base that is an earlier request of the
     same form holding what is kept, digests in either case.
   - `deltaOf` and the message-shape comparison only it used are removed.
   - **Strings:** 29 new texts in `strings.ts`, `conversationStrings.ts` and all eight locales; five unused ones removed.
   - **Docs:** the 1.1.0 changelog and the AI Agent Conversations guide.
   
   ## Checked
   
   - The package type check and its 161 unit tests pass. `test/prompt-history.test.ts` runs on three documents the
     Sessionizer built from its scenarios `history-forget`, `history-threads` and `provider-bodies`, with their provider
     files. It covers the card's place, colour, line and click; each mode of "What changed"; the reset text; the marks,
     including ambiguous pairings and a 65,536-message history; and the store's reading of lists. Every guard was proven
     by reverting it and seeing its test fail.
   - `apps/ui` passes `vue-tsc` and its unit tests. The lint run passes, including the i18n, source budget, design
     token, security and docs links checks.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@skywalking.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] feat(conversation-view): show where a model call's history changed [skywalking-horizon-ui]

Posted by "wu-sheng (via GitHub)" <gi...@apache.org>.
wu-sheng merged PR #202:
URL: https://github.com/apache/skywalking-horizon-ui/pull/202


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@skywalking.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org