Skip to content

feat(vscode): show all agent questions in one form with multi-select support - #2466

Closed
wbxl2000 wants to merge 1 commit into
mainfrom
feat/vscode-question-dialog-form
Closed

feat(vscode): show all agent questions in one form with multi-select support#2466
wbxl2000 wants to merge 1 commit into
mainfrom
feat/vscode-question-dialog-form

Conversation

@wbxl2000

Copy link
Copy Markdown
Collaborator

Related Issue

Resolve #2463

Problem

The question dialog treated every question as single-select and stepped through questions one by one with no way back: multi_select questions only captured the first clicked label, answered questions could not be changed, and individual questions could not be skipped even though partial answers are contract-legal.

What changed

Reworked the question dialog from a step-through wizard into a single scrollable form, following the semantics the TUI already established:

  • All questions render at once; single-select keeps the existing filled-row style, multi-select rows toggle with a checkbox and stay put.
  • Multi-select answers join selected labels with ', ' (same convention as the TUI); a per-question custom text is appended as an extra label for multi-select, and wins over the chosen option for single-select.
  • One explicit Submit at the bottom collects everything; unanswered questions are skipped (with a hint), an all-empty submission keeps the dismiss semantics, and a Dismiss button resolves with no answers.
  • The answers-record construction lives in a pure helper (buildQuestionAnswers) so it is unit-tested without webview component test infra.

Checklist

  • I have read the CONTRIBUTING document.
  • I have linked a related issue, or explained the problem above.
  • I have added tests that prove my feature works.
  • Ran gen-changesets skill, or this PR needs no changeset.
  • Ran gen-docs skill, or this PR needs no doc update.

@changeset-bot

changeset-bot Bot commented Jul 31, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 7abe7b2

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
kimi-code Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@pkg-pr-new

pkg-pr-new Bot commented Jul 31, 2026

Copy link
Copy Markdown
pnpm dlx https://pkg.pr.new/@moonshot-ai/kimi-code@7abe7b2
npx https://pkg.pr.new/@moonshot-ai/kimi-code@7abe7b2

commit: 7abe7b2

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 7abe7b2c33

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

value={customText}
onChange={(e) => setCustomText(questionIdx, e.target.value, isMulti)}
onKeyDown={(e) => {
if (e.key === "Enter" && !e.nativeEvent.isComposing) void handleSubmit();

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Avoid submitting all questions from a custom field

When a request contains multiple questions and the user types a custom response for an earlier question, pressing Enter in this input immediately calls handleSubmit(), which sends the current partial answers and skips any remaining unanswered questions. In the new all-at-once form, Enter should only commit/close the current custom field or be ignored so users can finish the rest of the form before resolving the agent question.

Useful? React with 👍 / 👎.

@wbxl2000 wbxl2000 mentioned this pull request Jul 31, 2026
5 tasks
@wbxl2000

Copy link
Copy Markdown
Collaborator Author

Closing in favor of the direction taken by #2467 (step-through questions with back-navigation and explicit submission), which fixes the same multi-select limitation with an interaction model closer to the existing wizard. Thanks for the exploration here.

@wbxl2000 wbxl2000 closed this Jul 31, 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.

vscode: QuestionDialog lacks multi-select support; consider a single-form layout

1 participant