Repository navigation
Improve size-limit handling for pinned repository searches - #63
Merged
Merged
Conversation
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
🟢 Approval recommended
No active review issues remain for the scoped repository-search and tree-metadata budget changes.
No open issues 🎉
What changed in this PR
This PR improves IssueLens’s pinned repository searches by separating internal tree-metadata limits from model-result limits and allowing searches within an exact file or directory subtree.
Changes:
- Adds a 1-MiB internal tree-response budget while retaining existing model-result and scan caps.
- Introduces optional pinned-search
pathscoping, with explicit scope reporting and narrower-path recovery guidance. - Updates tool documentation and adds regressions for scope resolution, pagination, size limits, and public-visibility checks.
| File | Description |
|---|---|
tests/test_repository_search.py |
Adds scoped-search, metadata-budget, validation, and pagination regressions. |
skills/change-analysis/SKILL.md |
Explains scoped recovery and preservation of scope across pages. |
github_app_mcp/tests/test_server.py |
Tests schema discovery, input validation, and argument forwarding. |
github_app_mcp/tests/test_public_access.py |
Tests visibility enforcement throughout scoped searches. |
github_app_mcp/src/issuelens_github_mcp/server.py |
Exposes path, constrains pagination, and documents search limits. |
github_app_mcp/src/issuelens_github_mcp/github.py |
Implements pinned scope resolution and separate tree-metadata budgeting. |
github_app_mcp/README.md |
Documents scope semantics, limits, and recovery options. |
Review effort: Balanced
Changyong Gong (chagong)
deleted the
chagong-repository-search-limits
branch
November 10, 2026 03:20
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
pathfor an exact file or directory subtree. Resolve it through bounded, nonrecursive trees at the immutable commit instead of fetching the recursive root inventory for scoped searches.path, not a smaller result page.Built on merged #62; the SDK-qualified MCP permission fix is unchanged.
Validation
microsoft/vscode-java-packat commit1898fa28d4cf1e1f364a879af206d7ce84b0817athrough the real MCP server. The root tree reproduced the 118,674-byte transport / 124,096-byte serialized mismatch and now reaches the retained 64-file limit instead of being rejected as an oversized model result. Scopedsrc/daemonsearches returned seven matching files with pinned pagination; an exact-file search also succeeded. These are new verification queries, not recovered incident arguments.