Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 7 additions & 10 deletions packages/cli/src/ui/hooks/useFeedbackDialog.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ import {
UserFeedbackEvent,
type UserFeedbackRating,
isNodeError,
AuthType,
Storage,
} from '@qwen-code/qwen-code-core';
import { StreamingState, MessageType, type HistoryItem } from '../types.js';
Expand Down Expand Up @@ -145,16 +144,14 @@ export const useFeedbackDialog = ({
const checkAndShowFeedback = () => {
if (streamingState === StreamingState.Idle && history.length > 0) {
// Show feedback dialog if:
// 1. User is authenticated via QWEN_OAUTH
// 2. Qwen logger is enabled (required for feedback submission)
// 3. User feedback is enabled in settings
// 4. The last message is an AI response
// 5. Random chance (25% probability)
// 6. Meets minimum requirements (tool calls > 10 OR user messages > 5)
// 7. Fatigue mechanism allows showing (not shown recently across sessions)
// 8. Not temporarily dismissed
// 1. Qwen logger is enabled (required for feedback submission)
// 2. User feedback is enabled in settings
// 3. The last message is an AI response
// 4. Random chance (25% probability)
// 5. Meets minimum requirements (tool calls > 10 OR user messages > 5)
// 6. Fatigue mechanism allows showing (not shown recently across sessions)
// 7. Not temporarily dismissed
if (
config.getAuthType() !== AuthType.QWEN_OAUTH ||
!config.getUsageStatisticsEnabled() ||
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.

[Suggestion] The PR description characterizes the two remaining gates (getUsageStatisticsEnabled() and enableUserFeedback) as "opt-in", but both actually default to true — they are opt-out:

  • config.ts:961: this.usageStatisticsEnabled = params.usageStatisticsEnabled ?? true;
  • settingsSchema.ts:750: enableUserFeedback has default: true

After removing the OAuth gate, non-OAuth users (BYOK/API key) who have never touched these settings will see the feedback dialog by default. Consider correcting the "opt-in" language in the PR description to "opt-out", or setting enableUserFeedback default to false so the feedback dialog truly requires explicit consent.

— qwen-latest-series-invite-beta-v34 via Qwen Code /review

settings.merged.ui?.enableUserFeedback === false ||
!lastMessageIsAIResponse(history) ||
Expand Down
Loading