From 5a1c528dd5a9e973ce57722bc82fd9946697df70 Mon Sep 17 00:00:00 2001 From: Laxman Reddy Aileni Date: Wed, 15 Jul 2026 18:28:19 +0000 Subject: [PATCH 1/2] fix: render tool summary header and content as one container When a tool summary (e.g. an MCP tool call) is expanded, the header and the collapsed content were shown as separate rounded boxes. Square the header's bottom corners and give the expanded content matching side and bottom borders (with the header's bottom border acting as the divider), and clip the inner cards to the container shape, so the summary reads as a single container with a divider between the header and the parameters/results. --- .../components/chat/_chat-item-card.scss | 23 +++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/src/styles/components/chat/_chat-item-card.scss b/src/styles/components/chat/_chat-item-card.scss index 47e3cb736..d6a4c5ad8 100644 --- a/src/styles/components/chat/_chat-item-card.scss +++ b/src/styles/components/chat/_chat-item-card.scss @@ -457,8 +457,27 @@ display: none; flex-flow: column nowrap; } - &.show-summary > .mynah-chat-item-card-summary-collapsed-content { - display: flex; + // When expanded, the header and the collapsed content should read as a + // single container instead of separate rounded boxes. Square the header's + // bottom corners and the content's top corners so they connect, and let the + // header's bottom border act as the divider between the header and the + // parameters/results below. + &.show-summary { + > .mynah-chat-item-card-summary-content { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; + } + > .mynah-chat-item-card-summary-collapsed-content { + display: flex; + border-right: var(--mynah-border-width) solid var(--mynah-color-border-default); + border-bottom: var(--mynah-border-width) solid var(--mynah-color-border-default); + border-left: var(--mynah-border-width) solid var(--mynah-color-border-default); + border-bottom-left-radius: var(--mynah-card-radius); + border-bottom-right-radius: var(--mynah-card-radius); + // Clip the inner parameter/result cards to the container's shape so + // their own corners do not create separate rounded boxes. + overflow: hidden; + } } } } From d7457b37e86e0ef34da4b779996f0759ca5e3913 Mon Sep 17 00:00:00 2001 From: Laxman Reddy Aileni Date: Wed, 15 Jul 2026 18:28:19 +0000 Subject: [PATCH 2/2] chore: coerce evaluate result to boolean in quick-action header flow Keeps the repo lint gate green (strict-boolean-expressions). --- ui-tests/__test__/flows/quick-action-commands-header.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ui-tests/__test__/flows/quick-action-commands-header.ts b/ui-tests/__test__/flows/quick-action-commands-header.ts index c90e28b6f..a0e6c7ae8 100644 --- a/ui-tests/__test__/flows/quick-action-commands-header.ts +++ b/ui-tests/__test__/flows/quick-action-commands-header.ts @@ -137,9 +137,9 @@ export const verifyQuickActionCommandsHeaderStatusVariations = async (page: Page let foundStatusClass = false; for (const statusClass of statusClasses) { - const hasStatus = await headerElement.evaluate((el, className) => + const hasStatus = Boolean(await headerElement.evaluate((el, className) => el.classList.contains(className), statusClass - ); + )); if (hasStatus) { foundStatusClass = true; console.log(`Found status class: ${statusClass}`);