Skip to content

Conversation

@tmelliottjr
Copy link
Contributor

This PR updates the tool/argument descriptions for projects related tools to better enable tool selection and project item filter.

Additionally, this PR introduces pagination for list_* operations to enable effective querying.

@tmelliottjr tmelliottjr requested a review from a team as a code owner November 3, 2025 18:31
Copilot AI review requested due to automatic review settings November 3, 2025 18:31
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR enhances the GitHub Projects V2 integration by adding advanced pagination support, improving response structures, refining query capabilities, and updating test coverage to match the new implementation. The changes focus on providing more robust pagination handling and clearer field filtering capabilities.

Key changes:

  • Added cursor-based pagination support (after, before parameters) with pageInfo in responses
  • Changed response format to include pageInfo metadata alongside data arrays
  • Updated field filtering to exclude special/system data types from responses
  • Refactored field ID handling from array to comma-separated string format

Reviewed Changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 2 comments.

File Description
pkg/github/projects.go Core implementation: adds pagination options extraction, pageInfo builder, filterSpecialTypes function, updated response structures with pageInfo, and comprehensive query documentation
pkg/github/projects_test.go Test updates: modified mock data to include required fields (node_id), updated assertions to validate new response structure with pageInfo, simplified field query parameter handling
pkg/github/toolsnaps/*.snap Snapshot updates: documents new pagination parameters and updated descriptions for tool schemas
README.md Documentation updates: adds pagination parameters and extensive query syntax documentation for projects tools

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@tmelliottjr tmelliottjr requested a review from JoannaaKL November 3, 2025 19:17
@tmelliottjr tmelliottjr marked this pull request as draft November 5, 2025 01:32
@tmelliottjr tmelliottjr force-pushed the tmelliottjr/update-projects-descriptions branch from 63bbdf0 to 1235e58 Compare November 5, 2025 03:19
@tmelliottjr tmelliottjr marked this pull request as ready for review November 5, 2025 03:20
@tmelliottjr tmelliottjr requested a review from JoannaaKL November 5, 2025 15:24
Copy link
Contributor

@kerobbi kerobbi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The technical improvements here lgtm! The only issues I can see are related to descriptions/prompts being quite verbose, and overly focused on technical details.

I have added a couple of comments just for better clarity, although they are all related to the same root concern.

@tmelliottjr tmelliottjr requested a review from kerobbi November 5, 2025 18:47
Copy link
Contributor

@kerobbi kerobbi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Left some comments mainly regarding reducing/optimising context usage and avoiding duplicate instructions.

I also suggested removing a lot of the query related instructions, as in general we've been finding that the model is able to construct pretty good queries using the GitHub syntax. I am curious, have you found that the model has not been able to construct queries well? If so, was it happening even for simple queries or for more complex projects ones?

@stephenotalora
Copy link
Contributor

Thanks, @kerobbi! I appreciate the feedback, @tmelliottjr is out until Monday, but I’m reviewing your comments in the meantime and will address them accordingly 🙇🏼

@stephenotalora stephenotalora force-pushed the tmelliottjr/update-projects-descriptions branch from 2ba80b8 to 5cb0758 Compare November 7, 2025 19:31
@stephenotalora
Copy link
Contributor

@tmelliottjr just an fyi, recent push is to address a number of conflicts with main

@tmelliottjr tmelliottjr requested a review from kerobbi November 10, 2025 15:54
},
"per_page": {
"description": "Number of results per page (max 100, default: 30)",
"description": "Results per page (max 50)",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is that different than the default?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I observed the models often using per_page: 100. Depending on the content in the payload and how many/what types of fields are requested this can result in some incredibly large response payloads. This was in service of trying to minimize that.

This along with encouraging the correct usage of query will hopefully reduce scenarios where truncation occurs.

Self-check before returning:
- Paginated fully
- Dedupe by id/node_id
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do we even need to dedupe by id? If we're listing items by id they should contain unique items already.

@tmelliottjr tmelliottjr changed the base branch from main to tmelliottjr/update-projects-tools November 11, 2025 15:30
@tmelliottjr tmelliottjr force-pushed the tmelliottjr/update-projects-descriptions branch from 8f6adde to 976ff67 Compare November 11, 2025 15:41
@tmelliottjr tmelliottjr changed the title projects: update tools to support pagination, improve prompts projects: add server instructions Nov 11, 2025
@tmelliottjr
Copy link
Contributor Author

Closed in favor of #1393

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants