Skip to content

Issue summarization misses information from comments #6346

@chrmarti

Description

@chrmarti

Testing #6321

It sometimes includes information from the comments, but not in this case:
Image

The summarize tool appears to drop it (appending copy from log view):

copilotLanguageModelWrapper - 375c6f47
Metadata
url : https://api.enterprise.githubcopilot.com/chat/completions
model : gpt-4o
maxPromptTokens : 64000
maxResponseTokens: 4096
location : 4
postOptions : {"temperature":0.1,"top_p":1,"max_tokens":4096,"tools":[{"type":"function","function":{"name":"copilot_codebase","description":"Search for relevant file chunks, symbols, and other info about the current workspace or codebase","parameters":{"type":"object","properties":{"query":{"type":"string","description":"The query to search the codebase for. Should contain all relevant context. Can be a full natural language sentence, or keywords."}},"required":["query"]}}},{"type":"function","function":{"name":"copilot_vscodeAPI","description":"Use VS Code API references to answer questions about VS Code extension development.","parameters":{"type":"object","properties":{"query":{"type":"string","description":"The query to search vscode documentation for. Should contain all relevant context."}},"required":["query"]}}},{"type":"function","function":{"name":"github-pull-request_issue_fetch","description":"Get a GitHub issue/PR's details as a JSON object.","parameters":{"type":"object","properties":{"repo":{"type":"object","description":"The repository to get the issue/PR from.","properties":{"owner":{"type":"string","description":"The owner of the repository to get the issue/PR from."},"name":{"type":"string","description":"The name of the repository to get the issue/PR from."}},"required":["owner","name"]},"issueNumber":{"type":"number","description":"The number of the issue/PR to get."}},"required":["issueNumber"]}}},{"type":"function","function":{"name":"github-pull-request_notification_fetch","description":"Get a GitHub notification's details as a JSON object.","parameters":{"type":"object","properties":{"thread_id":{"type":"string","description":"The notification thread id."}},"required":["thread_id"]}}},{"type":"function","function":{"name":"github-pull-request_issue_summarize","description":"Summarizes a GitHub issue or pull request. A summary is a great way to describe an issue or pull request.","parameters":{"type":"object","properties":{"title":{"type":"string","description":"The title of the issue/PR"},"body":{"type":"string","description":"The body of the issue/PR"},"comments":{"type":"array","items":{"type":"string"},"description":"The array of associated string comments"},"fileChanges":{"type":"array","items":{"type":"object","properties":{"fileName":{"type":"string","description":"The name of the file of the change"},"patch":{"type":"string","description":"The patch of the change"}}},"description":"For a PR, the array of associated file changes"}},"required":["title","body","comments"]}}},{"type":"function","function":{"name":"github-pull-request_notification_summarize","description":"Summarizes a GitHub notification. A summary is a great way to describe a notification.","parameters":{"type":"object","properties":{"lastReadAt":{"type":"string","description":"The last read time of the notification."},"lastUpdatedAt":{"type":"string","description":"The last updated time of the notification."},"unread":{"type":"boolean","description":"Whether the notification is unread."},"title":{"type":"string","description":"The title of the notification issue/PR"},"body":{"type":"string","description":"The body of the notification issue/PR"},"unreadComments":{"type":"array","items":{"type":"string"},"description":"The array of unread comments under the issue/PR of the notification"},"threadId":{"type":"number","description":"The thread id of the notification"},"notificationKey":{"type":"string","description":"The key of the notification"},"fileChanges":{"type":"array","items":{"type":"object","properties":{"fileName":{"type":"string","description":"The name of the file of the change"},"patch":{"type":"string","description":"The patch of the change"}},"required":["fileName","patch"]},"description":"For a notification about a PR, the array of associated file changes"}},"required":["title","unreadComments","lastUpdatedAt","unread","threadId","notificationKey"]}}},{"type":"function","function":{"name":"github-pull-request_suggest-fix","description":"Summarize and suggest a fix for a GitHub issue.","parameters":{"type":"object","properties":{"repo":{"type":"object","description":"The repository to get the issue from.","properties":{"owner":{"type":"string","description":"The owner of the repository to get the issue from."},"name":{"type":"string","description":"The name of the repository to get the issue from."}},"required":["owner","name"]},"issueNumber":{"type":"number","description":"The number of the issue to get."}},"required":["issueNumber","repo"]}}},{"type":"function","function":{"name":"github-pull-request_formSearchQuery","description":"Converts natural language to a GitHub search query. Should ALWAYS be called before doing a search.","parameters":{"type":"object","properties":{"repo":{"type":"object","description":"The repository to get the issue from.","properties":{"owner":{"type":"string","description":"The owner of the repository to get the issue from."},"name":{"type":"string","description":"The name of the repository to get the issue from."}},"required":["owner","name"]},"naturalLanguageString":{"type":"string","description":"A plain text description of what the search should be."}},"required":["naturalLanguageString"]}}},{"type":"function","function":{"name":"github-pull-request_doSearch","description":"Execute a GitHub search given a well formed GitHub search query. Call github-pull-request_formSearchQuery first to get good search syntax and pass the exact result in as the 'query'.","parameters":{"type":"object","properties":{"repo":{"type":"object","description":"The repository to get the issue from.","properties":{"owner":{"type":"string","description":"The owner of the repository to get the issue from."},"name":{"type":"string","description":"The name of the repository to get the issue from."}},"required":["owner","name"]},"query":{"type":"string","description":"A well formed GitHub search query using proper GitHub search syntax."}},"required":["query","repo"]}}},{"type":"function","function":{"name":"github-pull-request_renderIssues","description":"Render issue items from an issue search in a markdown table. The markdown table will be displayed directly to the user by the tool. No further display should be done after this!","parameters":{"type":"object","properties":{"arrayOfIssues":{"type":"array","description":"An array of GitHub Issues.","items":{"type":"object","properties":{"title":{"type":"string","description":"The title of the issue."},"number":{"type":"number","description":"The number of the issue."},"url":{"type":"string","description":"The URL of the issue."},"state":{"type":"string","description":"The state of the issue (open/closed)."},"createdAt":{"type":"string","description":"The creation date of the issue."},"updatedAt":{"type":"string","description":"The last update date of the issue."},"closedAt":{"type":"string","description":"The closing date of the issue."},"author":{"type":"object","description":"The author of the issue.","properties":{"login":{"type":"string","description":"The login of the author."},"url":{"type":"string","description":"The URL of the author's profile."}}},"labels":{"type":"array","description":"The labels associated with the issue.","items":{"type":"object","properties":{"name":{"type":"string","description":"The name of the label."},"color":{"type":"string","description":"The color of the label."}}}},"assignees":{"type":"array","description":"The assignees of the issue.","items":{"type":"object","properties":{"login":{"type":"string","description":"The login of the assignee."},"url":{"type":"string","description":"The URL of the assignee's profile."}}}},"commentsCount":{"type":"number","description":"The number of comments on the issue."}}},"required":["title","number","url","state","createdAt","author","commentCount","reactionCount"]},"totalIssues":{"type":"number","description":"The total number of issues in the search."}},"required":["arrayOfIssues","totalIssues"]}}},{"type":"function","function":{"name":"searchConfigurations","description":"Use this tool to search for settings and commands. This will return all those settings and commands that contain the provided keywords. Each result will have a type to know if it is a setting or a command. A setting includes the description, default value, current value and other possible values and a command includes the description and possible arguments to be used to invoke the command.","parameters":{"type":"object","properties":{"keywords":{"type":"string","description":"List of keywords to search for the settings and commands"}}}}},{"type":"function","function":{"name":"updateSettings","description":"Use this tool to update settings. This tool support bulk updates, so you can update multiple settings at once. Provide the settings to update as a key value pair of setting id and new value. The value of the setting must follow the setting schema.","parameters":{"type":"object","description":"Dictionary of settings to update. The key is the setting id and the value is the new value of the setting.","properties":{},"additionalProperties":true}}},{"type":"function","function":{"name":"runCommand","description":"Use this tool to run a command. This tool will run the command with the provided arguments if the command supports them. The arguments must follow the command arguments schema provided by the searchConfigurations.","parameters":{"type":"object","properties":{"key":{"type":"string","description":"Id of the command"},"argumentsArray":{"type":"string","description":"Arguments to pass to the command as JSON stringified array"}}}}}],"stream":true}
intent : undefined
startTime : 2024-10-22T08:51:43.416Z
endTime : 2024-10-22T08:51:45.214Z
duration : 1798ms
ourRequestId : ae0b92ae-1152-4d6d-9184-ac2f4cdd9c7f
requestId : ae0b92ae-1152-4d6d-9184-ac2f4cdd9c7f
serverRequestId : ae0b92ae-1152-4d6d-9184-ac2f4cdd9c7f
timeToFirstToken : 812ms
Request Messages
System
Follow Microsoft content policies.
Avoid content that violates copyrights.
If you are asked to generate content that is harmful, hateful, racist, sexist, lewd, violent, or completely irrelevant to software engineering, only respond with "Sorry, I can't assist with that."
Keep your answers short and impersonal.
Use Markdown formatting in your answers.
Make sure to include the programming language name at the start of the Markdown code blocks.
Avoid wrapping the whole response in triple backticks.
The user works in an IDE called Visual Studio Code which has a concept for editors with open files, integrated unit test support, an output pane that shows the output of running the code as well as an integrated terminal.
The active document is the source code the user is looking at right now.
You can only give one reply for each conversation turn.
Assistant
Instructions:

  • The user will ask a question related to GitHub, and it may require lots of research to answer correctly. There is a selection of tools that let you perform actions or retrieve helpful context to answer the user's question.
  • If you aren't sure which tool is relevant, you can call multiple tools. You can call tools repeatedly to take actions or gather as much context as needed until you have completed the task fully. Don't give up unless you are sure the request cannot be fulfilled with the tools you have.
  • Don't ask the user for confirmation to use tools, just use them.
  • When talking about issues, be as concise as possible while still conveying all the information you need to. Avoid mentioning the following:
  • The fact that there are no comments.
  • Any info that seems like template info.
    User
    Summarize issue microsoft/vscode-copilot#7221
    Assistant
    🛠️ {"id":"call_hgBIgYc8N3og3hOJatrtiAmD","type":"function","function":{"name":"github-pull-request_issue_fetch","arguments":"{"issueNumber":7221,"repo":{"name":"vscode-copilot","owner":"microsoft"}}"}}
    Tool
    🛠️ call_hgBIgYc8N3og3hOJatrtiAmD
    {"title":"UX: Better entry point for code reviews in SCM","body":"✨ doesn't make to make code review easy enough to discover as the icon is over-loaded as AI smart action and is only available on hover for changes.\n\n1. UI element that is easy to understand. ✨ on the changes could mean a lot of different things (my first thought is always smart staging)\n2. Place it where it can be easily found and used as a user works on a commit/branch.\n3. We might want to offer other "compare with", like Sync session code view theme with VSCode them #7068, should those be offered as drop-down?","comments":[{"body":"Came up a lot pre-Universe from various people who tried to find this feature. The hover-only sparkle is way too hidden.\n\nMonkeypatch idea for Universe until we find a better UX: Show the sparkle always for Staged and Changes, right aligned from the hover buttons. cc @lszomoru for thoughts."},{"body":"The visibility of all actions in the Source Control view can be toggled using the scm.alwaysShowActions setting. I do not believe that we should create actions that are "always" visible and do not respect the setting. "},{"body":"https://github.com/microsoft/vscode-copilot/pull/9454 for the icon change"},{"body":"The actions in the view titlebar are shown whenever the mouse is anywhere over the view, i.e., much more than the actions on the Changes / Staged Changes node. Maybe we could also add it there and let it review all local changes.\nImage\n"}]}
    User
    Above is a stringified JSON representation of the issue or pull request. This can be passed to other tools for further processing.
    User
    Above is the result of calling the functions github-pull-request_issue_fetch.
    Assistant
    🛠️ {"id":"call_qjTb4OclCarjsZ07fyEERzjL","type":"function","function":{"name":"github-pull-request_issue_summarize","arguments":"{"title":"UX: Better entry point for code reviews in SCM","body":"✨ doesn't make to make code review easy enough to discover as the icon is over-loaded as AI smart action and is only available on hover for changes.\n\n1. UI element that is easy to understand. ✨ on the changes could mean a lot of different things (my first thought is always smart staging)\n2. Place it where it can be easily found and used as a user works on a commit/branch.\n3. We might want to offer other \"compare with\", like Sync session code view theme with VSCode them #7068, should those be offered as drop-down?","comments":["Came up a lot pre-Universe from various people who tried to find this feature. The hover-only sparkle is way too hidden.\n\nMonkeypatch idea for Universe until we find a better UX: Show the sparkle always for Staged and Changes, right aligned from the hover buttons. cc @lszomoru for thoughts.","The visibility of all actions in the Source Control view can be toggled using the scm.alwaysShowActions setting. I do not believe that we should create actions that are \"always\" visible and do not respect the setting.","https://github.com/microsoft/vscode-copilot/pull/9454 for the icon change","The actions in the view titlebar are shown whenever the mouse is anywhere over the view, i.e., much more than the actions on the Changes / Staged Changes node. Maybe we could also add it there and let it review all local changes.\nImage"]}"}}
    Tool
    🛠️ call_qjTb4OclCarjsZ07fyEERzjL
    Summary:

The issue highlights the need for a more intuitive entry point for code reviews in the SCM. The current icon (✨) is overloaded with AI smart actions and only appears on hover, making it hard to discover. The suggestions include:

  1. Creating a UI element that is easy to understand.
  2. Placing the element where it can be easily found during commit/branch work.
  3. Considering offering other "compare with" options, similar to issue Sync session code view theme with VSCode them #7068, possibly as a drop-down menu.

There are no additional details provided in the comments.
User
Above is the result of calling the functions github-pull-request_issue_summarize.
Response
Assistant
Summary:

The issue highlights the need for a more intuitive entry point for code reviews in the SCM. The current icon (✨) is overloaded with AI smart actions and only appears on hover, making it hard to discover. The suggestions include:

  1. Creating a UI element that is easy to understand.
  2. Placing the element where it can be easily found during commit/branch work.
  3. Considering offering other "compare with" options, similar to issue Sync session code view theme with VSCode them #7068, possibly as a drop-down menu.

There are no additional details provided in the comments.

Metadata

Metadata

Labels

bugIssue identified by VS Code Team member as probable bugverifiedVerification succeeded

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions