Skip to content

Commit 7c7bdf8

Browse files
committed
Refactors feedback button visibility logic for markdown AI
Introduces a context key and a tracker to control the visibility of AI feedback buttons in markdown previews based on both feedback context presence and telemetry settings. Streamlines menu conditions, ensuring buttons only appear when feedback is available and telemetry is enabled, improving maintainability and aligning UI with user permissions.
1 parent 5ac9125 commit 7c7bdf8

File tree

4 files changed

+12
-14
lines changed

4 files changed

+12
-14
lines changed

contributions.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@
149149
"menus": {
150150
"editor/title": [
151151
{
152-
"when": "resourceScheme == gitlens-markdown && config.gitlens.telemetry.enabled && activeCustomEditorId == vscode.markdown.preview.editor",
152+
"when": "resourceScheme == gitlens-markdown && config.telemetry.enabled && activeCustomEditorId == vscode.markdown.preview.editor",
153153
"group": "navigation",
154154
"order": 2
155155
}
@@ -162,7 +162,7 @@
162162
"menus": {
163163
"editor/title": [
164164
{
165-
"when": "resourceScheme == gitlens-markdown && config.gitlens.telemetry.enabled && activeCustomEditorId == vscode.markdown.preview.editor",
165+
"when": "resourceScheme == gitlens-markdown && config.telemetry.enabled && activeCustomEditorId == vscode.markdown.preview.editor",
166166
"group": "navigation",
167167
"order": 1
168168
}

docs/telemetry-events.md

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -145,16 +145,10 @@
145145
146146
```typescript
147147
{
148-
// Request duration if available
149-
'duration': number,
150148
// The AI feature that feedback was submitted for
151-
'feature': 'explain' | 'generateCommit' | 'generateRebase' | 'generateStash' | 'generateDraft' | 'generateChangelog' | 'generateCreatePullRequest',
149+
'feature': string,
152150
// Type of feedback provided
153151
'feedbackType': 'preset' | 'writeIn' | 'both',
154-
// Whether write-in feedback was provided
155-
'hasWriteInFeedback': boolean,
156-
// Input/output lengths if available
157-
'input.length': number,
158152
// Model information
159153
'model.id': string,
160154
'model.provider.id': 'anthropic' | 'azure' | 'deepseek' | 'gemini' | 'github' | 'gitkraken' | 'huggingface' | 'mistral' | 'ollama' | 'openai' | 'openaicompatible' | 'openrouter' | 'vscode' | 'xai',
@@ -165,11 +159,15 @@
165159
// The original rating that led to this feedback
166160
'rating': 'positive' | 'negative',
167161
'usage.completionTokens': number,
162+
'usage.limits.limit': number,
163+
'usage.limits.resetsOn': string,
164+
'usage.limits.used': number,
168165
// Token usage information if available
169166
'usage.promptTokens': number,
170167
'usage.totalTokens': number,
171168
// Length of write-in feedback if provided
172-
'writeInFeedback.length': number
169+
'writeInFeedback.length': number,
170+
'writeInFeedback.text': string
173171
}
174172
```
175173

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14138,12 +14138,12 @@
1413814138
},
1413914139
{
1414014140
"command": "gitlens.ai.feedback.positive",
14141-
"when": "resourceScheme == gitlens-markdown && config.gitlens.telemetry.enabled && activeCustomEditorId == vscode.markdown.preview.editor",
14141+
"when": "resourceScheme == gitlens-markdown && config.telemetry.enabled && activeCustomEditorId == vscode.markdown.preview.editor",
1414214142
"group": "navigation@1"
1414314143
},
1414414144
{
1414514145
"command": "gitlens.ai.feedback.negative",
14146-
"when": "resourceScheme == gitlens-markdown && config.gitlens.telemetry.enabled && activeCustomEditorId == vscode.markdown.preview.editor",
14146+
"when": "resourceScheme == gitlens-markdown && config.telemetry.enabled && activeCustomEditorId == vscode.markdown.preview.editor",
1414714147
"group": "navigation@2"
1414814148
},
1414914149
{

src/commands/generateRebase.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -547,8 +547,8 @@ function generateRebaseMarkdown(
547547
},
548548
};
549549

550-
// Add feedback context and commands to toolbar if telemetry is enabled
551-
if (feedbackContext && telemetryEnabled) {
550+
// Always store feedback context if available, but only show UI when telemetry is enabled
551+
if (feedbackContext) {
552552
metadata.feedbackContext = feedbackContext as unknown as Record<string, unknown>;
553553
}
554554

0 commit comments

Comments
 (0)