Scope MCP work proof guidance by repo#350
Conversation
|
Caution Review failedPull request was closed or merged during review No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (3)
📝 WalkthroughWalkthroughThis PR adds an optional ChangesRepo-scoped issue number bounty selection
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes Possibly related PRs
Suggested reviewers
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
Adds repo as an optional selector for the MCP submit_work_proof tool when querying by issue_number, enabling disambiguation of bounties that share the same issue number across different repositories.
Changes:
- Added MCP argument parsing/validation for an optional
reposelector (only allowed withissue_number) and applied it to the bounty lookup query. - Updated MCP tool description to mention
repo+format. - Added tests covering repo-scoped selection and new invalid-selector cases.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| tests/test_api_mcp.py | Adds regression tests for repo-scoped issue_number selection and validation cases. |
| app/mcp.py | Updates the MCP tool metadata description for submit_work_proof to reflect new selector options. |
| app/main.py | Implements repo selector parsing + validation and applies it to issue_number bounty queries. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| "Return submission instructions, optionally for a bounty_id or issue_number " | ||
| "and repo, with text or json format" |
| if repo is None: | ||
| return None | ||
| if len(repo) > 200: | ||
| raise ValueError("repo is too long") |
| Bounty.issue_number == positive_int_arg("issue_number") | ||
| ) | ||
| if repo_selector is not None: | ||
| issue_query = issue_query.where(func.lower(Bounty.repo) == repo_selector) |
|
Superseded by #351, which keeps the repo-scoped MCP guidance change in one focused PR. |
Refs #315
Summary
Tests
Summary by CodeRabbit
New Features
Documentation