Archived
This repository has been archived on 2026-09-13 . You can view files and clone it. You cannot open issues or pull requests or push a commit.
6f721ffc6d9fdc3fe046cd83dc606202816db981
评审复现了一个真泄漏:selectCurrent 用 /\bselected\b/.test(block) 当「行内那一遍 处理过没有」的代理 —— 而一行被正确处理过、且合法地落在「没有选中项」上(值不在 选项里,或这一格还没填),跟「压根没被处理过」在字面上是同一个样子。renderView 收尾那一遍拿外层作用域重新处理这块,若外层恰好有个同名裸键命中某个选项,就会把 它错误地渗进这一行 —— 界面撒谎:显示一个这一行数据里根本不存在的选中态。 改记一个跟内容无关的标记属性 data-sel-scoped:处理完(不管有没有真标出 selected) 都打上,下一遍见到标记就跳过;renderView 收尾前把它整个剥掉,不留进交给沙箱的成品。 顺带治了评审点的 Minor #1:旧写法还会被 <option> 显示文字里恰好出现的 "selected" 误判(枚举标签写成 "Selected Value" 那种)。 三条新用例:行内下拉值不在选项里 / 新加的空行,均验证不再被外层同名值渗透 (RED 证实了泄漏确实发生过);行外独立下拉仍正确标好 selected(防重归防重, 不能把本该工作的那条也防没了)。 docs/HTML报告生成规范.md 补一句:data-options 与 data-slot 不能共存,后者会被 fillOptions 摘掉不起作用(评审 Minor #2)。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LKMZDwMbyKzjw6Hembwvet
Description
No description provided
9.3 MiB
Languages
TypeScript
90.1%
CSS
7.3%
JavaScript
2%
Shell
0.4%
Python
0.1%