From f6ec5cf42ca142a2fae16f67a0ee86f775a3773d Mon Sep 17 00:00:00 2001 From: Octopus Date: Sun, 5 Apr 2026 09:32:53 +0800 Subject: [PATCH 1/2] fix: prevent Insights chat panel from scrolling off-screen (fixes #1977) Without min-h-0 on the flex container, the default flex min-height is 'auto', allowing the child to grow beyond its parent's bounds. This causes the ScrollArea to also grow unconstrained, making the Insights panel scroll off the top of the screen after messages load. --- apps/desktop/src/renderer/components/Insights.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/desktop/src/renderer/components/Insights.tsx b/apps/desktop/src/renderer/components/Insights.tsx index b7133ef8af..adcec0c9e6 100644 --- a/apps/desktop/src/renderer/components/Insights.tsx +++ b/apps/desktop/src/renderer/components/Insights.tsx @@ -405,7 +405,7 @@ export function Insights({ projectId }: InsightsProps) { )} {/* Main Chat Area */} -
+
{/* Header */}
From cad43d7a374a9de1cd6dd612b8b150f5307f2c29 Mon Sep 17 00:00:00 2001 From: Octopus Date: Mon, 6 Apr 2026 09:49:32 +0800 Subject: [PATCH 2/2] fix(worker): surface build failure error in frontend logs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When a pre-QA failure occurred (e.g. stream inactivity timeout), only postTaskEvent('CODING_FAILED') was called with no corresponding postError(), so the error message never appeared in the task's Logs tab — the task silently transitioned to Human Review with no explanation. Add a postError() call before CODING_FAILED so the error is written to the task log and visible to the user. Fixes #1984 Co-Authored-By: Octopus --- apps/desktop/src/main/ai/agent/worker.ts | 3 +++ 1 file changed, 3 insertions(+) diff --git a/apps/desktop/src/main/ai/agent/worker.ts b/apps/desktop/src/main/ai/agent/worker.ts index f03bb19d20..bf1083531b 100644 --- a/apps/desktop/src/main/ai/agent/worker.ts +++ b/apps/desktop/src/main/ai/agent/worker.ts @@ -710,6 +710,9 @@ async function runBuildOrchestrator( }); } else { // Pre-QA failure (planning or coding phase) + if (outcome.error) { + postError(`Build failed: ${outcome.error}`); + } postTaskEvent('CODING_FAILED', { error: outcome.error }); }