Extract the standard form drawer (width 640, footer actions, destroyOnClose) as FormDrawer; reuse existing usePolling hook. IntelligentEvals becomes the first consumer — create drawer and both 5s pollings switched with zero behaviour change. Includes ui-consistency spec, tickets, and ADR-0005.
756 B
756 B
01 — 基准组件沉淀 + IntelligentEvals 切换
What to build: 抽取两个共享件并让基准页成为第一个消费者。
components/FormDrawer.tsx:标准表单 Drawer(width 640 / footer 取消+主按钮 / destroyOnClose / submitting 态)hooks/usePolling.ts:活跃态静默轮询(5s,组件卸载/条件关闭自动清理)
Blocked by: 无
Acceptance criteria:
- FormDrawer 与 usePolling 创建完成,props/hook 签名简洁
- IntelligentEvals 的创建 Drawer 改用 FormDrawer,行为不变
- IntelligentEvals 详情页轮询与 EvalDetail 会话轮询改用 usePolling,行为不变
tsc --noEmit通过- t480 走查:创建评估、详情轮询、P0 全流程体验无回归