fix(mcp): restore scalable project discovery#1181
Open
tmonestudio wants to merge 1 commit into
Open
Conversation
Paginate and sort list_projects before opening databases, keep expensive details opt-in, and preserve the metadata_only compatibility flag. Copy normalized coverage scopes into the response document so non-root scopes do not serialize as NUL bytes. Add reproduce-first guards for both regressions. Signed-off-by: Leonardo trindade miranda <tmonestudio@gmail.com>
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.
What does this PR do?
Fixes two MCP regressions:
list_projects, sorting database names and opening only the requested page before collecting project metadata;include_details, while preserving the existingmetadata_only=truecompatibility path;check_index_coveragescope strings into the yyjson document so non-root scopes such assrccannot become NUL bytes after the stack buffer is reused.Reproduce-first evidence
mainexceeded 60 seconds forlimit=50, include_details=false; this branch returned 50/632 in 3.54 seconds.scopes=["src"]serializedscopeas three NUL bytes. The regression guard now asserts the exactrequested_scopeandscopestrings.Checklist
git commit -s)