Skip to content

Commit 0ede77d

Browse files
Connor ClarkDevtools-frontend LUCI CQ
authored andcommitted
[AI] Use performance markdown renderer for historical chats
Bug: 432028409 Change-Id: Ife9d8b9455f3226329bd96b5e867a14a60e1648a Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6977806 Reviewed-by: Paul Irish <paulirish@chromium.org> Commit-Queue: Connor Clark <cjamcl@chromium.org> Auto-Submit: Connor Clark <cjamcl@chromium.org>
1 parent e14475f commit 0ede77d

File tree

2 files changed

+15
-9
lines changed

2 files changed

+15
-9
lines changed

front_end/panels/ai_assistance/AiAssistancePanel.ts

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -266,12 +266,18 @@ async function getEmptyStateSuggestions(
266266
}
267267
}
268268

269-
function getMarkdownRenderer(context: AiAssistanceModel.ConversationContext<unknown>|null):
270-
MarkdownRendererWithCodeBlock {
271-
if (context instanceof AiAssistanceModel.PerformanceTraceContext && !context.external) {
272-
const focus = context.getItem();
273-
return new PerformanceAgentMarkdownRenderer(
274-
focus.data.parsedTrace.data.Meta.mainFrameId, focus.lookupEvent.bind(focus));
269+
function getMarkdownRenderer(
270+
context: AiAssistanceModel.ConversationContext<unknown>|null,
271+
conversation?: AiAssistanceModel.Conversation): MarkdownRendererWithCodeBlock {
272+
if (context instanceof AiAssistanceModel.PerformanceTraceContext) {
273+
if (!context.external) {
274+
const focus = context.getItem();
275+
return new PerformanceAgentMarkdownRenderer(
276+
focus.data.parsedTrace.data.Meta.mainFrameId, focus.lookupEvent.bind(focus));
277+
}
278+
} else if (conversation?.type === AiAssistanceModel.ConversationType.PERFORMANCE) {
279+
// Handle historical conversations (can't linkify anything).
280+
return new PerformanceAgentMarkdownRenderer();
275281
}
276282

277283
return new MarkdownRendererWithCodeBlock();
@@ -851,7 +857,7 @@ export class AiAssistancePanel extends UI.Panel.Panel {
851857

852858
override async performUpdate(): Promise<void> {
853859
const emptyStateSuggestions = await getEmptyStateSuggestions(this.#selectedContext, this.#conversation);
854-
const markdownRenderer = getMarkdownRenderer(this.#selectedContext);
860+
const markdownRenderer = getMarkdownRenderer(this.#selectedContext, this.#conversation);
855861

856862
this.view(
857863
{

front_end/panels/ai_assistance/components/PerformanceAgentMarkdownRenderer.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ const {ref, createRef} = Lit.Directives;
1616

1717
export class PerformanceAgentMarkdownRenderer extends MarkdownRendererWithCodeBlock {
1818
constructor(
19-
private mainFrameId: string,
20-
private lookupEvent: (key: Trace.Types.File.SerializableKey) => Trace.Types.Events.Event | null) {
19+
private mainFrameId = '',
20+
private lookupEvent: (key: Trace.Types.File.SerializableKey) => Trace.Types.Events.Event | null = () => null) {
2121
super();
2222
}
2323

0 commit comments

Comments
 (0)