Skip to content

Commit ae32ca0

Browse files
authored
active pull request tool should know changed files (#7080)
Fixes #6890
1 parent db34b84 commit ae32ca0

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

src/lm/tools/activePullRequestTool.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
import * as vscode from 'vscode';
88
import { COPILOT_LOGINS } from '../../common/copilot';
9+
import { GitChangeType, InMemFileChange } from '../../common/file';
910
import Logger from '../../common/logger';
1011
import { CopilotRemoteAgentManager } from '../../github/copilotRemoteAgent';
1112
import { PullRequestModel } from '../../github/pullRequestModel';
@@ -153,6 +154,13 @@ export class ActivePullRequestTool implements vscode.LanguageModelTool<FetchIssu
153154
},
154155
isDraft: pullRequest.isDraft,
155156
codingAgentSession,
157+
changes: (await pullRequest.getFileChangesInfo()).map(change => {
158+
if (change instanceof InMemFileChange) {
159+
return change.diffHunks?.map(hunk => hunk.diffLines.map(line => line.raw).join('\n')).join('\n') || '';
160+
} else {
161+
return `File: ${change.fileName} was ${change.status === GitChangeType.ADD ? 'added' : change.status === GitChangeType.DELETE ? 'deleted' : 'modified'}.`;
162+
}
163+
})
156164
};
157165

158166
return new vscode.LanguageModelToolResult([new vscode.LanguageModelTextPart(JSON.stringify(pullRequestInfo))]);

0 commit comments

Comments
 (0)