Skip to content

feat(side-chat): keep a side question thread and improve readability - #819

Merged
astyfx merged 1 commit into
mainfrom
feat/side-question-ui-ux
Oct 24, 2026
Merged

astyfx merged 1 commit into
mainfrom
feat/side-question-ui-ux

Conversation

@astyfx

@astyfx astyfx commented Oct 24, 2026

Copy link
Copy Markdown
Member

Summary

The side question panel now keeps a short thread per task, so a follow-up no longer replaces the previous answer, and reads at the panel's own type scale.

Changes

Features

  • side-chat: keep up to 20 side questions per task in memory; a follow-up sends the three newest answered side questions as prompt context so "why?" has its subject
  • side-chat: show the question as the conversation's user bubble and the answer at the panel body size (14px; it was 16px under a 14px title)
  • side-chat: copy an answer to the clipboard, clear the thread from the header, pick a starter question from the empty state, retry a failed question in place
  • side-chat: the question field starts at one line and grows to six, with an Enter / Shift+Enter hint; the thread scrolls to the newest answer

Refactors / Chores

  • side-chat: exchangeByTask becomes threadByTask; clearExchange becomes clearThread; ask takes an optional question that leaves the draft alone
  • docs: update docs/features/side-questions.md; the task panel preview gains side=thread

Test Evidence

  • bun run typecheck: pass
  • oxlint --report-unused-disable-directives src electron server scripts: exit 0 (only existing warnings in other files)
  • node scripts/check-i18n.mjs: pass
  • bun test tests/side-chat.test.tsx tests/task-review-entry-points.test.tsx tests/custom-theme.test.ts: 68 pass, 0 fail (new cases: thread, follow-up context, 20 limit, suggestion keeps draft, retry in place)
  • bunx playwright test tests/e2e/review-while-running.e2e.ts tests/e2e/review-entry-points.e2e.ts --workers=1: 10 pass
  • bunx playwright test --config playwright.electron.config.ts tests/e2e-electron/side-question.electron.e2e.ts: pass
  • bun run check:style-channel, check:design-system, check:doc-paths, check:max-lines-ratchet: pass
  • bun run build:pages: pass
  • Rendered in the task panel preview (?stavePreview=task-panel&side=thread|empty|failed) in light, dark and Korean

Notes

  • The Electron e2e now matches the /aside question by prefix: the quoted answer left in the composer by the earlier Copy to composer step rides along with /aside. That predates this change.
  • Answering cannot be cancelled yet; out of scope here.
  • Side questions remain memory-only; nothing is persisted or added to the task conversation.

🤖 Generated with Claude Code

- Keep up to 20 side questions per task in memory, oldest first, so a
  follow-up no longer replaces the previous answer. A follow-up carries the
  three newest answered side questions as prompt context.
- Show the question as the conversation's user bubble and the answer at the
  panel body size, instead of a 12px muted quote over a 16px answer.
- Add a copy-to-clipboard button per answer, an eraser to clear the thread,
  starter questions in the empty state, in-place retry, autoscroll, and a
  question field that grows from one to six lines with an Enter hint.
- Update en/ko copy, the feature doc, the task panel preview and tests.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@astyfx
astyfx requested a review from a team as a code owner October 24, 2026 16:27
@astyfx
astyfx requested review from heath-s and schang124 and removed request for a team October 24, 2026 16:27
@upwind-code-us

upwind-code-us Bot commented Oct 24, 2026 •

Copy link
Copy Markdown

Upwind Upwind IaC Scan - ✅ Passed

0 newly introduced misconfigurations · 0 resolved · 0 total in this PR vs main

View full analysis in Upwind Console →

Scan completed in 4s

Scan history (1 scan)
Commit Scanned at New Resolved Net
828ec4b < 2026-10-24 16:27 UTC 0 0 0

Last scanned: 828ec4b · 2026-10-24 16:27 UTC

@astyfx
astyfx enabled auto-merge (squash) October 24, 2026 16:29

@heath-s heath-s left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved

@astyfx
astyfx merged commit f21f3d8 into main Oct 24, 2026
6 checks passed
@astyfx
astyfx deleted the feat/side-question-ui-ux branch October 24, 2026 16:35
@astyfx astyfx mentioned this pull request Oct 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants