@prettier-ai/dsh-client-ui-trajectory 0.1.2-alpha.3 → 0.1.2-alpha.4
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/README.i18n.yaml +2 -2
- package/README.md +4 -2
- package/README.zh.md +4 -2
- package/lib/client.js +51 -13
- package/package.json +17 -23
- package/lib/invariant.js +0 -25
- package/lib/types/invariant.d.ts +0 -16
package/README.i18n.yaml
CHANGED
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
# side as of the last confirmed-consistent state. Both languages carry equal authority;
|
|
3
3
|
# after editing either side, bring the other along and re-record with:
|
|
4
4
|
# pnpm run verify-translation-pairing --write packages/client/ui-trajectory/README.md
|
|
5
|
-
README.md:
|
|
6
|
-
README.zh.md:
|
|
5
|
+
README.md: d947787c123fca77dc7978456f4cfdc4e99951bf
|
|
6
|
+
README.zh.md: 3b281c6c1e90108d66f050e07a3b08208ed8c802
|
package/README.md
CHANGED
|
@@ -29,7 +29,7 @@ Open the Trajectory tab in the conversation's view ring to inspect agent activit
|
|
|
29
29
|
|
|
30
30
|
### Inspecting records
|
|
31
31
|
|
|
32
|
-
Selection, timeline navigation, folding, search
|
|
32
|
+
Selection, timeline navigation, folding, and search cover the React-visible window. Request numbers and cumulative usage cover the complete resident snapshot. Selecting a record opens a local inspector for token usage, duration, Input, Output, Timing, and durable images. Image URLs use the Conversation-owned per-session cache, so Chat and Trajectory share one authorized read per attachment. A record without text labels its row with the image count. A standalone compaction request appears chronologically in its own `Between turns` section, while a numbered compaction remains inside its owning turn.
|
|
33
33
|
|
|
34
34
|
### The timing overview
|
|
35
35
|
|
|
@@ -47,7 +47,7 @@ The view is a pure projection: Trajectory-owned Definitions assemble business re
|
|
|
47
47
|
|
|
48
48
|
### Virtual rows
|
|
49
49
|
|
|
50
|
-
Long ledgers mount only the visible row window plus a small overscan; request-only separators share the next measurable virtual item, while semantic row keys and ARIA indexes survive prepends. Content-only stream frames preserve virtual row keys and heights, reuse measurements, and do not issue repeated tail-scroll writes. Completed replies retain assembled blocks, timing, and usage in Trajectory target State, while the shared Session window keeps the raw Events.
|
|
50
|
+
Long ledgers initially derive React data from 50 target Nodes ending at the mount-time tail. Later Nodes extend that anchored window without evicting its prefix, and the existing load control reveals earlier resident Nodes before requesting another Session page. Virtualization mounts only the visible row window plus a small overscan; request-only separators share the next measurable virtual item, while semantic row keys and ARIA indexes survive prepends. Content-only stream frames preserve virtual row keys and heights, reuse measurements, and do not issue repeated tail-scroll writes. Completed replies retain assembled blocks, timing, and usage in Trajectory target State, while the shared Session window keeps the raw Events.
|
|
51
51
|
|
|
52
52
|
### Layout
|
|
53
53
|
|
|
@@ -96,3 +96,5 @@ These limits define what the view can show while work is in flight; they are cur
|
|
|
96
96
|
None.
|
|
97
97
|
|
|
98
98
|
</details>
|
|
99
|
+
|
|
100
|
+
**Runtime invariant:** No companion is published. A pure-consumer plugin — it emits no cordis events and owns no mutable cross-plugin state; its view-slot registration is a plain effect whose disposal the slot ledger's own specs and this package's behavior specs observe directly.
|
package/README.zh.md
CHANGED
|
@@ -29,7 +29,7 @@ kind: "package-reference"
|
|
|
29
29
|
|
|
30
30
|
### 检查记录
|
|
31
31
|
|
|
32
|
-
|
|
32
|
+
选择、时间线导航、折叠与搜索只覆盖 React 可见窗口。请求编号与累计用量覆盖完整的驻留 snapshot。选择记录会打开局部检查器,查看 token 用量、耗时、输入、输出、计时与持久图片。图片 URL 使用 Conversation 拥有的逐会话缓存,因此 Chat 与 Trajectory 对每个附件共享一次已授权读取。没有文本的记录会用图片数量标记其行。独立运行的压缩请求会按时间顺序显示在自己的 `Between turns` 区段中,而带编号的压缩仍位于其所属轮次内。
|
|
33
33
|
|
|
34
34
|
### 时间概览
|
|
35
35
|
|
|
@@ -47,7 +47,7 @@ kind: "package-reference"
|
|
|
47
47
|
|
|
48
48
|
### 虚拟行
|
|
49
49
|
|
|
50
|
-
|
|
50
|
+
长记录表最初只从挂载时尾部结束的 50 个 target Node 派生 React 数据。后续 Node 会扩展这个固定起点的窗口而不会逐出其前缀;现有加载控件会先显露更早的驻留 Node,再请求下一个 Session 页面。虚拟化只挂载可见行窗口加少量缓冲;仅含请求的分隔行并入下一个具备可测高度的虚拟项,语义行键与 ARIA 索引在向前补页后保持不变。仅含内容更新的流式帧会保持虚拟行的键与高度、复用测量结果,并且不会重复写入末尾滚动位置。已完成的回复会在 Trajectory target State 中保留组装后的 blocks、计时与用量,共享 Session 窗口则保留原始 Event。
|
|
51
51
|
|
|
52
52
|
### 布局
|
|
53
53
|
|
|
@@ -96,3 +96,5 @@ Trajectory 要求会话壳把 composer 作为浮层置于全高记录表上方
|
|
|
96
96
|
无。
|
|
97
97
|
|
|
98
98
|
</details>
|
|
99
|
+
|
|
100
|
+
**运行时不变式:** 不发布伴生入口。这是纯消费插件,不发出 Cordis 事件,也不持有跨插件可变状态;view-slot effect 的释放由 slot ledger 与包测试观察。
|
package/lib/client.js
CHANGED
|
@@ -3649,7 +3649,7 @@ window.__ModuleLoader__.load({
|
|
|
3649
3649
|
}
|
|
3650
3650
|
//#endregion
|
|
3651
3651
|
//#region \0dsh-css:/home/runner/work/dsh-publisher/dsh-publisher/upstream/packages/client/ui-trajectory/src/client/TrajectoryTable.module.css.mjs
|
|
3652
|
-
const css$3 = ".i0TWxG_split{--dsh-scrollbar-thumb:var(--dsw-alias-scrollbar-bg-l2);--dsh-scrollbar-thumb-hover:var(--dsw-alias-scrollbar-hover-l2);background:var(--dsw-alias-bg-layer-1);flex:1;width:100%;min-height:0;display:flex;position:relative;overflow:hidden;container-type:inline-size}.i0TWxG_tablePane{min-width:0;padding-bottom:var(--dsh-trajectory-bottom-clearance,0px);flex:1;position:relative;overflow:hidden auto;container:i0TWxG_trajectory-table/inline-size}.i0TWxG_historyLoading{z-index:5;pointer-events:none;height:0;position:sticky;top:0;overflow:visible}.i0TWxG_historyLoadingBar{box-sizing:border-box;border-bottom:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);width:100%;height:30px;color:var(--dsw-alias-label-secondary);font:var(--dsw-font-xxs-12);justify-content:center;align-items:center;gap:6px;display:flex}.i0TWxG_historyLoadingSpinner{box-sizing:border-box;border:1.5px solid var(--dsw-alias-border-l2);border-top-color:var(--dsw-alias-state-business-primary);border-radius:50%;width:10px;height:10px;animation:.7s linear infinite i0TWxG_history-loading-spin}.i0TWxG_table tbody .i0TWxG_historyLoadRow td{height:30px;padding:0}.i0TWxG_table tbody .i0TWxG_historyLoadRow+tr[data-turn-start=true] td:before{content:none}.i0TWxG_historyLoadButton{background:var(--dsw-alias-bg-layer-1);width:100%;height:29px;color:var(--dsw-alias-label-secondary);cursor:pointer;font:var(--dsw-font-xxs-12);border:0;justify-content:center;align-items:center;gap:6px;display:flex}.i0TWxG_historyLoadButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.i0TWxG_historyLoadButton:focus-visible{outline:2px solid var(--dsw-alias-state-business-primary);outline-offset:-2px}.i0TWxG_historyLoadButton:disabled{cursor:default}.i0TWxG_visuallyHidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.i0TWxG_table:not([data-scroll-ready=true]){visibility:hidden}@keyframes i0TWxG_history-loading-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.i0TWxG_historyLoadingSpinner{animation:none}}.i0TWxG_table{--trajectory-turn-accent:color-mix(in srgb, var(--dsw-static-blue-500) 22%, var(--dsw-alias-bg-layer-1));border-spacing:0;table-layout:fixed;width:100%;min-width:0;color:var(--dsw-alias-label-primary);background:var(--dsw-alias-bg-layer-1);font:var(--dsw-font-xxs-12)}.i0TWxG_eventColumn{width:122px}.i0TWxG_contentColumn{width:auto}.i0TWxG_table th{z-index:3;box-sizing:border-box;border-bottom:1px solid var(--dsw-alias-border-l2);height:30px;color:var(--dsw-alias-label-tertiary);background:var(--dsw-specific-sidebar-fill);font:var(--dsw-font-xxs-12);text-align:left;text-overflow:ellipsis;user-select:none;white-space:nowrap;padding:0 8px;font-weight:500;position:sticky;top:0;overflow:hidden}.i0TWxG_eventHeader{text-align:right!important;padding-right:4px!important}.i0TWxG_table td{box-sizing:border-box;border-bottom:1px solid var(--dsw-alias-border-l1);text-overflow:ellipsis;white-space:nowrap;height:30px;padding:0 8px;overflow:hidden}.i0TWxG_table tbody .i0TWxG_virtualSpacer{pointer-events:none}.i0TWxG_table tbody .i0TWxG_virtualSpacer td{height:var(--trajectory-virtual-spacer-height);border:0;padding:0}.i0TWxG_table tbody tr:not([data-collapsed-summary]):not([data-virtual-spacer]):not([data-history-load]){cursor:default;transition:background-color .12s var(--ds-ease-in-out), opacity .12s var(--ds-ease-in-out);outline:none}.i0TWxG_table tbody tr[data-timeline-focus=outside]{opacity:.24}.i0TWxG_table tbody tr:not([data-collapsed-summary]):not([data-virtual-spacer]):not([data-history-load]):not([data-selected=true]):hover{background:var(--dsw-alias-interactive-bg-hover)}.i0TWxG_table tbody tr[data-request-only=true]:hover{background:0 0}.i0TWxG_table tbody tr[data-request-only=true] td{border-bottom:0;height:0;padding-top:0;padding-bottom:0}.i0TWxG_table tbody tr[data-terminal-request-boundary=true] td{height:9px}.i0TWxG_table tbody tr[data-request-only=true] .i0TWxG_turnRail{top:-15px;bottom:0}.i0TWxG_table tbody tr:not([data-collapsed-summary]):focus-visible{box-shadow:inset 0 0 0 1px var(--dsw-alias-state-business-primary)}.i0TWxG_table tbody tr[data-selected=true]{background:var(--dsw-alias-interactive-bg-active)}.i0TWxG_requestBoundaryControl{--request-boundary-base-left:12px;z-index:6;top:-8px;left:calc(var(--request-boundary-base-left) + var(--request-boundary-offset,0px));cursor:pointer;background:0 0;border:0;width:16px;height:16px;padding:0;position:absolute}.i0TWxG_requestBoundaryControl:before{background:var(--dsw-alias-label-caption);width:5px;height:5px;box-shadow:0 0 0 2px var(--dsw-alias-bg-layer-1), 0 0 0 3px transparent;content:\"\";transition:background .12s var(--ds-ease-in-out), box-shadow .12s var(--ds-ease-in-out);border-radius:50%;position:absolute;top:5.5px;left:5.5px}.i0TWxG_requestBoundaryControl:after{border:1px solid var(--dsw-alias-border-l1);width:max-content;color:var(--dsw-alias-label-secondary);background:var(--dsw-alias-bg-layer-1);content:attr(data-label);font:9px/12px var(--ds-font-family-code);opacity:0;pointer-events:none;transition:opacity .12s var(--ds-ease-in-out), transform .12s var(--ds-ease-in-out);user-select:none;white-space:nowrap;border-radius:2px;padding:0 4px;position:absolute;top:2px;left:17px;transform:translate(-2px);box-shadow:0 2px 6px #0000001f}.i0TWxG_requestBoundaryControl:hover:before,.i0TWxG_requestBoundaryControl:focus-visible:before{background:var(--dsw-alias-brand-primary-new-colorprimary-new-color)}.i0TWxG_requestBoundaryControlActive:before,.i0TWxG_requestBoundaryControlActive:hover:before,.i0TWxG_requestBoundaryControlActive:focus-visible:before{background:color-mix(in srgb, var(--dsw-alias-brand-primary-new-colorprimary-new-color) 18%, var(--dsw-alias-bg-layer-1));box-shadow:0 0 0 1.5px var(--dsw-alias-brand-primary-new-colorprimary-new-color)}.i0TWxG_requestBoundaryControl[data-request-status=error]:before,.i0TWxG_requestBoundaryControl[data-request-status=error]:hover:before,.i0TWxG_requestBoundaryControl[data-request-status=error]:focus-visible:before{background:var(--dsw-alias-state-error-primary)}.i0TWxG_requestBoundaryControl:hover:after,.i0TWxG_requestBoundaryControl:focus-visible:after{opacity:1;transform:translate(0)}.i0TWxG_requestBoundaryControl:focus-visible{outline:none}.i0TWxG_table tbody tr:has(.i0TWxG_requestBoundaryControl:hover):not([data-selected=true]){background:0 0}.i0TWxG_event{position:relative}.i0TWxG_turnRail,.i0TWxG_selectionRail{background:var(--dsw-alias-brand-primary-new-colorprimary-new-color);pointer-events:none;position:absolute;left:0}.i0TWxG_turnRail{z-index:4;background:var(--trajectory-turn-accent);width:2px;top:-1px;bottom:-1px}.i0TWxG_table tbody tr[data-turn-end=true] .i0TWxG_turnRail{bottom:0}.i0TWxG_selectionRail{z-index:5;width:3px;top:0;bottom:0}.i0TWxG_table tbody tr[data-error=true] .i0TWxG_turnRail{background:color-mix(in srgb, var(--dsw-alias-state-error-primary) 22%, var(--dsw-alias-bg-layer-1))}.i0TWxG_table tbody tr[data-error=true] .i0TWxG_selectionRail{background:var(--dsw-alias-state-error-primary)}.i0TWxG_table tbody tr[data-turn-start=true] td{position:relative;overflow:visible}.i0TWxG_table tbody tr[data-turn-start=true]:not(:first-child) td:before{z-index:1;background:var(--dsw-alias-border-l1);content:\"\";pointer-events:none;height:2px;position:absolute;top:0;left:0;right:0;transform:translateY(-50%)}.i0TWxG_event{padding-left:36px!important;padding-right:4px!important;overflow:visible!important}.i0TWxG_turnLabel{z-index:3;box-sizing:border-box;width:max-content;color:var(--dsw-alias-label-tertiary);background:var(--dsw-alias-bg-module-platform);font:8px/10px var(--ds-font-family-code);font-variant-numeric:tabular-nums;user-select:none;white-space:nowrap;border-radius:0 0 2px;flex:none;align-items:center;padding:1px 5px;display:inline-grid;position:absolute;top:0;left:0}.i0TWxG_turnLabelFull,.i0TWxG_turnLabelCompact{opacity:1;white-space:nowrap;grid-area:1/1;max-width:64px;overflow:hidden}.i0TWxG_turnLabelCompact{opacity:0;max-width:0}.i0TWxG_turnLabelActive{color:color-mix(in srgb, var(--dsw-static-blue-500) 55%, var(--dsw-alias-label-tertiary));background:var(--trajectory-turn-accent)}.i0TWxG_eventInner{justify-content:flex-start;align-items:center;min-width:0;height:100%;display:flex}.i0TWxG_kindSlot{flex:none;justify-content:flex-end;align-items:flex-end;width:76px;display:flex}.i0TWxG_kindSlot [role=tooltip]{border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-2);box-shadow:var(--dsw-shadow-lv2);color:var(--dsw-alias-label-primary)}.i0TWxG_content{color:var(--dsw-alias-label-primary);padding-left:4px!important}.i0TWxG_kindTag{box-sizing:border-box;letter-spacing:.035em;user-select:none;border:1px solid #0000;border-radius:4px;flex:none;align-items:center;height:19px;padding:0 5px;font-size:10px;font-weight:650;line-height:16px;display:inline-flex}.i0TWxG_kindTagIcon{opacity:0;flex:none;justify-content:center;align-items:center;width:0;height:13px;display:inline-flex;overflow:hidden;transform:scale(.8)}.i0TWxG_kindTagLabel{opacity:1;white-space:nowrap;max-width:72px;display:inline-block;overflow:hidden}.i0TWxG_table .i0TWxG_kindSlot .i0TWxG_message{justify-content:center;width:100%}@container i0TWxG_trajectory-table (width<=620px){.i0TWxG_eventColumn{width:50px}.i0TWxG_event{padding-left:28px!important;padding-right:3px!important}.i0TWxG_requestBoundaryControl{--request-boundary-base-left:6px}.i0TWxG_kindSlot{width:19px}.i0TWxG_kindTag,.i0TWxG_table .i0TWxG_kindSlot .i0TWxG_message{justify-content:center;width:19px;padding-left:0;padding-right:0}.i0TWxG_kindTagIcon{opacity:1;width:13px;transform:scale(1)}.i0TWxG_kindTagLabel,.i0TWxG_turnLabelFull{opacity:0;max-width:0}.i0TWxG_turnLabelCompact{opacity:1;max-width:64px}}@media (prefers-reduced-motion:no-preference){.i0TWxG_eventColumn,.i0TWxG_event,.i0TWxG_requestBoundaryControl,.i0TWxG_kindSlot,.i0TWxG_kindTag,.i0TWxG_kindTagIcon,.i0TWxG_kindTagLabel,.i0TWxG_turnLabelFull,.i0TWxG_turnLabelCompact{transition-duration:.18s;transition-timing-function:var(--ds-ease-in-out)}.i0TWxG_eventColumn,.i0TWxG_kindSlot{transition-property:width}.i0TWxG_event{transition-property:padding-right,padding-left}.i0TWxG_requestBoundaryControl{transition-property:left}.i0TWxG_kindTag{transition-property:padding-right,padding-left}.i0TWxG_kindTagIcon{transition-property:width,opacity,transform}.i0TWxG_kindTagLabel,.i0TWxG_turnLabelFull,.i0TWxG_turnLabelCompact{transition-property:max-width,opacity}}.i0TWxG_user{color:var(--dsw-alias-state-business-primary);background:var(--dsw-alias-state-business-tertiary)}.i0TWxG_systemNeutral{color:var(--dsw-alias-label-secondary);background:var(--dsw-alias-bg-module-platform)}.i0TWxG_contextGreen{color:color-mix(in srgb, var(--dsw-alias-state-success-primary) 68%, var(--dsw-alias-label-secondary));background:var(--dsw-alias-state-success-tertiary)}.i0TWxG_compacted{color:var(--dsw-alias-label-secondary);background:var(--dsw-alias-bg-module-platform)}.i0TWxG_compactedSummary{font:var(--dsw-font-xs-13);margin-top:12px;padding:0 0 14px}.i0TWxG_promptDiffSections{flex-direction:column;gap:14px;max-height:100%;padding:10px 14px 14px;display:flex;overflow:auto}.i0TWxG_promptDiffSection{min-width:0}.i0TWxG_promptDiffTitle{color:var(--dsw-alias-label-secondary);font:var(--dsw-font-xs-strong-13);user-select:none;margin:0 0 6px}.i0TWxG_promptDiff{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-bg-layer-1);font:11px/17px var(--ds-font-family-code);white-space:pre;margin:0;overflow:auto}.i0TWxG_promptDiff span{min-width:max-content;padding:0 6px;display:block}.i0TWxG_promptDiffLinemeta{color:var(--dsw-alias-label-caption);background:var(--dsw-alias-bg-module-platform);user-select:none}.i0TWxG_promptDiffLinecontext{color:var(--dsw-alias-label-secondary)}.i0TWxG_promptDiffLineadded{color:color-mix(in srgb, var(--dsw-alias-state-success-primary) 72%, var(--dsw-alias-label-primary));background:var(--dsw-alias-state-success-tertiary)}.i0TWxG_promptDiffLineremoved{color:var(--dsw-alias-state-error-primary);background:color-mix(in srgb, var(--dsw-alias-state-error-primary) 12%, var(--dsw-alias-bg-layer-1))}.i0TWxG_assistantVioletBright{color:color-mix(in srgb, var(--dsw-alias-brand-primary-new-colorprimary-new-color) 60%, var(--dsw-alias-state-error-secondary));background:color-mix(in srgb, color-mix(in srgb, var(--dsw-alias-brand-primary-new-colorprimary-new-color) 55%, var(--dsw-alias-state-error-secondary)) 15%, var(--dsw-alias-bg-layer-1))}.i0TWxG_toolAmber{color:var(--dsw-alias-state-warn-label);background:var(--dsw-alias-state-warn-tertiary)}.i0TWxG_subtoolAmber{color:color-mix(in srgb, var(--dsw-alias-state-warn-label) 62%, var(--dsw-alias-label-tertiary));background:color-mix(in srgb, var(--dsw-alias-state-warn-tertiary) 58%, var(--dsw-alias-bg-layer-1))}.i0TWxG_contentText{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.i0TWxG_toolCallOnly{color:var(--dsw-alias-label-tertiary)}.i0TWxG_table tbody tr[data-collapsed-summary=turn] td,.i0TWxG_table tbody tr[data-collapsed-summary=assistant] td{height:20px}.i0TWxG_table tbody tr[data-collapsed-summary]{cursor:pointer;transition:background-color .12s var(--ds-ease-in-out);outline:none}.i0TWxG_table tbody tr[data-collapsed-summary]:hover{background:var(--dsw-alias-interactive-bg-hover)}.i0TWxG_table tbody tr[data-collapsed-summary]:focus-visible{box-shadow:inset 0 0 0 1px var(--dsw-alias-state-business-primary)}.i0TWxG_collapsedTurnContent{min-width:0;color:var(--dsw-alias-label-secondary);align-items:center;font-size:12px;line-height:16px;display:flex}.i0TWxG_collapsedTurnEllipsis{color:var(--dsw-alias-label-tertiary);user-select:none;flex:none;margin-right:6px;font-weight:600}.i0TWxG_collapsedTurnText{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.i0TWxG_resultPreview{grid-template-columns:clamp(180px, var(--trajectory-tool-request-width,calc(36cqw - 56px)), 480px) minmax(0, 1fr);align-items:center;gap:8px;min-width:0;display:grid}.i0TWxG_resultRequest,.i0TWxG_inlineResultText{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.i0TWxG_toolCallNameTypeface{color:var(--dsw-alias-label-primary);font:400 12px/18px Menlo,Consolas,Liberation Mono,PingFang SC,Microsoft YaHei}.i0TWxG_toolCallPayload{color:var(--dsw-alias-label-secondary);font:400 12px/18px var(--ds-font-family-code);margin-left:7px}.i0TWxG_table tbody tr[data-kind=tool] .i0TWxG_contentText,.i0TWxG_table tbody tr[data-kind=subtool] .i0TWxG_contentText,.i0TWxG_table tbody tr[data-kind=tool] .i0TWxG_resultPreview,.i0TWxG_table tbody tr[data-kind=subtool] .i0TWxG_resultPreview{font-family:var(--ds-font-family-code);font-size:12px}.i0TWxG_table tbody tr[data-kind=subtool] .i0TWxG_content{padding-left:26px}.i0TWxG_inlineResult{min-width:0;color:var(--dsw-alias-label-secondary);align-items:center;display:flex}.i0TWxG_noOutputText{color:var(--dsw-alias-label-caption)}.i0TWxG_arrow{color:var(--dsw-alias-label-caption);flex:none;margin-right:8px}.i0TWxG_error,.i0TWxG_overview dd.i0TWxG_error,.i0TWxG_details .i0TWxG_errorPayload{color:var(--dsw-alias-state-error-primary)}.i0TWxG_details .i0TWxG_errorPayload .i0TWxG_resultBlockText{color:inherit}.i0TWxG_details .i0TWxG_jsonPayload.i0TWxG_errorPayload,.i0TWxG_details .i0TWxG_jsonPreview.i0TWxG_errorPayload{--json-tree-property:var(--dsw-alias-state-error-primary);--json-tree-string:var(--dsw-alias-state-error-primary);--json-tree-number:var(--dsw-alias-state-error-primary);--json-tree-keyword:var(--dsw-alias-state-error-primary);--json-tree-punctuation:var(--dsw-alias-state-error-primary);--json-tree-icon:var(--dsw-alias-state-error-primary)}.i0TWxG_details{border-left:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);flex-direction:column;flex:none;width:clamp(320px,38%,440px);min-width:0;max-width:calc(100% - 280px);min-height:0;display:flex;position:relative}.i0TWxG_detailsResizeHandle{z-index:6;cursor:col-resize;touch-action:none;user-select:none;background:0 0;border:0;width:8px;padding:0;position:absolute;top:0;bottom:0;left:-4px}.i0TWxG_detailsResizeHandle:focus-visible{outline:none}.i0TWxG_detailsHeader{box-sizing:border-box;border-bottom:1px solid var(--dsw-alias-border-l2);flex:none;justify-content:space-between;align-items:center;height:42px;padding:0 8px 0 12px;display:flex}.i0TWxG_detailsTitle{min-width:0;color:var(--dsw-alias-label-primary);align-items:center;gap:8px;display:flex}.i0TWxG_requestDetailsDot{background:var(--dsw-alias-label-secondary);border-radius:50%;flex:none;width:5px;height:5px}.i0TWxG_requestDetailsName{font:500 12px/16px var(--ds-font-family-code);flex:none}.i0TWxG_detailsLocation{min-width:0;color:var(--dsw-alias-label-tertiary);font:11px/16px var(--ds-font-family-code);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.i0TWxG_close{width:28px;height:28px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;justify-content:center;align-items:center;padding:0;font-size:18px;line-height:18px;display:inline-flex}.i0TWxG_close:hover{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-interactive-bg-hover)}.i0TWxG_detailTabs{box-sizing:border-box;border-bottom:1px solid var(--dsw-alias-border-l2);overscroll-behavior-x:contain;scrollbar-width:none;white-space:nowrap;flex:none;gap:1px;width:100%;min-width:0;max-width:100%;height:34px;padding:0 8px;display:flex;overflow:auto hidden}.i0TWxG_detailTabs::-webkit-scrollbar{display:none}.i0TWxG_detailTab{color:var(--dsw-alias-label-tertiary);cursor:pointer;font:var(--dsw-font-xs-13);background:0 0;border:0;flex:none;padding:0 9px;position:relative}.i0TWxG_detailTab:hover{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-interactive-bg-hover)}.i0TWxG_detailTabActive{color:var(--dsw-alias-state-business-primary)}.i0TWxG_detailTabActive:after{background:var(--dsw-alias-state-business-primary);content:\"\";border-radius:1px 1px 0 0;height:2px;position:absolute;bottom:0;left:9px;right:9px}.i0TWxG_close:focus-visible,.i0TWxG_detailTab:focus-visible{outline:1px solid var(--dsw-alias-state-business-primary);outline-offset:-1px}.i0TWxG_detailBody{min-height:0;padding-bottom:var(--dsh-trajectory-bottom-clearance,0px);scrollbar-gutter:stable;flex:1;overflow:hidden auto}.i0TWxG_detailBodySummary{box-sizing:border-box;padding-bottom:calc(12px + var(--dsh-trajectory-bottom-clearance,0px));flex-direction:column;display:flex;overflow:hidden}.i0TWxG_detailBodySummary>.i0TWxG_overview{overscroll-behavior:contain;flex:0 auto;min-height:0;overflow:auto}.i0TWxG_detailBodySummary>.i0TWxG_compactedSummary{flex:1;min-height:0;overflow:auto}.i0TWxG_summaryScrollRegion{--dsh-scrollbar-thumb:transparent;--dsh-scrollbar-thumb-hover:transparent}.i0TWxG_summaryScrollRegion:hover,.i0TWxG_summaryScrollRegion:focus-within{--dsh-scrollbar-thumb:var(--dsw-alias-scrollbar-bg-l2);--dsh-scrollbar-thumb-hover:var(--dsw-alias-scrollbar-hover-l2)}.i0TWxG_compactedSummary .i0TWxG_markdownPayload{padding-right:18px}.i0TWxG_overview{font:var(--dsw-font-xs-13);margin:0;padding:8px 0}.i0TWxG_overviewParentLinks{gap:14px;display:flex}.i0TWxG_overviewHierarchyNavLink{all:unset;color:var(--dsw-alias-label-secondary);cursor:pointer;font:inherit;opacity:1;align-items:center;gap:1px;display:inline-flex}.i0TWxG_overviewHierarchyNavLink:hover{color:var(--dsw-alias-label-primary)}.i0TWxG_overviewHierarchyJumpIconTight{color:var(--dsw-alias-label-caption);flex:none}.i0TWxG_overviewHierarchyNavLink:hover .i0TWxG_overviewHierarchyJumpIconTight,.i0TWxG_overviewHierarchyNavLink:focus-visible .i0TWxG_overviewHierarchyJumpIconTight{color:var(--dsw-alias-label-primary)}.i0TWxG_overviewHierarchyNavLink:focus-visible{color:var(--dsw-alias-label-primary);outline:1px solid var(--dsw-alias-state-business-primary);outline-offset:2px}.i0TWxG_overview>div{grid-template-columns:94px minmax(0,1fr);align-items:center;min-height:22px;padding:0 14px;display:grid}.i0TWxG_overview>.i0TWxG_requestTokenDetail dt{padding-left:12px}.i0TWxG_usagePanel{padding:4px 0 10px}.i0TWxG_usageGroup+.i0TWxG_usageGroup{margin-top:8px}.i0TWxG_usageHeading{color:var(--dsw-alias-label-secondary);font:var(--dsw-font-xs-strong-13);user-select:none;margin:0;padding:4px 14px 1px}.i0TWxG_usageGroup .i0TWxG_overview{padding:0}.i0TWxG_overview dt{color:var(--dsw-alias-label-tertiary)}.i0TWxG_overview dd{min-width:0;color:var(--dsw-alias-label-primary);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.i0TWxG_timestampToggle{all:unset;color:inherit;cursor:pointer;font:inherit;user-select:text}.i0TWxG_timestampToggle:focus-visible{outline:1px solid var(--dsw-alias-state-business-primary);outline-offset:2px}.i0TWxG_overviewSections{border-top:0;flex-direction:column;flex:1;min-height:min-content;display:flex;overflow:hidden}.i0TWxG_overviewSection{flex-direction:column;flex:1 1 0;min-height:28px;max-height:max-content;display:flex;overflow:hidden}.i0TWxG_overviewSection+.i0TWxG_overviewSection{padding-top:8px}.i0TWxG_overviewHeading{box-sizing:border-box;width:100%;height:28px;color:var(--dsw-alias-label-secondary);background:var(--dsw-alias-bg-layer-1);font:var(--dsw-font-xs-strong-13);user-select:none;flex:none;align-items:flex-end;margin:0;padding:0 0 3px 14px;display:flex}.i0TWxG_overviewTitle{width:max-content;height:auto;color:inherit;cursor:pointer;font:inherit;user-select:none;background:0 0;border:0;flex:none;align-items:center;gap:3px;padding:0;line-height:1;display:inline-flex}.i0TWxG_overviewTitleIcon{color:var(--dsw-alias-label-caption);flex:none}.i0TWxG_overviewTitle:hover .i0TWxG_overviewTitleIcon{color:var(--dsw-alias-label-primary)}.i0TWxG_overviewTitle:focus-visible{outline:1px solid var(--dsw-alias-state-business-primary);outline-offset:2px}.i0TWxG_overviewTitle:focus-visible .i0TWxG_overviewTitleIcon{color:var(--dsw-alias-state-business-primary)}.i0TWxG_overviewPreview{overscroll-behavior:contain;background:var(--dsw-alias-bg-layer-1);flex:1;min-height:0;overflow:auto}.i0TWxG_overviewPreview>:last-child{margin-bottom:0;padding-bottom:0}.i0TWxG_overviewPreview .i0TWxG_jsonPreview>:first-child,.i0TWxG_overviewPreview .i0TWxG_schemaTree>:first-child{padding-bottom:0}.i0TWxG_overviewPreview .i0TWxG_schemaTree{margin-bottom:0}.i0TWxG_overviewPreview .i0TWxG_overview{padding:2px 0 0}.i0TWxG_overviewPreview .i0TWxG_overview>div{min-height:22px}.i0TWxG_markdownPreview,.i0TWxG_markdownPayload{color:var(--dsw-alias-label-primary)}.i0TWxG_markdownPreview>div,.i0TWxG_markdownPayload>div{font:var(--dsw-font-xs-13);gap:8px}.i0TWxG_markdownPreview>div h1,.i0TWxG_markdownPayload>div h1{font:600 16px/22px var(--dsw-font-family)}.i0TWxG_markdownPreview>div h2,.i0TWxG_markdownPayload>div h2{font:600 15px/22px var(--dsw-font-family)}.i0TWxG_markdownPreview>div :where(h3,h4,h5,h6),.i0TWxG_markdownPayload>div :where(h3,h4,h5,h6){font:600 14px/20px var(--dsw-font-family)}.i0TWxG_markdownPreview>div :not(pre)>code,.i0TWxG_markdownPayload>div :not(pre)>code{font:12px/18px var(--ds-font-family-code)}.i0TWxG_markdownPreview>div table,.i0TWxG_markdownPayload>div table{font:var(--dsw-font-xs-13)}.i0TWxG_markdownPreview>div>:first-child{margin-top:0}.i0TWxG_markdownPreview>div>:last-child{margin-bottom:0}.i0TWxG_markdownPreview>div :where(h1,h2,h3){margin:12px 0 6px}.i0TWxG_markdownPreview>div :where(h4,h5,h6){margin:10px 0 5px}.i0TWxG_markdownPreview>div :where(p,ul,ol){margin:8px 0}.i0TWxG_markdownPreview>div li:not(:first-child){margin-top:3px}.i0TWxG_markdownPreview>div blockquote{margin-top:8px}.i0TWxG_markdownPreview>div hr{margin:14px 0}.i0TWxG_markdownPreview>div>.md-code-block{margin:10px 0}.i0TWxG_assistantContent .i0TWxG_markdownPayload,.i0TWxG_assistantContent .i0TWxG_payload{min-height:0}.i0TWxG_thinkingQuote{border-left:2px solid var(--dsw-alias-markdown-citation);color:var(--dsw-alias-label-secondary);background:0 0;margin:6px 14px 0 12px;padding-left:6px}.i0TWxG_thinkingQuoteOnlyPreview{margin-bottom:8px}.i0TWxG_detailBody>.i0TWxG_assistantContentRendered .i0TWxG_thinkingQuote{margin-top:14px}.i0TWxG_thinkingToggle{width:max-content;height:18px;color:var(--dsw-alias-label-tertiary);cursor:pointer;font:600 12px/18px var(--dsw-font-family);user-select:none;background:0 0;border:0;align-items:center;gap:2px;padding:0;display:flex}.i0TWxG_thinkingChevron{transition:transform .12s var(--ds-ease-in-out);flex:none}.i0TWxG_thinkingToggle[aria-expanded=true] .i0TWxG_thinkingChevron{transform:rotate(90deg)}.i0TWxG_thinkingToggle:hover{color:var(--dsw-alias-label-secondary)}.i0TWxG_thinkingToggle:focus-visible{outline:1px solid var(--dsw-alias-state-business-primary);outline-offset:2px}.i0TWxG_thinkingQuote .i0TWxG_markdownPreview,.i0TWxG_thinkingQuote .i0TWxG_markdownPayload,.i0TWxG_thinkingQuote .i0TWxG_payload{min-height:0;color:var(--dsw-alias-label-secondary);background:0 0;padding:2px 0}.i0TWxG_assistantOutput{background:var(--dsw-alias-bg-layer-1)}.i0TWxG_markdownPreview{padding:6px 14px 8px}.i0TWxG_markdownPayload{min-height:100%;padding:14px}.i0TWxG_jsonPayload{min-height:100%}.i0TWxG_jsonPreview{min-height:0}.i0TWxG_schema{background:var(--dsw-alias-bg-layer-1);min-height:100%}.i0TWxG_schemaPreview{min-height:0}.i0TWxG_schemaIntro{padding:12px 14px 6px}.i0TWxG_schemaPreview .i0TWxG_schemaIntro{padding-top:6px}.i0TWxG_schemaName{color:var(--dsw-alias-label-primary);font:600 12px/18px var(--ds-font-family-code);margin:0}.i0TWxG_schemaDescription{color:var(--dsw-alias-label-secondary);font:var(--dsw-font-xs-13);white-space:pre-wrap;margin:2px 0 0}.i0TWxG_schemaParameters{min-width:0}.i0TWxG_schemaParametersTitle{color:var(--dsw-alias-label-tertiary);font:600 11px/16px var(--dsw-font-family);user-select:none;margin:0;padding:4px 14px 2px}.i0TWxG_schemaTree{margin:0 6px 8px 0}.i0TWxG_payload{box-sizing:border-box;overflow-wrap:anywhere;min-height:100%;color:var(--dsw-alias-label-primary);background:var(--dsw-alias-markdown-code-block);font:12px/19px var(--ds-font-family-code);tab-size:2;white-space:pre-wrap;margin:0;padding:14px}.i0TWxG_payloadPreview{min-height:0;padding:6px 14px 8px}.i0TWxG_sourceBlocks{box-sizing:border-box;min-height:100%;padding:12px 14px}.i0TWxG_sourceBlock+.i0TWxG_sourceBlock{margin-top:14px}.i0TWxG_sourceBlockHeader,.i0TWxG_sourceBlockJumpTarget{user-select:none;align-items:center;gap:3px;width:max-content;margin-bottom:3px;display:flex}.i0TWxG_sourceBlockJumpTarget{all:unset;cursor:pointer;user-select:none;align-items:center;gap:3px;width:max-content;margin-bottom:3px;display:flex}.i0TWxG_sourceBlockLabel{color:var(--dsw-alias-label-tertiary);font:11px/16px var(--ds-font-family-code)}.i0TWxG_sourceBlockJumpIcon{color:var(--dsw-alias-label-caption);flex:none}.i0TWxG_sourceBlockJumpTarget:hover .i0TWxG_sourceBlockJumpIcon{color:var(--dsw-alias-label-primary)}.i0TWxG_sourceBlockJumpTarget:focus-visible{outline:none}.i0TWxG_sourceBlockJumpTarget:focus-visible .i0TWxG_sourceBlockJumpIcon{color:var(--dsw-alias-state-business-primary)}.i0TWxG_sourceBlockContent{overflow-wrap:anywhere;color:var(--dsw-alias-label-primary);font:12px/19px var(--ds-font-family-code);tab-size:2;white-space:pre-wrap;background:0 0;margin:0}.i0TWxG_messageImages{flex-direction:column;gap:8px;margin:8px 14px 14px;display:flex}.i0TWxG_messageImagesPreview{gap:6px;margin:6px 14px 8px}.i0TWxG_assistantToolCalls{box-sizing:border-box;max-width:100%;color:var(--dsw-alias-label-secondary);font:11px/17px var(--ds-font-family-code);margin:2px 14px 12px;padding:0;list-style:none}.i0TWxG_assistantToolCallsPreview{margin-top:2px;margin-bottom:8px}.i0TWxG_assistantToolCalls li{min-width:0}.i0TWxG_assistantToolCallButton{all:unset;box-sizing:border-box;cursor:pointer;border-radius:3px;align-items:center;width:calc(100% + 4px);min-width:0;height:19px;margin-left:-4px;padding:0 4px;display:flex}.i0TWxG_assistantToolCallButton:hover{background:var(--dsw-alias-interactive-bg-hover)}.i0TWxG_assistantToolCallButton:focus-visible{background:var(--dsw-alias-interactive-bg-hover);outline:1px solid var(--dsw-alias-state-business-primary);outline-offset:-1px}.i0TWxG_assistantToolCallIcon{color:var(--dsw-alias-label-caption);flex:none;margin-right:5px}.i0TWxG_assistantToolCallButton:hover .i0TWxG_assistantToolCallIcon,.i0TWxG_assistantToolCallButton:focus-visible .i0TWxG_assistantToolCallIcon{color:var(--dsw-alias-label-secondary)}.i0TWxG_assistantToolCallText{white-space:nowrap;flex:1;min-width:0;display:flex;overflow:hidden}.i0TWxG_assistantToolCallName{color:var(--dsw-alias-label-secondary);flex:none;margin-right:5px;font-weight:500}.i0TWxG_assistantToolCallArgs{min-width:0;color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.i0TWxG_systemPrompt{box-sizing:border-box}.i0TWxG_toolCatalog{min-height:100%;padding:8px 0 16px}.i0TWxG_toolCatalogItem{border-bottom:1px solid var(--dsw-alias-border-l1)}.i0TWxG_toolCatalogSummary{box-sizing:border-box;cursor:pointer;user-select:none;grid-template-columns:12px 12px max-content minmax(0,1fr);align-items:center;gap:5px;min-height:30px;padding:4px 12px;list-style:none;display:grid}.i0TWxG_toolCatalogSummary::-webkit-details-marker{display:none}.i0TWxG_toolCatalogSummary:hover{background:var(--dsw-alias-interactive-bg-hover)}.i0TWxG_toolCatalogSummary:focus-visible{background:var(--dsw-alias-interactive-bg-hover);outline:1px solid var(--dsw-alias-state-business-primary);outline-offset:-1px}.i0TWxG_toolCatalogChevron,.i0TWxG_toolCatalogIcon{color:var(--dsw-alias-label-caption)}.i0TWxG_toolCatalogChevron{transition:transform .1s var(--ds-ease-in-out)}.i0TWxG_toolCatalogItem[open] .i0TWxG_toolCatalogChevron{transform:rotate(90deg)}.i0TWxG_toolCatalogName{color:var(--dsw-alias-label-primary);font:500 12px/18px var(--ds-font-family-code)}.i0TWxG_toolCatalogDescription{min-width:0;color:var(--dsw-alias-label-tertiary);font:var(--dsw-font-xs-13);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.i0TWxG_toolCatalogDefinition{background:var(--dsw-alias-bg-base);padding:0 0 8px 29px}.i0TWxG_toolCatalogFullDescription{color:var(--dsw-alias-label-secondary);font:var(--dsw-font-xs-13);white-space:pre-wrap;margin:0;padding:7px 14px 4px 0}.i0TWxG_toolCatalogTree{margin-left:-14px;margin-right:6px}.i0TWxG_resultBlocks{box-sizing:border-box;flex-direction:column;gap:10px;min-height:100%;padding:14px;display:flex}.i0TWxG_resultBlocksPreview{gap:6px;min-height:0;padding:6px 14px 8px}.i0TWxG_resultBlockText{overflow-wrap:anywhere;color:var(--dsw-alias-label-primary);font:12px/19px var(--ds-font-family-code);tab-size:2;white-space:pre-wrap;background:0 0;margin:0}.i0TWxG_overviewPreview .i0TWxG_noPayload{padding:6px 14px 8px}.i0TWxG_noPayload{color:var(--dsw-alias-label-tertiary);font:var(--dsw-font-xs-13);margin:0;padding:18px 14px}@media (width<=760px){.i0TWxG_details{z-index:5;border-left-color:var(--dsw-alias-border-l3);width:min(92%,420px);max-width:92%;position:absolute;top:0;bottom:0;right:0;box-shadow:-12px 0 32px #00000024}}";
|
|
3652
|
+
const css$3 = ".i0TWxG_split{--dsh-scrollbar-thumb:var(--dsw-alias-scrollbar-bg-l2);--dsh-scrollbar-thumb-hover:var(--dsw-alias-scrollbar-hover-l2);background:var(--dsw-alias-bg-layer-1);flex:1;width:100%;min-height:0;display:flex;position:relative;overflow:hidden;container-type:inline-size}.i0TWxG_tablePane{min-width:0;padding-bottom:var(--dsh-trajectory-bottom-clearance,0px);flex:1;position:relative;overflow:hidden auto;container:i0TWxG_trajectory-table/inline-size}.i0TWxG_historyLoading{z-index:5;pointer-events:none;height:0;position:sticky;top:0;overflow:visible}.i0TWxG_historyLoadingBar{box-sizing:border-box;border-bottom:.5px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);width:100%;height:30px;color:var(--dsw-alias-label-secondary);font:var(--dsw-font-xxs-12);justify-content:center;align-items:center;gap:6px;display:flex}.i0TWxG_historyLoadingSpinner{box-sizing:border-box;border:1.5px solid var(--dsw-alias-border-l2);border-top-color:var(--dsw-alias-state-business-primary);corner-shape:round;border-radius:50%;width:10px;height:10px;animation:.7s linear infinite i0TWxG_history-loading-spin}.i0TWxG_table tbody .i0TWxG_historyLoadRow td{height:30px;padding:0}.i0TWxG_table tbody .i0TWxG_historyLoadRow+tr[data-turn-start=true] td:before{content:none}.i0TWxG_historyLoadButton{background:var(--dsw-alias-bg-layer-1);width:100%;height:29px;color:var(--dsw-alias-label-secondary);cursor:pointer;font:var(--dsw-font-xxs-12);border:0;justify-content:center;align-items:center;gap:6px;display:flex}.i0TWxG_historyLoadButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}.i0TWxG_historyLoadButton:focus-visible{outline:2px solid var(--dsw-alias-state-business-primary);outline-offset:-2px}.i0TWxG_historyLoadButton:disabled{cursor:default}.i0TWxG_visuallyHidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.i0TWxG_table:not([data-scroll-ready=true]){visibility:hidden}@keyframes i0TWxG_history-loading-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.i0TWxG_historyLoadingSpinner{animation:none}}.i0TWxG_table{--trajectory-turn-accent:color-mix(in srgb, var(--dsw-static-blue-500) 22%, var(--dsw-alias-bg-layer-1));border-spacing:0;table-layout:fixed;width:100%;min-width:0;color:var(--dsw-alias-label-primary);background:var(--dsw-alias-bg-layer-1);font:var(--dsw-font-xxs-12)}.i0TWxG_eventColumn{width:122px}.i0TWxG_contentColumn{width:auto}.i0TWxG_table th{z-index:3;box-sizing:border-box;border-bottom:.5px solid var(--dsw-alias-border-l2);height:30px;color:var(--dsw-alias-label-tertiary);background:var(--dsw-specific-sidebar-fill);font:var(--dsw-font-xxs-12);text-align:left;text-overflow:ellipsis;user-select:none;white-space:nowrap;padding:0 8px;font-weight:500;position:sticky;top:0;overflow:hidden}.i0TWxG_eventHeader{text-align:right!important;padding-right:4px!important}.i0TWxG_table td{box-sizing:border-box;border-bottom:.5px solid var(--dsw-alias-border-l1);text-overflow:ellipsis;white-space:nowrap;height:30px;padding:0 8px;overflow:hidden}.i0TWxG_table tbody .i0TWxG_virtualSpacer{pointer-events:none}.i0TWxG_table tbody .i0TWxG_virtualSpacer td{height:var(--trajectory-virtual-spacer-height);border:0;padding:0}.i0TWxG_table tbody tr:not([data-collapsed-summary]):not([data-virtual-spacer]):not([data-history-load]){cursor:default;transition:background-color .12s var(--ds-ease-in-out), opacity .12s var(--ds-ease-in-out);outline:none}.i0TWxG_table tbody tr[data-timeline-focus=outside]{opacity:.24}.i0TWxG_table tbody tr:not([data-collapsed-summary]):not([data-virtual-spacer]):not([data-history-load]):not([data-selected=true]):hover{background:var(--dsw-alias-interactive-bg-hover)}.i0TWxG_table tbody tr[data-request-only=true]:hover{background:0 0}.i0TWxG_table tbody tr[data-request-only=true] td{border-bottom:0;height:0;padding-top:0;padding-bottom:0}.i0TWxG_table tbody tr[data-terminal-request-boundary=true] td{height:9px}.i0TWxG_table tbody tr[data-request-only=true] .i0TWxG_turnRail{top:-15px;bottom:0}.i0TWxG_table tbody tr:not([data-collapsed-summary]):focus-visible{box-shadow:inset 0 0 0 1px var(--dsw-alias-state-business-primary)}.i0TWxG_table tbody tr[data-selected=true]{background:var(--dsw-alias-interactive-bg-active)}.i0TWxG_requestBoundaryControl{--request-boundary-base-left:12px;z-index:6;top:-8px;left:calc(var(--request-boundary-base-left) + var(--request-boundary-offset,0px));cursor:pointer;background:0 0;border:0;width:16px;height:16px;padding:0;position:absolute}.i0TWxG_requestBoundaryControl:before{corner-shape:round;background:var(--dsw-alias-label-caption);width:5px;height:5px;box-shadow:0 0 0 2px var(--dsw-alias-bg-layer-1), 0 0 0 3px transparent;content:\"\";transition:background .12s var(--ds-ease-in-out), box-shadow .12s var(--ds-ease-in-out);border-radius:50%;position:absolute;top:5.5px;left:5.5px}.i0TWxG_requestBoundaryControl:after{border:.5px solid var(--dsw-alias-border-l1);width:max-content;color:var(--dsw-alias-label-secondary);background:var(--dsw-alias-bg-layer-1);content:attr(data-label);font:9px/12px var(--ds-font-family-code);opacity:0;pointer-events:none;transition:opacity .12s var(--ds-ease-in-out), transform .12s var(--ds-ease-in-out);user-select:none;white-space:nowrap;border-radius:2px;padding:0 4px;position:absolute;top:2px;left:17px;transform:translate(-2px);box-shadow:0 2px 6px #0000001f}.i0TWxG_requestBoundaryControl:hover:before,.i0TWxG_requestBoundaryControl:focus-visible:before{background:var(--dsw-alias-brand-primary-new-colorprimary-new-color)}.i0TWxG_requestBoundaryControlActive:before,.i0TWxG_requestBoundaryControlActive:hover:before,.i0TWxG_requestBoundaryControlActive:focus-visible:before{background:color-mix(in srgb, var(--dsw-alias-brand-primary-new-colorprimary-new-color) 18%, var(--dsw-alias-bg-layer-1));box-shadow:0 0 0 1.5px var(--dsw-alias-brand-primary-new-colorprimary-new-color)}.i0TWxG_requestBoundaryControl[data-request-status=error]:before,.i0TWxG_requestBoundaryControl[data-request-status=error]:hover:before,.i0TWxG_requestBoundaryControl[data-request-status=error]:focus-visible:before{background:var(--dsw-alias-state-error-primary)}.i0TWxG_requestBoundaryControl:hover:after,.i0TWxG_requestBoundaryControl:focus-visible:after{opacity:1;transform:translate(0)}.i0TWxG_requestBoundaryControl:focus-visible{outline:none}.i0TWxG_table tbody tr:has(.i0TWxG_requestBoundaryControl:hover):not([data-selected=true]){background:0 0}.i0TWxG_event{position:relative}.i0TWxG_turnRail,.i0TWxG_selectionRail{background:var(--dsw-alias-brand-primary-new-colorprimary-new-color);pointer-events:none;position:absolute;left:0}.i0TWxG_turnRail{z-index:4;background:var(--trajectory-turn-accent);width:2px;top:-1px;bottom:-1px}.i0TWxG_table tbody tr[data-turn-end=true] .i0TWxG_turnRail{bottom:0}.i0TWxG_selectionRail{z-index:5;width:3px;top:0;bottom:0}.i0TWxG_table tbody tr[data-error=true] .i0TWxG_turnRail{background:color-mix(in srgb, var(--dsw-alias-state-error-primary) 22%, var(--dsw-alias-bg-layer-1))}.i0TWxG_table tbody tr[data-error=true] .i0TWxG_selectionRail{background:var(--dsw-alias-state-error-primary)}.i0TWxG_table tbody tr[data-turn-start=true] td{position:relative;overflow:visible}.i0TWxG_table tbody tr[data-turn-start=true]:not(:first-child) td:before{z-index:1;background:var(--dsw-alias-border-l1);content:\"\";pointer-events:none;height:2px;position:absolute;top:0;left:0;right:0;transform:translateY(-50%)}.i0TWxG_event{padding-left:36px!important;padding-right:4px!important;overflow:visible!important}.i0TWxG_turnLabel{z-index:3;box-sizing:border-box;width:max-content;color:var(--dsw-alias-label-tertiary);background:var(--dsw-alias-bg-module-platform);font:8px/10px var(--ds-font-family-code);font-variant-numeric:tabular-nums;user-select:none;white-space:nowrap;border-radius:0 0 2px;flex:none;align-items:center;padding:1px 5px;display:inline-grid;position:absolute;top:0;left:0}.i0TWxG_turnLabelFull,.i0TWxG_turnLabelCompact{opacity:1;white-space:nowrap;grid-area:1/1;max-width:64px;overflow:hidden}.i0TWxG_turnLabelCompact{opacity:0;max-width:0}.i0TWxG_turnLabelActive{color:color-mix(in srgb, var(--dsw-static-blue-500) 55%, var(--dsw-alias-label-tertiary));background:var(--trajectory-turn-accent)}.i0TWxG_eventInner{justify-content:flex-start;align-items:center;min-width:0;height:100%;display:flex}.i0TWxG_kindSlot{flex:none;justify-content:flex-end;align-items:flex-end;width:76px;display:flex}.i0TWxG_kindSlot [role=tooltip]{background:var(--dsw-alias-bg-layer-2);box-shadow:var(--dsw-elevation-panel);color:var(--dsw-alias-label-primary);border:0}.i0TWxG_content{color:var(--dsw-alias-label-primary);padding-left:4px!important}.i0TWxG_kindTag{box-sizing:border-box;letter-spacing:.035em;user-select:none;border:1px solid #0000;border-radius:4px;flex:none;align-items:center;height:19px;padding:0 5px;font-size:10px;font-weight:650;line-height:16px;display:inline-flex}.i0TWxG_kindTagIcon{opacity:0;flex:none;justify-content:center;align-items:center;width:0;height:13px;display:inline-flex;overflow:hidden;transform:scale(.8)}.i0TWxG_kindTagLabel{opacity:1;white-space:nowrap;max-width:72px;display:inline-block;overflow:hidden}.i0TWxG_table .i0TWxG_kindSlot .i0TWxG_message{justify-content:center;width:100%}@container i0TWxG_trajectory-table (width<=620px){.i0TWxG_eventColumn{width:50px}.i0TWxG_event{padding-left:28px!important;padding-right:3px!important}.i0TWxG_requestBoundaryControl{--request-boundary-base-left:6px}.i0TWxG_kindSlot{width:19px}.i0TWxG_kindTag,.i0TWxG_table .i0TWxG_kindSlot .i0TWxG_message{justify-content:center;width:19px;padding-left:0;padding-right:0}.i0TWxG_kindTagIcon{opacity:1;width:13px;transform:scale(1)}.i0TWxG_kindTagLabel,.i0TWxG_turnLabelFull{opacity:0;max-width:0}.i0TWxG_turnLabelCompact{opacity:1;max-width:64px}}@media (prefers-reduced-motion:no-preference){.i0TWxG_eventColumn,.i0TWxG_event,.i0TWxG_requestBoundaryControl,.i0TWxG_kindSlot,.i0TWxG_kindTag,.i0TWxG_kindTagIcon,.i0TWxG_kindTagLabel,.i0TWxG_turnLabelFull,.i0TWxG_turnLabelCompact{transition-duration:.18s;transition-timing-function:var(--ds-ease-in-out)}.i0TWxG_eventColumn,.i0TWxG_kindSlot{transition-property:width}.i0TWxG_event{transition-property:padding-right,padding-left}.i0TWxG_requestBoundaryControl{transition-property:left}.i0TWxG_kindTag{transition-property:padding-right,padding-left}.i0TWxG_kindTagIcon{transition-property:width,opacity,transform}.i0TWxG_kindTagLabel,.i0TWxG_turnLabelFull,.i0TWxG_turnLabelCompact{transition-property:max-width,opacity}}.i0TWxG_user{color:var(--dsw-alias-state-business-primary);background:var(--dsw-alias-state-business-tertiary)}.i0TWxG_systemNeutral{color:var(--dsw-alias-label-secondary);background:var(--dsw-alias-bg-module-platform)}.i0TWxG_contextGreen{color:color-mix(in srgb, var(--dsw-alias-state-success-primary) 68%, var(--dsw-alias-label-secondary));background:var(--dsw-alias-state-success-tertiary)}.i0TWxG_compacted{color:var(--dsw-alias-label-secondary);background:var(--dsw-alias-bg-module-platform)}.i0TWxG_compactedSummary{font:var(--dsw-font-xs-13);margin-top:12px;padding:0 0 14px}.i0TWxG_promptDiffSections{flex-direction:column;gap:14px;max-height:100%;padding:10px 14px 14px;display:flex;overflow:auto}.i0TWxG_promptDiffSection{min-width:0}.i0TWxG_promptDiffTitle{color:var(--dsw-alias-label-secondary);font:var(--dsw-font-xs-strong-13);user-select:none;margin:0 0 6px}.i0TWxG_promptDiff{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-bg-layer-1);font:11px/17px var(--ds-font-family-code);white-space:pre;margin:0;overflow:auto}.i0TWxG_promptDiff span{min-width:max-content;padding:0 6px;display:block}.i0TWxG_promptDiffLinemeta{color:var(--dsw-alias-label-caption);background:var(--dsw-alias-bg-module-platform);user-select:none}.i0TWxG_promptDiffLinecontext{color:var(--dsw-alias-label-secondary)}.i0TWxG_promptDiffLineadded{color:color-mix(in srgb, var(--dsw-alias-state-success-primary) 72%, var(--dsw-alias-label-primary));background:var(--dsw-alias-state-success-tertiary)}.i0TWxG_promptDiffLineremoved{color:var(--dsw-alias-state-error-primary);background:color-mix(in srgb, var(--dsw-alias-state-error-primary) 12%, var(--dsw-alias-bg-layer-1))}.i0TWxG_assistantVioletBright{color:color-mix(in srgb, var(--dsw-alias-brand-primary-new-colorprimary-new-color) 60%, var(--dsw-alias-state-error-secondary));background:color-mix(in srgb, color-mix(in srgb, var(--dsw-alias-brand-primary-new-colorprimary-new-color) 55%, var(--dsw-alias-state-error-secondary)) 15%, var(--dsw-alias-bg-layer-1))}.i0TWxG_toolAmber{color:var(--dsw-alias-state-warn-label);background:var(--dsw-alias-state-warn-tertiary)}.i0TWxG_subtoolAmber{color:color-mix(in srgb, var(--dsw-alias-state-warn-label) 62%, var(--dsw-alias-label-tertiary));background:color-mix(in srgb, var(--dsw-alias-state-warn-tertiary) 58%, var(--dsw-alias-bg-layer-1))}.i0TWxG_contentText{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.i0TWxG_toolCallOnly{color:var(--dsw-alias-label-tertiary)}.i0TWxG_table tbody tr[data-collapsed-summary=turn] td,.i0TWxG_table tbody tr[data-collapsed-summary=assistant] td{height:20px}.i0TWxG_table tbody tr[data-collapsed-summary]{cursor:pointer;transition:background-color .12s var(--ds-ease-in-out);outline:none}.i0TWxG_table tbody tr[data-collapsed-summary]:hover{background:var(--dsw-alias-interactive-bg-hover)}.i0TWxG_table tbody tr[data-collapsed-summary]:focus-visible{box-shadow:inset 0 0 0 1px var(--dsw-alias-state-business-primary)}.i0TWxG_collapsedTurnContent{min-width:0;color:var(--dsw-alias-label-secondary);align-items:center;font-size:12px;line-height:16px;display:flex}.i0TWxG_collapsedTurnEllipsis{color:var(--dsw-alias-label-tertiary);user-select:none;flex:none;margin-right:6px;font-weight:600}.i0TWxG_collapsedTurnText{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.i0TWxG_resultPreview{grid-template-columns:clamp(180px, var(--trajectory-tool-request-width,calc(36cqw - 56px)), 480px) minmax(0, 1fr);align-items:center;gap:8px;min-width:0;display:grid}.i0TWxG_resultRequest,.i0TWxG_inlineResultText{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.i0TWxG_toolCallNameTypeface{color:var(--dsw-alias-label-primary);font:400 12px/18px Menlo,Consolas,Liberation Mono,PingFang SC,Microsoft YaHei}.i0TWxG_toolCallPayload{color:var(--dsw-alias-label-secondary);font:400 12px/18px var(--ds-font-family-code);margin-left:7px}.i0TWxG_table tbody tr[data-kind=tool] .i0TWxG_contentText,.i0TWxG_table tbody tr[data-kind=subtool] .i0TWxG_contentText,.i0TWxG_table tbody tr[data-kind=tool] .i0TWxG_resultPreview,.i0TWxG_table tbody tr[data-kind=subtool] .i0TWxG_resultPreview{font-family:var(--ds-font-family-code);font-size:12px}.i0TWxG_table tbody tr[data-kind=subtool] .i0TWxG_content{padding-left:26px}.i0TWxG_inlineResult{min-width:0;color:var(--dsw-alias-label-secondary);align-items:center;display:flex}.i0TWxG_noOutputText{color:var(--dsw-alias-label-caption)}.i0TWxG_arrow{color:var(--dsw-alias-label-caption);flex:none;margin-right:8px}.i0TWxG_error,.i0TWxG_overview dd.i0TWxG_error,.i0TWxG_details .i0TWxG_errorPayload{color:var(--dsw-alias-state-error-primary)}.i0TWxG_details .i0TWxG_errorPayload .i0TWxG_resultBlockText{color:inherit}.i0TWxG_details .i0TWxG_jsonPayload.i0TWxG_errorPayload,.i0TWxG_details .i0TWxG_jsonPreview.i0TWxG_errorPayload{--json-tree-property:var(--dsw-alias-state-error-primary);--json-tree-string:var(--dsw-alias-state-error-primary);--json-tree-number:var(--dsw-alias-state-error-primary);--json-tree-keyword:var(--dsw-alias-state-error-primary);--json-tree-punctuation:var(--dsw-alias-state-error-primary);--json-tree-icon:var(--dsw-alias-state-error-primary)}.i0TWxG_details{border-left:.5px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);flex-direction:column;flex:none;width:clamp(320px,38%,440px);min-width:0;max-width:calc(100% - 280px);min-height:0;display:flex;position:relative}.i0TWxG_detailsResizeHandle{z-index:6;cursor:col-resize;touch-action:none;user-select:none;background:0 0;border:0;width:8px;padding:0;position:absolute;top:0;bottom:0;left:-4px}.i0TWxG_detailsResizeHandle:focus-visible{outline:none}.i0TWxG_detailsHeader{box-sizing:border-box;border-bottom:.5px solid var(--dsw-alias-border-l2);flex:none;justify-content:space-between;align-items:center;height:42px;padding:0 8px 0 12px;display:flex}.i0TWxG_detailsTitle{min-width:0;color:var(--dsw-alias-label-primary);align-items:center;gap:8px;display:flex}.i0TWxG_requestDetailsDot{corner-shape:round;background:var(--dsw-alias-label-secondary);border-radius:50%;flex:none;width:5px;height:5px}.i0TWxG_requestDetailsName{font:500 12px/16px var(--ds-font-family-code);flex:none}.i0TWxG_detailsLocation{min-width:0;color:var(--dsw-alias-label-tertiary);font:11px/16px var(--ds-font-family-code);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.i0TWxG_close{width:28px;height:28px;color:var(--dsw-alias-label-secondary);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;justify-content:center;align-items:center;padding:0;font-size:18px;line-height:18px;display:inline-flex}.i0TWxG_close:hover{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-interactive-bg-hover)}.i0TWxG_detailTabs{box-sizing:border-box;border-bottom:.5px solid var(--dsw-alias-border-l2);overscroll-behavior-x:contain;scrollbar-width:none;white-space:nowrap;flex:none;gap:1px;width:100%;min-width:0;max-width:100%;height:34px;padding:0 8px;display:flex;overflow:auto hidden}.i0TWxG_detailTabs::-webkit-scrollbar{display:none}.i0TWxG_detailTab{color:var(--dsw-alias-label-tertiary);cursor:pointer;font:var(--dsw-font-xs-13);background:0 0;border:0;flex:none;padding:0 9px;position:relative}.i0TWxG_detailTab:hover{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-interactive-bg-hover)}.i0TWxG_detailTabActive{color:var(--dsw-alias-state-business-primary)}.i0TWxG_detailTabActive:after{background:var(--dsw-alias-state-business-primary);content:\"\";border-radius:1px 1px 0 0;height:2px;position:absolute;bottom:0;left:9px;right:9px}.i0TWxG_close:focus-visible,.i0TWxG_detailTab:focus-visible{outline:1px solid var(--dsw-alias-state-business-primary);outline-offset:-1px}.i0TWxG_detailBody{min-height:0;padding-bottom:var(--dsh-trajectory-bottom-clearance,0px);scrollbar-gutter:stable;flex:1;overflow:hidden auto}.i0TWxG_detailBodySummary{box-sizing:border-box;padding-bottom:calc(12px + var(--dsh-trajectory-bottom-clearance,0px));flex-direction:column;display:flex;overflow:hidden}.i0TWxG_detailBodySummary>.i0TWxG_overview{overscroll-behavior:contain;flex:0 auto;min-height:0;overflow:auto}.i0TWxG_detailBodySummary>.i0TWxG_compactedSummary{flex:1;min-height:0;overflow:auto}.i0TWxG_summaryScrollRegion{--dsh-scrollbar-thumb:transparent;--dsh-scrollbar-thumb-hover:transparent}.i0TWxG_summaryScrollRegion:hover,.i0TWxG_summaryScrollRegion:focus-within{--dsh-scrollbar-thumb:var(--dsw-alias-scrollbar-bg-l2);--dsh-scrollbar-thumb-hover:var(--dsw-alias-scrollbar-hover-l2)}.i0TWxG_compactedSummary .i0TWxG_markdownPayload{padding-right:18px}.i0TWxG_overview{font:var(--dsw-font-xs-13);margin:0;padding:8px 0}.i0TWxG_overviewParentLinks{gap:14px;display:flex}.i0TWxG_overviewHierarchyNavLink{all:unset;color:var(--dsw-alias-label-secondary);cursor:pointer;font:inherit;opacity:1;align-items:center;gap:1px;display:inline-flex}.i0TWxG_overviewHierarchyNavLink:hover{color:var(--dsw-alias-label-primary)}.i0TWxG_overviewHierarchyJumpIconTight{color:var(--dsw-alias-label-caption);flex:none}.i0TWxG_overviewHierarchyNavLink:hover .i0TWxG_overviewHierarchyJumpIconTight,.i0TWxG_overviewHierarchyNavLink:focus-visible .i0TWxG_overviewHierarchyJumpIconTight{color:var(--dsw-alias-label-primary)}.i0TWxG_overviewHierarchyNavLink:focus-visible{color:var(--dsw-alias-label-primary);outline:1px solid var(--dsw-alias-state-business-primary);outline-offset:2px}.i0TWxG_overview>div{grid-template-columns:94px minmax(0,1fr);align-items:center;min-height:22px;padding:0 14px;display:grid}.i0TWxG_overview>.i0TWxG_requestTokenDetail dt{padding-left:12px}.i0TWxG_usagePanel{padding:4px 0 10px}.i0TWxG_usageGroup+.i0TWxG_usageGroup{margin-top:8px}.i0TWxG_usageHeading{color:var(--dsw-alias-label-secondary);font:var(--dsw-font-xs-strong-13);user-select:none;margin:0;padding:4px 14px 1px}.i0TWxG_usageGroup .i0TWxG_overview{padding:0}.i0TWxG_overview dt{color:var(--dsw-alias-label-tertiary)}.i0TWxG_overview dd{min-width:0;color:var(--dsw-alias-label-primary);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.i0TWxG_timestampToggle{all:unset;color:inherit;cursor:pointer;font:inherit;user-select:text}.i0TWxG_timestampToggle:focus-visible{outline:1px solid var(--dsw-alias-state-business-primary);outline-offset:2px}.i0TWxG_overviewSections{border-top:0;flex-direction:column;flex:1;min-height:min-content;display:flex;overflow:hidden}.i0TWxG_overviewSection{flex-direction:column;flex:1 1 0;min-height:28px;max-height:max-content;display:flex;overflow:hidden}.i0TWxG_overviewSection+.i0TWxG_overviewSection{padding-top:8px}.i0TWxG_overviewHeading{box-sizing:border-box;width:100%;height:28px;color:var(--dsw-alias-label-secondary);background:var(--dsw-alias-bg-layer-1);font:var(--dsw-font-xs-strong-13);user-select:none;flex:none;align-items:flex-end;margin:0;padding:0 0 3px 14px;display:flex}.i0TWxG_overviewTitle{width:max-content;height:auto;color:inherit;cursor:pointer;font:inherit;user-select:none;background:0 0;border:0;flex:none;align-items:center;gap:3px;padding:0;line-height:1;display:inline-flex}.i0TWxG_overviewTitleIcon{color:var(--dsw-alias-label-caption);flex:none}.i0TWxG_overviewTitle:hover .i0TWxG_overviewTitleIcon{color:var(--dsw-alias-label-primary)}.i0TWxG_overviewTitle:focus-visible{outline:1px solid var(--dsw-alias-state-business-primary);outline-offset:2px}.i0TWxG_overviewTitle:focus-visible .i0TWxG_overviewTitleIcon{color:var(--dsw-alias-state-business-primary)}.i0TWxG_overviewPreview{overscroll-behavior:contain;background:var(--dsw-alias-bg-layer-1);flex:1;min-height:0;overflow:auto}.i0TWxG_overviewPreview>:last-child{margin-bottom:0;padding-bottom:0}.i0TWxG_overviewPreview .i0TWxG_jsonPreview>:first-child,.i0TWxG_overviewPreview .i0TWxG_schemaTree>:first-child{padding-bottom:0}.i0TWxG_overviewPreview .i0TWxG_schemaTree{margin-bottom:0}.i0TWxG_overviewPreview .i0TWxG_overview{padding:2px 0 0}.i0TWxG_overviewPreview .i0TWxG_overview>div{min-height:22px}.i0TWxG_markdownPreview,.i0TWxG_markdownPayload{color:var(--dsw-alias-label-primary)}.i0TWxG_markdownPreview>div,.i0TWxG_markdownPayload>div{font:var(--dsw-font-xs-13);gap:8px}.i0TWxG_markdownPreview>div h1,.i0TWxG_markdownPayload>div h1{font:600 16px/22px var(--dsw-font-family)}.i0TWxG_markdownPreview>div h2,.i0TWxG_markdownPayload>div h2{font:600 15px/22px var(--dsw-font-family)}.i0TWxG_markdownPreview>div :where(h3,h4,h5,h6),.i0TWxG_markdownPayload>div :where(h3,h4,h5,h6){font:600 14px/20px var(--dsw-font-family)}.i0TWxG_markdownPreview>div :not(pre)>code,.i0TWxG_markdownPayload>div :not(pre)>code{font:12px/18px var(--ds-font-family-code)}.i0TWxG_markdownPreview>div table,.i0TWxG_markdownPayload>div table{font:var(--dsw-font-xs-13)}.i0TWxG_markdownPreview>div>:first-child{margin-top:0}.i0TWxG_markdownPreview>div>:last-child{margin-bottom:0}.i0TWxG_markdownPreview>div :where(h1,h2,h3){margin:12px 0 6px}.i0TWxG_markdownPreview>div :where(h4,h5,h6){margin:10px 0 5px}.i0TWxG_markdownPreview>div :where(p,ul,ol){margin:8px 0}.i0TWxG_markdownPreview>div li:not(:first-child){margin-top:3px}.i0TWxG_markdownPreview>div blockquote{margin-top:8px}.i0TWxG_markdownPreview>div hr{margin:14px 0}.i0TWxG_markdownPreview>div>.md-code-block{margin:10px 0}.i0TWxG_assistantContent .i0TWxG_markdownPayload,.i0TWxG_assistantContent .i0TWxG_payload{min-height:0}.i0TWxG_thinkingQuote{border-left:2px solid var(--dsw-alias-markdown-citation);color:var(--dsw-alias-label-secondary);background:0 0;margin:6px 14px 0 12px;padding-left:6px}.i0TWxG_thinkingQuoteOnlyPreview{margin-bottom:8px}.i0TWxG_detailBody>.i0TWxG_assistantContentRendered .i0TWxG_thinkingQuote{margin-top:14px}.i0TWxG_thinkingToggle{width:max-content;height:18px;color:var(--dsw-alias-label-tertiary);cursor:pointer;font:600 12px/18px var(--dsw-font-family);user-select:none;background:0 0;border:0;align-items:center;gap:2px;padding:0;display:flex}.i0TWxG_thinkingChevron{transition:transform .12s var(--ds-ease-in-out);flex:none}.i0TWxG_thinkingToggle[aria-expanded=true] .i0TWxG_thinkingChevron{transform:rotate(90deg)}.i0TWxG_thinkingToggle:hover{color:var(--dsw-alias-label-secondary)}.i0TWxG_thinkingToggle:focus-visible{outline:1px solid var(--dsw-alias-state-business-primary);outline-offset:2px}.i0TWxG_thinkingQuote .i0TWxG_markdownPreview,.i0TWxG_thinkingQuote .i0TWxG_markdownPayload,.i0TWxG_thinkingQuote .i0TWxG_payload{min-height:0;color:var(--dsw-alias-label-secondary);background:0 0;padding:2px 0}.i0TWxG_assistantOutput{background:var(--dsw-alias-bg-layer-1)}.i0TWxG_markdownPreview{padding:6px 14px 8px}.i0TWxG_markdownPayload{min-height:100%;padding:14px}.i0TWxG_jsonPayload{min-height:100%}.i0TWxG_jsonPreview{min-height:0}.i0TWxG_schema{background:var(--dsw-alias-bg-layer-1);min-height:100%}.i0TWxG_schemaPreview{min-height:0}.i0TWxG_schemaIntro{padding:12px 14px 6px}.i0TWxG_schemaPreview .i0TWxG_schemaIntro{padding-top:6px}.i0TWxG_schemaName{color:var(--dsw-alias-label-primary);font:600 12px/18px var(--ds-font-family-code);margin:0}.i0TWxG_schemaDescription{color:var(--dsw-alias-label-secondary);font:var(--dsw-font-xs-13);white-space:pre-wrap;margin:2px 0 0}.i0TWxG_schemaParameters{min-width:0}.i0TWxG_schemaParametersTitle{color:var(--dsw-alias-label-tertiary);font:600 11px/16px var(--dsw-font-family);user-select:none;margin:0;padding:4px 14px 2px}.i0TWxG_schemaTree{margin:0 6px 8px 0}.i0TWxG_payload{box-sizing:border-box;overflow-wrap:anywhere;min-height:100%;color:var(--dsw-alias-label-primary);background:var(--dsw-alias-markdown-code-block);font:12px/19px var(--ds-font-family-code);tab-size:2;white-space:pre-wrap;margin:0;padding:14px}.i0TWxG_payloadPreview{min-height:0;padding:6px 14px 8px}.i0TWxG_sourceBlocks{box-sizing:border-box;min-height:100%;padding:12px 14px}.i0TWxG_sourceBlock+.i0TWxG_sourceBlock{margin-top:14px}.i0TWxG_sourceBlockHeader,.i0TWxG_sourceBlockJumpTarget{user-select:none;align-items:center;gap:3px;width:max-content;margin-bottom:3px;display:flex}.i0TWxG_sourceBlockJumpTarget{all:unset;cursor:pointer;user-select:none;align-items:center;gap:3px;width:max-content;margin-bottom:3px;display:flex}.i0TWxG_sourceBlockLabel{color:var(--dsw-alias-label-tertiary);font:11px/16px var(--ds-font-family-code)}.i0TWxG_sourceBlockJumpIcon{color:var(--dsw-alias-label-caption);flex:none}.i0TWxG_sourceBlockJumpTarget:hover .i0TWxG_sourceBlockJumpIcon{color:var(--dsw-alias-label-primary)}.i0TWxG_sourceBlockJumpTarget:focus-visible{outline:none}.i0TWxG_sourceBlockJumpTarget:focus-visible .i0TWxG_sourceBlockJumpIcon{color:var(--dsw-alias-state-business-primary)}.i0TWxG_sourceBlockContent{overflow-wrap:anywhere;color:var(--dsw-alias-label-primary);font:12px/19px var(--ds-font-family-code);tab-size:2;white-space:pre-wrap;background:0 0;margin:0}.i0TWxG_messageImages{flex-direction:column;gap:8px;margin:8px 14px 14px;display:flex}.i0TWxG_messageImagesPreview{gap:6px;margin:6px 14px 8px}.i0TWxG_assistantToolCalls{box-sizing:border-box;max-width:100%;color:var(--dsw-alias-label-secondary);font:11px/17px var(--ds-font-family-code);margin:2px 14px 12px;padding:0;list-style:none}.i0TWxG_assistantToolCallsPreview{margin-top:2px;margin-bottom:8px}.i0TWxG_assistantToolCalls li{min-width:0}.i0TWxG_assistantToolCallButton{all:unset;box-sizing:border-box;cursor:pointer;border-radius:3px;align-items:center;width:calc(100% + 4px);min-width:0;height:19px;margin-left:-4px;padding:0 4px;display:flex}.i0TWxG_assistantToolCallButton:hover{background:var(--dsw-alias-interactive-bg-hover)}.i0TWxG_assistantToolCallButton:focus-visible{background:var(--dsw-alias-interactive-bg-hover);outline:1px solid var(--dsw-alias-state-business-primary);outline-offset:-1px}.i0TWxG_assistantToolCallIcon{color:var(--dsw-alias-label-caption);flex:none;margin-right:5px}.i0TWxG_assistantToolCallButton:hover .i0TWxG_assistantToolCallIcon,.i0TWxG_assistantToolCallButton:focus-visible .i0TWxG_assistantToolCallIcon{color:var(--dsw-alias-label-secondary)}.i0TWxG_assistantToolCallText{white-space:nowrap;flex:1;min-width:0;display:flex;overflow:hidden}.i0TWxG_assistantToolCallName{color:var(--dsw-alias-label-secondary);flex:none;margin-right:5px;font-weight:500}.i0TWxG_assistantToolCallArgs{min-width:0;color:var(--dsw-alias-label-tertiary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.i0TWxG_systemPrompt{box-sizing:border-box}.i0TWxG_toolCatalog{min-height:100%;padding:8px 0 16px}.i0TWxG_toolCatalogItem{border-bottom:.5px solid var(--dsw-alias-border-l1)}.i0TWxG_toolCatalogSummary{box-sizing:border-box;cursor:pointer;user-select:none;grid-template-columns:12px 12px max-content minmax(0,1fr);align-items:center;gap:5px;min-height:30px;padding:4px 12px;list-style:none;display:grid}.i0TWxG_toolCatalogSummary::-webkit-details-marker{display:none}.i0TWxG_toolCatalogSummary:hover{background:var(--dsw-alias-interactive-bg-hover)}.i0TWxG_toolCatalogSummary:focus-visible{background:var(--dsw-alias-interactive-bg-hover);outline:1px solid var(--dsw-alias-state-business-primary);outline-offset:-1px}.i0TWxG_toolCatalogChevron,.i0TWxG_toolCatalogIcon{color:var(--dsw-alias-label-caption)}.i0TWxG_toolCatalogChevron{transition:transform .1s var(--ds-ease-in-out)}.i0TWxG_toolCatalogItem[open] .i0TWxG_toolCatalogChevron{transform:rotate(90deg)}.i0TWxG_toolCatalogName{color:var(--dsw-alias-label-primary);font:500 12px/18px var(--ds-font-family-code)}.i0TWxG_toolCatalogDescription{min-width:0;color:var(--dsw-alias-label-tertiary);font:var(--dsw-font-xs-13);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.i0TWxG_toolCatalogDefinition{background:var(--dsw-alias-bg-base);padding:0 0 8px 29px}.i0TWxG_toolCatalogFullDescription{color:var(--dsw-alias-label-secondary);font:var(--dsw-font-xs-13);white-space:pre-wrap;margin:0;padding:7px 14px 4px 0}.i0TWxG_toolCatalogTree{margin-left:-14px;margin-right:6px}.i0TWxG_resultBlocks{box-sizing:border-box;flex-direction:column;gap:10px;min-height:100%;padding:14px;display:flex}.i0TWxG_resultBlocksPreview{gap:6px;min-height:0;padding:6px 14px 8px}.i0TWxG_resultBlockText{overflow-wrap:anywhere;color:var(--dsw-alias-label-primary);font:12px/19px var(--ds-font-family-code);tab-size:2;white-space:pre-wrap;background:0 0;margin:0}.i0TWxG_overviewPreview .i0TWxG_noPayload{padding:6px 14px 8px}.i0TWxG_noPayload{color:var(--dsw-alias-label-tertiary);font:var(--dsw-font-xs-13);margin:0;padding:18px 14px}@media (width<=760px){.i0TWxG_details{z-index:5;border-left-color:var(--dsw-alias-border-l3);width:min(92%,420px);max-width:92%;position:absolute;top:0;bottom:0;right:0;box-shadow:-12px 0 32px #00000024}}";
|
|
3653
3653
|
const tagId$3 = "@prettier-ai/dsh-client-ui-trajectory/TrajectoryTable.module.css";
|
|
3654
3654
|
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$3) + "]") === null) {
|
|
3655
3655
|
const tag = document.createElement("style");
|
|
@@ -6077,7 +6077,7 @@ window.__ModuleLoader__.load({
|
|
|
6077
6077
|
}
|
|
6078
6078
|
//#endregion
|
|
6079
6079
|
//#region \0dsh-css:/home/runner/work/dsh-publisher/dsh-publisher/upstream/packages/client/ui-trajectory/src/client/TrajectoryToolbar.module.css.mjs
|
|
6080
|
-
const css$2 = ".z3cYuG_root{z-index:4;box-sizing:border-box;width:100%;height:var(--dsh-trajectory-toolbar-height);border-bottom
|
|
6080
|
+
const css$2 = ".z3cYuG_root{z-index:4;box-sizing:border-box;width:100%;height:var(--dsh-trajectory-toolbar-height);border-bottom:.5px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);position:sticky;top:0}.z3cYuG_inner{box-sizing:border-box;align-items:center;gap:8px;width:100%;height:100%;padding:0 6px;display:flex}.z3cYuG_actions{flex:none;align-items:center;gap:2px;display:flex}.z3cYuG_toggle{height:20px;color:var(--dsw-alias-label-tertiary);cursor:pointer;font:var(--dsw-font-xxs-12);background:0 0;border:0;border-radius:3px;flex:none;align-items:center;gap:4px;padding:0 7px;display:inline-flex}.z3cYuG_toggle:hover,.z3cYuG_toggle[aria-pressed=true]{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-interactive-bg-hover)}.z3cYuG_toggle:focus-visible{outline:1px solid var(--dsw-alias-state-business-primary);outline-offset:1px}.z3cYuG_toggleIcon{stroke:currentColor;stroke-width:1.25px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:12px;height:12px}.z3cYuG_control{box-sizing:border-box;width:88px;height:20px;color:var(--dsw-alias-label-tertiary);cursor:pointer;font:var(--dsw-font-xxs-12);background:0 0;border:0;border-radius:0;flex:none;justify-content:center;align-items:center;gap:4px;padding:0 5px;display:inline-flex}.z3cYuG_control[hidden]{display:none}.z3cYuG_control:hover:not(:disabled),.z3cYuG_control[aria-checked=true],.z3cYuG_control[aria-pressed=true]{color:var(--dsw-alias-label-primary)}.z3cYuG_control:focus-visible{outline:1px solid var(--dsw-alias-state-business-primary);outline-offset:1px}.z3cYuG_control:disabled{color:var(--dsw-alias-label-dimmed);cursor:not-allowed}.z3cYuG_controlTrack{background:var(--dsw-alias-border-l2);width:20px;height:10px;transition:background-color .12s var(--ds-ease-in-out);border-radius:5px;flex:none;display:inline-block;position:relative}.z3cYuG_controlThumb{corner-shape:round;background:var(--dsw-alias-bg-layer-1);width:6px;height:6px;transition:transform .12s var(--ds-ease-in-out);border-radius:50%;position:absolute;top:2px;left:2px}.z3cYuG_controlTrack[data-on=true]{background:var(--dsw-alias-state-business-primary)}.z3cYuG_controlTrack[data-on=true] .z3cYuG_controlThumb{transform:translate(10px)}.z3cYuG_action{height:20px;color:var(--dsw-alias-label-tertiary);cursor:pointer;font:var(--dsw-font-xxs-12);background:0 0;border:0;border-radius:3px;flex:none;align-items:center;gap:4px;padding:0 5px;display:inline-flex}.z3cYuG_action:hover{color:var(--dsw-alias-label-primary);background:var(--dsw-alias-interactive-bg-hover)}.z3cYuG_action:focus-visible{outline:1px solid var(--dsw-alias-state-business-primary);outline-offset:1px}.z3cYuG_actionIcon{color:var(--dsw-alias-label-tertiary);font:14px/14px var(--ds-font-family-code)}.z3cYuG_search{border:.5px solid var(--dsw-alias-border-l4);min-width:84px;height:22px;color:var(--dsw-alias-label-caption);background:var(--dsw-alias-bg-layer-2);border-radius:4px;flex:0 164px;align-items:center;gap:4px;margin-left:auto;padding:0 6px;display:flex}.z3cYuG_search:hover{border-color:var(--dsw-alias-label-caption)}.z3cYuG_search:focus-within{border-color:var(--dsw-alias-state-business-primary);background:var(--dsw-alias-bg-layer-1)}.z3cYuG_searchIcon{flex:none}.z3cYuG_searchInput{width:100%;min-width:0;color:var(--dsw-alias-label-primary);font:var(--dsw-font-xxs-12);background:0 0;border:0;outline:0;padding:0}.z3cYuG_searchInput::placeholder{color:var(--dsw-alias-label-caption)}.z3cYuG_searchInput::-webkit-search-cancel-button{cursor:pointer;width:12px;height:12px}";
|
|
6081
6081
|
const tagId$2 = "@prettier-ai/dsh-client-ui-trajectory/TrajectoryToolbar.module.css";
|
|
6082
6082
|
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$2) + "]") === null) {
|
|
6083
6083
|
const tag = document.createElement("style");
|
|
@@ -6330,7 +6330,7 @@ window.__ModuleLoader__.load({
|
|
|
6330
6330
|
}
|
|
6331
6331
|
//#endregion
|
|
6332
6332
|
//#region \0dsh-css:/home/runner/work/dsh-publisher/dsh-publisher/upstream/packages/client/ui-trajectory/src/client/TrajectoryTimeline.module.css.mjs
|
|
6333
|
-
const css$1 = ".nj6Q5a_root{z-index:1;isolation:isolate;border-bottom
|
|
6333
|
+
const css$1 = ".nj6Q5a_root{z-index:1;isolation:isolate;border-bottom:.5px solid var(--dsw-alias-border-l2);user-select:none;flex:none;position:relative}.nj6Q5a_root [role=tooltip]{font:var(--dsw-font-xxxs-11)}.nj6Q5a_plot{background:var(--dsw-alias-bg-layer-2);grid-template-columns:44px minmax(0,1fr);height:50px;display:grid;overflow:hidden}.nj6Q5a_labels{border-right:.5px solid var(--dsw-alias-border-l1);color:var(--dsw-alias-label-caption);font:var(--dsw-font-xs-13);font-size:10px;line-height:1;position:relative}.nj6Q5a_labels span{text-align:right;justify-content:flex-end;align-items:center;height:8px;display:flex;position:absolute;right:3px}.nj6Q5a_labels span:first-child{top:7px}.nj6Q5a_labels span:nth-child(2){top:21px}.nj6Q5a_labels span:nth-child(3){top:35px}.nj6Q5a_track{cursor:crosshair;touch-action:none;position:relative;overflow:hidden}.nj6Q5a_track[data-panning=true]{cursor:grabbing}.nj6Q5a_earlierHistory{z-index:5;appearance:none;box-sizing:border-box;background:linear-gradient(to right, var(--dsw-alias-bg-layer-2) 0, var(--dsw-alias-bg-layer-2) 38%, transparent 100%);width:28px;color:var(--dsw-alias-label-secondary);font:var(--dsw-font-xs-13);opacity:.72;cursor:pointer;border:0;outline:none;justify-content:flex-start;align-items:center;padding-left:3px;line-height:1;display:flex;position:absolute;top:0;bottom:0;left:0}.nj6Q5a_earlierHistory:hover{opacity:1}.nj6Q5a_earlierHistory[aria-disabled=true]{cursor:default}.nj6Q5a_earlierHistory:focus-visible{box-shadow:inset 0 0 0 1px var(--dsw-alias-border-l2)}.nj6Q5a_empty{color:var(--dsw-alias-label-caption);font:var(--dsw-font-xs-13);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.nj6Q5a_track:focus-visible{outline:1px solid var(--dsw-alias-state-business-primary);outline-offset:-1px}.nj6Q5a_lanes{z-index:2;top:7px;bottom:7px;left:var(--trajectory-domain-left);width:var(--trajectory-domain-width);position:absolute}.nj6Q5a_turnBoundaries{z-index:3;top:0;bottom:0;left:var(--trajectory-domain-left);width:var(--trajectory-domain-width);pointer-events:none;position:absolute}@media (prefers-reduced-motion:no-preference){.nj6Q5a_lanes[data-animate-viewport=true],.nj6Q5a_turnBoundaries[data-animate-viewport=true]{transition:left .18s ease-out}}.nj6Q5a_turnBoundary{top:0;bottom:0;left:var(--trajectory-turn-left);background:var(--dsw-alias-border-l2);width:.5px;position:absolute}.nj6Q5a_span{top:calc(var(--trajectory-span-lane) * 14px);left:calc(var(--trajectory-span-left) + var(--trajectory-span-gap));width:max(2px, calc(var(--trajectory-span-width) - var(--trajectory-span-gap) - var(--trajectory-span-gap)));background:var(--dsw-alias-label-secondary);opacity:.78;border-radius:1px;min-width:2px;height:8px;position:absolute}.nj6Q5a_span[data-timeline-span=user]{background:var(--dsw-alias-state-business-primary)}.nj6Q5a_span[data-timeline-span=context]{background:color-mix(in srgb, var(--dsw-alias-state-success-primary) 68%, var(--dsw-alias-label-secondary))}.nj6Q5a_span[data-timeline-span=message]{--trajectory-assistant-decoding-color:color-mix(in srgb, var(--dsw-alias-brand-primary-new-colorprimary-new-color) 60%, var(--dsw-alias-state-error-secondary));--trajectory-assistant-ttft-color:color-mix(in srgb, var(--trajectory-assistant-decoding-color) 54%, var(--dsw-alias-bg-layer-2));background:var(--trajectory-assistant-decoding-color);opacity:1}.nj6Q5a_span[data-timeline-span=message][data-assistant-timing=true]{background:linear-gradient(to right, var(--trajectory-assistant-ttft-color) 0, var(--trajectory-assistant-ttft-color) var(--trajectory-assistant-ttft), var(--trajectory-assistant-decoding-color) var(--trajectory-assistant-ttft), var(--trajectory-assistant-decoding-color) 100%)}.nj6Q5a_span[data-timeline-span=tool],.nj6Q5a_span[data-timeline-span=subtool]{background:var(--dsw-alias-state-warn-label);opacity:1}.nj6Q5a_span[data-error=true]{background:var(--dsw-alias-state-error-primary)}.nj6Q5a_span[data-equal-duration=true]{width:8px;min-width:8px}.nj6Q5a_span[data-selected=false]{opacity:.2}.nj6Q5a_span[data-hovered=true]:not([data-current=true]){z-index:1;opacity:1;box-shadow:0 0 0 1px var(--dsw-alias-bg-layer-2), 0 0 0 2px color-mix(in srgb, var(--dsw-alias-state-business-primary) 80%, transparent)}.nj6Q5a_span[data-current=true]{z-index:1;opacity:1;box-shadow:0 0 0 1px var(--dsw-alias-bg-layer-2), 0 0 0 2px var(--dsw-alias-state-business-primary)}.nj6Q5a_span[data-search-match=false]{opacity:.14}.nj6Q5a_selection{z-index:1;top:0;bottom:0;left:var(--trajectory-selection-left);width:var(--trajectory-selection-width);background:color-mix(in srgb, var(--dsw-alias-state-business-primary) 12%, transparent);min-width:1px;box-shadow:-100vw 0 0 100vw color-mix(in srgb, var(--dsw-alias-bg-layer-1) 58%, transparent), 100vw 0 0 100vw color-mix(in srgb, var(--dsw-alias-bg-layer-1) 58%, transparent);pointer-events:none;position:absolute}.nj6Q5a_selectionEdges{z-index:4;top:0;bottom:0;left:var(--trajectory-selection-left);width:var(--trajectory-selection-width);pointer-events:none;min-width:1px;position:absolute}.nj6Q5a_hoverLine{z-index:4;top:0;bottom:0;left:clamp(0px, calc(var(--trajectory-hover-left) - 1px), calc(100% - 2px));background:var(--dsw-alias-state-business-primary);pointer-events:none;width:2px;position:absolute}.nj6Q5a_selectionEdges:before,.nj6Q5a_selectionEdges:after{background:var(--dsw-alias-state-business-primary);content:\"\";width:3px;position:absolute;top:0;bottom:0}.nj6Q5a_selectionEdges:before{left:0}.nj6Q5a_selectionEdges:after{right:0}.nj6Q5a_selectionEdges[data-dragging=true]:before,.nj6Q5a_selectionEdges[data-dragging=true]:after{width:2px}.nj6Q5a_selection[data-dragging=true]{background:color-mix(in srgb, var(--dsw-alias-state-business-primary) 18%, transparent)}";
|
|
6334
6334
|
const tagId$1 = "@prettier-ai/dsh-client-ui-trajectory/TrajectoryTimeline.module.css";
|
|
6335
6335
|
if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$1) + "]") === null) {
|
|
6336
6336
|
const tag = document.createElement("style");
|
|
@@ -7726,6 +7726,11 @@ window.__ModuleLoader__.load({
|
|
|
7726
7726
|
const EMPTY_TURN_IDS = /* @__PURE__ */ new Set();
|
|
7727
7727
|
const EMPTY_RECORD_IDS = /* @__PURE__ */ new Set();
|
|
7728
7728
|
const SEARCH_INDEX_THROTTLE_MS = 3e3;
|
|
7729
|
+
const HISTORY_PAGE_NODES = 50;
|
|
7730
|
+
function containsCall(calls, callId) {
|
|
7731
|
+
for (const call of calls) if (call.callId === callId || containsCall(call.subCalls, callId)) return true;
|
|
7732
|
+
return false;
|
|
7733
|
+
}
|
|
7729
7734
|
function lastCellIndex(turns) {
|
|
7730
7735
|
let last = 0;
|
|
7731
7736
|
for (const turn of turns) for (const group of turn.groups) for (const cell of group.cells) last = Math.max(last, cell.index);
|
|
@@ -7797,10 +7802,36 @@ window.__ModuleLoader__.load({
|
|
|
7797
7802
|
const [selectedTimelineIndex, setSelectedTimelineIndex] = (0, react.useState)(null);
|
|
7798
7803
|
const [timelineRecordSelection, setTimelineRecordSelection] = (0, react.useState)(null);
|
|
7799
7804
|
const [timelineRecordFocus, setTimelineRecordFocus] = (0, react.useState)(null);
|
|
7800
|
-
const
|
|
7805
|
+
const completeInspection = useTrajectory((snapshot) => snapshot);
|
|
7806
|
+
const latestNodeSeq = completeInspection.eventNodes.at(-1)?.seq;
|
|
7807
|
+
const [historyTailSeq, setHistoryTailSeq] = (0, react.useState)(latestNodeSeq);
|
|
7808
|
+
const [historyNodeLimit, setHistoryNodeLimit] = (0, react.useState)(HISTORY_PAGE_NODES);
|
|
7809
|
+
const fixedTailSeq = historyTailSeq ?? latestNodeSeq;
|
|
7810
|
+
const historyTailIndex = fixedTailSeq === void 0 ? -1 : completeInspection.eventNodes.findLastIndex((node) => node.seq <= fixedTailSeq);
|
|
7811
|
+
const historyEndIndex = historyTailIndex < 0 && latestNodeSeq !== void 0 ? completeInspection.eventNodes.length : historyTailIndex + 1;
|
|
7812
|
+
const historyStartIndex = Math.max(0, historyEndIndex - historyNodeLimit);
|
|
7813
|
+
(0, react.useEffect)(() => {
|
|
7814
|
+
if (latestNodeSeq !== void 0 && (historyTailSeq === void 0 || historyTailIndex < 0)) setHistoryTailSeq(latestNodeSeq);
|
|
7815
|
+
}, [
|
|
7816
|
+
historyTailIndex,
|
|
7817
|
+
historyTailSeq,
|
|
7818
|
+
latestNodeSeq
|
|
7819
|
+
]);
|
|
7820
|
+
const inspection = (0, react.useMemo)(() => {
|
|
7821
|
+
if (historyStartIndex === 0) return completeInspection;
|
|
7822
|
+
const eventNodes = completeInspection.eventNodes.slice(historyStartIndex);
|
|
7823
|
+
const firstSeq = eventNodes[0]?.seq ?? 0;
|
|
7824
|
+
return {
|
|
7825
|
+
...completeInspection,
|
|
7826
|
+
eventNodes,
|
|
7827
|
+
requests: completeInspection.requests.filter((request) => request.startSeq >= firstSeq || (request.resultSeq ?? -1) >= firstSeq)
|
|
7828
|
+
};
|
|
7829
|
+
}, [completeInspection, historyStartIndex]);
|
|
7801
7830
|
const historyLoading = useSession((snapshot) => snapshot.openState === "loading");
|
|
7802
7831
|
const olderHistoryLoading = useSession((snapshot) => snapshot.loadingOlder);
|
|
7803
|
-
const
|
|
7832
|
+
const sessionHasOlderHistory = useSession((snapshot) => snapshot.hasMore);
|
|
7833
|
+
const hasResidentOlderHistory = historyStartIndex > 0;
|
|
7834
|
+
const hasOlderHistory = hasResidentOlderHistory || sessionHasOlderHistory;
|
|
7804
7835
|
const nodes = inspection.eventNodes;
|
|
7805
7836
|
const eventLocations = inspection.eventLocations;
|
|
7806
7837
|
const historyBaseSeq = nodes[0]?.seq ?? 0;
|
|
@@ -7809,14 +7840,19 @@ window.__ModuleLoader__.load({
|
|
|
7809
7840
|
const requests = inspection.requests;
|
|
7810
7841
|
const callSchemas = inspection.callSchemas;
|
|
7811
7842
|
const inspectCallId = viewRequest?.view === "trajectory" ? viewRequest.focus : null;
|
|
7843
|
+
const inspectNodeIndex = (0, react.useMemo)(() => inspectCallId === null ? -1 : completeInspection.eventNodes.findIndex((node) => node.kind === "assistant" ? node.blocks.some((block) => block.kind === "tool-call" && block.callId === inspectCallId) : node.kind === "tool-result" && containsCall([node], inspectCallId)), [completeInspection.eventNodes, inspectCallId]);
|
|
7844
|
+
(0, react.useEffect)(() => {
|
|
7845
|
+
if (inspectNodeIndex < 0 || inspectNodeIndex >= historyStartIndex) return;
|
|
7846
|
+
setHistoryNodeLimit((limit) => limit + historyStartIndex - inspectNodeIndex);
|
|
7847
|
+
}, [historyStartIndex, inspectNodeIndex]);
|
|
7812
7848
|
const requestNumbers = (0, react.useMemo)(() => {
|
|
7813
7849
|
const assistantsByStep = /* @__PURE__ */ new Map();
|
|
7814
|
-
for (const node of
|
|
7850
|
+
for (const node of completeInspection.eventNodes) {
|
|
7815
7851
|
if (node.kind !== "assistant" || node.step <= 0) continue;
|
|
7816
7852
|
assistantsByStep.set(`${node.turn}\u0000${node.step}`, node);
|
|
7817
7853
|
}
|
|
7818
|
-
const requestsByStep = new Map(requests.filter((request) => request.purpose === "assistant").map((request) => [`${request.turn}\u0000${request.step}`, request]));
|
|
7819
|
-
const orderedRequests = [...requests.map((request) => ({
|
|
7854
|
+
const requestsByStep = new Map(completeInspection.requests.filter((request) => request.purpose === "assistant").map((request) => [`${request.turn}\u0000${request.step}`, request]));
|
|
7855
|
+
const orderedRequests = [...completeInspection.requests.map((request) => ({
|
|
7820
7856
|
seq: request.startSeq,
|
|
7821
7857
|
request,
|
|
7822
7858
|
node: request.purpose === "assistant" ? assistantsByStep.get(`${request.turn}\u0000${request.step}`) : void 0
|
|
@@ -7885,8 +7921,8 @@ window.__ModuleLoader__.load({
|
|
|
7885
7921
|
}
|
|
7886
7922
|
return numbered;
|
|
7887
7923
|
}, [
|
|
7888
|
-
|
|
7889
|
-
requests,
|
|
7924
|
+
completeInspection.eventNodes,
|
|
7925
|
+
completeInspection.requests,
|
|
7890
7926
|
t
|
|
7891
7927
|
]);
|
|
7892
7928
|
const partialTurn = partial?.turn ?? null;
|
|
@@ -8036,9 +8072,11 @@ window.__ModuleLoader__.load({
|
|
|
8036
8072
|
return collapsed;
|
|
8037
8073
|
});
|
|
8038
8074
|
};
|
|
8039
|
-
const loadEarlierHistory = (0, react.useCallback)(() => {
|
|
8040
|
-
|
|
8041
|
-
|
|
8075
|
+
const loadEarlierHistory = (0, react.useCallback)(async () => {
|
|
8076
|
+
if (!hasResidentOlderHistory && !await loadOlder()) return false;
|
|
8077
|
+
setHistoryNodeLimit((limit) => limit + HISTORY_PAGE_NODES);
|
|
8078
|
+
return true;
|
|
8079
|
+
}, [hasResidentOlderHistory, loadOlder]);
|
|
8042
8080
|
return (0, react_jsx_runtime.jsxs)("div", {
|
|
8043
8081
|
className: views_module_css_default.root,
|
|
8044
8082
|
"data-conversation-composer-overlay": "",
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@prettier-ai/dsh-client-ui-trajectory",
|
|
3
3
|
"description": "Trajectory event ledger with an interactive timing overview: pure-consumer plugin registering into the conversation ViewMap (no service)",
|
|
4
|
-
"version": "0.1.2-alpha.
|
|
4
|
+
"version": "0.1.2-alpha.4",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
7
7
|
},
|
|
@@ -18,10 +18,6 @@
|
|
|
18
18
|
"types": "./lib/types/index.d.ts",
|
|
19
19
|
"default": "./lib/index.js"
|
|
20
20
|
},
|
|
21
|
-
"./invariant": {
|
|
22
|
-
"types": "./lib/types/invariant.d.ts",
|
|
23
|
-
"default": "./lib/invariant.js"
|
|
24
|
-
},
|
|
25
21
|
"./client": {
|
|
26
22
|
"types": "./lib/types/client/index.d.ts",
|
|
27
23
|
"default": "./lib/client.js"
|
|
@@ -54,28 +50,26 @@
|
|
|
54
50
|
"@types/react-dom": "~18.3.0",
|
|
55
51
|
"react": "^18.2.0",
|
|
56
52
|
"react-dom": "^18.2.0",
|
|
57
|
-
"@prettier-ai/dsh-agent": "^0.1.2-alpha.
|
|
58
|
-
"@prettier-ai/dsh-client-
|
|
59
|
-
"@prettier-ai/dsh-client-
|
|
60
|
-
"@prettier-ai/dsh-client-ui-primitives": "^0.1.2-alpha.
|
|
61
|
-
"@prettier-ai/dsh-client-ui-
|
|
62
|
-
"@prettier-ai/dsh-client-
|
|
63
|
-
"@prettier-ai/dsh-compaction": "^0.1.2-alpha.
|
|
64
|
-
"@prettier-ai/dsh-tools": "^0.1.2-alpha.3",
|
|
65
|
-
"@prettier-ai/dsh-client-store": "^0.1.2-alpha.3",
|
|
53
|
+
"@prettier-ai/dsh-agent": "^0.1.2-alpha.4",
|
|
54
|
+
"@prettier-ai/dsh-client-locale": "^0.1.2-alpha.4",
|
|
55
|
+
"@prettier-ai/dsh-client-test-runtime": "^0.1.2-alpha.4",
|
|
56
|
+
"@prettier-ai/dsh-client-ui-primitives": "^0.1.2-alpha.4",
|
|
57
|
+
"@prettier-ai/dsh-client-ui-conversation": "^0.1.2-alpha.4",
|
|
58
|
+
"@prettier-ai/dsh-client-ui-slots": "^0.1.2-alpha.4",
|
|
59
|
+
"@prettier-ai/dsh-compaction": "^0.1.2-alpha.4",
|
|
66
60
|
"@prettier-ai/cordis": "^4.0.2",
|
|
67
|
-
"@prettier-ai/dsh-
|
|
68
|
-
"@prettier-ai/dsh-
|
|
69
|
-
"@prettier-ai/dsh-
|
|
70
|
-
"@prettier-ai/dsh-
|
|
71
|
-
"@prettier-ai/dsh-
|
|
72
|
-
"@prettier-ai/dsh-
|
|
73
|
-
"@prettier-ai/dsh-
|
|
74
|
-
"@prettier-ai/dsh-
|
|
61
|
+
"@prettier-ai/dsh-tools": "^0.1.2-alpha.4",
|
|
62
|
+
"@prettier-ai/dsh-client-ui-chat": "^0.1.2-alpha.4",
|
|
63
|
+
"@prettier-ai/dsh-session": "^0.1.2-alpha.4",
|
|
64
|
+
"@prettier-ai/dsh-client-store": "^0.1.2-alpha.4",
|
|
65
|
+
"@prettier-ai/dsh-api-session-controller": "^0.1.2-alpha.4",
|
|
66
|
+
"@prettier-ai/dsh-client-ui-renderer": "^0.1.2-alpha.4",
|
|
67
|
+
"@prettier-ai/dsh-client-ui-session": "^0.1.2-alpha.4",
|
|
68
|
+
"@prettier-ai/dsh-llm": "^0.1.2-alpha.4",
|
|
69
|
+
"@prettier-ai/dsh-attachment": "^0.1.2-alpha.4"
|
|
75
70
|
},
|
|
76
71
|
"files": [
|
|
77
72
|
"lib/index.js",
|
|
78
|
-
"lib/invariant.js",
|
|
79
73
|
"lib/client.js",
|
|
80
74
|
"lib/types/**/*.d.ts"
|
|
81
75
|
],
|
package/lib/invariant.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
//#region lib/types/invariant.js
|
|
2
|
-
/**
|
|
3
|
-
* Package-owned invariant companion for `@prettier-ai/dsh-client-ui-trajectory`.
|
|
4
|
-
* @module @prettier-ai/dsh-client-ui-trajectory/invariant
|
|
5
|
-
*/
|
|
6
|
-
const PACKAGE_NAME = "@prettier-ai/dsh-client-ui-trajectory";
|
|
7
|
-
/** Cordis companion plugin name. */
|
|
8
|
-
const name = "client-ui-trajectory-invariant";
|
|
9
|
-
/** Service required before the companion can reserve package ownership. */
|
|
10
|
-
const inject = ["invariants"];
|
|
11
|
-
/**
|
|
12
|
-
* No runtime invariant: a pure-consumer plugin — it emits no cordis events
|
|
13
|
-
* and owns no mutable cross-plugin state; its view-slot registration is a
|
|
14
|
-
* plain effect whose disposal the slot ledger's own specs and this
|
|
15
|
-
* package's behavior specs observe directly.
|
|
16
|
-
*/
|
|
17
|
-
const install = () => {};
|
|
18
|
-
/**
|
|
19
|
-
* Register this package's invariant companion.
|
|
20
|
-
* @param ctx - Cordis context carrying the invariant service.
|
|
21
|
-
* @returns the installed registration's disposer after setup succeeds.
|
|
22
|
-
*/
|
|
23
|
-
const apply = (ctx) => Promise.resolve(ctx.invariants.register(PACKAGE_NAME, install));
|
|
24
|
-
//#endregion
|
|
25
|
-
export { apply, inject, name };
|
package/lib/types/invariant.d.ts
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Package-owned invariant companion for `@prettier-ai/dsh-client-ui-trajectory`.
|
|
3
|
-
* @module @prettier-ai/dsh-client-ui-trajectory/invariant
|
|
4
|
-
*/
|
|
5
|
-
import type { Context } from '@prettier-ai/cordis';
|
|
6
|
-
/** Cordis companion plugin name. */
|
|
7
|
-
export declare const name = "client-ui-trajectory-invariant";
|
|
8
|
-
/** Service required before the companion can reserve package ownership. */
|
|
9
|
-
export declare const inject: string[];
|
|
10
|
-
/**
|
|
11
|
-
* Register this package's invariant companion.
|
|
12
|
-
* @param ctx - Cordis context carrying the invariant service.
|
|
13
|
-
* @returns the installed registration's disposer after setup succeeds.
|
|
14
|
-
*/
|
|
15
|
-
export declare const apply: (ctx: Context) => Promise<() => void>;
|
|
16
|
-
//# sourceMappingURL=invariant.d.ts.map
|