Skip to content
This repository was archived by the owner on May 20, 2026. It is now read-only.

Commit 539d2dc

Browse files
authored
Fix 'Hide Ghost Requests' not filtering ghost prompt groups (#4425)
The ghost request filter in the Chat Debug Log only checked ChatRequestItem instances but not ChatPromptItem (parent grouping nodes). This meant ghost prompt groups labeled 'Ghost' or 'Ghost | ...' remained visible even with the filter active. Extend isGhostRequest to also handle ChatPromptItem, matching the pattern already used for NES request filtering. Fixes microsoft/vscode#297566
1 parent 55c5da0 commit 539d2dc

1 file changed

Lines changed: 11 additions & 2 deletions

File tree

src/extension/log/vscode-node/requestLogTree.ts

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -862,6 +862,9 @@ class LogTreeFilters extends Disposable {
862862
if (this.isNesRequest(item)) {
863863
return this._nesRequestsShown;
864864
}
865+
if (this.isGhostRequest(item)) {
866+
return this._ghostRequestsShown;
867+
}
865868
return true; // Always show chat prompt items
866869
} else if (item instanceof ChatElementItem) {
867870
return this._elementsShown;
@@ -881,8 +884,14 @@ class LogTreeFilters extends Disposable {
881884
return true;
882885
}
883886

884-
private isGhostRequest(item: ChatRequestItem): boolean {
885-
const debugName = item.info.entry.debugName.toLowerCase();
887+
private isGhostRequest(item: ChatPromptItem | ChatRequestItem): boolean {
888+
let debugName: string;
889+
if (item instanceof ChatPromptItem) {
890+
assert(typeof item.label === 'string', 'ChatPromptItem label must be a string');
891+
debugName = item.label.toLowerCase();
892+
} else {
893+
debugName = item.info.entry.debugName.toLowerCase();
894+
}
886895
return debugName === 'ghost' || debugName.startsWith('ghost |');
887896
}
888897

0 commit comments

Comments
 (0)