现象
vortex_act({ action: "fill", target, kind: "time", value }) 的 kind 参数被静默忽略——不路由到 commit driver,也不报错。调用走 plain fill 路径,对 Element Plus time-picker / cascader / select 等 widget 不生效。
根因
kind → commit driver 的路由只存在于 vortex_fill 工具:
vortex_fill({ kind: "time", ... }) → dispatch 到 dom.commit(COMMIT handler,element-plus-time 等 driver)✅
vortex_act({ action: "fill", kind: "time", ... }) → dispatch 到 dom.fill(FILL handler,不读 kind)→ plain fill ❌
vortex_act 的 public schema 本就没有 kind 字段,client 传入后被当作额外参数静默吞掉(既不路由也不拒绝)。
为何现在浮现
CDP-first 输入转正(#40)暴露:bench el-time-picker case 一直误用 vortex_act(fill, kind=time)。
- 转正前:plain fill 走 value-setter,碰巧把
14:30:45 写进 time-picker 的 <input> value,result 显示正确 → 假 pass
- 转正后:plain fill 走 CDP
Input.insertText,触发 spinner panel 真实交互 → 落当前时间 → fail
case 已改走 vortex_fill(kind=time)(正确的 commit driver,与 el-select/daterange 等一致)。但产品面的死参问题仍在:用户同样可能误用 vortex_act(fill, kind) 而得不到任何提示。
期望(二选一,需产品决策)
- 选项 A:
vortex_act(action=fill, kind) 也路由 kind → commit driver,与 vortex_fill(kind) 行为对齐(act 作为 fill 的超集)
- 选项 B(倾向,显式优于静默):
vortex_act 遇到 kind 时显式 INVALID_PARAMS 报错,指引改用 vortex_fill——不静默吞参数
属 dead-param 族(参数被静默忽略而非路由或拒绝)。
参考
现象
vortex_act({ action: "fill", target, kind: "time", value })的kind参数被静默忽略——不路由到 commit driver,也不报错。调用走 plain fill 路径,对 Element Plus time-picker / cascader / select 等 widget 不生效。根因
kind→ commit driver 的路由只存在于vortex_fill工具:vortex_fill({ kind: "time", ... })→ dispatch 到dom.commit(COMMIT handler,element-plus-time等 driver)✅vortex_act({ action: "fill", kind: "time", ... })→ dispatch 到dom.fill(FILL handler,不读 kind)→ plain fill ❌vortex_act的 public schema 本就没有kind字段,client 传入后被当作额外参数静默吞掉(既不路由也不拒绝)。为何现在浮现
CDP-first 输入转正(#40)暴露:bench
el-time-pickercase 一直误用vortex_act(fill, kind=time)。14:30:45写进 time-picker 的<input>value,result 显示正确 → 假 passInput.insertText,触发 spinner panel 真实交互 → 落当前时间 → failcase 已改走
vortex_fill(kind=time)(正确的 commit driver,与el-select/daterange等一致)。但产品面的死参问题仍在:用户同样可能误用vortex_act(fill, kind)而得不到任何提示。期望(二选一,需产品决策)
vortex_act(action=fill, kind)也路由kind→ commit driver,与vortex_fill(kind)行为对齐(act 作为 fill 的超集)vortex_act遇到kind时显式INVALID_PARAMS报错,指引改用vortex_fill——不静默吞参数属 dead-param 族(参数被静默忽略而非路由或拒绝)。
参考
packages/vortex-bench/cases/el-time-picker.case.ts(修正记录)packages/extension/src/handlers/dom.ts(FILL handler 不读 kind / COMMIT handler 读 kind)