chain-viz.tsx
26.8 KB
-
fix: closed chain 永不 ★ — 修陈化冰 K04 显示矛盾 · 2f8c962a
陈化冰 case(v1 plan 显示): K04 chain.status=closed(alt-closed by 种植 16;17;26;46) K04 chain.target=true(老 plan reason 还含 K04) → 前端 TargetTimelineRow 强制按 discovered 渲染 ★潜在新链 + stage=1 hint → 但底部 HistoryStrip / ChainSidebarRow 看 status=closed 渲染 ✓已闭环 → 同一条 chain 两个组件给出矛盾展示 修(双侧防御): 1. plan-aggregate.assemble 加约束: if (c.status === 'closed') { c.target = false; continue; } closed = 临床已结束(拔了/被替代/全治完);即使 SQL 老 reason 仍命中也不 ★ (SQL 召回老 closed chain 是 data race / 老 plan 残留,不该误导客服) 2. chain-viz.findFocused: chains.find((c) => c.target && c.status !== 'closed') 双层防御,即使后端漏改也不显示 closed 在 focused 验证(陈化冰 v1 plan superseded,5 reasons 仍含 K04): 改前:K04 closed chain target=true → focused 错位 改后:K04 chain target=false → focused = K00 先天/萌出处置·46(下一个 target=true) 底部历史 ✓已闭环 正常显示 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>luoqi committed