Conversation
|
Codecov Report❌ Patch coverage is
📢 Thoughts on this report? Let us know! |
|
Thanks for the thorough writeup and repro, @neylwalecki — nice catch, and I appreciate you laying out the two implementation options up front. On the approach: Option 2 is the right call for this codebase. mcpproxy doesn't have index-rebuild/migration infrastructure today, so Option 1's "safe rebuild path" would be real unbuilt work, not a shortcut — and Option 2 doesn't foreclose a normalized field later if we ever need one. On the PR itself: the core fix is solid — verified the segment-AND logic against reorder, negative (missing-segment), and boundary-vs-substring cases (e.g. Two things I'd want addressed before merge:
No concerns with Spec 032 (quarantine hashing) or Spec 085 (describe_tool/compact) — neither is touched by this change. |
|
@neylwalecki could you take a pass at the two items above before we take this out of draft — check |
|
Addressed both review items in
Fresh local validation: The focused I'll keep the PR in draft until the refreshed CI completes. |
|
Merged — thanks for the clean fix and the fast turnaround on the review feedback, @neylwalecki! 🎉 |
Pull Request
Description
Fixes #1290.
retrieve_toolscan now use non-contiguous underscore-delimited segments as an additional search signal. For example,work_upload_attachmentfindswork_start_task_attachment_upload, and segment order is not significant.The implementation:
tool_namesegment boundary.Testing
Validated locally with:
All applicable GitHub Actions checks passed, including unit, shuffled unit, retrieval/security regression, integration, E2E, lint, CodeQL, server, Docker, and cross-platform binary/logging jobs. Stress tests were skipped by the workflow because this PR is still a draft.
The repository's
scripts/run-all-tests.shuses a 5-minute package timeout and timed out locally ininternal/serverafter the preceding tests passed. The workflow-equivalent-short -racecommand above uses the documented 20-minute timeout and completed successfully;internal/serverfinished locally in 373.736 seconds.