From 69fddfabc377905a126f05b1e8621b8491e6f6c9 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Thu, 12 Feb 2026 02:40:14 +0000
Subject: [PATCH 1/3] Initial plan
From 4e25222f7fcb3f02d17ef4fcfb9703aa95e0ed95 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Thu, 12 Feb 2026 02:47:56 +0000
Subject: [PATCH 2/3] Update agent output to use "Agentic Conversation" title
in HTML details
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
---
actions/setup/js/log_parser_bootstrap.test.cjs | 4 ++--
actions/setup/js/log_parser_shared.cjs | 3 +--
actions/setup/js/log_parser_shared.test.cjs | 6 +++---
3 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/actions/setup/js/log_parser_bootstrap.test.cjs b/actions/setup/js/log_parser_bootstrap.test.cjs
index 57c08a8ba2..0b89fd8b24 100644
--- a/actions/setup/js/log_parser_bootstrap.test.cjs
+++ b/actions/setup/js/log_parser_bootstrap.test.cjs
@@ -45,7 +45,7 @@ describe("log_parser_bootstrap.cjs", () => {
(runLogParser({ parseLog: mockParseLog, parserName: "TestParser" }),
expect(mockParseLog).toHaveBeenCalledWith("Test log content"),
expect(mockCore.info).toHaveBeenCalledWith("TestParser log parsed successfully"),
- expect(mockCore.summary.addRaw).toHaveBeenCalledWith("\n🤖 TestParser CLI Session
\n\n## Parsed Log\n\nSuccess!\n "),
+ expect(mockCore.summary.addRaw).toHaveBeenCalledWith("\nAgentic Conversation
\n\n## Parsed Log\n\nSuccess!\n "),
expect(mockCore.summary.write).toHaveBeenCalled(),
fs.unlinkSync(logFile),
fs.rmdirSync(tmpDir));
@@ -57,7 +57,7 @@ describe("log_parser_bootstrap.cjs", () => {
const mockParseLog = vi.fn().mockReturnValue({ markdown: "## Result\n", mcpFailures: [], maxTurnsHit: !1 });
(runLogParser({ parseLog: mockParseLog, parserName: "TestParser" }),
expect(mockCore.info).toHaveBeenCalledWith("TestParser log parsed successfully"),
- expect(mockCore.summary.addRaw).toHaveBeenCalledWith("\n🤖 TestParser CLI Session
\n\n## Result\n\n "),
+ expect(mockCore.summary.addRaw).toHaveBeenCalledWith("\nAgentic Conversation
\n\n## Result\n\n "),
expect(mockCore.setFailed).not.toHaveBeenCalled(),
fs.unlinkSync(logFile),
fs.rmdirSync(tmpDir));
diff --git a/actions/setup/js/log_parser_shared.cjs b/actions/setup/js/log_parser_shared.cjs
index f6c918bff6..b88fc1e568 100644
--- a/actions/setup/js/log_parser_shared.cjs
+++ b/actions/setup/js/log_parser_shared.cjs
@@ -1430,8 +1430,7 @@ function wrapAgentLogInSection(markdown, options = {}) {
}
const openAttr = open ? " open" : "";
- const emoji = "🤖";
- const title = `${emoji} ${parserName} CLI Session`;
+ const title = "Agentic Conversation";
return `\n${title}
\n\n${markdown}\n `;
}
diff --git a/actions/setup/js/log_parser_shared.test.cjs b/actions/setup/js/log_parser_shared.test.cjs
index 6b157c27b4..43e2bc5476 100644
--- a/actions/setup/js/log_parser_shared.test.cjs
+++ b/actions/setup/js/log_parser_shared.test.cjs
@@ -2095,7 +2095,7 @@ describe("log_parser_shared.cjs", () => {
const result = wrapAgentLogInSection(markdown, { parserName: "Copilot" });
expect(result).toContain("");
- expect(result).toContain("🤖 Copilot CLI Session
");
+ expect(result).toContain("Agentic Conversation
");
expect(result).toContain(markdown);
expect(result).toContain(" ");
});
@@ -2106,7 +2106,7 @@ describe("log_parser_shared.cjs", () => {
const markdown = "Test content";
const result = wrapAgentLogInSection(markdown, { parserName: "Claude" });
- expect(result).toContain("🤖 Claude CLI Session");
+ expect(result).toContain("Agentic Conversation");
});
it("should allow closed state when open is false", async () => {
@@ -2125,7 +2125,7 @@ describe("log_parser_shared.cjs", () => {
const markdown = "Test content";
const result = wrapAgentLogInSection(markdown);
- expect(result).toContain("🤖 Agent CLI Session");
+ expect(result).toContain("Agentic Conversation");
});
it("should return empty string for empty or undefined markdown", async () => {
From 3dc0490ed69fb6a706311000e254c177deab90cf Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Thu, 12 Feb 2026 02:58:08 +0000
Subject: [PATCH 3/3] Wrap conversation.md content in details element for
Copilot
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
---
actions/setup/js/log_parser_bootstrap.cjs | 8 ++++++--
actions/setup/js/log_parser_bootstrap.test.cjs | 9 ++++++---
2 files changed, 12 insertions(+), 5 deletions(-)
diff --git a/actions/setup/js/log_parser_bootstrap.cjs b/actions/setup/js/log_parser_bootstrap.cjs
index 782da3d536..47753b8051 100644
--- a/actions/setup/js/log_parser_bootstrap.cjs
+++ b/actions/setup/js/log_parser_bootstrap.cjs
@@ -63,9 +63,13 @@ async function runLogParser(options) {
logEntries: [],
};
- // Write to step summary directly
+ // Write to step summary, wrapped in details/summary section
if (result.markdown) {
- core.summary.addRaw(result.markdown);
+ const wrappedMarkdown = wrapAgentLogInSection(result.markdown, {
+ parserName,
+ open: true,
+ });
+ core.summary.addRaw(wrappedMarkdown);
await core.summary.write();
core.info(`Wrote conversation markdown to step summary (${Buffer.byteLength(result.markdown, "utf8")} bytes)`);
}
diff --git a/actions/setup/js/log_parser_bootstrap.test.cjs b/actions/setup/js/log_parser_bootstrap.test.cjs
index 0b89fd8b24..e564586332 100644
--- a/actions/setup/js/log_parser_bootstrap.test.cjs
+++ b/actions/setup/js/log_parser_bootstrap.test.cjs
@@ -223,14 +223,17 @@ More content.`;
const mockParseLog = vi.fn();
runLogParser({ parseLog: mockParseLog, parserName: "Copilot", supportsDirectories: true });
- // Should transform headers (# to ##, ## to ###, etc.)
+ // Should transform headers (# to ##, ## to ###, etc.) and wrap in details/summary
const summaryCall = mockCore.summary.addRaw.mock.calls[0];
expect(summaryCall).toBeDefined();
+ // Content should be wrapped in details/summary with "Agentic Conversation" title
+ expect(summaryCall[0]).toContain("");
+ expect(summaryCall[0]).toContain("Agentic Conversation
");
+ expect(summaryCall[0]).toContain(" ");
+ // Should transform headers (# to ##, ## to ###, etc.)
expect(summaryCall[0]).toContain("## Main Title");
expect(summaryCall[0]).toContain("### Section 1");
expect(summaryCall[0]).toContain("#### Subsection");
- // Verify the original header level was transformed (check start of line)
- expect(summaryCall[0].split("\n")[0]).toBe("## Main Title");
// Parser should not be called since conversation.md is used directly
expect(mockParseLog).not.toHaveBeenCalled();