Fix #883: JSON braces no longer treated as blackboard variables#1088
Fix #883: JSON braces no longer treated as blackboard variables#1088facontidavide wants to merge 1 commit into
Conversation
Enhanced isBlackboardPointer() to validate that content between braces
is a valid variable name (matching [a-zA-Z_@][a-zA-Z0-9_./]*) rather
than just checking for surrounding braces. This prevents JSON strings
like {"key": "value"} from being misidentified as blackboard references.
Also centralized the check in xml_parsing.cpp to use
TreeNode::isBlackboardPointer() instead of an inline brace check.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
📝 WalkthroughWalkthroughThe changes enhance the Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches
🧪 Generate unit tests (beta)
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 |
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #1088 +/- ##
==========================================
+ Coverage 66.59% 66.63% +0.03%
==========================================
Files 225 225
Lines 12853 12874 +21
Branches 1197 1206 +9
==========================================
+ Hits 8560 8578 +18
- Misses 4243 4246 +3
Partials 50 50 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Summary
isBlackboardPointer()to validate content between braces matches a valid variable name pattern ([@]?[a-zA-Z_][a-zA-Z0-9_./]*), rejecting JSON strings like{"key": "value"}xml_parsing.cppto useTreeNode::isBlackboardPointer()instead of an inline brace checkPortTest.IsBlackboardPointer_Issue883test covering valid pointers, JSON rejection, and edge casesTest plan
PortTest.IsBlackboardPointer_Issue883passes🤖 Generated with Claude Code
Summary by CodeRabbit
Release Notes