Improve allocation benchmark error handling for unmapped Ruby versions #3787
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.
Authors: Please fill out this form carefully and completely.
Reviewers: By approving this Pull Request you are approving the code change, as well as its deployment and mitigation plans.
Please read this description carefully. If you feel there is anything unclear or missing, please ask for updates.
What are you trying to accomplish?
The
assert_allocationshelper fails silently with confusing error messages when a Ruby version isn't mapped in allocation expectations. This change makes the error explicit and actionable.Before:
After:
# Error: No allocation count mapped for Ruby version 3.5. Available versions: 3.2, 3.3, 3.4. Actual allocations: 6The improved error provides all information needed to add the new version mapping immediately.
Screenshots
N/A - test infrastructure change only
Integration
List the issues that this change affects.
Closes # (issue number not provided in problem statement)
Risk Assessment
What approach did you choose and why?
Added nil check in
assert_allocations_helper.rbthat raises early with diagnostic information: unmapped version, available versions, and measured allocations. This makes adding new Ruby version support self-documenting.Verified all existing Ruby 3.4 allocation counts are correct (tests pass on Ruby 3.4.7 and 3.3).
Anything you want to highlight for special attention from reviewers?
The change only adds error handling. No allocation counts were modified—all Ruby 3.4 values were already correct.
Accessibility
N/A - test infrastructure change only
Merge checklist
Take a look at the What we look for in reviews section of the contributing guidelines for more information on how we review PRs.
Original prompt
This pull request was created as a result of the following prompt from Copilot chat.
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.