Merged
Conversation
📝 WalkthroughWalkthroughThe PR updates tool descriptions and system prompts to provide clearer guidance on answer formatting, adds answer format guidelines to system prompts, and pins the fastmcp dependency to versions below 3.0.0 for compatibility assurance. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes 🚥 Pre-merge checks | ✅ 2 | ❌ 4❌ Failed checks (3 warnings, 1 inconclusive)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches
🧪 Generate unit tests (beta)
Tip Issue Planner is now in beta. Read the docs and try it out! Share your feedback on Discord. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@massgen/message_templates.py`:
- Around line 255-260: Add a unit/snapshot test that asserts the updated
"description" value for the new_answer tool (the dict entry whose key is
"description" in massgen/message_templates.py) includes the exact HIGH-LEVEL
summary guidance shown in the diff; update or create a test (e.g., a test in the
message templates test suite that loads the template and checks that
"new_answer" appears and that its "description" string contains the new guidance
about what to include, where output lives, and tool usage) so the test fails if
that description text is ever changed unexpectedly.
In `@massgen/tool/workflow_toolkits/new_answer.py`:
- Around line 97-102: Add a new TOOL.md file to the workflow_toolkits directory
(massgen/tool/workflow_toolkits/) containing YAML frontmatter with the required
keys: name, description, category, requires_api_keys (array), tasks (list), and
keywords; follow the structure and wording patterns used in
massgen/tool/_basic/TOOL.md as a template, ensure "name" matches the toolkit
directory, "description" gives a short summary of the toolkit purpose,
"category" classifies it, "requires_api_keys" lists any external keys (or an
empty array), "tasks" enumerates supported high-level tasks, and "keywords"
includes search terms.
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.
Fixes MAS-299
Agents were previously submitting full code listings within their new_answer content,
which cluttered the shared context and introduced redundancy, as executable artifacts already reside in workspace files.
This PR adds explicit answer format guidelines to system prompts and tool descriptions,
instructing agents to provide high-level summaries instead of raw code dumps.
Pin
fastmcpdependency to<3.0.0in bothpyproject.tomlandrequirements.txtto avoid potential breaking changes from a future v3 major release.Type of change
• feat: - New features
Checklist
Pre-commit status
check python ast.........................................................Passed
sort simple yaml files...............................(no files to check)Skipped
check yaml...........................................(no files to check)Skipped
check xml............................................(no files to check)Skipped
check toml...........................................(no files to check)Skipped
check docstring is first.................................................Passed
check json...........................................(no files to check)Skipped
fix python encoding pragma...............................................Passed
detect private key.......................................................Passed
trim trailing whitespace.................................................Passed
Add trailing commas......................................................Passed
isort....................................................................Passed
autoflake................................................................Passed
black....................................................................Passed
flake8...................................................................Passed
Check package with Pyroma................................................Passed
Keep CLAUDE.md and AGENTS.md synchronized............(no files to check)Skipped
Auto-sync README_PYPI.md when README.md changes......(no files to check)Skipped
Ensure package name is "massgen" in pyproject.toml...(no files to check)Skipped
Summary by CodeRabbit
Documentation
Chores