Repository navigation
fix: clear stale Transfer selection when key type changes - #59166
Conversation
|
|
👁 Visual Regression Report for PR #59166 Passed ✅
🎊 Congrats! No visual-regression diff found.
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
Included review availability: Your plan provides up to 10 included reviews per hour; 9 remain after this review. 📝 SummarySummary by CodeRabbit
Walkthrough
ChangesTransfer 选中状态
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This change prevents stale Transfer selections from reappearing when data-source key types change and adds regression coverage. No actionable merge-blocking risk remains beyond normal checks and review. Suggested reviewers: Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 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 |
size-limit report 📦
|
Bundle ReportChanges will increase total bundle size by 60 bytes (0.0%) ⬆️. This is within the configured threshold ✅ Detailed changes
Affected Assets, Files, and Routes:view changes for bundle: antd.min-array-pushAssets Changed:
|
More templates
commit: |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #59166 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 834 834
Lines 15992 15992
Branches 4203 4203
=========================================
Hits 15992 15992 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
Deploying ant-design with
|
| Latest commit: |
19fb633
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://1af98086.ant-design.pages.dev |
| Branch Preview URL: | https://fix-transfer-key-selection.ant-design.pages.dev |
nrps9909
left a comment
There was a problem hiding this comment.
Reviewed exact head 2a9abf30b88d100a9ab9539cdefc7e64e9c5d1a1.
I reproduced the regression causally: applying only the new test to base c99d71d06c fails on the second number → string → number key-type transition, while the exact PR head passes the full Transfer suite (53 tests / 5 snapshots). I also checked 289 independently generated signatures covering numeric/string distinctions and delimiter/escaping inputs; no collisions were found. ESLint, Biome, git diff --check, and the current remote checks are green.
AI assistance disclosure: Codex was used to inspect the diff, run the base-vs-head reproduction, generate the adversarial signature probe, and draft this review. I independently verified the exact head and results.
zombieJ
left a comment
There was a problem hiding this comment.
LGTM. The typed JSON signature distinguishes numeric and string keys without delimiter collisions, and the regression coverage verifies stale Transfer selections are cleared across key-type changes.


🤔 这个变动的性质是?
🔗 相关 Issue
None
💡 需求背景和解决方案
Transfer 使用数据源 key 集合的签名清理已不存在的非受控选中状态。原实现直接使用分隔符拼接 key,数字
1与字符串'1'会得到相同签名,导致数据源在两种 key 之间切换后旧选中状态重新出现。本次通过同时序列化 key 的类型和值来区分不同类型,并避免含分隔符的字符串产生签名碰撞;同时添加回归测试。不涉及公开 API 变更。
📝 更新日志