Repository navigation
fix: preserve literal plus keybindings - #4983
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configuration
📒 Files selected for processing (3)
Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 9 remain after this review. 📝 WalkthroughWalkthrough
Suggested reviewers: Priority: ⬇️ Low Merge Risk: ⚪ Minimal · up to No actionable issue remains identified for the literal-plus keybinding change. Complete the normal checks, including native Windows CI, before merging. Security Architecture ReviewSecurity architecture risk: ⚪ Minimal · up to The change restores supported plus-key bindings without expanding command permissions or transfer destinations. Malformed bindings remain rejected, and command identity stays separate from key-label syntax. Retained concerns Security review detailsSecurity Blast Radius
Security Findings and Attack Paths
Trust Boundaries and Controls
Resilience and Maintainability Implications
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
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 |
|
@coderabbitai review |
✅ Action performedReview finished.
|
|
|
ty |
prefix+pluspasses configuration validation, but the server serializes its label asprefix++. The client reparses that label when applying the command manifest and drops the binding. Plus-based prefix keys encounter the same mismatch in endpoint keybinding profiles.Teach the shared key-combo parser to accept literal
+and modifier-prefixed forms such asctrl++, while continuing to reject missing keys, extra separators, and unknown modifiers. This restores the existing formatter/parser contract without changing labels, command IDs, or the wire protocol.Validation on macOS arm64:
just checkpassed: formatting, clippy, 3,794 Rust tests, and maintenance/integration-asset tests.just docs-contract-testpassed separately.just checkstops at Windows cross lint because this machine has no Windows SDK. The PR's native Windows CI must pass before this is ready.No documentation change is needed: this restores already-supported bindings.
refs #4960