fix(mcp): restore scalable project discovery - #1181
Conversation
|
Thanks, and sorry for the wait. Queued for review. Mechanically in good shape: MERGEABLE with 28 checks green, +95/-12 across two files. Project discovery scalability has come up from a few directions recently, so a targeted fix there is welcome. |
|
An update on this one, and an apology for how long it has sat. Half of your PR has just shipped — and you found the bug independently, which deserves saying plainly. The The practical consequence is that What is still live in this PR: the Two defects worth fixing regardless of which way that decision goes:
What would help most right now: rebase on current Thank you for the report and for the fix — the scope bug was corrupting output from a tool we ship and our own tooling calls, and it is genuinely better for having been caught twice. |
Add deterministic pagination and opt-in project details while preserving the metadata_only compatibility alias. Fail list_projects atomically on name allocation errors and skip qsort for empty project caches. Signed-off-by: tmonestudio <tmonestudio@users.noreply.github.com>
2588aaa to
434b319
Compare
|
Rebased on current I also addressed both defects from the review:
The pagination tests now cover deterministic page order, the second page, |
What does this PR do?
Restores scalable and deterministic
list_projectsdiscovery:include_details;metadata_only=truecompatibility path;qsortfor an empty cache;realloc/strdupallocation failure instead of returning a misleading truncated success response.The previously included
check_index_coveragescope-copy fix has been removed from this branch because it already shipped on currentmainin f18ed73 via #1148.Reproduce-first evidence
mainexceeded 60 seconds forlimit=50, include_details=false; the paginated implementation returned 50/632 in 3.54 seconds.metadata_onlycompatibility, and explicitinclude_details.Checklist
git commit -s)